@browserbasehq/orca 3.0.9-alpha-4 → 3.1.0-patch.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/esm/index.d.ts +3 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/lib/inference.d.ts +65 -0
- package/dist/esm/lib/inference.js +333 -0
- package/dist/esm/lib/inference.js.map +1 -0
- package/dist/esm/lib/inferenceLogUtils.d.ts +12 -0
- package/dist/esm/lib/inferenceLogUtils.js +92 -0
- package/dist/esm/lib/inferenceLogUtils.js.map +1 -0
- package/dist/esm/lib/logger.d.ts +69 -0
- package/dist/esm/lib/logger.js +323 -0
- package/dist/esm/lib/logger.js.map +1 -0
- package/dist/esm/lib/modelUtils.d.ts +14 -0
- package/dist/esm/lib/modelUtils.js +48 -0
- package/dist/esm/lib/modelUtils.js.map +1 -0
- package/dist/esm/lib/prompt.d.ts +14 -0
- package/dist/esm/lib/prompt.js +230 -0
- package/dist/esm/lib/prompt.js.map +1 -0
- package/dist/esm/lib/utils.d.ts +68 -0
- package/dist/esm/lib/utils.js +654 -0
- package/dist/esm/lib/utils.js.map +1 -0
- package/dist/esm/lib/v3/agent/AgentClient.d.ts +19 -0
- package/dist/esm/lib/v3/agent/AgentClient.js +17 -0
- package/dist/esm/lib/v3/agent/AgentClient.js.map +1 -0
- package/dist/esm/lib/v3/agent/AgentProvider.d.ts +20 -0
- package/dist/esm/lib/v3/agent/AgentProvider.js +77 -0
- package/dist/esm/lib/v3/agent/AgentProvider.js.map +1 -0
- package/dist/esm/lib/v3/agent/AnthropicCUAClient.d.ts +57 -0
- package/dist/esm/lib/v3/agent/AnthropicCUAClient.js +822 -0
- package/dist/esm/lib/v3/agent/AnthropicCUAClient.js.map +1 -0
- package/dist/esm/lib/v3/agent/GoogleCUAClient.d.ts +74 -0
- package/dist/esm/lib/v3/agent/GoogleCUAClient.js +799 -0
- package/dist/esm/lib/v3/agent/GoogleCUAClient.js.map +1 -0
- package/dist/esm/lib/v3/agent/MicrosoftCUAClient.d.ts +71 -0
- package/dist/esm/lib/v3/agent/MicrosoftCUAClient.js +770 -0
- package/dist/esm/lib/v3/agent/MicrosoftCUAClient.js.map +1 -0
- package/dist/esm/lib/v3/agent/OpenAICUAClient.d.ts +69 -0
- package/dist/esm/lib/v3/agent/OpenAICUAClient.js +615 -0
- package/dist/esm/lib/v3/agent/OpenAICUAClient.js.map +1 -0
- package/dist/esm/lib/v3/agent/prompts/agentSystemPrompt.d.ts +12 -0
- package/dist/esm/lib/v3/agent/prompts/agentSystemPrompt.js +186 -0
- package/dist/esm/lib/v3/agent/prompts/agentSystemPrompt.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/act.d.ts +13 -0
- package/dist/esm/lib/v3/agent/tools/act.js +49 -0
- package/dist/esm/lib/v3/agent/tools/act.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/ariaTree.d.ts +5 -0
- package/dist/esm/lib/v3/agent/tools/ariaTree.js +31 -0
- package/dist/esm/lib/v3/agent/tools/ariaTree.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/click.d.ts +6 -0
- package/dist/esm/lib/v3/agent/tools/click.js +104 -0
- package/dist/esm/lib/v3/agent/tools/click.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/clickAndHold.d.ts +14 -0
- package/dist/esm/lib/v3/agent/tools/clickAndHold.js +68 -0
- package/dist/esm/lib/v3/agent/tools/clickAndHold.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/dragAndDrop.d.ts +7 -0
- package/dist/esm/lib/v3/agent/tools/dragAndDrop.js +105 -0
- package/dist/esm/lib/v3/agent/tools/dragAndDrop.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/extract.d.ts +21 -0
- package/dist/esm/lib/v3/agent/tools/extract.js +93 -0
- package/dist/esm/lib/v3/agent/tools/extract.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/fillFormVision.d.ts +12 -0
- package/dist/esm/lib/v3/agent/tools/fillFormVision.js +143 -0
- package/dist/esm/lib/v3/agent/tools/fillFormVision.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/fillform.d.ts +13 -0
- package/dist/esm/lib/v3/agent/tools/fillform.js +56 -0
- package/dist/esm/lib/v3/agent/tools/fillform.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/goto.d.ts +12 -0
- package/dist/esm/lib/v3/agent/tools/goto.js +31 -0
- package/dist/esm/lib/v3/agent/tools/goto.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/index.d.ts +92 -0
- package/dist/esm/lib/v3/agent/tools/index.js +74 -0
- package/dist/esm/lib/v3/agent/tools/index.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/keys.d.ts +24 -0
- package/dist/esm/lib/v3/agent/tools/keys.js +60 -0
- package/dist/esm/lib/v3/agent/tools/keys.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/navback.d.ts +6 -0
- package/dist/esm/lib/v3/agent/tools/navback.js +23 -0
- package/dist/esm/lib/v3/agent/tools/navback.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/screenshot.d.ts +6 -0
- package/dist/esm/lib/v3/agent/tools/screenshot.js +26 -0
- package/dist/esm/lib/v3/agent/tools/screenshot.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/scroll.d.ts +19 -0
- package/dist/esm/lib/v3/agent/tools/scroll.js +142 -0
- package/dist/esm/lib/v3/agent/tools/scroll.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/search.d.ts +15 -0
- package/dist/esm/lib/v3/agent/tools/search.js +73 -0
- package/dist/esm/lib/v3/agent/tools/search.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/think.d.ts +6 -0
- package/dist/esm/lib/v3/agent/tools/think.js +24 -0
- package/dist/esm/lib/v3/agent/tools/think.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/type.d.ts +7 -0
- package/dist/esm/lib/v3/agent/tools/type.js +106 -0
- package/dist/esm/lib/v3/agent/tools/type.js.map +1 -0
- package/dist/esm/lib/v3/agent/tools/wait.d.ts +5 -0
- package/dist/esm/lib/v3/agent/tools/wait.js +53 -0
- package/dist/esm/lib/v3/agent/tools/wait.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/actionMapping.d.ts +3 -0
- package/dist/esm/lib/v3/agent/utils/actionMapping.js +100 -0
- package/dist/esm/lib/v3/agent/utils/actionMapping.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/coordinateNormalization.d.ts +13 -0
- package/dist/esm/lib/v3/agent/utils/coordinateNormalization.js +28 -0
- package/dist/esm/lib/v3/agent/utils/coordinateNormalization.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/cuaKeyMapping.d.ts +10 -0
- package/dist/esm/lib/v3/agent/utils/cuaKeyMapping.js +62 -0
- package/dist/esm/lib/v3/agent/utils/cuaKeyMapping.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/googleCustomToolHandler.d.ts +25 -0
- package/dist/esm/lib/v3/agent/utils/googleCustomToolHandler.js +145 -0
- package/dist/esm/lib/v3/agent/utils/googleCustomToolHandler.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/handleDoneToolCall.d.ts +22 -0
- package/dist/esm/lib/v3/agent/utils/handleDoneToolCall.js +101 -0
- package/dist/esm/lib/v3/agent/utils/handleDoneToolCall.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/imageCompression.d.ts +53 -0
- package/dist/esm/lib/v3/agent/utils/imageCompression.js +204 -0
- package/dist/esm/lib/v3/agent/utils/imageCompression.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/messageProcessing.d.ts +12 -0
- package/dist/esm/lib/v3/agent/utils/messageProcessing.js +164 -0
- package/dist/esm/lib/v3/agent/utils/messageProcessing.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/screenshotHandler.d.ts +10 -0
- package/dist/esm/lib/v3/agent/utils/screenshotHandler.js +26 -0
- package/dist/esm/lib/v3/agent/utils/screenshotHandler.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/validateExperimentalFeatures.d.ts +26 -0
- package/dist/esm/lib/v3/agent/utils/validateExperimentalFeatures.js +79 -0
- package/dist/esm/lib/v3/agent/utils/validateExperimentalFeatures.js.map +1 -0
- package/dist/esm/lib/v3/agent/utils/xpath.d.ts +11 -0
- package/dist/esm/lib/v3/agent/utils/xpath.js +19 -0
- package/dist/esm/lib/v3/agent/utils/xpath.js.map +1 -0
- package/dist/esm/lib/v3/api.d.ts +86 -0
- package/dist/esm/lib/v3/api.js +484 -0
- package/dist/esm/lib/v3/api.js.map +1 -0
- package/dist/esm/lib/v3/cache/ActCache.d.ts +23 -0
- package/dist/esm/lib/v3/cache/ActCache.js +292 -0
- package/dist/esm/lib/v3/cache/ActCache.js.map +1 -0
- package/dist/esm/lib/v3/cache/AgentCache.d.ts +109 -0
- package/dist/esm/lib/v3/cache/AgentCache.js +640 -0
- package/dist/esm/lib/v3/cache/AgentCache.js.map +1 -0
- package/dist/esm/lib/v3/cache/CacheStorage.d.ts +17 -0
- package/dist/esm/lib/v3/cache/CacheStorage.js +98 -0
- package/dist/esm/lib/v3/cache/CacheStorage.js.map +1 -0
- package/dist/esm/lib/v3/cache/serverAgentCache.d.ts +7 -0
- package/dist/esm/lib/v3/cache/serverAgentCache.js +49 -0
- package/dist/esm/lib/v3/cache/serverAgentCache.js.map +1 -0
- package/dist/esm/lib/v3/cache/utils.d.ts +15 -0
- package/dist/esm/lib/v3/cache/utils.js +39 -0
- package/dist/esm/lib/v3/cache/utils.js.map +1 -0
- package/dist/esm/lib/v3/dom/a11yScripts/index.d.ts +11 -0
- package/dist/esm/lib/v3/dom/a11yScripts/index.js +117 -0
- package/dist/esm/lib/v3/dom/a11yScripts/index.js.map +1 -0
- package/dist/esm/lib/v3/dom/build/a11yScripts.generated.d.ts +16 -0
- package/dist/esm/lib/v3/dom/build/a11yScripts.generated.js +20 -0
- package/dist/esm/lib/v3/dom/build/a11yScripts.generated.js.map +1 -0
- package/dist/esm/lib/v3/dom/build/locatorScripts.generated.d.ts +52 -0
- package/dist/esm/lib/v3/dom/build/locatorScripts.generated.js +56 -0
- package/dist/esm/lib/v3/dom/build/locatorScripts.generated.js.map +1 -0
- package/dist/esm/lib/v3/dom/build/reRenderScriptContent.d.ts +1 -0
- package/dist/esm/lib/v3/dom/build/reRenderScriptContent.js +2 -0
- package/dist/esm/lib/v3/dom/build/reRenderScriptContent.js.map +1 -0
- package/dist/esm/lib/v3/dom/build/rerender-index.js +1 -0
- package/dist/esm/lib/v3/dom/build/screenshotScripts.generated.d.ts +4 -0
- package/dist/esm/lib/v3/dom/build/screenshotScripts.generated.js +8 -0
- package/dist/esm/lib/v3/dom/build/screenshotScripts.generated.js.map +1 -0
- package/dist/esm/lib/v3/dom/build/scriptV3Content.d.ts +1 -0
- package/dist/esm/lib/v3/dom/build/scriptV3Content.js +2 -0
- package/dist/esm/lib/v3/dom/build/scriptV3Content.js.map +1 -0
- package/dist/esm/lib/v3/dom/build/v3-index.js +1 -0
- package/dist/esm/lib/v3/dom/genA11yScripts.d.ts +1 -0
- package/dist/esm/lib/v3/dom/genA11yScripts.js +54 -0
- package/dist/esm/lib/v3/dom/genA11yScripts.js.map +1 -0
- package/dist/esm/lib/v3/dom/genDomScripts.d.ts +1 -0
- package/dist/esm/lib/v3/dom/genDomScripts.js +38 -0
- package/dist/esm/lib/v3/dom/genDomScripts.js.map +1 -0
- package/dist/esm/lib/v3/dom/genLocatorScripts.d.ts +1 -0
- package/dist/esm/lib/v3/dom/genLocatorScripts.js +51 -0
- package/dist/esm/lib/v3/dom/genLocatorScripts.js.map +1 -0
- package/dist/esm/lib/v3/dom/genScreenshotScripts.d.ts +1 -0
- package/dist/esm/lib/v3/dom/genScreenshotScripts.js +37 -0
- package/dist/esm/lib/v3/dom/genScreenshotScripts.js.map +1 -0
- package/dist/esm/lib/v3/dom/index.d.ts +1 -0
- package/dist/esm/lib/v3/dom/index.js +2 -0
- package/dist/esm/lib/v3/dom/index.js.map +1 -0
- package/dist/esm/lib/v3/dom/locatorScripts/counts.d.ts +15 -0
- package/dist/esm/lib/v3/dom/locatorScripts/counts.js +272 -0
- package/dist/esm/lib/v3/dom/locatorScripts/counts.js.map +1 -0
- package/dist/esm/lib/v3/dom/locatorScripts/index.d.ts +4 -0
- package/dist/esm/lib/v3/dom/locatorScripts/index.js +5 -0
- package/dist/esm/lib/v3/dom/locatorScripts/index.js.map +1 -0
- package/dist/esm/lib/v3/dom/locatorScripts/scripts.d.ts +37 -0
- package/dist/esm/lib/v3/dom/locatorScripts/scripts.js +458 -0
- package/dist/esm/lib/v3/dom/locatorScripts/scripts.js.map +1 -0
- package/dist/esm/lib/v3/dom/locatorScripts/selectors.d.ts +4 -0
- package/dist/esm/lib/v3/dom/locatorScripts/selectors.js +283 -0
- package/dist/esm/lib/v3/dom/locatorScripts/selectors.js.map +1 -0
- package/dist/esm/lib/v3/dom/locatorScripts/waitForSelector.d.ts +19 -0
- package/dist/esm/lib/v3/dom/locatorScripts/waitForSelector.js +283 -0
- package/dist/esm/lib/v3/dom/locatorScripts/waitForSelector.js.map +1 -0
- package/dist/esm/lib/v3/dom/locatorScripts/xpathParser.d.ts +76 -0
- package/dist/esm/lib/v3/dom/locatorScripts/xpathParser.js +376 -0
- package/dist/esm/lib/v3/dom/locatorScripts/xpathParser.js.map +1 -0
- package/dist/esm/lib/v3/dom/locatorScripts/xpathResolver.d.ts +9 -0
- package/dist/esm/lib/v3/dom/locatorScripts/xpathResolver.js +196 -0
- package/dist/esm/lib/v3/dom/locatorScripts/xpathResolver.js.map +1 -0
- package/dist/esm/lib/v3/dom/piercer.entry.d.ts +1 -0
- package/dist/esm/lib/v3/dom/piercer.entry.js +3 -0
- package/dist/esm/lib/v3/dom/piercer.entry.js.map +1 -0
- package/dist/esm/lib/v3/dom/piercer.runtime.d.ts +23 -0
- package/dist/esm/lib/v3/dom/piercer.runtime.js +90 -0
- package/dist/esm/lib/v3/dom/piercer.runtime.js.map +1 -0
- package/dist/esm/lib/v3/dom/rerenderMissingShadows.entry.d.ts +1 -0
- package/dist/esm/lib/v3/dom/rerenderMissingShadows.entry.js +3 -0
- package/dist/esm/lib/v3/dom/rerenderMissingShadows.entry.js.map +1 -0
- package/dist/esm/lib/v3/dom/rerenderMissingShadows.runtime.d.ts +1 -0
- package/dist/esm/lib/v3/dom/rerenderMissingShadows.runtime.js +40 -0
- package/dist/esm/lib/v3/dom/rerenderMissingShadows.runtime.js.map +1 -0
- package/dist/esm/lib/v3/dom/screenshotScripts/index.d.ts +1 -0
- package/dist/esm/lib/v3/dom/screenshotScripts/index.js +2 -0
- package/dist/esm/lib/v3/dom/screenshotScripts/index.js.map +1 -0
- package/dist/esm/lib/v3/dom/screenshotScripts/resolveMaskRect.d.ts +8 -0
- package/dist/esm/lib/v3/dom/screenshotScripts/resolveMaskRect.js +82 -0
- package/dist/esm/lib/v3/dom/screenshotScripts/resolveMaskRect.js.map +1 -0
- package/dist/esm/lib/v3/external_clients/aisdk.d.ts +11 -0
- package/dist/esm/lib/v3/external_clients/aisdk.js +103 -0
- package/dist/esm/lib/v3/external_clients/aisdk.js.map +1 -0
- package/dist/esm/lib/v3/external_clients/customOpenAI.d.ts +18 -0
- package/dist/esm/lib/v3/external_clients/customOpenAI.js +220 -0
- package/dist/esm/lib/v3/external_clients/customOpenAI.js.map +1 -0
- package/dist/esm/lib/v3/flowLogger.d.ts +139 -0
- package/dist/esm/lib/v3/flowLogger.js +868 -0
- package/dist/esm/lib/v3/flowLogger.js.map +1 -0
- package/dist/esm/lib/v3/handlers/actHandler.d.ts +21 -0
- package/dist/esm/lib/v3/handlers/actHandler.js +340 -0
- package/dist/esm/lib/v3/handlers/actHandler.js.map +1 -0
- package/dist/esm/lib/v3/handlers/extractHandler.d.ts +31 -0
- package/dist/esm/lib/v3/handlers/extractHandler.js +139 -0
- package/dist/esm/lib/v3/handlers/extractHandler.js.map +1 -0
- package/dist/esm/lib/v3/handlers/handlerUtils/actHandlerUtils.d.ts +24 -0
- package/dist/esm/lib/v3/handlers/handlerUtils/actHandlerUtils.js +623 -0
- package/dist/esm/lib/v3/handlers/handlerUtils/actHandlerUtils.js.map +1 -0
- package/dist/esm/lib/v3/handlers/handlerUtils/timeoutGuard.d.ts +2 -0
- package/dist/esm/lib/v3/handlers/handlerUtils/timeoutGuard.js +14 -0
- package/dist/esm/lib/v3/handlers/handlerUtils/timeoutGuard.js.map +1 -0
- package/dist/esm/lib/v3/handlers/observeHandler.d.ts +17 -0
- package/dist/esm/lib/v3/handlers/observeHandler.js +156 -0
- package/dist/esm/lib/v3/handlers/observeHandler.js.map +1 -0
- package/dist/esm/lib/v3/handlers/v3AgentHandler.d.ts +32 -0
- package/dist/esm/lib/v3/handlers/v3AgentHandler.js +461 -0
- package/dist/esm/lib/v3/handlers/v3AgentHandler.js.map +1 -0
- package/dist/esm/lib/v3/handlers/v3CuaAgentHandler.d.ts +33 -0
- package/dist/esm/lib/v3/handlers/v3CuaAgentHandler.js +528 -0
- package/dist/esm/lib/v3/handlers/v3CuaAgentHandler.js.map +1 -0
- package/dist/esm/lib/v3/index.d.ts +17 -0
- package/dist/esm/lib/v3/index.js +13 -0
- package/dist/esm/lib/v3/index.js.map +1 -0
- package/dist/esm/lib/v3/launch/browserbase.d.ts +7 -0
- package/dist/esm/lib/v3/launch/browserbase.js +46 -0
- package/dist/esm/lib/v3/launch/browserbase.js.map +1 -0
- package/dist/esm/lib/v3/launch/local.d.ts +15 -0
- package/dist/esm/lib/v3/launch/local.js +98 -0
- package/dist/esm/lib/v3/launch/local.js.map +1 -0
- package/dist/esm/lib/v3/llm/AnthropicClient.d.ts +16 -0
- package/dist/esm/lib/v3/llm/AnthropicClient.js +239 -0
- package/dist/esm/lib/v3/llm/AnthropicClient.js.map +1 -0
- package/dist/esm/lib/v3/llm/CerebrasClient.d.ts +17 -0
- package/dist/esm/lib/v3/llm/CerebrasClient.js +235 -0
- package/dist/esm/lib/v3/llm/CerebrasClient.js.map +1 -0
- package/dist/esm/lib/v3/llm/GoogleClient.d.ts +19 -0
- package/dist/esm/lib/v3/llm/GoogleClient.js +369 -0
- package/dist/esm/lib/v3/llm/GoogleClient.js.map +1 -0
- package/dist/esm/lib/v3/llm/GroqClient.d.ts +17 -0
- package/dist/esm/lib/v3/llm/GroqClient.js +236 -0
- package/dist/esm/lib/v3/llm/GroqClient.js.map +1 -0
- package/dist/esm/lib/v3/llm/LLMClient.d.ts +121 -0
- package/dist/esm/lib/v3/llm/LLMClient.js +23 -0
- package/dist/esm/lib/v3/llm/LLMClient.js.map +1 -0
- package/dist/esm/lib/v3/llm/LLMProvider.d.ts +13 -0
- package/dist/esm/lib/v3/llm/LLMProvider.js +194 -0
- package/dist/esm/lib/v3/llm/LLMProvider.js.map +1 -0
- package/dist/esm/lib/v3/llm/OpenAIClient.d.ts +15 -0
- package/dist/esm/lib/v3/llm/OpenAIClient.js +329 -0
- package/dist/esm/lib/v3/llm/OpenAIClient.js.map +1 -0
- package/dist/esm/lib/v3/llm/aisdk.d.ts +15 -0
- package/dist/esm/lib/v3/llm/aisdk.js +348 -0
- package/dist/esm/lib/v3/llm/aisdk.js.map +1 -0
- package/dist/esm/lib/v3/logger.d.ts +9 -0
- package/dist/esm/lib/v3/logger.js +96 -0
- package/dist/esm/lib/v3/logger.js.map +1 -0
- package/dist/esm/lib/v3/mcp/connection.d.ts +11 -0
- package/dist/esm/lib/v3/mcp/connection.js +49 -0
- package/dist/esm/lib/v3/mcp/connection.js.map +1 -0
- package/dist/esm/lib/v3/mcp/utils.d.ts +3 -0
- package/dist/esm/lib/v3/mcp/utils.js +36 -0
- package/dist/esm/lib/v3/mcp/utils.js.map +1 -0
- package/dist/esm/lib/v3/shutdown/cleanupLocal.d.ts +14 -0
- package/dist/esm/lib/v3/shutdown/cleanupLocal.js +30 -0
- package/dist/esm/lib/v3/shutdown/cleanupLocal.js.map +1 -0
- package/dist/esm/lib/v3/shutdown/supervisor.d.ts +9 -0
- package/dist/esm/lib/v3/shutdown/supervisor.js +156 -0
- package/dist/esm/lib/v3/shutdown/supervisor.js.map +1 -0
- package/dist/esm/lib/v3/shutdown/supervisorClient.d.ts +15 -0
- package/dist/esm/lib/v3/shutdown/supervisorClient.js +97 -0
- package/dist/esm/lib/v3/shutdown/supervisorClient.js.map +1 -0
- package/dist/esm/lib/v3/tests/agent-abort-signal.spec.js +113 -0
- package/dist/esm/lib/v3/tests/agent-abort-signal.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/agent-cache-self-heal.spec.js +80 -0
- package/dist/esm/lib/v3/tests/agent-cache-self-heal.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/agent-callbacks.spec.js +374 -0
- package/dist/esm/lib/v3/tests/agent-callbacks.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/agent-experimental-validation.spec.js +357 -0
- package/dist/esm/lib/v3/tests/agent-experimental-validation.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/agent-hybrid-mode.spec.js +247 -0
- package/dist/esm/lib/v3/tests/agent-hybrid-mode.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/agent-message-continuation.spec.js +105 -0
- package/dist/esm/lib/v3/tests/agent-message-continuation.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/agent-streaming.spec.js +126 -0
- package/dist/esm/lib/v3/tests/agent-streaming.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/cdp-session-detached.spec.js +44 -0
- package/dist/esm/lib/v3/tests/cdp-session-detached.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/click-count.spec.js +112 -0
- package/dist/esm/lib/v3/tests/click-count.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/connect-to-existing-browser.spec.js +54 -0
- package/dist/esm/lib/v3/tests/connect-to-existing-browser.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/context-addInitScript.spec.js +176 -0
- package/dist/esm/lib/v3/tests/context-addInitScript.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/default-page-tracking.spec.js +53 -0
- package/dist/esm/lib/v3/tests/default-page-tracking.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/downloads.spec.js +58 -0
- package/dist/esm/lib/v3/tests/downloads.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/envReporter.js +57 -0
- package/dist/esm/lib/v3/tests/envReporter.js.map +7 -0
- package/dist/esm/lib/v3/tests/frame-get-location-and-click.spec.js +53 -0
- package/dist/esm/lib/v3/tests/frame-get-location-and-click.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/iframe-ctx-addInitScript.spec.js +447 -0
- package/dist/esm/lib/v3/tests/iframe-ctx-addInitScript.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/keep-alive.child.js +92 -0
- package/dist/esm/lib/v3/tests/keep-alive.child.js.map +7 -0
- package/dist/esm/lib/v3/tests/keep-alive.helpers.js +532 -0
- package/dist/esm/lib/v3/tests/keep-alive.helpers.js.map +7 -0
- package/dist/esm/lib/v3/tests/keep-alive.spec.js +19 -0
- package/dist/esm/lib/v3/tests/keep-alive.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/keyboard.spec.js +296 -0
- package/dist/esm/lib/v3/tests/keyboard.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-backend-node-id.spec.js +159 -0
- package/dist/esm/lib/v3/tests/locator-backend-node-id.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-content-methods.spec.js +191 -0
- package/dist/esm/lib/v3/tests/locator-content-methods.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-count-iframe.spec.js +108 -0
- package/dist/esm/lib/v3/tests/locator-count-iframe.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-count.spec.js +71 -0
- package/dist/esm/lib/v3/tests/locator-count.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-fill.spec.js +118 -0
- package/dist/esm/lib/v3/tests/locator-fill.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-input-methods.spec.js +136 -0
- package/dist/esm/lib/v3/tests/locator-input-methods.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-nth.spec.js +157 -0
- package/dist/esm/lib/v3/tests/locator-nth.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/locator-select-option.spec.js +242 -0
- package/dist/esm/lib/v3/tests/locator-select-option.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/logger-initialization.spec.js +552 -0
- package/dist/esm/lib/v3/tests/logger-initialization.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/multi-instance-logger.spec.js +269 -0
- package/dist/esm/lib/v3/tests/multi-instance-logger.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/nested-div.spec.js +23 -0
- package/dist/esm/lib/v3/tests/nested-div.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-addInitScript.spec.js +90 -0
- package/dist/esm/lib/v3/tests/page-addInitScript.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-console.spec.js +56 -0
- package/dist/esm/lib/v3/tests/page-console.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-drag-and-drop.spec.js +418 -0
- package/dist/esm/lib/v3/tests/page-drag-and-drop.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-goto-response.spec.js +35 -0
- package/dist/esm/lib/v3/tests/page-goto-response.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-hover.spec.js +167 -0
- package/dist/esm/lib/v3/tests/page-hover.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-screenshot.spec.js +273 -0
- package/dist/esm/lib/v3/tests/page-screenshot.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-scroll.spec.js +182 -0
- package/dist/esm/lib/v3/tests/page-scroll.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/page-send-cdp.spec.js +46 -0
- package/dist/esm/lib/v3/tests/page-send-cdp.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/perform-understudy-method.spec.js +98 -0
- package/dist/esm/lib/v3/tests/perform-understudy-method.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/setinputfiles.spec.js +126 -0
- package/dist/esm/lib/v3/tests/setinputfiles.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/shadow-iframe-oopif.spec.js +134 -0
- package/dist/esm/lib/v3/tests/shadow-iframe-oopif.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/shadow-iframe-spif.spec.js +134 -0
- package/dist/esm/lib/v3/tests/shadow-iframe-spif.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/testUtils.js +31 -0
- package/dist/esm/lib/v3/tests/testUtils.js.map +7 -0
- package/dist/esm/lib/v3/tests/text-selector-innermost.spec.js +100 -0
- package/dist/esm/lib/v3/tests/text-selector-innermost.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/timeouts.spec.js +32 -0
- package/dist/esm/lib/v3/tests/timeouts.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/user-data-dir.spec.js +43 -0
- package/dist/esm/lib/v3/tests/user-data-dir.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/v3.config.js +15 -0
- package/dist/esm/lib/v3/tests/v3.config.js.map +7 -0
- package/dist/esm/lib/v3/tests/v3.dynamic.config.js +43 -0
- package/dist/esm/lib/v3/tests/v3.dynamic.config.js.map +7 -0
- package/dist/esm/lib/v3/tests/v3.playwright.config.js +98 -0
- package/dist/esm/lib/v3/tests/v3.playwright.config.js.map +7 -0
- package/dist/esm/lib/v3/tests/wait-for-selector.spec.js +593 -0
- package/dist/esm/lib/v3/tests/wait-for-selector.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/wait-for-timeout.spec.js +97 -0
- package/dist/esm/lib/v3/tests/wait-for-timeout.spec.js.map +7 -0
- package/dist/esm/lib/v3/tests/xpath-for-location-deep.spec.js +77 -0
- package/dist/esm/lib/v3/tests/xpath-for-location-deep.spec.js.map +7 -0
- package/dist/esm/lib/v3/timeoutConfig.d.ts +2 -0
- package/dist/esm/lib/v3/timeoutConfig.js +27 -0
- package/dist/esm/lib/v3/timeoutConfig.js.map +1 -0
- package/dist/esm/lib/v3/types/private/agent.d.ts +6 -0
- package/dist/esm/lib/v3/types/private/agent.js +2 -0
- package/dist/esm/lib/v3/types/private/agent.js.map +1 -0
- package/dist/esm/lib/v3/types/private/api.d.ts +11 -0
- package/dist/esm/lib/v3/types/private/api.js +2 -0
- package/dist/esm/lib/v3/types/private/api.js.map +1 -0
- package/dist/esm/lib/v3/types/private/cache.d.ts +128 -0
- package/dist/esm/lib/v3/types/private/cache.js +2 -0
- package/dist/esm/lib/v3/types/private/cache.js.map +1 -0
- package/dist/esm/lib/v3/types/private/evaluator.d.ts +40 -0
- package/dist/esm/lib/v3/types/private/evaluator.js +2 -0
- package/dist/esm/lib/v3/types/private/evaluator.js.map +1 -0
- package/dist/esm/lib/v3/types/private/handlers.d.ts +38 -0
- package/dist/esm/lib/v3/types/private/handlers.js +16 -0
- package/dist/esm/lib/v3/types/private/handlers.js.map +1 -0
- package/dist/esm/lib/v3/types/private/index.d.ts +7 -0
- package/dist/esm/lib/v3/types/private/index.js +8 -0
- package/dist/esm/lib/v3/types/private/index.js.map +1 -0
- package/dist/esm/lib/v3/types/private/internal.d.ts +39 -0
- package/dist/esm/lib/v3/types/private/internal.js +2 -0
- package/dist/esm/lib/v3/types/private/internal.js.map +1 -0
- package/dist/esm/lib/v3/types/private/locator.d.ts +9 -0
- package/dist/esm/lib/v3/types/private/locator.js +2 -0
- package/dist/esm/lib/v3/types/private/locator.js.map +1 -0
- package/dist/esm/lib/v3/types/private/network.d.ts +34 -0
- package/dist/esm/lib/v3/types/private/network.js +3 -0
- package/dist/esm/lib/v3/types/private/network.js.map +1 -0
- package/dist/esm/lib/v3/types/private/shutdown.d.ts +31 -0
- package/dist/esm/lib/v3/types/private/shutdown.js +5 -0
- package/dist/esm/lib/v3/types/private/shutdown.js.map +1 -0
- package/dist/esm/lib/v3/types/private/shutdownErrors.d.ts +12 -0
- package/dist/esm/lib/v3/types/private/shutdownErrors.js +22 -0
- package/dist/esm/lib/v3/types/private/shutdownErrors.js.map +1 -0
- package/dist/esm/lib/v3/types/private/snapshot.d.ts +117 -0
- package/dist/esm/lib/v3/types/private/snapshot.js +2 -0
- package/dist/esm/lib/v3/types/private/snapshot.js.map +1 -0
- package/dist/esm/lib/v3/types/public/agent.d.ts +595 -0
- package/dist/esm/lib/v3/types/public/agent.js +15 -0
- package/dist/esm/lib/v3/types/public/agent.js.map +1 -0
- package/dist/esm/lib/v3/types/public/api.d.ts +1211 -0
- package/dist/esm/lib/v3/types/public/api.js +915 -0
- package/dist/esm/lib/v3/types/public/api.js.map +1 -0
- package/dist/esm/lib/v3/types/public/apiErrors.d.ts +18 -0
- package/dist/esm/lib/v3/types/public/apiErrors.js +32 -0
- package/dist/esm/lib/v3/types/public/apiErrors.js.map +1 -0
- package/dist/esm/lib/v3/types/public/index.d.ts +12 -0
- package/dist/esm/lib/v3/types/public/index.js +14 -0
- package/dist/esm/lib/v3/types/public/index.js.map +1 -0
- package/dist/esm/lib/v3/types/public/locator.d.ts +9 -0
- package/dist/esm/lib/v3/types/public/locator.js +2 -0
- package/dist/esm/lib/v3/types/public/locator.js.map +1 -0
- package/dist/esm/lib/v3/types/public/logs.d.ts +23 -0
- package/dist/esm/lib/v3/types/public/logs.js +13 -0
- package/dist/esm/lib/v3/types/public/logs.js.map +1 -0
- package/dist/esm/lib/v3/types/public/methods.d.ts +56 -0
- package/dist/esm/lib/v3/types/public/methods.js +15 -0
- package/dist/esm/lib/v3/types/public/methods.js.map +1 -0
- package/dist/esm/lib/v3/types/public/metrics.d.ts +27 -0
- package/dist/esm/lib/v3/types/public/metrics.js +2 -0
- package/dist/esm/lib/v3/types/public/metrics.js.map +1 -0
- package/dist/esm/lib/v3/types/public/model.d.ts +65 -0
- package/dist/esm/lib/v3/types/public/model.js +2 -0
- package/dist/esm/lib/v3/types/public/model.js.map +1 -0
- package/dist/esm/lib/v3/types/public/options.d.ts +70 -0
- package/dist/esm/lib/v3/types/public/options.js +4 -0
- package/dist/esm/lib/v3/types/public/options.js.map +1 -0
- package/dist/esm/lib/v3/types/public/page.d.ts +18 -0
- package/dist/esm/lib/v3/types/public/page.js +3 -0
- package/dist/esm/lib/v3/types/public/page.js.map +1 -0
- package/dist/esm/lib/v3/types/public/screenshotTypes.d.ts +25 -0
- package/dist/esm/lib/v3/types/public/screenshotTypes.js +2 -0
- package/dist/esm/lib/v3/types/public/screenshotTypes.js.map +1 -0
- package/dist/esm/lib/v3/types/public/sdkErrors.d.ts +152 -0
- package/dist/esm/lib/v3/types/public/sdkErrors.js +305 -0
- package/dist/esm/lib/v3/types/public/sdkErrors.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/a11yTree.d.ts +15 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/a11yTree.js +196 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/a11yTree.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/activeElement.d.ts +8 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/activeElement.js +121 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/activeElement.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/capture.d.ts +77 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/capture.js +336 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/capture.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/coordinateResolver.d.ts +7 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/coordinateResolver.js +129 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/coordinateResolver.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/domTree.d.ts +46 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/domTree.js +274 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/domTree.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/focusSelectors.d.ts +24 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/focusSelectors.js +216 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/focusSelectors.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/index.d.ts +4 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/index.js +5 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/index.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/sessions.d.ts +16 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/sessions.js +22 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/sessions.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/treeFormatUtils.d.ts +28 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/treeFormatUtils.js +135 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/treeFormatUtils.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/xpathUtils.d.ts +26 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/xpathUtils.js +102 -0
- package/dist/esm/lib/v3/understudy/a11y/snapshot/xpathUtils.js.map +1 -0
- package/dist/esm/lib/v3/understudy/a11yInvocation.d.ts +8 -0
- package/dist/esm/lib/v3/understudy/a11yInvocation.js +12 -0
- package/dist/esm/lib/v3/understudy/a11yInvocation.js.map +1 -0
- package/dist/esm/lib/v3/understudy/cdp.d.ts +69 -0
- package/dist/esm/lib/v3/understudy/cdp.js +251 -0
- package/dist/esm/lib/v3/understudy/cdp.js.map +1 -0
- package/dist/esm/lib/v3/understudy/consoleMessage.d.ts +22 -0
- package/dist/esm/lib/v3/understudy/consoleMessage.js +66 -0
- package/dist/esm/lib/v3/understudy/consoleMessage.js.map +1 -0
- package/dist/esm/lib/v3/understudy/context.d.ts +132 -0
- package/dist/esm/lib/v3/understudy/context.js +687 -0
- package/dist/esm/lib/v3/understudy/context.js.map +1 -0
- package/dist/esm/lib/v3/understudy/deepLocator.d.ts +87 -0
- package/dist/esm/lib/v3/understudy/deepLocator.js +218 -0
- package/dist/esm/lib/v3/understudy/deepLocator.js.map +1 -0
- package/dist/esm/lib/v3/understudy/executionContextRegistry.d.ts +15 -0
- package/dist/esm/lib/v3/understudy/executionContextRegistry.js +83 -0
- package/dist/esm/lib/v3/understudy/executionContextRegistry.js.map +1 -0
- package/dist/esm/lib/v3/understudy/fileUploadUtils.d.ts +13 -0
- package/dist/esm/lib/v3/understudy/fileUploadUtils.js +81 -0
- package/dist/esm/lib/v3/understudy/fileUploadUtils.js.map +1 -0
- package/dist/esm/lib/v3/understudy/frame.d.ts +69 -0
- package/dist/esm/lib/v3/understudy/frame.js +211 -0
- package/dist/esm/lib/v3/understudy/frame.js.map +1 -0
- package/dist/esm/lib/v3/understudy/frameLocator.d.ts +50 -0
- package/dist/esm/lib/v3/understudy/frameLocator.js +255 -0
- package/dist/esm/lib/v3/understudy/frameLocator.js.map +1 -0
- package/dist/esm/lib/v3/understudy/frameRegistry.d.ts +101 -0
- package/dist/esm/lib/v3/understudy/frameRegistry.js +298 -0
- package/dist/esm/lib/v3/understudy/frameRegistry.js.map +1 -0
- package/dist/esm/lib/v3/understudy/initScripts.d.ts +2 -0
- package/dist/esm/lib/v3/understudy/initScripts.js +33 -0
- package/dist/esm/lib/v3/understudy/initScripts.js.map +1 -0
- package/dist/esm/lib/v3/understudy/lifecycleWatcher.d.ts +64 -0
- package/dist/esm/lib/v3/understudy/lifecycleWatcher.js +245 -0
- package/dist/esm/lib/v3/understudy/lifecycleWatcher.js.map +1 -0
- package/dist/esm/lib/v3/understudy/locator.d.ts +194 -0
- package/dist/esm/lib/v3/understudy/locator.js +753 -0
- package/dist/esm/lib/v3/understudy/locator.js.map +1 -0
- package/dist/esm/lib/v3/understudy/locatorInvocation.d.ts +8 -0
- package/dist/esm/lib/v3/understudy/locatorInvocation.js +12 -0
- package/dist/esm/lib/v3/understudy/locatorInvocation.js.map +1 -0
- package/dist/esm/lib/v3/understudy/navigationResponseTracker.d.ts +84 -0
- package/dist/esm/lib/v3/understudy/navigationResponseTracker.js +224 -0
- package/dist/esm/lib/v3/understudy/navigationResponseTracker.js.map +1 -0
- package/dist/esm/lib/v3/understudy/networkManager.d.ts +53 -0
- package/dist/esm/lib/v3/understudy/networkManager.js +306 -0
- package/dist/esm/lib/v3/understudy/networkManager.js.map +1 -0
- package/dist/esm/lib/v3/understudy/page.d.ts +354 -0
- package/dist/esm/lib/v3/understudy/page.js +1941 -0
- package/dist/esm/lib/v3/understudy/page.js.map +1 -0
- package/dist/esm/lib/v3/understudy/piercer.d.ts +4 -0
- package/dist/esm/lib/v3/understudy/piercer.js +61 -0
- package/dist/esm/lib/v3/understudy/piercer.js.map +1 -0
- package/dist/esm/lib/v3/understudy/response.d.ts +137 -0
- package/dist/esm/lib/v3/understudy/response.js +330 -0
- package/dist/esm/lib/v3/understudy/response.js.map +1 -0
- package/dist/esm/lib/v3/understudy/screenshotUtils.d.ts +16 -0
- package/dist/esm/lib/v3/understudy/screenshotUtils.js +352 -0
- package/dist/esm/lib/v3/understudy/screenshotUtils.js.map +1 -0
- package/dist/esm/lib/v3/understudy/selectorResolver.d.ts +38 -0
- package/dist/esm/lib/v3/understudy/selectorResolver.js +296 -0
- package/dist/esm/lib/v3/understudy/selectorResolver.js.map +1 -0
- package/dist/esm/lib/v3/v3.d.ts +191 -0
- package/dist/esm/lib/v3/v3.js +1572 -0
- package/dist/esm/lib/v3/v3.js.map +1 -0
- package/dist/esm/lib/v3/zodCompat.d.ts +12 -0
- package/dist/esm/lib/v3/zodCompat.js +17 -0
- package/dist/esm/lib/v3/zodCompat.js.map +1 -0
- package/dist/esm/lib/v3Evaluator.d.ts +19 -0
- package/dist/esm/lib/v3Evaluator.js +210 -0
- package/dist/esm/lib/v3Evaluator.js.map +1 -0
- package/dist/esm/lib/version.d.ts +5 -0
- package/dist/esm/lib/version.js +6 -0
- package/dist/esm/lib/version.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/tests/agent-execution-model.test.js +139 -0
- package/dist/esm/tests/agent-execution-model.test.js.map +7 -0
- package/dist/esm/tests/browserbase-session-accessors.test.js +101 -0
- package/dist/esm/tests/browserbase-session-accessors.test.js.map +7 -0
- package/dist/esm/tests/cache-llm-resolution.test.js +187 -0
- package/dist/esm/tests/cache-llm-resolution.test.js.map +7 -0
- package/dist/esm/tests/helpers/mockCDPSession.js +27 -0
- package/dist/esm/tests/helpers/mockCDPSession.js.map +7 -0
- package/dist/esm/tests/llm-provider.test.js +57 -0
- package/dist/esm/tests/llm-provider.test.js.map +7 -0
- package/dist/esm/tests/model-deprecation.test.js +135 -0
- package/dist/esm/tests/model-deprecation.test.js.map +7 -0
- package/dist/esm/tests/model-utils.test.js +43 -0
- package/dist/esm/tests/model-utils.test.js.map +7 -0
- package/dist/esm/tests/page-snapshot.test.js +36 -0
- package/dist/esm/tests/page-snapshot.test.js.map +7 -0
- package/dist/esm/tests/public-api/export-surface.test.js +53 -0
- package/dist/esm/tests/public-api/export-surface.test.js.map +7 -0
- package/dist/esm/tests/public-api/llm-and-agents.test.js +128 -0
- package/dist/esm/tests/public-api/llm-and-agents.test.js.map +7 -0
- package/dist/esm/tests/public-api/public-error-types.test.js +71 -0
- package/dist/esm/tests/public-api/public-error-types.test.js.map +7 -0
- package/dist/esm/tests/public-api/public-types.test.js +74 -0
- package/dist/esm/tests/public-api/public-types.test.js.map +7 -0
- package/dist/esm/tests/public-api/runtime-utils.test.js +31 -0
- package/dist/esm/tests/public-api/runtime-utils.test.js.map +7 -0
- package/dist/esm/tests/public-api/schema-utils.test.js +78 -0
- package/dist/esm/tests/public-api/schema-utils.test.js.map +7 -0
- package/dist/esm/tests/public-api/timeout-error-types.test.js +81 -0
- package/dist/esm/tests/public-api/timeout-error-types.test.js.map +7 -0
- package/dist/esm/tests/public-api/tool-type-export.test.js +25 -0
- package/dist/esm/tests/public-api/tool-type-export.test.js.map +7 -0
- package/dist/esm/tests/public-api/v3-core.test.js +82 -0
- package/dist/esm/tests/public-api/v3-core.test.js.map +7 -0
- package/dist/esm/tests/safety-confirmation.test.js +134 -0
- package/dist/esm/tests/safety-confirmation.test.js.map +7 -0
- package/dist/esm/tests/snapshot-a11y-resolvers.test.js +348 -0
- package/dist/esm/tests/snapshot-a11y-resolvers.test.js.map +7 -0
- package/dist/esm/tests/snapshot-a11y-tree-utils.test.js +300 -0
- package/dist/esm/tests/snapshot-a11y-tree-utils.test.js.map +7 -0
- package/dist/esm/tests/snapshot-capture-orchestration.test.js +381 -0
- package/dist/esm/tests/snapshot-capture-orchestration.test.js.map +7 -0
- package/dist/esm/tests/snapshot-cbor.test.js +197 -0
- package/dist/esm/tests/snapshot-cbor.test.js.map +7 -0
- package/dist/esm/tests/snapshot-dom-session-builders.test.js +251 -0
- package/dist/esm/tests/snapshot-dom-session-builders.test.js.map +7 -0
- package/dist/esm/tests/snapshot-dom-tree-utils.test.js +109 -0
- package/dist/esm/tests/snapshot-dom-tree-utils.test.js.map +7 -0
- package/dist/esm/tests/snapshot-focus-selectors-utils.test.js +49 -0
- package/dist/esm/tests/snapshot-focus-selectors-utils.test.js.map +7 -0
- package/dist/esm/tests/snapshot-frame-merge.test.js +391 -0
- package/dist/esm/tests/snapshot-frame-merge.test.js.map +7 -0
- package/dist/esm/tests/snapshot-tree-format-utils.test.js +113 -0
- package/dist/esm/tests/snapshot-tree-format-utils.test.js.map +7 -0
- package/dist/esm/tests/snapshot-xpath-utils.test.js +79 -0
- package/dist/esm/tests/snapshot-xpath-utils.test.js.map +7 -0
- package/dist/esm/tests/timeout-handlers.test.js +850 -0
- package/dist/esm/tests/timeout-handlers.test.js.map +7 -0
- package/dist/esm/tests/xpath-parser.test.js +317 -0
- package/dist/esm/tests/xpath-parser.test.js.map +7 -0
- package/dist/esm/tests/xpath-resolver.test.js +73 -0
- package/dist/esm/tests/xpath-resolver.test.js.map +7 -0
- package/dist/esm/tests/zod-enum-compatibility.test.js +97 -0
- package/dist/esm/tests/zod-enum-compatibility.test.js.map +7 -0
- package/package.json +37 -24
- package/dist/index.d.ts +0 -4363
- package/dist/index.js +0 -76530
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { describe, expectTypeOf, it } from "vitest";
|
|
2
|
+
describe("Stagehand public API types", () => {
|
|
3
|
+
describe("AnyPage", () => {
|
|
4
|
+
it("matches expected type shape", () => {
|
|
5
|
+
expectTypeOf().toEqualTypeOf();
|
|
6
|
+
});
|
|
7
|
+
});
|
|
8
|
+
describe("ActOptions", () => {
|
|
9
|
+
it("matches expected type shape", () => {
|
|
10
|
+
expectTypeOf().toEqualTypeOf();
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
describe("ActResult", () => {
|
|
14
|
+
it("matches expected type shape", () => {
|
|
15
|
+
expectTypeOf().toEqualTypeOf();
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
describe("ExtractOptions", () => {
|
|
19
|
+
it("matches expected type shape", () => {
|
|
20
|
+
expectTypeOf().toEqualTypeOf();
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
describe("ObserveOptions", () => {
|
|
24
|
+
it("matches expected type shape", () => {
|
|
25
|
+
expectTypeOf().toEqualTypeOf();
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
describe("Action", () => {
|
|
29
|
+
it("matches expected type shape", () => {
|
|
30
|
+
expectTypeOf().toEqualTypeOf();
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
describe("AgentAction", () => {
|
|
34
|
+
it("has type field", () => {
|
|
35
|
+
expectTypeOf().toEqualTypeOf();
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
describe("AgentExecuteOptions", () => {
|
|
39
|
+
it("matches expected type shape", () => {
|
|
40
|
+
expectTypeOf().toEqualTypeOf();
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
describe("AgentStreamExecuteOptions", () => {
|
|
44
|
+
it("matches expected type shape", () => {
|
|
45
|
+
expectTypeOf().toEqualTypeOf();
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
describe("AgentExecutionOptions", () => {
|
|
49
|
+
it("matches expected type shape", () => {
|
|
50
|
+
expectTypeOf().toEqualTypeOf();
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
describe("AgentResult", () => {
|
|
54
|
+
it("matches expected type shape", () => {
|
|
55
|
+
expectTypeOf().toEqualTypeOf();
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
describe("AgentConfig", () => {
|
|
59
|
+
it("matches expected type shape", () => {
|
|
60
|
+
expectTypeOf().toExtend();
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
describe("AgentToolMode", () => {
|
|
64
|
+
it("matches expected type shape", () => {
|
|
65
|
+
expectTypeOf().toEqualTypeOf();
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
describe("HistoryEntry", () => {
|
|
69
|
+
it("matches expected type shape", () => {
|
|
70
|
+
expectTypeOf().toEqualTypeOf();
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
//# sourceMappingURL=public-types.test.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../tests/public-api/public-types.test.ts"],
|
|
4
|
+
"sourcesContent": ["import { describe, expectTypeOf, it } from \"vitest\";\nimport * as Stagehand from \"@browserbasehq/stagehand\";\n\n// Type-level manifest of all expected exported types\n// Since these types don't exist at runtime, we currently need to manually add new publicly exported types\n// to this list ourselves - it's not automatically going to catch changes like our export-surface.test.ts does.\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\ntype ExpectedExportedTypes = {\n // Types from model.ts\n AvailableModel: Stagehand.AvailableModel;\n AvailableCuaModel: Stagehand.AvailableCuaModel;\n ModelProvider: Stagehand.ModelProvider;\n ClientOptions: Stagehand.ClientOptions;\n ModelConfiguration: Stagehand.ModelConfiguration;\n AnthropicJsonSchemaObject: Stagehand.AnthropicJsonSchemaObject;\n AISDKProvider: Stagehand.AISDKProvider;\n AISDKCustomProvider: Stagehand.AISDKCustomProvider;\n LLMTool: Stagehand.LLMTool;\n // Types from methods.ts\n ActOptions: Stagehand.ActOptions;\n ActResult: Stagehand.ActResult;\n ExtractResult: Stagehand.ExtractResult<Stagehand.StagehandZodSchema>;\n Action: Stagehand.Action;\n HistoryEntry: Stagehand.HistoryEntry;\n ExtractOptions: Stagehand.ExtractOptions;\n ObserveOptions: Stagehand.ObserveOptions;\n V3FunctionName: Stagehand.V3FunctionName;\n // Types from agent.ts\n Tool: Stagehand.Tool;\n AgentAction: Stagehand.AgentAction;\n AgentResult: Stagehand.AgentResult;\n AgentExecuteOptions: Stagehand.AgentExecuteOptions;\n AgentType: Stagehand.AgentType;\n AgentExecutionOptions: Stagehand.AgentExecutionOptions<Stagehand.AgentExecuteOptions>;\n AgentHandlerOptions: Stagehand.AgentHandlerOptions;\n ActionExecutionResult: Stagehand.ActionExecutionResult;\n ToolUseItem: Stagehand.ToolUseItem;\n AnthropicMessage: Stagehand.AnthropicMessage;\n AnthropicContentBlock: Stagehand.AnthropicContentBlock;\n AnthropicTextBlock: Stagehand.AnthropicTextBlock;\n AnthropicToolResult: Stagehand.AnthropicToolResult;\n ResponseItem: Stagehand.ResponseItem;\n ComputerCallItem: Stagehand.ComputerCallItem;\n FunctionCallItem: Stagehand.FunctionCallItem;\n ResponseInputItem: Stagehand.ResponseInputItem;\n AgentInstance: Stagehand.AgentInstance;\n AgentProviderType: Stagehand.AgentProviderType;\n AgentModelConfig: Stagehand.AgentModelConfig;\n AgentConfig: Stagehand.AgentConfig;\n AgentToolMode: Stagehand.AgentToolMode;\n AgentCallbacks: Stagehand.AgentCallbacks;\n AgentExecuteCallbacks: Stagehand.AgentExecuteCallbacks;\n AgentStreamCallbacks: Stagehand.AgentStreamCallbacks;\n AgentExecuteOptionsBase: Stagehand.AgentExecuteOptionsBase;\n AgentStreamExecuteOptions: Stagehand.AgentStreamExecuteOptions;\n ModelMessage: Stagehand.ModelMessage;\n // Types from agent/tools\n AgentTools: Stagehand.AgentTools;\n AgentToolTypesMap: Stagehand.AgentToolTypesMap;\n AgentUITools: Stagehand.AgentUITools;\n AgentToolCall: Stagehand.AgentToolCall;\n AgentToolResult: Stagehand.AgentToolResult;\n // Types from logs.ts\n LogLevel: Stagehand.LogLevel;\n LogLine: Stagehand.LogLine;\n Logger: Stagehand.Logger;\n // Types from metrics.ts\n StagehandMetrics: Stagehand.StagehandMetrics;\n // Types from options.ts\n V3Env: Stagehand.V3Env;\n LocalBrowserLaunchOptions: Stagehand.LocalBrowserLaunchOptions;\n V3Options: Stagehand.V3Options;\n // Types from page.ts\n AnyPage: Stagehand.AnyPage;\n Page: Stagehand.Page;\n PlaywrightPage: Stagehand.PlaywrightPage;\n PatchrightPage: Stagehand.PatchrightPage;\n PuppeteerPage: Stagehand.PuppeteerPage;\n ConsoleListener: Stagehand.ConsoleListener;\n LoadState: Stagehand.LoadState;\n // Types from LLMClient.ts\n ChatMessage: Stagehand.ChatMessage;\n ChatMessageContent: Stagehand.ChatMessageContent;\n ChatMessageImageContent: Stagehand.ChatMessageImageContent;\n ChatMessageTextContent: Stagehand.ChatMessageTextContent;\n ChatCompletionOptions: Stagehand.ChatCompletionOptions;\n LLMResponse: Stagehand.LLMResponse;\n CreateChatCompletionOptions: Stagehand.CreateChatCompletionOptions;\n LLMUsage: Stagehand.LLMUsage;\n LLMParsedResponse: Stagehand.LLMParsedResponse<Record<string, unknown>>;\n // Types from zodCompat.ts\n StagehandZodSchema: Stagehand.StagehandZodSchema;\n StagehandZodObject: Stagehand.StagehandZodObject;\n InferStagehandSchema: Stagehand.InferStagehandSchema<Stagehand.StagehandZodSchema>;\n JsonSchemaDocument: Stagehand.JsonSchemaDocument;\n // Types from utils.ts\n JsonSchema: Stagehand.JsonSchema;\n JsonSchemaProperty: Stagehand.JsonSchemaProperty;\n};\n\ndescribe(\"Stagehand public API types\", () => {\n describe(\"AnyPage\", () => {\n type ExpectedAnyPage =\n | Stagehand.PlaywrightPage\n | Stagehand.PuppeteerPage\n | Stagehand.PatchrightPage\n | Stagehand.Page;\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.AnyPage>().toEqualTypeOf<ExpectedAnyPage>();\n });\n });\n\n describe(\"ActOptions\", () => {\n type ExpectedActOptions = {\n model?: Stagehand.ModelConfiguration;\n variables?: Record<string, string>;\n timeout?: number;\n page?: Stagehand.AnyPage;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.ActOptions>().toEqualTypeOf<ExpectedActOptions>();\n });\n });\n\n describe(\"ActResult\", () => {\n type ExpectedActResult = {\n success: boolean;\n message: string;\n actionDescription: string;\n actions: Stagehand.Action[];\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.ActResult>().toEqualTypeOf<ExpectedActResult>();\n });\n });\n\n describe(\"ExtractOptions\", () => {\n type ExpectedExtractOptions = {\n model?: Stagehand.ModelConfiguration;\n timeout?: number;\n selector?: string;\n page?: Stagehand.AnyPage;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.ExtractOptions>().toEqualTypeOf<ExpectedExtractOptions>();\n });\n });\n\n describe(\"ObserveOptions\", () => {\n type ExpectedObserveOptions = {\n model?: Stagehand.ModelConfiguration;\n timeout?: number;\n selector?: string;\n page?: Stagehand.AnyPage;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.ObserveOptions>().toEqualTypeOf<ExpectedObserveOptions>();\n });\n });\n\n describe(\"Action\", () => {\n type ExpectedAction = {\n selector: string;\n description: string;\n method?: string;\n arguments?: string[];\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.Action>().toEqualTypeOf<ExpectedAction>();\n });\n });\n\n describe(\"AgentAction\", () => {\n // AgentAction is a separate type from Action, not an extension\n // It has additional fields like type, reasoning, taskCompleted, etc.\n it(\"has type field\", () => {\n type TestAction = { type: string } & Stagehand.AgentAction;\n expectTypeOf<TestAction[\"type\"]>().toEqualTypeOf<string>();\n });\n });\n\n describe(\"AgentExecuteOptions\", () => {\n type ExpectedAgentExecuteOptions = {\n instruction: string;\n maxSteps?: number;\n page?: Stagehand.AnyPage;\n highlightCursor?: boolean;\n messages?: Stagehand.ModelMessage[];\n signal?: AbortSignal;\n excludeTools?: string[];\n output?: Stagehand.StagehandZodObject;\n callbacks?: Stagehand.AgentExecuteCallbacks;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.AgentExecuteOptions>().toEqualTypeOf<ExpectedAgentExecuteOptions>();\n });\n });\n\n describe(\"AgentStreamExecuteOptions\", () => {\n type ExpectedAgentStreamExecuteOptions = {\n instruction: string;\n maxSteps?: number;\n page?: Stagehand.AnyPage;\n highlightCursor?: boolean;\n messages?: Stagehand.ModelMessage[];\n signal?: AbortSignal;\n excludeTools?: string[];\n output?: Stagehand.StagehandZodObject;\n callbacks?: Stagehand.AgentStreamCallbacks;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.AgentStreamExecuteOptions>().toEqualTypeOf<ExpectedAgentStreamExecuteOptions>();\n });\n });\n\n describe(\"AgentExecutionOptions\", () => {\n type ExpectedAgentExecutionOptions<T = Stagehand.AgentExecuteOptions> = {\n options: T;\n logger: (message: Stagehand.LogLine) => void;\n retries?: number;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<\n Stagehand.AgentExecutionOptions<Stagehand.AgentExecuteOptions>\n >().toEqualTypeOf<\n ExpectedAgentExecutionOptions<Stagehand.AgentExecuteOptions>\n >();\n });\n });\n\n describe(\"AgentResult\", () => {\n type ExpectedAgentResult = {\n success: boolean;\n message: string;\n actions: Stagehand.AgentAction[];\n completed: boolean;\n metadata?: Record<string, unknown>;\n usage?: {\n input_tokens: number;\n output_tokens: number;\n reasoning_tokens?: number;\n cached_input_tokens?: number;\n inference_time_ms: number;\n };\n messages?: Stagehand.ModelMessage[];\n output?: Record<string, unknown>;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.AgentResult>().toEqualTypeOf<ExpectedAgentResult>();\n });\n });\n\n describe(\"AgentConfig\", () => {\n type ExpectedAgentConfig = {\n systemPrompt?: string;\n integrations?: (unknown | string)[];\n tools?: unknown;\n cua?: boolean;\n model?: string | Stagehand.AgentModelConfig<string>;\n executionModel?: string | Stagehand.AgentModelConfig<string>;\n stream?: boolean;\n mode?: Stagehand.AgentToolMode;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.AgentConfig>().toExtend<ExpectedAgentConfig>();\n });\n });\n\n describe(\"AgentToolMode\", () => {\n type ExpectedAgentToolMode = \"dom\" | \"hybrid\" | \"cua\";\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.AgentToolMode>().toEqualTypeOf<ExpectedAgentToolMode>();\n });\n });\n\n describe(\"HistoryEntry\", () => {\n type ExpectedHistoryEntry = {\n method: \"act\" | \"extract\" | \"observe\" | \"navigate\" | \"agent\";\n parameters: unknown;\n result: unknown;\n timestamp: string;\n };\n\n it(\"matches expected type shape\", () => {\n expectTypeOf<Stagehand.HistoryEntry>().toEqualTypeOf<ExpectedHistoryEntry>();\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,cAAc,UAAU;AAqG3C,SAAS,8BAA8B,MAAM;AAC3C,WAAS,WAAW,MAAM;AAOxB,OAAG,+BAA+B,MAAM;AACtC,mBAAgC,EAAE,cAA+B;AAAA,IACnE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,cAAc,MAAM;AAQ3B,OAAG,+BAA+B,MAAM;AACtC,mBAAmC,EAAE,cAAkC;AAAA,IACzE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,aAAa,MAAM;AAQ1B,OAAG,+BAA+B,MAAM;AACtC,mBAAkC,EAAE,cAAiC;AAAA,IACvE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,kBAAkB,MAAM;AAQ/B,OAAG,+BAA+B,MAAM;AACtC,mBAAuC,EAAE,cAAsC;AAAA,IACjF,CAAC;AAAA,EACH,CAAC;AAED,WAAS,kBAAkB,MAAM;AAQ/B,OAAG,+BAA+B,MAAM;AACtC,mBAAuC,EAAE,cAAsC;AAAA,IACjF,CAAC;AAAA,EACH,CAAC;AAED,WAAS,UAAU,MAAM;AAQvB,OAAG,+BAA+B,MAAM;AACtC,mBAA+B,EAAE,cAA8B;AAAA,IACjE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,eAAe,MAAM;AAG5B,OAAG,kBAAkB,MAAM;AAEzB,mBAAiC,EAAE,cAAsB;AAAA,IAC3D,CAAC;AAAA,EACH,CAAC;AAED,WAAS,uBAAuB,MAAM;AAapC,OAAG,+BAA+B,MAAM;AACtC,mBAA4C,EAAE,cAA2C;AAAA,IAC3F,CAAC;AAAA,EACH,CAAC;AAED,WAAS,6BAA6B,MAAM;AAa1C,OAAG,+BAA+B,MAAM;AACtC,mBAAkD,EAAE,cAAiD;AAAA,IACvG,CAAC;AAAA,EACH,CAAC;AAED,WAAS,yBAAyB,MAAM;AAOtC,OAAG,+BAA+B,MAAM;AACtC,mBAEE,EAAE,cAEF;AAAA,IACJ,CAAC;AAAA,EACH,CAAC;AAED,WAAS,eAAe,MAAM;AAkB5B,OAAG,+BAA+B,MAAM;AACtC,mBAAoC,EAAE,cAAmC;AAAA,IAC3E,CAAC;AAAA,EACH,CAAC;AAED,WAAS,eAAe,MAAM;AAY5B,OAAG,+BAA+B,MAAM;AACtC,mBAAoC,EAAE,SAA8B;AAAA,IACtE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,iBAAiB,MAAM;AAG9B,OAAG,+BAA+B,MAAM;AACtC,mBAAsC,EAAE,cAAqC;AAAA,IAC/E,CAAC;AAAA,EACH,CAAC;AAED,WAAS,gBAAgB,MAAM;AAQ7B,OAAG,+BAA+B,MAAM;AACtC,mBAAqC,EAAE,cAAoC;AAAA,IAC7E,CAAC;AAAA,EACH,CAAC;AACH,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { describe, expectTypeOf, it } from "vitest";
|
|
2
|
+
import * as Stagehand from "@browserbasehq/stagehand";
|
|
3
|
+
describe("Runtime Utils public API types", () => {
|
|
4
|
+
describe("injectUrls", () => {
|
|
5
|
+
it("has correct parameter types", () => {
|
|
6
|
+
expectTypeOf(
|
|
7
|
+
Stagehand.injectUrls
|
|
8
|
+
).parameters.branded.toEqualTypeOf();
|
|
9
|
+
});
|
|
10
|
+
});
|
|
11
|
+
describe("isRunningInBun", () => {
|
|
12
|
+
it("has correct parameter types", () => {
|
|
13
|
+
expectTypeOf(
|
|
14
|
+
Stagehand.isRunningInBun
|
|
15
|
+
).parameters.branded.toEqualTypeOf();
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
describe("loadApiKeyFromEnv", () => {
|
|
19
|
+
it("has correct parameter types", () => {
|
|
20
|
+
expectTypeOf(
|
|
21
|
+
Stagehand.loadApiKeyFromEnv
|
|
22
|
+
).parameters.branded.toEqualTypeOf();
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
describe("providerEnvVarMap", () => {
|
|
26
|
+
it("maps providers to environment variable names", () => {
|
|
27
|
+
expectTypeOf().toExtend();
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
//# sourceMappingURL=runtime-utils.test.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../tests/public-api/runtime-utils.test.ts"],
|
|
4
|
+
"sourcesContent": ["import { describe, expectTypeOf, it } from \"vitest\";\nimport * as Stagehand from \"@browserbasehq/stagehand\";\n\ndescribe(\"Runtime Utils public API types\", () => {\n describe(\"injectUrls\", () => {\n type ExpectedInjectUrlsParams = [\n unknown,\n Array<string | number>,\n Record<string, string>,\n ];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.injectUrls,\n ).parameters.branded.toEqualTypeOf<ExpectedInjectUrlsParams>();\n });\n });\n\n describe(\"isRunningInBun\", () => {\n type ExpectedIsRunningInBunParams = [];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.isRunningInBun,\n ).parameters.branded.toEqualTypeOf<ExpectedIsRunningInBunParams>();\n });\n });\n\n describe(\"loadApiKeyFromEnv\", () => {\n type ExpectedLoadApiKeyFromEnvParams = [\n string | undefined,\n (logLine: Stagehand.LogLine) => void,\n ];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.loadApiKeyFromEnv,\n ).parameters.branded.toEqualTypeOf<ExpectedLoadApiKeyFromEnvParams>();\n });\n });\n\n describe(\"providerEnvVarMap\", () => {\n type ExpectedProviderEnvVarMap = Partial<\n Record<string, string | Array<string>>\n >;\n\n it(\"maps providers to environment variable names\", () => {\n expectTypeOf<\n typeof Stagehand.providerEnvVarMap\n >().toExtend<ExpectedProviderEnvVarMap>();\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,cAAc,UAAU;AAC3C,YAAY,eAAe;AAE3B,SAAS,kCAAkC,MAAM;AAC/C,WAAS,cAAc,MAAM;AAO3B,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAAwC;AAAA,IAC/D,CAAC;AAAA,EACH,CAAC;AAED,WAAS,kBAAkB,MAAM;AAG/B,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA4C;AAAA,IACnE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,qBAAqB,MAAM;AAMlC,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA+C;AAAA,IACtE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,qBAAqB,MAAM;AAKlC,OAAG,gDAAgD,MAAM;AACvD,mBAEE,EAAE,SAAoC;AAAA,IAC1C,CAAC;AAAA,EACH,CAAC;AACH,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { describe, expectTypeOf, it } from "vitest";
|
|
2
|
+
import * as Stagehand from "@browserbasehq/stagehand";
|
|
3
|
+
describe("Schema Utils public API types", () => {
|
|
4
|
+
describe("defaultExtractSchema", () => {
|
|
5
|
+
it("infers to the correct type", () => {
|
|
6
|
+
expectTypeOf().toEqualTypeOf();
|
|
7
|
+
});
|
|
8
|
+
});
|
|
9
|
+
describe("getZodType", () => {
|
|
10
|
+
it("has correct parameter types", () => {
|
|
11
|
+
expectTypeOf(
|
|
12
|
+
Stagehand.getZodType
|
|
13
|
+
).parameters.branded.toEqualTypeOf();
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
describe("isZod3Schema", () => {
|
|
17
|
+
it("has correct parameter types", () => {
|
|
18
|
+
expectTypeOf(
|
|
19
|
+
Stagehand.isZod3Schema
|
|
20
|
+
).parameters.branded.toEqualTypeOf();
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
describe("isZod4Schema", () => {
|
|
24
|
+
it("has correct parameter types", () => {
|
|
25
|
+
expectTypeOf(
|
|
26
|
+
Stagehand.isZod4Schema
|
|
27
|
+
).parameters.branded.toEqualTypeOf();
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
describe("jsonSchemaToZod", () => {
|
|
31
|
+
it("has correct parameter types", () => {
|
|
32
|
+
expectTypeOf(
|
|
33
|
+
Stagehand.jsonSchemaToZod
|
|
34
|
+
).parameters.branded.toEqualTypeOf();
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
describe("pageTextSchema", () => {
|
|
38
|
+
it("infers to the correct type", () => {
|
|
39
|
+
expectTypeOf().toEqualTypeOf();
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
describe("toGeminiSchema", () => {
|
|
43
|
+
it("has correct parameter types", () => {
|
|
44
|
+
expectTypeOf(
|
|
45
|
+
Stagehand.toGeminiSchema
|
|
46
|
+
).parameters.branded.toEqualTypeOf();
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
describe("toJsonSchema", () => {
|
|
50
|
+
it("has correct parameter types", () => {
|
|
51
|
+
expectTypeOf(
|
|
52
|
+
Stagehand.toJsonSchema
|
|
53
|
+
).parameters.branded.toEqualTypeOf();
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
describe("transformSchema", () => {
|
|
57
|
+
it("has correct parameter types", () => {
|
|
58
|
+
expectTypeOf(
|
|
59
|
+
Stagehand.transformSchema
|
|
60
|
+
).parameters.branded.toEqualTypeOf();
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
describe("trimTrailingTextNode", () => {
|
|
64
|
+
it("has correct parameter types", () => {
|
|
65
|
+
expectTypeOf(
|
|
66
|
+
Stagehand.trimTrailingTextNode
|
|
67
|
+
).parameters.branded.toEqualTypeOf();
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
describe("validateZodSchema", () => {
|
|
71
|
+
it("has correct parameter types", () => {
|
|
72
|
+
expectTypeOf(
|
|
73
|
+
Stagehand.validateZodSchema
|
|
74
|
+
).parameters.branded.toEqualTypeOf();
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
//# sourceMappingURL=schema-utils.test.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../tests/public-api/schema-utils.test.ts"],
|
|
4
|
+
"sourcesContent": ["import { describe, expectTypeOf, it } from \"vitest\";\nimport * as Stagehand from \"@browserbasehq/stagehand\";\n\ndescribe(\"Schema Utils public API types\", () => {\n describe(\"defaultExtractSchema\", () => {\n type ExpectedInferredType = { extraction: string };\n\n it(\"infers to the correct type\", () => {\n expectTypeOf<\n Stagehand.InferStagehandSchema<typeof Stagehand.defaultExtractSchema>\n >().toEqualTypeOf<ExpectedInferredType>();\n });\n });\n\n describe(\"getZodType\", () => {\n type ExpectedGetZodTypeParams = [Stagehand.StagehandZodSchema];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.getZodType,\n ).parameters.branded.toEqualTypeOf<ExpectedGetZodTypeParams>();\n });\n });\n\n describe(\"isZod3Schema\", () => {\n type ExpectedIsZod3SchemaParams = [Stagehand.StagehandZodSchema];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.isZod3Schema,\n ).parameters.branded.toEqualTypeOf<ExpectedIsZod3SchemaParams>();\n });\n });\n\n describe(\"isZod4Schema\", () => {\n type ExpectedIsZod4SchemaParams = [Stagehand.StagehandZodSchema];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.isZod4Schema,\n ).parameters.branded.toEqualTypeOf<ExpectedIsZod4SchemaParams>();\n });\n });\n\n describe(\"jsonSchemaToZod\", () => {\n type ExpectedJsonSchemaToZodParams = [Stagehand.JsonSchema];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.jsonSchemaToZod,\n ).parameters.branded.toEqualTypeOf<ExpectedJsonSchemaToZodParams>();\n });\n });\n\n describe(\"pageTextSchema\", () => {\n type ExpectedInferredType = { pageText: string };\n\n it(\"infers to the correct type\", () => {\n expectTypeOf<\n Stagehand.InferStagehandSchema<typeof Stagehand.pageTextSchema>\n >().toEqualTypeOf<ExpectedInferredType>();\n });\n });\n\n describe(\"toGeminiSchema\", () => {\n type ExpectedToGeminiSchemaParams = [Stagehand.StagehandZodSchema];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.toGeminiSchema,\n ).parameters.branded.toEqualTypeOf<ExpectedToGeminiSchemaParams>();\n });\n });\n\n describe(\"toJsonSchema\", () => {\n type ExpectedToJsonSchemaParams = [Stagehand.StagehandZodSchema];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.toJsonSchema,\n ).parameters.branded.toEqualTypeOf<ExpectedToJsonSchemaParams>();\n });\n });\n\n describe(\"transformSchema\", () => {\n type ExpectedTransformSchemaParams = [\n Stagehand.StagehandZodSchema,\n Array<string | number>,\n ];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.transformSchema,\n ).parameters.branded.toEqualTypeOf<ExpectedTransformSchemaParams>();\n });\n });\n\n describe(\"trimTrailingTextNode\", () => {\n type ExpectedTrimTrailingTextNodeParams = [string | undefined];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.trimTrailingTextNode,\n ).parameters.branded.toEqualTypeOf<ExpectedTrimTrailingTextNodeParams>();\n });\n });\n\n describe(\"validateZodSchema\", () => {\n type ExpectedValidateZodSchemaParams = [\n Stagehand.StagehandZodSchema,\n unknown,\n ];\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.validateZodSchema,\n ).parameters.branded.toEqualTypeOf<ExpectedValidateZodSchemaParams>();\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,cAAc,UAAU;AAC3C,YAAY,eAAe;AAE3B,SAAS,iCAAiC,MAAM;AAC9C,WAAS,wBAAwB,MAAM;AAGrC,OAAG,8BAA8B,MAAM;AACrC,mBAEE,EAAE,cAAoC;AAAA,IAC1C,CAAC;AAAA,EACH,CAAC;AAED,WAAS,cAAc,MAAM;AAG3B,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAAwC;AAAA,IAC/D,CAAC;AAAA,EACH,CAAC;AAED,WAAS,gBAAgB,MAAM;AAG7B,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA0C;AAAA,IACjE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,gBAAgB,MAAM;AAG7B,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA0C;AAAA,IACjE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,mBAAmB,MAAM;AAGhC,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA6C;AAAA,IACpE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,kBAAkB,MAAM;AAG/B,OAAG,8BAA8B,MAAM;AACrC,mBAEE,EAAE,cAAoC;AAAA,IAC1C,CAAC;AAAA,EACH,CAAC;AAED,WAAS,kBAAkB,MAAM;AAG/B,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA4C;AAAA,IACnE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,gBAAgB,MAAM;AAG7B,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA0C;AAAA,IACjE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,mBAAmB,MAAM;AAMhC,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA6C;AAAA,IACpE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,wBAAwB,MAAM;AAGrC,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAAkD;AAAA,IACzE,CAAC;AAAA,EACH,CAAC;AAED,WAAS,qBAAqB,MAAM;AAMlC,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAA+C;AAAA,IACtE,CAAC;AAAA,EACH,CAAC;AACH,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import * as Stagehand from "@browserbasehq/stagehand";
|
|
3
|
+
describe("Public timeout error types runtime behavior", () => {
|
|
4
|
+
describe("ActTimeoutError", () => {
|
|
5
|
+
it("is exported and extends Error", () => {
|
|
6
|
+
const error = new Stagehand.ActTimeoutError(1e3);
|
|
7
|
+
expect(error).toBeInstanceOf(Error);
|
|
8
|
+
expect(error).toBeInstanceOf(Stagehand.ActTimeoutError);
|
|
9
|
+
expect(error.name).toBe("ActTimeoutError");
|
|
10
|
+
});
|
|
11
|
+
it("contains timeout value in milliseconds in message", () => {
|
|
12
|
+
const error = new Stagehand.ActTimeoutError(500);
|
|
13
|
+
expect(error.message).toContain("500ms");
|
|
14
|
+
});
|
|
15
|
+
it("contains operation name in message", () => {
|
|
16
|
+
const error = new Stagehand.ActTimeoutError(100);
|
|
17
|
+
expect(error.message).toContain("act()");
|
|
18
|
+
});
|
|
19
|
+
it("extends TimeoutError", () => {
|
|
20
|
+
const error = new Stagehand.ActTimeoutError(1e3);
|
|
21
|
+
expect(error).toBeInstanceOf(Stagehand.TimeoutError);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
describe("ExtractTimeoutError", () => {
|
|
25
|
+
it("is exported and extends Error", () => {
|
|
26
|
+
const error = new Stagehand.ExtractTimeoutError(1e3);
|
|
27
|
+
expect(error).toBeInstanceOf(Error);
|
|
28
|
+
expect(error).toBeInstanceOf(Stagehand.ExtractTimeoutError);
|
|
29
|
+
expect(error.name).toBe("ExtractTimeoutError");
|
|
30
|
+
});
|
|
31
|
+
it("contains timeout value in milliseconds in message", () => {
|
|
32
|
+
const error = new Stagehand.ExtractTimeoutError(1e3);
|
|
33
|
+
expect(error.message).toContain("1000ms");
|
|
34
|
+
});
|
|
35
|
+
it("contains operation name in message", () => {
|
|
36
|
+
const error = new Stagehand.ExtractTimeoutError(100);
|
|
37
|
+
expect(error.message).toContain("extract()");
|
|
38
|
+
});
|
|
39
|
+
it("extends TimeoutError", () => {
|
|
40
|
+
const error = new Stagehand.ExtractTimeoutError(1e3);
|
|
41
|
+
expect(error).toBeInstanceOf(Stagehand.TimeoutError);
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
describe("ObserveTimeoutError", () => {
|
|
45
|
+
it("is exported and extends Error", () => {
|
|
46
|
+
const error = new Stagehand.ObserveTimeoutError(1e3);
|
|
47
|
+
expect(error).toBeInstanceOf(Error);
|
|
48
|
+
expect(error).toBeInstanceOf(Stagehand.ObserveTimeoutError);
|
|
49
|
+
expect(error.name).toBe("ObserveTimeoutError");
|
|
50
|
+
});
|
|
51
|
+
it("contains timeout value in milliseconds in message", () => {
|
|
52
|
+
const error = new Stagehand.ObserveTimeoutError(1500);
|
|
53
|
+
expect(error.message).toContain("1500ms");
|
|
54
|
+
});
|
|
55
|
+
it("contains operation name in message", () => {
|
|
56
|
+
const error = new Stagehand.ObserveTimeoutError(100);
|
|
57
|
+
expect(error.message).toContain("observe()");
|
|
58
|
+
});
|
|
59
|
+
it("extends TimeoutError", () => {
|
|
60
|
+
const error = new Stagehand.ObserveTimeoutError(1e3);
|
|
61
|
+
expect(error).toBeInstanceOf(Stagehand.TimeoutError);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
describe("TimeoutError (base class)", () => {
|
|
65
|
+
it("is exported and extends Error", () => {
|
|
66
|
+
const error = new Stagehand.TimeoutError("custom operation", 2e3);
|
|
67
|
+
expect(error).toBeInstanceOf(Error);
|
|
68
|
+
expect(error).toBeInstanceOf(Stagehand.TimeoutError);
|
|
69
|
+
});
|
|
70
|
+
it("contains operation name and timeout in message", () => {
|
|
71
|
+
const error = new Stagehand.TimeoutError("custom operation", 2e3);
|
|
72
|
+
expect(error.message).toContain("custom operation");
|
|
73
|
+
expect(error.message).toContain("2000ms");
|
|
74
|
+
});
|
|
75
|
+
it("extends StagehandError", () => {
|
|
76
|
+
const error = new Stagehand.TimeoutError("operation", 1e3);
|
|
77
|
+
expect(error).toBeInstanceOf(Stagehand.StagehandError);
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=timeout-error-types.test.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../tests/public-api/timeout-error-types.test.ts"],
|
|
4
|
+
"sourcesContent": ["import { describe, expect, it } from \"vitest\";\nimport * as Stagehand from \"@browserbasehq/stagehand\";\n\n// ============================================================================\n// Public Timeout Error Types Runtime Tests\n// ============================================================================\n// These tests verify the runtime behavior of exported timeout error types,\n// complementing the type-level tests in public-error-types.test.ts\n\ndescribe(\"Public timeout error types runtime behavior\", () => {\n describe(\"ActTimeoutError\", () => {\n it(\"is exported and extends Error\", () => {\n const error = new Stagehand.ActTimeoutError(1000);\n expect(error).toBeInstanceOf(Error);\n expect(error).toBeInstanceOf(Stagehand.ActTimeoutError);\n expect(error.name).toBe(\"ActTimeoutError\");\n });\n\n it(\"contains timeout value in milliseconds in message\", () => {\n const error = new Stagehand.ActTimeoutError(500);\n expect(error.message).toContain(\"500ms\");\n });\n\n it(\"contains operation name in message\", () => {\n const error = new Stagehand.ActTimeoutError(100);\n expect(error.message).toContain(\"act()\");\n });\n\n it(\"extends TimeoutError\", () => {\n const error = new Stagehand.ActTimeoutError(1000);\n expect(error).toBeInstanceOf(Stagehand.TimeoutError);\n });\n });\n\n describe(\"ExtractTimeoutError\", () => {\n it(\"is exported and extends Error\", () => {\n const error = new Stagehand.ExtractTimeoutError(1000);\n expect(error).toBeInstanceOf(Error);\n expect(error).toBeInstanceOf(Stagehand.ExtractTimeoutError);\n expect(error.name).toBe(\"ExtractTimeoutError\");\n });\n\n it(\"contains timeout value in milliseconds in message\", () => {\n const error = new Stagehand.ExtractTimeoutError(1000);\n expect(error.message).toContain(\"1000ms\");\n });\n\n it(\"contains operation name in message\", () => {\n const error = new Stagehand.ExtractTimeoutError(100);\n expect(error.message).toContain(\"extract()\");\n });\n\n it(\"extends TimeoutError\", () => {\n const error = new Stagehand.ExtractTimeoutError(1000);\n expect(error).toBeInstanceOf(Stagehand.TimeoutError);\n });\n });\n\n describe(\"ObserveTimeoutError\", () => {\n it(\"is exported and extends Error\", () => {\n const error = new Stagehand.ObserveTimeoutError(1000);\n expect(error).toBeInstanceOf(Error);\n expect(error).toBeInstanceOf(Stagehand.ObserveTimeoutError);\n expect(error.name).toBe(\"ObserveTimeoutError\");\n });\n\n it(\"contains timeout value in milliseconds in message\", () => {\n const error = new Stagehand.ObserveTimeoutError(1500);\n expect(error.message).toContain(\"1500ms\");\n });\n\n it(\"contains operation name in message\", () => {\n const error = new Stagehand.ObserveTimeoutError(100);\n expect(error.message).toContain(\"observe()\");\n });\n\n it(\"extends TimeoutError\", () => {\n const error = new Stagehand.ObserveTimeoutError(1000);\n expect(error).toBeInstanceOf(Stagehand.TimeoutError);\n });\n });\n\n describe(\"TimeoutError (base class)\", () => {\n it(\"is exported and extends Error\", () => {\n const error = new Stagehand.TimeoutError(\"custom operation\", 2000);\n expect(error).toBeInstanceOf(Error);\n expect(error).toBeInstanceOf(Stagehand.TimeoutError);\n });\n\n it(\"contains operation name and timeout in message\", () => {\n const error = new Stagehand.TimeoutError(\"custom operation\", 2000);\n expect(error.message).toContain(\"custom operation\");\n expect(error.message).toContain(\"2000ms\");\n });\n\n it(\"extends StagehandError\", () => {\n const error = new Stagehand.TimeoutError(\"operation\", 1000);\n expect(error).toBeInstanceOf(Stagehand.StagehandError);\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,QAAQ,UAAU;AACrC,YAAY,eAAe;AAQ3B,SAAS,+CAA+C,MAAM;AAC5D,WAAS,mBAAmB,MAAM;AAChC,OAAG,iCAAiC,MAAM;AACxC,YAAM,QAAQ,IAAI,UAAU,gBAAgB,GAAI;AAChD,aAAO,KAAK,EAAE,eAAe,KAAK;AAClC,aAAO,KAAK,EAAE,eAAe,UAAU,eAAe;AACtD,aAAO,MAAM,IAAI,EAAE,KAAK,iBAAiB;AAAA,IAC3C,CAAC;AAED,OAAG,qDAAqD,MAAM;AAC5D,YAAM,QAAQ,IAAI,UAAU,gBAAgB,GAAG;AAC/C,aAAO,MAAM,OAAO,EAAE,UAAU,OAAO;AAAA,IACzC,CAAC;AAED,OAAG,sCAAsC,MAAM;AAC7C,YAAM,QAAQ,IAAI,UAAU,gBAAgB,GAAG;AAC/C,aAAO,MAAM,OAAO,EAAE,UAAU,OAAO;AAAA,IACzC,CAAC;AAED,OAAG,wBAAwB,MAAM;AAC/B,YAAM,QAAQ,IAAI,UAAU,gBAAgB,GAAI;AAChD,aAAO,KAAK,EAAE,eAAe,UAAU,YAAY;AAAA,IACrD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,uBAAuB,MAAM;AACpC,OAAG,iCAAiC,MAAM;AACxC,YAAM,QAAQ,IAAI,UAAU,oBAAoB,GAAI;AACpD,aAAO,KAAK,EAAE,eAAe,KAAK;AAClC,aAAO,KAAK,EAAE,eAAe,UAAU,mBAAmB;AAC1D,aAAO,MAAM,IAAI,EAAE,KAAK,qBAAqB;AAAA,IAC/C,CAAC;AAED,OAAG,qDAAqD,MAAM;AAC5D,YAAM,QAAQ,IAAI,UAAU,oBAAoB,GAAI;AACpD,aAAO,MAAM,OAAO,EAAE,UAAU,QAAQ;AAAA,IAC1C,CAAC;AAED,OAAG,sCAAsC,MAAM;AAC7C,YAAM,QAAQ,IAAI,UAAU,oBAAoB,GAAG;AACnD,aAAO,MAAM,OAAO,EAAE,UAAU,WAAW;AAAA,IAC7C,CAAC;AAED,OAAG,wBAAwB,MAAM;AAC/B,YAAM,QAAQ,IAAI,UAAU,oBAAoB,GAAI;AACpD,aAAO,KAAK,EAAE,eAAe,UAAU,YAAY;AAAA,IACrD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,uBAAuB,MAAM;AACpC,OAAG,iCAAiC,MAAM;AACxC,YAAM,QAAQ,IAAI,UAAU,oBAAoB,GAAI;AACpD,aAAO,KAAK,EAAE,eAAe,KAAK;AAClC,aAAO,KAAK,EAAE,eAAe,UAAU,mBAAmB;AAC1D,aAAO,MAAM,IAAI,EAAE,KAAK,qBAAqB;AAAA,IAC/C,CAAC;AAED,OAAG,qDAAqD,MAAM;AAC5D,YAAM,QAAQ,IAAI,UAAU,oBAAoB,IAAI;AACpD,aAAO,MAAM,OAAO,EAAE,UAAU,QAAQ;AAAA,IAC1C,CAAC;AAED,OAAG,sCAAsC,MAAM;AAC7C,YAAM,QAAQ,IAAI,UAAU,oBAAoB,GAAG;AACnD,aAAO,MAAM,OAAO,EAAE,UAAU,WAAW;AAAA,IAC7C,CAAC;AAED,OAAG,wBAAwB,MAAM;AAC/B,YAAM,QAAQ,IAAI,UAAU,oBAAoB,GAAI;AACpD,aAAO,KAAK,EAAE,eAAe,UAAU,YAAY;AAAA,IACrD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,6BAA6B,MAAM;AAC1C,OAAG,iCAAiC,MAAM;AACxC,YAAM,QAAQ,IAAI,UAAU,aAAa,oBAAoB,GAAI;AACjE,aAAO,KAAK,EAAE,eAAe,KAAK;AAClC,aAAO,KAAK,EAAE,eAAe,UAAU,YAAY;AAAA,IACrD,CAAC;AAED,OAAG,kDAAkD,MAAM;AACzD,YAAM,QAAQ,IAAI,UAAU,aAAa,oBAAoB,GAAI;AACjE,aAAO,MAAM,OAAO,EAAE,UAAU,kBAAkB;AAClD,aAAO,MAAM,OAAO,EAAE,UAAU,QAAQ;AAAA,IAC1C,CAAC;AAED,OAAG,0BAA0B,MAAM;AACjC,YAAM,QAAQ,IAAI,UAAU,aAAa,aAAa,GAAI;AAC1D,aAAO,KAAK,EAAE,eAAe,UAAU,cAAc;AAAA,IACvD,CAAC;AAAA,EACH,CAAC;AACH,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { describe, expectTypeOf, it, expect } from "vitest";
|
|
2
|
+
import * as Stagehand from "@browserbasehq/stagehand";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
describe("Tool exports from AI SDK", () => {
|
|
5
|
+
it("exports Tool type that matches AI SDK Tool type", () => {
|
|
6
|
+
expectTypeOf().toEqualTypeOf();
|
|
7
|
+
});
|
|
8
|
+
it("exports tool function", () => {
|
|
9
|
+
expect(typeof Stagehand.tool).toBe("function");
|
|
10
|
+
});
|
|
11
|
+
it("tool function can be used to define custom tools", () => {
|
|
12
|
+
const customTool = Stagehand.tool({
|
|
13
|
+
description: "A test tool",
|
|
14
|
+
inputSchema: z.object({
|
|
15
|
+
input: z.string()
|
|
16
|
+
}),
|
|
17
|
+
execute: async ({ input }) => {
|
|
18
|
+
return { result: `Processed: ${input}` };
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
expect(customTool).toBeDefined();
|
|
22
|
+
expect(customTool.description).toBe("A test tool");
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=tool-type-export.test.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../tests/public-api/tool-type-export.test.ts"],
|
|
4
|
+
"sourcesContent": ["import { describe, expectTypeOf, it, expect } from \"vitest\";\nimport * as Stagehand from \"@browserbasehq/stagehand\";\nimport { type Tool } from \"ai\";\nimport { z } from \"zod\";\n\n/**\n * Test to verify tool-related exports from Stagehand.\n * Users should be able to create custom tools using the exported `tool` function\n * without needing to install the ai package directly.\n */\ndescribe(\"Tool exports from AI SDK\", () => {\n it(\"exports Tool type that matches AI SDK Tool type\", () => {\n expectTypeOf<Stagehand.Tool>().toEqualTypeOf<Tool>();\n });\n\n it(\"exports tool function\", () => {\n expect(typeof Stagehand.tool).toBe(\"function\");\n });\n\n it(\"tool function can be used to define custom tools\", () => {\n const customTool = Stagehand.tool({\n description: \"A test tool\",\n inputSchema: z.object({\n input: z.string(),\n }),\n execute: async ({ input }) => {\n return { result: `Processed: ${input}` };\n },\n });\n\n expect(customTool).toBeDefined();\n expect(customTool.description).toBe(\"A test tool\");\n });\n});\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,cAAc,IAAI,cAAc;AACnD,YAAY,eAAe;AAE3B,SAAS,SAAS;AAOlB,SAAS,4BAA4B,MAAM;AACzC,KAAG,mDAAmD,MAAM;AAC1D,iBAA6B,EAAE,cAAoB;AAAA,EACrD,CAAC;AAED,KAAG,yBAAyB,MAAM;AAChC,WAAO,OAAO,UAAU,IAAI,EAAE,KAAK,UAAU;AAAA,EAC/C,CAAC;AAED,KAAG,oDAAoD,MAAM;AAC3D,UAAM,aAAa,UAAU,KAAK;AAAA,MAChC,aAAa;AAAA,MACb,aAAa,EAAE,OAAO;AAAA,QACpB,OAAO,EAAE,OAAO;AAAA,MAClB,CAAC;AAAA,MACD,SAAS,OAAO,EAAE,MAAM,MAAM;AAC5B,eAAO,EAAE,QAAQ,cAAc,KAAK,GAAG;AAAA,MACzC;AAAA,IACF,CAAC;AAED,WAAO,UAAU,EAAE,YAAY;AAC/B,WAAO,WAAW,WAAW,EAAE,KAAK,aAAa;AAAA,EACnD,CAAC;AACH,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { describe, expect, expectTypeOf, it } from "vitest";
|
|
2
|
+
import * as Stagehand from "@browserbasehq/stagehand";
|
|
3
|
+
describe("V3 Core public API types", () => {
|
|
4
|
+
describe("Stagehand", () => {
|
|
5
|
+
it("has correct public interface shape", () => {
|
|
6
|
+
expectTypeOf().toExtend();
|
|
7
|
+
});
|
|
8
|
+
it("act accepts Action as first parameter", () => {
|
|
9
|
+
const mockAction = {};
|
|
10
|
+
expectTypeOf().toBeCallableWith(
|
|
11
|
+
mockAction,
|
|
12
|
+
{}
|
|
13
|
+
);
|
|
14
|
+
});
|
|
15
|
+
it("extract accepts instruction and schema", () => {
|
|
16
|
+
const mockSchema = {};
|
|
17
|
+
expectTypeOf().toBeCallableWith(
|
|
18
|
+
"instruction",
|
|
19
|
+
mockSchema,
|
|
20
|
+
{}
|
|
21
|
+
);
|
|
22
|
+
});
|
|
23
|
+
it("observe accepts instruction and options", () => {
|
|
24
|
+
expectTypeOf().toBeCallableWith(
|
|
25
|
+
"instruction",
|
|
26
|
+
{}
|
|
27
|
+
);
|
|
28
|
+
});
|
|
29
|
+
it("agent execute accepts page option", () => {
|
|
30
|
+
const mockPage = {};
|
|
31
|
+
expectTypeOf().toBeCallableWith({
|
|
32
|
+
instruction: "test",
|
|
33
|
+
page: mockPage
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
describe("StagehandMetrics", () => {
|
|
38
|
+
it("matches the published metrics shape", () => {
|
|
39
|
+
expectTypeOf().toEqualTypeOf();
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
describe("V3", () => {
|
|
43
|
+
it("is exported", () => {
|
|
44
|
+
expect(Stagehand.V3).toBeDefined();
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
describe("V3Evaluator", () => {
|
|
48
|
+
it("is exported", () => {
|
|
49
|
+
expect(Stagehand.V3Evaluator).toBeDefined();
|
|
50
|
+
});
|
|
51
|
+
it("has ask method", () => {
|
|
52
|
+
expectTypeOf().toExtend();
|
|
53
|
+
});
|
|
54
|
+
it("has batchAsk method", () => {
|
|
55
|
+
expectTypeOf().toExtend();
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
describe("V3FunctionName", () => {
|
|
59
|
+
const expectedFunctionNames = [
|
|
60
|
+
"ACT",
|
|
61
|
+
"EXTRACT",
|
|
62
|
+
"OBSERVE",
|
|
63
|
+
"AGENT"
|
|
64
|
+
];
|
|
65
|
+
it("matches the known function name literals", () => {
|
|
66
|
+
expectTypeOf().toExtend();
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
describe("connectToMCPServer", () => {
|
|
70
|
+
it("has correct parameter types", () => {
|
|
71
|
+
expectTypeOf(
|
|
72
|
+
Stagehand.connectToMCPServer
|
|
73
|
+
).parameters.branded.toEqualTypeOf();
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
describe("LOG_LEVEL_NAMES", () => {
|
|
77
|
+
it("maps numeric levels to strings", () => {
|
|
78
|
+
expectTypeOf().toExtend();
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
//# sourceMappingURL=v3-core.test.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../tests/public-api/v3-core.test.ts"],
|
|
4
|
+
"sourcesContent": ["import { describe, expect, expectTypeOf, it } from \"vitest\";\nimport * as Stagehand from \"@browserbasehq/stagehand\";\n\ndescribe(\"V3 Core public API types\", () => {\n describe(\"Stagehand\", () => {\n type ExpectedShape = {\n init: () => Promise<void>;\n close: (opts?: { force?: boolean }) => Promise<void>;\n act: (\n input: string | Stagehand.Action,\n options?: Stagehand.ActOptions,\n ) => Promise<Stagehand.ActResult>;\n extract: (...args: unknown[]) => Promise<unknown>;\n observe: (...args: unknown[]) => Promise<Stagehand.Action[]>;\n agent: (config?: Stagehand.AgentConfig) => {\n execute: (\n instructionOrOptions: string | Stagehand.AgentExecuteOptions,\n ) => Promise<Stagehand.AgentResult>;\n };\n connectURL: () => string;\n context: unknown;\n metrics: Promise<Stagehand.StagehandMetrics>;\n history: Promise<ReadonlyArray<Stagehand.HistoryEntry>>;\n llmClient: Stagehand.LLMClient;\n browserbaseSessionID: string | undefined;\n browserbaseSessionURL: string | undefined;\n browserbaseDebugURL: string | undefined;\n experimental: boolean;\n logInferenceToFile: boolean;\n verbose: 0 | 1 | 2;\n logger: (logLine: Stagehand.LogLine) => void;\n isAgentReplayActive: () => boolean;\n recordAgentReplayStep: (step: unknown) => void;\n };\n\n type StagehandInstance = InstanceType<typeof Stagehand.Stagehand>;\n\n it(\"has correct public interface shape\", () => {\n expectTypeOf<StagehandInstance>().toExtend<ExpectedShape>();\n });\n\n it(\"act accepts Action as first parameter\", () => {\n const mockAction = {} as Stagehand.Action;\n expectTypeOf<StagehandInstance[\"act\"]>().toBeCallableWith(\n mockAction,\n {} as Stagehand.ActOptions,\n );\n });\n\n it(\"extract accepts instruction and schema\", () => {\n const mockSchema = {} as Stagehand.StagehandZodSchema;\n expectTypeOf<StagehandInstance[\"extract\"]>().toBeCallableWith(\n \"instruction\",\n mockSchema,\n {} as Stagehand.ExtractOptions,\n );\n });\n\n it(\"observe accepts instruction and options\", () => {\n expectTypeOf<StagehandInstance[\"observe\"]>().toBeCallableWith(\n \"instruction\",\n {} as Stagehand.ObserveOptions,\n );\n });\n\n it(\"agent execute accepts page option\", () => {\n type AgentReturn = ReturnType<StagehandInstance[\"agent\"]>;\n const mockPage = {} as Stagehand.AnyPage;\n expectTypeOf<AgentReturn[\"execute\"]>().toBeCallableWith({\n instruction: \"test\",\n page: mockPage,\n } satisfies Stagehand.AgentExecuteOptions);\n });\n });\n\n describe(\"StagehandMetrics\", () => {\n type ExpectedStagehandMetrics = {\n actPromptTokens: number;\n actCompletionTokens: number;\n actReasoningTokens: number;\n actCachedInputTokens: number;\n actInferenceTimeMs: number;\n extractPromptTokens: number;\n extractCompletionTokens: number;\n extractReasoningTokens: number;\n extractCachedInputTokens: number;\n extractInferenceTimeMs: number;\n observePromptTokens: number;\n observeCompletionTokens: number;\n observeReasoningTokens: number;\n observeCachedInputTokens: number;\n observeInferenceTimeMs: number;\n agentPromptTokens: number;\n agentCompletionTokens: number;\n agentReasoningTokens: number;\n agentCachedInputTokens: number;\n agentInferenceTimeMs: number;\n totalPromptTokens: number;\n totalCompletionTokens: number;\n totalReasoningTokens: number;\n totalCachedInputTokens: number;\n totalInferenceTimeMs: number;\n };\n\n it(\"matches the published metrics shape\", () => {\n expectTypeOf<Stagehand.StagehandMetrics>().toEqualTypeOf<ExpectedStagehandMetrics>();\n });\n });\n\n describe(\"V3\", () => {\n // V3 is the same class as Stagehand, just re-exported with a different name.\n // The public interface shape is already tested in the \"Stagehand\" test above.\n it(\"is exported\", () => {\n expect(Stagehand.V3).toBeDefined();\n });\n });\n\n describe(\"V3Evaluator\", () => {\n type V3EvaluatorInstance = InstanceType<typeof Stagehand.V3Evaluator>;\n\n it(\"is exported\", () => {\n expect(Stagehand.V3Evaluator).toBeDefined();\n });\n\n it(\"has ask method\", () => {\n expectTypeOf<V3EvaluatorInstance[\"ask\"]>().toExtend<\n (options: unknown) => Promise<unknown>\n >();\n });\n\n it(\"has batchAsk method\", () => {\n expectTypeOf<V3EvaluatorInstance[\"batchAsk\"]>().toExtend<\n (options: unknown) => Promise<unknown[]>\n >();\n });\n });\n\n describe(\"V3FunctionName\", () => {\n const expectedFunctionNames = [\n \"ACT\",\n \"EXTRACT\",\n \"OBSERVE\",\n \"AGENT\",\n ] as const;\n\n it(\"matches the known function name literals\", () => {\n expectTypeOf<Stagehand.V3FunctionName>().toExtend<\n (typeof expectedFunctionNames)[number]\n >();\n void expectedFunctionNames; // Mark as used to satisfy ESLint\n });\n });\n\n describe(\"connectToMCPServer\", () => {\n type ExpectedServerConfig =\n | string\n | URL\n | { command: string; args?: string[]; env?: Record<string, string> }\n | { serverUrl: string | URL; clientOptions?: unknown };\n\n it(\"has correct parameter types\", () => {\n expectTypeOf(\n Stagehand.connectToMCPServer,\n ).parameters.branded.toEqualTypeOf<[ExpectedServerConfig]>();\n });\n });\n\n describe(\"LOG_LEVEL_NAMES\", () => {\n type ExpectedLOG_LEVEL_NAMES = Record<Stagehand.LogLevel, string>;\n\n it(\"maps numeric levels to strings\", () => {\n expectTypeOf<\n typeof Stagehand.LOG_LEVEL_NAMES\n >().toExtend<ExpectedLOG_LEVEL_NAMES>();\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,UAAU,QAAQ,cAAc,UAAU;AACnD,YAAY,eAAe;AAE3B,SAAS,4BAA4B,MAAM;AACzC,WAAS,aAAa,MAAM;AAiC1B,OAAG,sCAAsC,MAAM;AAC7C,mBAAgC,EAAE,SAAwB;AAAA,IAC5D,CAAC;AAED,OAAG,yCAAyC,MAAM;AAChD,YAAM,aAAa,CAAC;AACpB,mBAAuC,EAAE;AAAA,QACvC;AAAA,QACA,CAAC;AAAA,MACH;AAAA,IACF,CAAC;AAED,OAAG,0CAA0C,MAAM;AACjD,YAAM,aAAa,CAAC;AACpB,mBAA2C,EAAE;AAAA,QAC3C;AAAA,QACA;AAAA,QACA,CAAC;AAAA,MACH;AAAA,IACF,CAAC;AAED,OAAG,2CAA2C,MAAM;AAClD,mBAA2C,EAAE;AAAA,QAC3C;AAAA,QACA,CAAC;AAAA,MACH;AAAA,IACF,CAAC;AAED,OAAG,qCAAqC,MAAM;AAE5C,YAAM,WAAW,CAAC;AAClB,mBAAqC,EAAE,iBAAiB;AAAA,QACtD,aAAa;AAAA,QACb,MAAM;AAAA,MACR,CAAyC;AAAA,IAC3C,CAAC;AAAA,EACH,CAAC;AAED,WAAS,oBAAoB,MAAM;AA6BjC,OAAG,uCAAuC,MAAM;AAC9C,mBAAyC,EAAE,cAAwC;AAAA,IACrF,CAAC;AAAA,EACH,CAAC;AAED,WAAS,MAAM,MAAM;AAGnB,OAAG,eAAe,MAAM;AACtB,aAAO,UAAU,EAAE,EAAE,YAAY;AAAA,IACnC,CAAC;AAAA,EACH,CAAC;AAED,WAAS,eAAe,MAAM;AAG5B,OAAG,eAAe,MAAM;AACtB,aAAO,UAAU,WAAW,EAAE,YAAY;AAAA,IAC5C,CAAC;AAED,OAAG,kBAAkB,MAAM;AACzB,mBAAyC,EAAE,SAEzC;AAAA,IACJ,CAAC;AAED,OAAG,uBAAuB,MAAM;AAC9B,mBAA8C,EAAE,SAE9C;AAAA,IACJ,CAAC;AAAA,EACH,CAAC;AAED,WAAS,kBAAkB,MAAM;AAC/B,UAAM,wBAAwB;AAAA,MAC5B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,OAAG,4CAA4C,MAAM;AACnD,mBAAuC,EAAE,SAEvC;AAAA,IAEJ,CAAC;AAAA,EACH,CAAC;AAED,WAAS,sBAAsB,MAAM;AAOnC,OAAG,+BAA+B,MAAM;AACtC;AAAA,QACE,UAAU;AAAA,MACZ,EAAE,WAAW,QAAQ,cAAsC;AAAA,IAC7D,CAAC;AAAA,EACH,CAAC;AAED,WAAS,mBAAmB,MAAM;AAGhC,OAAG,kCAAkC,MAAM;AACzC,mBAEE,EAAE,SAAkC;AAAA,IACxC,CAAC;AAAA,EACH,CAAC;AACH,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { describe, it, expect, vi } from "vitest";
|
|
2
|
+
import { OpenAICUAClient } from "../lib/v3/agent/OpenAICUAClient.js";
|
|
3
|
+
import { GoogleCUAClient } from "../lib/v3/agent/GoogleCUAClient.js";
|
|
4
|
+
const openAISafetyInvoker = OpenAICUAClient.prototype.handleSafetyConfirmation;
|
|
5
|
+
const googleSafetyInvoker = GoogleCUAClient.prototype.handleSafetyConfirmation;
|
|
6
|
+
function createOpenAIClient() {
|
|
7
|
+
return new OpenAICUAClient(
|
|
8
|
+
"openai",
|
|
9
|
+
"openai/computer-use-preview",
|
|
10
|
+
"test instructions",
|
|
11
|
+
{ apiKey: "test" }
|
|
12
|
+
);
|
|
13
|
+
}
|
|
14
|
+
function createGoogleClient() {
|
|
15
|
+
return new GoogleCUAClient(
|
|
16
|
+
"google",
|
|
17
|
+
"google/gemini-2.5-computer-use-preview-10-2025",
|
|
18
|
+
"test instructions",
|
|
19
|
+
{ apiKey: "test" }
|
|
20
|
+
);
|
|
21
|
+
}
|
|
22
|
+
describe("Safety Confirmation Handler", () => {
|
|
23
|
+
describe("OpenAI-style (pending_safety_checks)", () => {
|
|
24
|
+
const mockChecks = [
|
|
25
|
+
{
|
|
26
|
+
id: "check-1",
|
|
27
|
+
code: "malicious_instructions",
|
|
28
|
+
message: "Potentially harmful action detected"
|
|
29
|
+
}
|
|
30
|
+
];
|
|
31
|
+
it("returns checks when handler acknowledges", async () => {
|
|
32
|
+
const client = createOpenAIClient();
|
|
33
|
+
const handler = vi.fn(async () => ({
|
|
34
|
+
acknowledged: true
|
|
35
|
+
}));
|
|
36
|
+
client.setSafetyConfirmationHandler(handler);
|
|
37
|
+
const logger = vi.fn();
|
|
38
|
+
const result = await openAISafetyInvoker.call(client, mockChecks, logger);
|
|
39
|
+
expect(handler).toHaveBeenCalledWith(mockChecks);
|
|
40
|
+
expect(result).toEqual(mockChecks);
|
|
41
|
+
});
|
|
42
|
+
it("returns undefined when handler rejects", async () => {
|
|
43
|
+
const client = createOpenAIClient();
|
|
44
|
+
const handler = vi.fn(async () => ({
|
|
45
|
+
acknowledged: false
|
|
46
|
+
}));
|
|
47
|
+
client.setSafetyConfirmationHandler(handler);
|
|
48
|
+
const logger = vi.fn();
|
|
49
|
+
const result = await openAISafetyInvoker.call(client, mockChecks, logger);
|
|
50
|
+
expect(handler).toHaveBeenCalledWith(mockChecks);
|
|
51
|
+
expect(result).toBeUndefined();
|
|
52
|
+
});
|
|
53
|
+
it("auto-acknowledges when no handler is set", async () => {
|
|
54
|
+
const client = createOpenAIClient();
|
|
55
|
+
const logger = vi.fn();
|
|
56
|
+
const result = await openAISafetyInvoker.call(client, mockChecks, logger);
|
|
57
|
+
expect(result).toEqual(mockChecks);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
describe("Google-style (safety_decision)", () => {
|
|
61
|
+
const mockDecision = {
|
|
62
|
+
decision: "require_confirmation",
|
|
63
|
+
explanation: "Cookie consent dialog detected"
|
|
64
|
+
};
|
|
65
|
+
it("returns 'true' when handler acknowledges", async () => {
|
|
66
|
+
const client = createGoogleClient();
|
|
67
|
+
const handler = vi.fn(async () => ({
|
|
68
|
+
acknowledged: true
|
|
69
|
+
}));
|
|
70
|
+
client.setSafetyConfirmationHandler(handler);
|
|
71
|
+
const logger = vi.fn();
|
|
72
|
+
const result = await googleSafetyInvoker.call(
|
|
73
|
+
client,
|
|
74
|
+
mockDecision,
|
|
75
|
+
logger
|
|
76
|
+
);
|
|
77
|
+
expect(handler).toHaveBeenCalledWith([
|
|
78
|
+
{
|
|
79
|
+
id: "google-safety-decision",
|
|
80
|
+
code: "safety_decision",
|
|
81
|
+
message: JSON.stringify(mockDecision, null, 2)
|
|
82
|
+
}
|
|
83
|
+
]);
|
|
84
|
+
expect(result).toBe("true");
|
|
85
|
+
});
|
|
86
|
+
it("returns undefined when handler rejects", async () => {
|
|
87
|
+
const client = createGoogleClient();
|
|
88
|
+
const handler = vi.fn(async () => ({
|
|
89
|
+
acknowledged: false
|
|
90
|
+
}));
|
|
91
|
+
client.setSafetyConfirmationHandler(handler);
|
|
92
|
+
const logger = vi.fn();
|
|
93
|
+
const result = await googleSafetyInvoker.call(
|
|
94
|
+
client,
|
|
95
|
+
mockDecision,
|
|
96
|
+
logger
|
|
97
|
+
);
|
|
98
|
+
expect(handler).toHaveBeenCalled();
|
|
99
|
+
expect(result).toBeUndefined();
|
|
100
|
+
});
|
|
101
|
+
it("auto-acknowledges when no handler is set", async () => {
|
|
102
|
+
const client = createGoogleClient();
|
|
103
|
+
const logger = vi.fn();
|
|
104
|
+
const result = await googleSafetyInvoker.call(
|
|
105
|
+
client,
|
|
106
|
+
mockDecision,
|
|
107
|
+
logger
|
|
108
|
+
);
|
|
109
|
+
expect(result).toBe("true");
|
|
110
|
+
});
|
|
111
|
+
it("handles string safety decisions", async () => {
|
|
112
|
+
const client = createGoogleClient();
|
|
113
|
+
const handler = vi.fn(async () => ({
|
|
114
|
+
acknowledged: true
|
|
115
|
+
}));
|
|
116
|
+
client.setSafetyConfirmationHandler(handler);
|
|
117
|
+
const logger = vi.fn();
|
|
118
|
+
const result = await googleSafetyInvoker.call(
|
|
119
|
+
client,
|
|
120
|
+
"Simple string decision",
|
|
121
|
+
logger
|
|
122
|
+
);
|
|
123
|
+
expect(handler).toHaveBeenCalledWith([
|
|
124
|
+
{
|
|
125
|
+
id: "google-safety-decision",
|
|
126
|
+
code: "safety_decision",
|
|
127
|
+
message: "Simple string decision"
|
|
128
|
+
}
|
|
129
|
+
]);
|
|
130
|
+
expect(result).toBe("true");
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
//# sourceMappingURL=safety-confirmation.test.js.map
|