donobu 2.15.0 → 2.16.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/apis/FlowsFilesApi.d.ts.map +1 -1
- package/dist/apis/FlowsFilesApi.js +5 -2
- package/dist/apis/FlowsFilesApi.js.map +1 -1
- package/dist/assets/control-panel.js +30 -3
- package/dist/assets/generated/parameter-schemas.json +118 -17
- package/dist/assets/generated/version +1 -1
- package/dist/assets/interactive-elements-tracker.js +351 -0
- package/dist/assets/page-interactions-tracker.js +39 -20
- package/dist/assets/smart-selector-generator.js +38 -15
- package/dist/bindings/FocusPage.d.ts +6 -1
- package/dist/bindings/FocusPage.d.ts.map +1 -1
- package/dist/bindings/FocusPage.js +2 -8
- package/dist/bindings/FocusPage.js.map +1 -1
- package/dist/bindings/PageInteractionTracker.d.ts +9 -2
- package/dist/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/bindings/PageInteractionTracker.js +29 -5
- package/dist/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/bindings/ProposeToolCall.d.ts +20 -0
- package/dist/bindings/ProposeToolCall.d.ts.map +1 -0
- package/dist/bindings/ProposeToolCall.js +29 -0
- package/dist/bindings/ProposeToolCall.js.map +1 -0
- package/dist/bindings/ToggleDonobuAnnotations.d.ts +5 -2
- package/dist/bindings/ToggleDonobuAnnotations.d.ts.map +1 -1
- package/dist/bindings/ToggleDonobuAnnotations.js +12 -6
- package/dist/bindings/ToggleDonobuAnnotations.js.map +1 -1
- package/dist/clients/AnthropicAwsBedrockGptClient.d.ts +1 -20
- package/dist/clients/AnthropicAwsBedrockGptClient.d.ts.map +1 -1
- package/dist/clients/AnthropicAwsBedrockGptClient.js +12 -329
- package/dist/clients/AnthropicAwsBedrockGptClient.js.map +1 -1
- package/dist/clients/AnthropicGptClient.d.ts +0 -8
- package/dist/clients/AnthropicGptClient.d.ts.map +1 -1
- package/dist/clients/AnthropicGptClient.js +8 -22
- package/dist/clients/AnthropicGptClient.js.map +1 -1
- package/dist/clients/GoogleGptClient.d.ts +4 -20
- package/dist/clients/GoogleGptClient.d.ts.map +1 -1
- package/dist/clients/GoogleGptClient.js +23 -299
- package/dist/clients/GoogleGptClient.js.map +1 -1
- package/dist/clients/OpenAiGptClient.d.ts +0 -6
- package/dist/clients/OpenAiGptClient.d.ts.map +1 -1
- package/dist/clients/OpenAiGptClient.js +4 -8
- package/dist/clients/OpenAiGptClient.js.map +1 -1
- package/dist/clients/VercelAiGptClient.d.ts +3 -1
- package/dist/clients/VercelAiGptClient.d.ts.map +1 -1
- package/dist/clients/VercelAiGptClient.js +18 -14
- package/dist/clients/VercelAiGptClient.js.map +1 -1
- package/dist/esm/apis/FlowsFilesApi.d.ts.map +1 -1
- package/dist/esm/apis/FlowsFilesApi.js +5 -2
- package/dist/esm/apis/FlowsFilesApi.js.map +1 -1
- package/dist/esm/assets/control-panel.js +30 -3
- package/dist/esm/assets/generated/parameter-schemas.json +118 -17
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/assets/interactive-elements-tracker.js +351 -0
- package/dist/esm/assets/page-interactions-tracker.js +39 -20
- package/dist/esm/assets/smart-selector-generator.js +38 -15
- package/dist/esm/bindings/FocusPage.d.ts +6 -1
- package/dist/esm/bindings/FocusPage.d.ts.map +1 -1
- package/dist/esm/bindings/FocusPage.js +2 -8
- package/dist/esm/bindings/FocusPage.js.map +1 -1
- package/dist/esm/bindings/PageInteractionTracker.d.ts +9 -2
- package/dist/esm/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/esm/bindings/PageInteractionTracker.js +29 -5
- package/dist/esm/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/esm/bindings/ProposeToolCall.d.ts +20 -0
- package/dist/esm/bindings/ProposeToolCall.d.ts.map +1 -0
- package/dist/esm/bindings/ProposeToolCall.js +29 -0
- package/dist/esm/bindings/ProposeToolCall.js.map +1 -0
- package/dist/esm/bindings/ToggleDonobuAnnotations.d.ts +5 -2
- package/dist/esm/bindings/ToggleDonobuAnnotations.d.ts.map +1 -1
- package/dist/esm/bindings/ToggleDonobuAnnotations.js +12 -6
- package/dist/esm/bindings/ToggleDonobuAnnotations.js.map +1 -1
- package/dist/esm/clients/AnthropicAwsBedrockGptClient.d.ts +1 -20
- package/dist/esm/clients/AnthropicAwsBedrockGptClient.d.ts.map +1 -1
- package/dist/esm/clients/AnthropicAwsBedrockGptClient.js +12 -329
- package/dist/esm/clients/AnthropicAwsBedrockGptClient.js.map +1 -1
- package/dist/esm/clients/AnthropicGptClient.d.ts +0 -8
- package/dist/esm/clients/AnthropicGptClient.d.ts.map +1 -1
- package/dist/esm/clients/AnthropicGptClient.js +8 -22
- package/dist/esm/clients/AnthropicGptClient.js.map +1 -1
- package/dist/esm/clients/GoogleGptClient.d.ts +4 -20
- package/dist/esm/clients/GoogleGptClient.d.ts.map +1 -1
- package/dist/esm/clients/GoogleGptClient.js +23 -299
- package/dist/esm/clients/GoogleGptClient.js.map +1 -1
- package/dist/esm/clients/OpenAiGptClient.d.ts +0 -6
- package/dist/esm/clients/OpenAiGptClient.d.ts.map +1 -1
- package/dist/esm/clients/OpenAiGptClient.js +4 -8
- package/dist/esm/clients/OpenAiGptClient.js.map +1 -1
- package/dist/esm/clients/VercelAiGptClient.d.ts +3 -1
- package/dist/esm/clients/VercelAiGptClient.d.ts.map +1 -1
- package/dist/esm/clients/VercelAiGptClient.js +18 -14
- package/dist/esm/clients/VercelAiGptClient.js.map +1 -1
- package/dist/esm/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/esm/managers/CodeGenerator.js +2 -1
- package/dist/esm/managers/CodeGenerator.js.map +1 -1
- package/dist/esm/managers/ControlPanel.d.ts +124 -0
- package/dist/esm/managers/ControlPanel.d.ts.map +1 -0
- package/dist/esm/managers/ControlPanel.js +282 -0
- package/dist/esm/managers/ControlPanel.js.map +1 -0
- package/dist/esm/managers/DonobuFlow.d.ts +9 -13
- package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlow.js +123 -172
- package/dist/esm/managers/DonobuFlow.js.map +1 -1
- package/dist/esm/managers/InteractionVisualizer.d.ts +9 -15
- package/dist/esm/managers/InteractionVisualizer.d.ts.map +1 -1
- package/dist/esm/managers/InteractionVisualizer.js +44 -44
- package/dist/esm/managers/InteractionVisualizer.js.map +1 -1
- package/dist/esm/managers/PageInspector.d.ts +242 -0
- package/dist/esm/managers/PageInspector.d.ts.map +1 -0
- package/dist/esm/managers/PageInspector.js +783 -0
- package/dist/esm/managers/PageInspector.js.map +1 -0
- package/dist/esm/managers/ToolManager.d.ts.map +1 -1
- package/dist/esm/managers/ToolManager.js +4 -6
- package/dist/esm/managers/ToolManager.js.map +1 -1
- package/dist/esm/models/GptMessage.d.ts +3 -3
- package/dist/esm/models/GptMessage.d.ts.map +1 -1
- package/dist/esm/models/InteractableElement.d.ts +2 -2
- package/dist/esm/models/ToolCallContext.d.ts +6 -2
- package/dist/esm/models/ToolCallContext.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistence.d.ts +4 -4
- package/dist/esm/persistence/FlowsPersistence.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts +2 -3
- package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceAwsS3.js +8 -6
- package/dist/esm/persistence/FlowsPersistenceAwsS3.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts +2 -3
- package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceFilesystem.js +5 -4
- package/dist/esm/persistence/FlowsPersistenceFilesystem.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +2 -3
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js +7 -5
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts +2 -3
- package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSqlite.js +8 -6
- package/dist/esm/persistence/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts +2 -2
- package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSupabase.js +5 -3
- package/dist/esm/persistence/FlowsPersistenceSupabase.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts +2 -2
- package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceVolatile.js +5 -3
- package/dist/esm/persistence/FlowsPersistenceVolatile.js.map +1 -1
- package/dist/esm/playwrightTestExtensions.d.ts +5 -0
- package/dist/esm/playwrightTestExtensions.d.ts.map +1 -1
- package/dist/esm/playwrightTestExtensions.js +56 -17
- package/dist/esm/playwrightTestExtensions.js.map +1 -1
- package/dist/esm/tools/AnalyzePageTextTool.js +1 -1
- package/dist/esm/tools/AnalyzePageTextTool.js.map +1 -1
- package/dist/esm/tools/AssertPageTextTool.js +1 -1
- package/dist/esm/tools/AssertPageTextTool.js.map +1 -1
- package/dist/esm/tools/AssertTool.d.ts.map +1 -1
- package/dist/esm/tools/AssertTool.js +5 -5
- package/dist/esm/tools/AssertTool.js.map +1 -1
- package/dist/esm/tools/ChangeWebBrowserTabTool.d.ts.map +1 -1
- package/dist/esm/tools/ChangeWebBrowserTabTool.js +8 -7
- package/dist/esm/tools/ChangeWebBrowserTabTool.js.map +1 -1
- package/dist/esm/tools/ClickTool.js +1 -1
- package/dist/esm/tools/ClickTool.js.map +1 -1
- package/dist/esm/tools/CreateBrowserCookieReportTool.js +1 -1
- package/dist/esm/tools/CreateBrowserCookieReportTool.js.map +1 -1
- package/dist/esm/tools/CustomToolRunnerTool.d.ts.map +1 -1
- package/dist/esm/tools/CustomToolRunnerTool.js +1 -1
- package/dist/esm/tools/CustomToolRunnerTool.js.map +1 -1
- package/dist/esm/tools/DetectBrokenLinksTool.d.ts.map +1 -1
- package/dist/esm/tools/DetectBrokenLinksTool.js +5 -3
- package/dist/esm/tools/DetectBrokenLinksTool.js.map +1 -1
- package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js +4 -4
- package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
- package/dist/esm/tools/ExtractPaymentProviderKeyTool.js +1 -1
- package/dist/esm/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
- package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.js +1 -1
- package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.js.map +1 -1
- package/dist/esm/tools/GoForwardOrBackTool.js +1 -1
- package/dist/esm/tools/GoForwardOrBackTool.js.map +1 -1
- package/dist/esm/tools/GoToGoogleMapsStreetViewTool.js +1 -1
- package/dist/esm/tools/GoToGoogleMapsStreetViewTool.js.map +1 -1
- package/dist/esm/tools/GoToWebpageTool.js +1 -1
- package/dist/esm/tools/GoToWebpageTool.js.map +1 -1
- package/dist/esm/tools/HoverOverElementTool.d.ts.map +1 -1
- package/dist/esm/tools/HoverOverElementTool.js +1 -1
- package/dist/esm/tools/HoverOverElementTool.js.map +1 -1
- package/dist/esm/tools/NavigateWithinStreetView.js +1 -1
- package/dist/esm/tools/NavigateWithinStreetView.js.map +1 -1
- package/dist/esm/tools/PressKeyTool.js +1 -1
- package/dist/esm/tools/PressKeyTool.js.map +1 -1
- package/dist/esm/tools/ReloadPageTool.js +1 -1
- package/dist/esm/tools/ReloadPageTool.js.map +1 -1
- package/dist/esm/tools/ReplayableInteraction.d.ts +16 -1
- package/dist/esm/tools/ReplayableInteraction.d.ts.map +1 -1
- package/dist/esm/tools/ReplayableInteraction.js +169 -16
- package/dist/esm/tools/ReplayableInteraction.js.map +1 -1
- package/dist/esm/tools/RunAccessibilityTestTool.d.ts +8 -0
- package/dist/esm/tools/RunAccessibilityTestTool.d.ts.map +1 -1
- package/dist/esm/tools/RunAccessibilityTestTool.js +15 -2
- package/dist/esm/tools/RunAccessibilityTestTool.js.map +1 -1
- package/dist/esm/tools/RunInlineJavaScriptCodeTool.d.ts.map +1 -1
- package/dist/esm/tools/RunInlineJavaScriptCodeTool.js +1 -1
- package/dist/esm/tools/RunInlineJavaScriptCodeTool.js.map +1 -1
- package/dist/esm/tools/SaveWebpageAsPdfTool.js +1 -1
- package/dist/esm/tools/SaveWebpageAsPdfTool.js.map +1 -1
- package/dist/esm/tools/ScrollPageTool.d.ts +1 -1
- package/dist/esm/tools/ScrollPageTool.d.ts.map +1 -1
- package/dist/esm/tools/ScrollPageTool.js +47 -4
- package/dist/esm/tools/ScrollPageTool.js.map +1 -1
- package/dist/esm/tools/WaitTool.js +1 -1
- package/dist/esm/tools/WaitTool.js.map +1 -1
- package/dist/esm/utils/MiscUtils.d.ts +10 -13
- package/dist/esm/utils/MiscUtils.d.ts.map +1 -1
- package/dist/esm/utils/MiscUtils.js +92 -56
- package/dist/esm/utils/MiscUtils.js.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.d.ts +32 -130
- package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.js +140 -938
- package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
- package/dist/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/managers/CodeGenerator.js +2 -1
- package/dist/managers/CodeGenerator.js.map +1 -1
- package/dist/managers/ControlPanel.d.ts +124 -0
- package/dist/managers/ControlPanel.d.ts.map +1 -0
- package/dist/managers/ControlPanel.js +282 -0
- package/dist/managers/ControlPanel.js.map +1 -0
- package/dist/managers/DonobuFlow.d.ts +9 -13
- package/dist/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/managers/DonobuFlow.js +123 -172
- package/dist/managers/DonobuFlow.js.map +1 -1
- package/dist/managers/InteractionVisualizer.d.ts +9 -15
- package/dist/managers/InteractionVisualizer.d.ts.map +1 -1
- package/dist/managers/InteractionVisualizer.js +44 -44
- package/dist/managers/InteractionVisualizer.js.map +1 -1
- package/dist/managers/PageInspector.d.ts +242 -0
- package/dist/managers/PageInspector.d.ts.map +1 -0
- package/dist/managers/PageInspector.js +783 -0
- package/dist/managers/PageInspector.js.map +1 -0
- package/dist/managers/ToolManager.d.ts.map +1 -1
- package/dist/managers/ToolManager.js +4 -6
- package/dist/managers/ToolManager.js.map +1 -1
- package/dist/models/GptMessage.d.ts +3 -3
- package/dist/models/GptMessage.d.ts.map +1 -1
- package/dist/models/InteractableElement.d.ts +2 -2
- package/dist/models/ToolCallContext.d.ts +6 -2
- package/dist/models/ToolCallContext.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistence.d.ts +4 -4
- package/dist/persistence/FlowsPersistence.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceAwsS3.d.ts +2 -3
- package/dist/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceAwsS3.js +8 -6
- package/dist/persistence/FlowsPersistenceAwsS3.js.map +1 -1
- package/dist/persistence/FlowsPersistenceFilesystem.d.ts +2 -3
- package/dist/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceFilesystem.js +5 -4
- package/dist/persistence/FlowsPersistenceFilesystem.js.map +1 -1
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +2 -3
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js +7 -5
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
- package/dist/persistence/FlowsPersistenceSqlite.d.ts +2 -3
- package/dist/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceSqlite.js +8 -6
- package/dist/persistence/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/persistence/FlowsPersistenceSupabase.d.ts +2 -2
- package/dist/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceSupabase.js +5 -3
- package/dist/persistence/FlowsPersistenceSupabase.js.map +1 -1
- package/dist/persistence/FlowsPersistenceVolatile.d.ts +2 -2
- package/dist/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceVolatile.js +5 -3
- package/dist/persistence/FlowsPersistenceVolatile.js.map +1 -1
- package/dist/playwrightTestExtensions.d.ts +5 -0
- package/dist/playwrightTestExtensions.d.ts.map +1 -1
- package/dist/playwrightTestExtensions.js +56 -17
- package/dist/playwrightTestExtensions.js.map +1 -1
- package/dist/tools/AnalyzePageTextTool.js +1 -1
- package/dist/tools/AnalyzePageTextTool.js.map +1 -1
- package/dist/tools/AssertPageTextTool.js +1 -1
- package/dist/tools/AssertPageTextTool.js.map +1 -1
- package/dist/tools/AssertTool.d.ts.map +1 -1
- package/dist/tools/AssertTool.js +5 -5
- package/dist/tools/AssertTool.js.map +1 -1
- package/dist/tools/ChangeWebBrowserTabTool.d.ts.map +1 -1
- package/dist/tools/ChangeWebBrowserTabTool.js +8 -7
- package/dist/tools/ChangeWebBrowserTabTool.js.map +1 -1
- package/dist/tools/ClickTool.js +1 -1
- package/dist/tools/ClickTool.js.map +1 -1
- package/dist/tools/CreateBrowserCookieReportTool.js +1 -1
- package/dist/tools/CreateBrowserCookieReportTool.js.map +1 -1
- package/dist/tools/CustomToolRunnerTool.d.ts.map +1 -1
- package/dist/tools/CustomToolRunnerTool.js +1 -1
- package/dist/tools/CustomToolRunnerTool.js.map +1 -1
- package/dist/tools/DetectBrokenLinksTool.d.ts.map +1 -1
- package/dist/tools/DetectBrokenLinksTool.js +5 -3
- package/dist/tools/DetectBrokenLinksTool.js.map +1 -1
- package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js +4 -4
- package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
- package/dist/tools/ExtractPaymentProviderKeyTool.js +1 -1
- package/dist/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
- package/dist/tools/ExtractPublicFacebookEntityDataTool.js +1 -1
- package/dist/tools/ExtractPublicFacebookEntityDataTool.js.map +1 -1
- package/dist/tools/GoForwardOrBackTool.js +1 -1
- package/dist/tools/GoForwardOrBackTool.js.map +1 -1
- package/dist/tools/GoToGoogleMapsStreetViewTool.js +1 -1
- package/dist/tools/GoToGoogleMapsStreetViewTool.js.map +1 -1
- package/dist/tools/GoToWebpageTool.js +1 -1
- package/dist/tools/GoToWebpageTool.js.map +1 -1
- package/dist/tools/HoverOverElementTool.d.ts.map +1 -1
- package/dist/tools/HoverOverElementTool.js +1 -1
- package/dist/tools/HoverOverElementTool.js.map +1 -1
- package/dist/tools/NavigateWithinStreetView.js +1 -1
- package/dist/tools/NavigateWithinStreetView.js.map +1 -1
- package/dist/tools/PressKeyTool.js +1 -1
- package/dist/tools/PressKeyTool.js.map +1 -1
- package/dist/tools/ReloadPageTool.js +1 -1
- package/dist/tools/ReloadPageTool.js.map +1 -1
- package/dist/tools/ReplayableInteraction.d.ts +16 -1
- package/dist/tools/ReplayableInteraction.d.ts.map +1 -1
- package/dist/tools/ReplayableInteraction.js +169 -16
- package/dist/tools/ReplayableInteraction.js.map +1 -1
- package/dist/tools/RunAccessibilityTestTool.d.ts +8 -0
- package/dist/tools/RunAccessibilityTestTool.d.ts.map +1 -1
- package/dist/tools/RunAccessibilityTestTool.js +15 -2
- package/dist/tools/RunAccessibilityTestTool.js.map +1 -1
- package/dist/tools/RunInlineJavaScriptCodeTool.d.ts.map +1 -1
- package/dist/tools/RunInlineJavaScriptCodeTool.js +1 -1
- package/dist/tools/RunInlineJavaScriptCodeTool.js.map +1 -1
- package/dist/tools/SaveWebpageAsPdfTool.js +1 -1
- package/dist/tools/SaveWebpageAsPdfTool.js.map +1 -1
- package/dist/tools/ScrollPageTool.d.ts +1 -1
- package/dist/tools/ScrollPageTool.d.ts.map +1 -1
- package/dist/tools/ScrollPageTool.js +47 -4
- package/dist/tools/ScrollPageTool.js.map +1 -1
- package/dist/tools/WaitTool.js +1 -1
- package/dist/tools/WaitTool.js.map +1 -1
- package/dist/utils/MiscUtils.d.ts +10 -13
- package/dist/utils/MiscUtils.d.ts.map +1 -1
- package/dist/utils/MiscUtils.js +92 -56
- package/dist/utils/MiscUtils.js.map +1 -1
- package/dist/utils/PlaywrightUtils.d.ts +32 -130
- package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/utils/PlaywrightUtils.js +140 -938
- package/dist/utils/PlaywrightUtils.js.map +1 -1
- package/package.json +4 -2
- package/dist/assets/clickable-elements-tracker.js +0 -63
- package/dist/assets/zaru-eyes.html +0 -141
- package/dist/esm/assets/clickable-elements-tracker.js +0 -63
- package/dist/esm/assets/zaru-eyes.html +0 -141
- package/dist/esm/managers/TemplateInterpolator.d.ts +0 -19
- package/dist/esm/managers/TemplateInterpolator.d.ts.map +0 -1
- package/dist/esm/managers/TemplateInterpolator.js +0 -86
- package/dist/esm/managers/TemplateInterpolator.js.map +0 -1
- package/dist/esm/managers/ToolTipper.d.ts +0 -32
- package/dist/esm/managers/ToolTipper.d.ts.map +0 -1
- package/dist/esm/managers/ToolTipper.js +0 -229
- package/dist/esm/managers/ToolTipper.js.map +0 -1
- package/dist/esm/models/BrowserState.d.ts +0 -26
- package/dist/esm/models/BrowserState.d.ts.map +0 -1
- package/dist/esm/models/BrowserState.js +0 -3
- package/dist/esm/models/BrowserState.js.map +0 -1
- package/dist/esm/models/ResolverContext.d.ts +0 -7
- package/dist/esm/models/ResolverContext.d.ts.map +0 -1
- package/dist/esm/models/ResolverContext.js +0 -3
- package/dist/esm/models/ResolverContext.js.map +0 -1
- package/dist/esm/models/ToolTemplateDataSource.d.ts +0 -36
- package/dist/esm/models/ToolTemplateDataSource.d.ts.map +0 -1
- package/dist/esm/models/ToolTemplateDataSource.js +0 -3
- package/dist/esm/models/ToolTemplateDataSource.js.map +0 -1
- package/dist/esm/test.d.ts +0 -78
- package/dist/esm/test.d.ts.map +0 -1
- package/dist/esm/test.js +0 -423
- package/dist/esm/test.js.map +0 -1
- package/dist/esm/utils/TemplateInterpolator.d.ts +0 -29
- package/dist/esm/utils/TemplateInterpolator.d.ts.map +0 -1
- package/dist/esm/utils/TemplateInterpolator.js +0 -206
- package/dist/esm/utils/TemplateInterpolator.js.map +0 -1
- package/dist/managers/TemplateInterpolator.d.ts +0 -19
- package/dist/managers/TemplateInterpolator.d.ts.map +0 -1
- package/dist/managers/TemplateInterpolator.js +0 -86
- package/dist/managers/TemplateInterpolator.js.map +0 -1
- package/dist/managers/ToolTipper.d.ts +0 -32
- package/dist/managers/ToolTipper.d.ts.map +0 -1
- package/dist/managers/ToolTipper.js +0 -229
- package/dist/managers/ToolTipper.js.map +0 -1
- package/dist/models/BrowserState.d.ts +0 -26
- package/dist/models/BrowserState.d.ts.map +0 -1
- package/dist/models/BrowserState.js +0 -3
- package/dist/models/BrowserState.js.map +0 -1
- package/dist/models/ResolverContext.d.ts +0 -7
- package/dist/models/ResolverContext.d.ts.map +0 -1
- package/dist/models/ResolverContext.js +0 -3
- package/dist/models/ResolverContext.js.map +0 -1
- package/dist/models/ToolTemplateDataSource.d.ts +0 -36
- package/dist/models/ToolTemplateDataSource.d.ts.map +0 -1
- package/dist/models/ToolTemplateDataSource.js +0 -3
- package/dist/models/ToolTemplateDataSource.js.map +0 -1
- package/dist/test.d.ts +0 -78
- package/dist/test.d.ts.map +0 -1
- package/dist/test.js +0 -423
- package/dist/test.js.map +0 -1
- package/dist/tsconfig.esm.tsbuildinfo +0 -1
- package/dist/utils/TemplateInterpolator.d.ts +0 -29
- package/dist/utils/TemplateInterpolator.d.ts.map +0 -1
- package/dist/utils/TemplateInterpolator.js +0 -211
- package/dist/utils/TemplateInterpolator.js.map +0 -1
package/dist/esm/test.js
DELETED
|
@@ -1,423 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.test = void 0;
|
|
18
|
-
exports.getOrCreateDonobuStack = getOrCreateDonobuStack;
|
|
19
|
-
exports.getBrowserStorageState = getBrowserStorageState;
|
|
20
|
-
exports.getBrowserStorageStateFixture = getBrowserStorageStateFixture;
|
|
21
|
-
exports.anthropicClient = anthropicClient;
|
|
22
|
-
exports.anthropicClientFixture = anthropicClientFixture;
|
|
23
|
-
exports.anthropicAwsBedrockClient = anthropicAwsBedrockClient;
|
|
24
|
-
exports.anthropicAwsBedrockClientFixture = anthropicAwsBedrockClientFixture;
|
|
25
|
-
exports.googleGeminiClient = googleGeminiClient;
|
|
26
|
-
exports.googleGeminiClientFixture = googleGeminiClientFixture;
|
|
27
|
-
exports.openAiClient = openAiClient;
|
|
28
|
-
exports.openAiClientFixture = openAiClientFixture;
|
|
29
|
-
exports.vercelAiClientFixture = vercelAiClientFixture;
|
|
30
|
-
exports.gptClient = gptClient;
|
|
31
|
-
exports.gptClientFixture = gptClientFixture;
|
|
32
|
-
/**
|
|
33
|
-
* This code extends the Playwright Page object and test fixture with
|
|
34
|
-
* test-related Donobu methods.
|
|
35
|
-
*/
|
|
36
|
-
const uuid_1 = require("uuid");
|
|
37
|
-
const test_1 = require("@playwright/test");
|
|
38
|
-
const RequestContextHolder_1 = require("./managers/RequestContextHolder");
|
|
39
|
-
const ToolManager_1 = require("./managers/ToolManager");
|
|
40
|
-
const ToolTipper_1 = require("./managers/ToolTipper");
|
|
41
|
-
const PlaywrightUtils_1 = require("./utils/PlaywrightUtils");
|
|
42
|
-
const MiscUtils_1 = require("./utils/MiscUtils");
|
|
43
|
-
const DonobuDeploymentEnvironment_1 = require("./models/DonobuDeploymentEnvironment");
|
|
44
|
-
const GptClientFactory_1 = require("./clients/GptClientFactory");
|
|
45
|
-
const VercelAiGptClient_1 = require("./clients/VercelAiGptClient");
|
|
46
|
-
const DonobuStack_1 = require("./managers/DonobuStack");
|
|
47
|
-
const DEFAULT_FLOW_URL = 'https://example.com';
|
|
48
|
-
const DEFAULT_GPT_MODEL_FOR_PLATFORM = {
|
|
49
|
-
ANTHROPIC: 'claude-3-5-sonnet-latest',
|
|
50
|
-
GOOGLE_GEMINI: 'gemini-2.0-flash',
|
|
51
|
-
OPENAI: 'gpt-4o',
|
|
52
|
-
};
|
|
53
|
-
let donobuStack = undefined;
|
|
54
|
-
async function getOrCreateDonobuStack() {
|
|
55
|
-
if (!donobuStack) {
|
|
56
|
-
donobuStack = await (0, DonobuStack_1.setupDonobuStack)(DonobuDeploymentEnvironment_1.DonobuDeploymentEnvironment.LOCAL, new RequestContextHolder_1.RequestContextHolder());
|
|
57
|
-
return donobuStack;
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
return donobuStack;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
async function getBrowserStorageState(flowIdOrName) {
|
|
64
|
-
return (await getOrCreateDonobuStack()).flowsManager.getBrowserStorageState(flowIdOrName);
|
|
65
|
-
}
|
|
66
|
-
function getBrowserStorageStateFixture(flowIdOrName) {
|
|
67
|
-
return async ({}, use) => {
|
|
68
|
-
const storage = await (await getOrCreateDonobuStack()).flowsManager.getBrowserStorageState(flowIdOrName);
|
|
69
|
-
await use(storage);
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
async function anthropicClient(modelName, apiKey) {
|
|
73
|
-
const divinedApiKey = apiKey || process.env.ANTHROPIC_API_KEY;
|
|
74
|
-
if (!divinedApiKey) {
|
|
75
|
-
throw new Error('An API key is required to use the Anthropic API. Please provide one as an argument or set it using the ANTHROPIC_API_KEY environment variable.');
|
|
76
|
-
}
|
|
77
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
78
|
-
type: 'ANTHROPIC',
|
|
79
|
-
apiKey: divinedApiKey,
|
|
80
|
-
modelName: modelName,
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
function anthropicClientFixture(modelName, apiKey) {
|
|
84
|
-
return async ({}, use) => {
|
|
85
|
-
const client = await anthropicClient(modelName, apiKey);
|
|
86
|
-
await use(client);
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
async function anthropicAwsBedrockClient(modelName, region, accessKeyId, secretAccessKey) {
|
|
90
|
-
const divinedAccessKeyId = accessKeyId || process.env.AWS_ACCESS_KEY_ID;
|
|
91
|
-
const divinedSecretAccessKey = secretAccessKey || process.env.AWS_SECRET_ACCESS_KEY;
|
|
92
|
-
if (!divinedAccessKeyId || !divinedSecretAccessKey) {
|
|
93
|
-
throw new Error('AWS access key ID and secret access key are required to use the Anthropic AWS Bedrock API. Please provide them as arguments or set them using the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables.');
|
|
94
|
-
}
|
|
95
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
96
|
-
type: 'ANTHROPIC_AWS_BEDROCK',
|
|
97
|
-
region: region,
|
|
98
|
-
modelName: modelName,
|
|
99
|
-
accessKeyId: divinedAccessKeyId,
|
|
100
|
-
secretAccessKey: divinedSecretAccessKey,
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
function anthropicAwsBedrockClientFixture(modelName, region, accessKeyId, secretAccessKey) {
|
|
104
|
-
return async ({}, use) => {
|
|
105
|
-
const client = await anthropicAwsBedrockClient(modelName, region, accessKeyId, secretAccessKey);
|
|
106
|
-
await use(client);
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
async function googleGeminiClient(modelName, apiKey) {
|
|
110
|
-
const divinedApiKey = apiKey || process.env.GOOGLE_GENERATIVE_AI_API_KEY;
|
|
111
|
-
if (!divinedApiKey) {
|
|
112
|
-
throw new Error('An API key is required to use the Google Gemini API. Please provide one as an argument or set it using the GOOGLE_GENERATIVE_AI_API_KEY environment variable.');
|
|
113
|
-
}
|
|
114
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
115
|
-
type: 'GOOGLE_GEMINI',
|
|
116
|
-
apiKey: divinedApiKey,
|
|
117
|
-
modelName: modelName,
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
function googleGeminiClientFixture(modelName, apiKey) {
|
|
121
|
-
return async ({}, use) => {
|
|
122
|
-
const client = await googleGeminiClient(modelName, apiKey);
|
|
123
|
-
await use(client);
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
async function openAiClient(modelName, apiKey) {
|
|
127
|
-
const divinedApiKey = apiKey || process.env.OPENAI_API_KEY;
|
|
128
|
-
if (!divinedApiKey) {
|
|
129
|
-
throw new Error('An API key is required to use the OpenAI API. Please provide one as an argument or set it using the OPENAI_API_KEY environment variable.');
|
|
130
|
-
}
|
|
131
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
132
|
-
type: 'OPENAI',
|
|
133
|
-
apiKey: divinedApiKey,
|
|
134
|
-
modelName: modelName,
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
function openAiClientFixture(modelName, apiKey) {
|
|
138
|
-
return async ({}, use) => {
|
|
139
|
-
const client = await openAiClient(modelName, apiKey);
|
|
140
|
-
await use(client);
|
|
141
|
-
};
|
|
142
|
-
}
|
|
143
|
-
function vercelAiClientFixture(model) {
|
|
144
|
-
return async ({}, use) => {
|
|
145
|
-
const client = new VercelAiGptClient_1.VercelAiGptClient(model);
|
|
146
|
-
await use(client);
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* This fixture resolves a GPT client based on environment variables.
|
|
151
|
-
* Supplying different environment variables will result in different GPT
|
|
152
|
-
* clients being created. Here is a mapping of client type to environment
|
|
153
|
-
* variables for how to create the various types of clients...
|
|
154
|
-
*
|
|
155
|
-
* Anthropic GPT client requires:
|
|
156
|
-
* - ANTHROPIC_API_KEY
|
|
157
|
-
*
|
|
158
|
-
* Google GPT client requires:
|
|
159
|
-
* - GOOGLE_GENERATIVE_AI_API_KEY
|
|
160
|
-
*
|
|
161
|
-
* OpenAI GPT client requires:
|
|
162
|
-
* - OPENAI_API_KEY
|
|
163
|
-
*
|
|
164
|
-
* If the modelName is not specified, it will be defaulted according to the
|
|
165
|
-
* DEFAULT_GPT_MODEL_FOR_PLATFORM mapping.
|
|
166
|
-
*/
|
|
167
|
-
async function gptClient(modelName) {
|
|
168
|
-
// Check which API keys are available
|
|
169
|
-
const hasAnthropicKey = !!process.env.ANTHROPIC_API_KEY;
|
|
170
|
-
const hasGoogleKey = !!process.env.GOOGLE_GENERATIVE_AI_API_KEY;
|
|
171
|
-
const hasOpenAiKey = !!process.env.OPENAI_API_KEY;
|
|
172
|
-
// Priority order: Anthropic, Google, OpenAI
|
|
173
|
-
if (hasAnthropicKey) {
|
|
174
|
-
const model = modelName || DEFAULT_GPT_MODEL_FOR_PLATFORM.ANTHROPIC;
|
|
175
|
-
return anthropicClient(model);
|
|
176
|
-
}
|
|
177
|
-
else if (hasGoogleKey) {
|
|
178
|
-
const model = modelName || DEFAULT_GPT_MODEL_FOR_PLATFORM.GOOGLE_GEMINI;
|
|
179
|
-
return googleGeminiClient(model);
|
|
180
|
-
}
|
|
181
|
-
else if (hasOpenAiKey) {
|
|
182
|
-
const model = modelName || DEFAULT_GPT_MODEL_FOR_PLATFORM.OPENAI;
|
|
183
|
-
return openAiClient(model);
|
|
184
|
-
}
|
|
185
|
-
else {
|
|
186
|
-
const donobu = await getOrCreateDonobuStack();
|
|
187
|
-
const defaultClient = (await donobu.flowsManager.createGptClient(null))
|
|
188
|
-
.gptClient;
|
|
189
|
-
if (defaultClient) {
|
|
190
|
-
return defaultClient;
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
// No API keys are available and there is not flow-runner set up, throw an error.
|
|
194
|
-
throw new Error(`No API keys found for any supported GPT providers.
|
|
195
|
-
Please set one of the following environment variables: ANTHROPIC_API_KEY, GOOGLE_GENERATIVE_AI_API_KEY, or OPENAI_API_KEY.
|
|
196
|
-
Alternatively, set a flow-runner agent via POST /api/agents/flow-runner or via the Donobu app.`);
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
function gptClientFixture(modelName) {
|
|
201
|
-
return async ({}, use) => {
|
|
202
|
-
const client = await gptClient(modelName);
|
|
203
|
-
await use(client);
|
|
204
|
-
};
|
|
205
|
-
}
|
|
206
|
-
__exportStar(require("playwright/test"), exports);
|
|
207
|
-
exports.test = test_1.test.extend({
|
|
208
|
-
// 1) Declare `gptClient` as an "option" fixture with a default of `undefined`.
|
|
209
|
-
gptClient: [
|
|
210
|
-
undefined, // default
|
|
211
|
-
{ option: true }, // so that test.use({ gptClient: ... }) can override
|
|
212
|
-
],
|
|
213
|
-
// Override the default page fixture
|
|
214
|
-
page: async ({ page, gptClient }, use, testInfo) => {
|
|
215
|
-
// Patch the page with "run", but do it lazily
|
|
216
|
-
const donobu = await getOrCreateDonobuStack();
|
|
217
|
-
await page
|
|
218
|
-
.context()
|
|
219
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.accessibilityTestInitScript());
|
|
220
|
-
await page
|
|
221
|
-
.context()
|
|
222
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.clickableElementsTrackerInitScript());
|
|
223
|
-
await page
|
|
224
|
-
.context()
|
|
225
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.dialogPromptTrackerInitScript());
|
|
226
|
-
await page
|
|
227
|
-
.context()
|
|
228
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.smartSelectorGeneratorInitScript());
|
|
229
|
-
let isInitialized = false;
|
|
230
|
-
async function maybeInitDonobu() {
|
|
231
|
-
if (isInitialized) {
|
|
232
|
-
return;
|
|
233
|
-
}
|
|
234
|
-
const donobuTestFlowMetadata = {
|
|
235
|
-
id: (0, uuid_1.v4)(),
|
|
236
|
-
name: testInfo.title,
|
|
237
|
-
createdWithDonobuVersion: MiscUtils_1.MiscUtils.DONOBU_VERSION,
|
|
238
|
-
browser: {
|
|
239
|
-
using: {
|
|
240
|
-
type: 'device',
|
|
241
|
-
deviceName: 'Desktop Chromium',
|
|
242
|
-
headless: true,
|
|
243
|
-
},
|
|
244
|
-
},
|
|
245
|
-
gptConfigName: null,
|
|
246
|
-
hasGptConfigNameOverride: false,
|
|
247
|
-
customTools: null,
|
|
248
|
-
defaultToolTipDurationMilliseconds: 0,
|
|
249
|
-
runMode: 'DETERMINISTIC',
|
|
250
|
-
isControlPanelEnabled: false,
|
|
251
|
-
callbackUrl: null,
|
|
252
|
-
targetWebsite: DEFAULT_FLOW_URL,
|
|
253
|
-
overallObjective: testInfo.annotations.find((v) => {
|
|
254
|
-
return v.type === 'objective';
|
|
255
|
-
})?.description ?? null,
|
|
256
|
-
allowedTools: [],
|
|
257
|
-
resultJsonSchema: null,
|
|
258
|
-
result: null,
|
|
259
|
-
inputTokensUsed: 0,
|
|
260
|
-
completionTokensUsed: 0,
|
|
261
|
-
iterations: 0,
|
|
262
|
-
maxIterations: 0,
|
|
263
|
-
startedAt: new Date().getTime(),
|
|
264
|
-
completedAt: null,
|
|
265
|
-
state: 'RUNNING_ACTION',
|
|
266
|
-
nextState: null,
|
|
267
|
-
};
|
|
268
|
-
const persistenceLayer = await donobu.flowsPersistenceFactory.createPersistenceLayer();
|
|
269
|
-
await persistenceLayer.saveMetadata(donobuTestFlowMetadata);
|
|
270
|
-
page._donobuFlowMetadata = donobuTestFlowMetadata;
|
|
271
|
-
isInitialized = true;
|
|
272
|
-
}
|
|
273
|
-
const originalGoto = page.goto;
|
|
274
|
-
// Intercept 'page.goto' so that Donobu can later re-run it as a standard
|
|
275
|
-
// Donobu action if necessary. This can happen if you run a Playwright
|
|
276
|
-
// test using npx, but later decide to rerun that run using the Donobu UI.
|
|
277
|
-
page.goto = async (url, options) => {
|
|
278
|
-
await maybeInitDonobu();
|
|
279
|
-
const startedAt = new Date().getTime();
|
|
280
|
-
const flowId = page._donobuFlowMetadata.id;
|
|
281
|
-
const persistenceLayer = await donobu.flowsPersistenceFactory.createPersistenceLayer();
|
|
282
|
-
// Update the target website to whatever the first place we are
|
|
283
|
-
// navigating to is.
|
|
284
|
-
if (page._donobuFlowMetadata.targetWebsite === DEFAULT_FLOW_URL) {
|
|
285
|
-
page._donobuFlowMetadata = {
|
|
286
|
-
...page._donobuFlowMetadata,
|
|
287
|
-
targetWebsite: url,
|
|
288
|
-
};
|
|
289
|
-
await persistenceLayer.saveMetadata(page._donobuFlowMetadata);
|
|
290
|
-
}
|
|
291
|
-
try {
|
|
292
|
-
const resp = await originalGoto.call(page, url, options);
|
|
293
|
-
const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takePngScreenshot(page);
|
|
294
|
-
const postCallImageId = await persistenceLayer.savePngScreenShot(flowId, postCallImage);
|
|
295
|
-
const completedAt = new Date().getTime();
|
|
296
|
-
await persistenceLayer.saveToolCall(flowId, {
|
|
297
|
-
id: MiscUtils_1.MiscUtils.createAdHocToolCallId(),
|
|
298
|
-
toolName: 'goToWebpage',
|
|
299
|
-
parameters: {
|
|
300
|
-
url: url,
|
|
301
|
-
},
|
|
302
|
-
outcome: {
|
|
303
|
-
isSuccessful: true,
|
|
304
|
-
forLlm: `Successfully navigated to ${url}`,
|
|
305
|
-
metadata: null,
|
|
306
|
-
},
|
|
307
|
-
postCallImageId: postCallImageId,
|
|
308
|
-
page: url,
|
|
309
|
-
startedAt: startedAt,
|
|
310
|
-
completedAt: completedAt,
|
|
311
|
-
});
|
|
312
|
-
return resp;
|
|
313
|
-
}
|
|
314
|
-
catch (error) {
|
|
315
|
-
const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takePngScreenshot(page);
|
|
316
|
-
const postCallImageId = await persistenceLayer.savePngScreenShot(flowId, postCallImage);
|
|
317
|
-
const completedAt = new Date().getTime();
|
|
318
|
-
await persistenceLayer.saveToolCall(flowId, {
|
|
319
|
-
id: MiscUtils_1.MiscUtils.createAdHocToolCallId(),
|
|
320
|
-
toolName: 'goToWebpage',
|
|
321
|
-
parameters: {
|
|
322
|
-
url: url,
|
|
323
|
-
},
|
|
324
|
-
outcome: {
|
|
325
|
-
isSuccessful: false,
|
|
326
|
-
forLlm: `FAILED! ${typeof error}: ${error.message}`,
|
|
327
|
-
metadata: null,
|
|
328
|
-
},
|
|
329
|
-
postCallImageId: postCallImageId,
|
|
330
|
-
page: url,
|
|
331
|
-
startedAt: startedAt,
|
|
332
|
-
completedAt: completedAt,
|
|
333
|
-
});
|
|
334
|
-
throw error;
|
|
335
|
-
}
|
|
336
|
-
};
|
|
337
|
-
page.run = async (toolName, toolParams) => {
|
|
338
|
-
await maybeInitDonobu();
|
|
339
|
-
const persistenceLayer = await donobu.flowsPersistenceFactory.createPersistenceLayer();
|
|
340
|
-
const clonedParams = toolParams
|
|
341
|
-
? JSON.parse(JSON.stringify(toolParams))
|
|
342
|
-
: {};
|
|
343
|
-
clonedParams.rationale || (clonedParams.rationale = '');
|
|
344
|
-
const toolCallContext = {
|
|
345
|
-
flowsManager: donobu.flowsManager,
|
|
346
|
-
persistence: persistenceLayer,
|
|
347
|
-
gptClient: gptClient ?? null,
|
|
348
|
-
toolTipper: new ToolTipper_1.ToolTipper(0),
|
|
349
|
-
proposedToolCalls: [],
|
|
350
|
-
invokedToolCalls: [],
|
|
351
|
-
page: page,
|
|
352
|
-
metadata: page._donobuFlowMetadata,
|
|
353
|
-
toolCallId: clonedParams.toolCallId ?? MiscUtils_1.MiscUtils.createAdHocToolCallId(),
|
|
354
|
-
};
|
|
355
|
-
return new ToolManager_1.ToolManager(ToolManager_1.ToolManager.ALL_TOOLS)
|
|
356
|
-
.invokeTool(toolCallContext, toolName, clonedParams, false)
|
|
357
|
-
.then(async (result) => {
|
|
358
|
-
await persistenceLayer.saveMetadata(page._donobuFlowMetadata);
|
|
359
|
-
await persistenceLayer.saveToolCall(page._donobuFlowMetadata.id, result);
|
|
360
|
-
return result;
|
|
361
|
-
})
|
|
362
|
-
.then((result) => result.outcome);
|
|
363
|
-
};
|
|
364
|
-
page.analyzePageText = async (params) => {
|
|
365
|
-
return page.run('analyzePageText', params);
|
|
366
|
-
};
|
|
367
|
-
page.assertPageText = async (params) => {
|
|
368
|
-
return page.run('assertPageText', params);
|
|
369
|
-
};
|
|
370
|
-
page.chooseSelectOption = async (params) => {
|
|
371
|
-
return page.run('chooseSelectOption', params);
|
|
372
|
-
};
|
|
373
|
-
page.clickElement = async (params) => {
|
|
374
|
-
return page.run('click', params);
|
|
375
|
-
};
|
|
376
|
-
page.createCookieReport = async () => {
|
|
377
|
-
return page.run('createCookieReport');
|
|
378
|
-
};
|
|
379
|
-
page.detectBrokenLinks = async () => {
|
|
380
|
-
return page.run('detectBrokenLinks');
|
|
381
|
-
};
|
|
382
|
-
page.hoverOverElement = async (params) => {
|
|
383
|
-
return page.run('hover', params);
|
|
384
|
-
};
|
|
385
|
-
page.inputRandomizedEmailAddress = async (params) => {
|
|
386
|
-
return page.run('inputRandomizedEmailAddress', params);
|
|
387
|
-
};
|
|
388
|
-
page.inputText = async (params) => {
|
|
389
|
-
return page.run('inputText', params);
|
|
390
|
-
};
|
|
391
|
-
page.pressKey = async (params) => {
|
|
392
|
-
return page.run('pressKey', params);
|
|
393
|
-
};
|
|
394
|
-
page.runAccessibilityTest = async () => {
|
|
395
|
-
return page.run('runAccessibilityTest');
|
|
396
|
-
};
|
|
397
|
-
page.scroll = async (params) => {
|
|
398
|
-
return page.run('scrollPage', params);
|
|
399
|
-
};
|
|
400
|
-
page.visuallyAssert = async (params) => {
|
|
401
|
-
return page.run('assert', params);
|
|
402
|
-
};
|
|
403
|
-
try {
|
|
404
|
-
// Let Playwright continue and give tests the patched page.
|
|
405
|
-
await use(page);
|
|
406
|
-
}
|
|
407
|
-
finally {
|
|
408
|
-
try {
|
|
409
|
-
const persistenceLayer = await donobu.flowsPersistenceFactory.createPersistenceLayer();
|
|
410
|
-
if (page._donobuFlowMetadata) {
|
|
411
|
-
page._donobuFlowMetadata.state = 'SUCCESS';
|
|
412
|
-
page._donobuFlowMetadata.completedAt = new Date().getTime();
|
|
413
|
-
await persistenceLayer.saveMetadata(page._donobuFlowMetadata);
|
|
414
|
-
}
|
|
415
|
-
}
|
|
416
|
-
catch (error) {
|
|
417
|
-
// Log but don't throw, to ensure cleanup continues.
|
|
418
|
-
console.error('Error during test cleanup:', error);
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
},
|
|
422
|
-
});
|
|
423
|
-
//# sourceMappingURL=test.js.map
|
package/dist/esm/test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Regular expression to match template JSON-path expressions inside of {{...}}
|
|
3
|
-
*/
|
|
4
|
-
export declare const TEMPLATE_DATA_PATTERN: RegExp;
|
|
5
|
-
/**
|
|
6
|
-
* Resolve a JSONPath expression against the context
|
|
7
|
-
* @param expression - The JSONPath expression to evaluate
|
|
8
|
-
* @param dataSource - The data context to evaluate against
|
|
9
|
-
* @returns The resolved value or undefined if not found
|
|
10
|
-
*/
|
|
11
|
-
export declare function resolveExpression(expression: string, dataSource: Record<string, unknown>): any;
|
|
12
|
-
/**
|
|
13
|
-
* Interpolate template strings using JSONPath expressions
|
|
14
|
-
* @param template - The template string with {{...}} expressions
|
|
15
|
-
* @param dataSource - The data context to interpolate from
|
|
16
|
-
* @returns The interpolated string
|
|
17
|
-
*/
|
|
18
|
-
export declare function interpolateString(template: string, dataSource: Record<string, unknown>): string;
|
|
19
|
-
/**
|
|
20
|
-
* Interpolate the parameters object using JSONPath expressions. Any string values
|
|
21
|
-
* and keys in the object will be replaced with the corresponding values from the data source.
|
|
22
|
-
* Nested objects and arrays will be processed recursively.
|
|
23
|
-
*
|
|
24
|
-
* @param parameters - The original parameters object
|
|
25
|
-
* @param dataSource - The data context to interpolate from
|
|
26
|
-
* @returns A new parameters object with interpolated string values and keys
|
|
27
|
-
*/
|
|
28
|
-
export declare function interpolateObject(parameters: any, dataSource: Record<string, unknown>): any;
|
|
29
|
-
//# sourceMappingURL=TemplateInterpolator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TemplateInterpolator.d.ts","sourceRoot":"","sources":["../../../src/utils/TemplateInterpolator.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,qBAAqB,QAAqB,CAAC;AA6ExD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,GAAG,CAmDL;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,MAAM,CAkBR;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,GAAG,EACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,GAAG,CAiDL"}
|