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
|
@@ -1,16 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Donobu script for tracking interactions with the current page. This scripts assumes the
|
|
3
3
|
* following:
|
|
4
|
-
* 1. There is an exposed binding to call back to
|
|
5
|
-
* 2. The smart-selector-generator.js script has defined the "
|
|
4
|
+
* 1. There is an exposed binding to call back to NodeJS named "__donobuTrackInteraction".
|
|
5
|
+
* 2. The smart-selector-generator.js script has defined the "__donobu.generateSmartSelectors"
|
|
6
6
|
* method on the window object.
|
|
7
7
|
*/
|
|
8
8
|
(() => {
|
|
9
|
-
if (window.
|
|
10
|
-
|
|
9
|
+
if (!window.__donobu) {
|
|
10
|
+
Object.defineProperty(window, '__donobu', {
|
|
11
|
+
value: {},
|
|
12
|
+
enumerable: false,
|
|
13
|
+
writable: true,
|
|
14
|
+
configurable: false,
|
|
15
|
+
});
|
|
11
16
|
}
|
|
12
17
|
|
|
13
|
-
window.
|
|
18
|
+
if (!window.__donobu.interactionListenersRegistered) {
|
|
19
|
+
Object.defineProperty(window.__donobu, 'interactionListenersRegistered', {
|
|
20
|
+
value: true,
|
|
21
|
+
enumerable: false,
|
|
22
|
+
writable: false,
|
|
23
|
+
configurable: false,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
if (!window.__donobu.startDragPosition) {
|
|
28
|
+
Object.defineProperty(window.__donobu, 'startDragPosition', {
|
|
29
|
+
value: { x: 0, y: 0 },
|
|
30
|
+
enumerable: false,
|
|
31
|
+
writable: true,
|
|
32
|
+
configurable: false,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
14
35
|
|
|
15
36
|
// Helper function to check if an event target is inside the Donobu control panel.
|
|
16
37
|
const isDonobuControlPanelInteraction = (element) => {
|
|
@@ -40,20 +61,20 @@
|
|
|
40
61
|
type: eventType,
|
|
41
62
|
x: e.clientX,
|
|
42
63
|
y: e.clientY,
|
|
43
|
-
selectors: window.
|
|
64
|
+
selectors: window.__donobu.generateSmartSelectors(e.target),
|
|
44
65
|
timestamp: new Date().getTime(),
|
|
45
66
|
};
|
|
46
67
|
|
|
47
68
|
if (eventType === 'mousedown') {
|
|
48
|
-
|
|
69
|
+
window.__donobu.startDragPosition = { x: e.clientX, y: e.clientY };
|
|
49
70
|
} else if (eventType === 'mouseup') {
|
|
50
71
|
eventData.dragDistance = Math.sqrt(
|
|
51
|
-
Math.pow(e.clientX -
|
|
52
|
-
Math.pow(e.clientY -
|
|
72
|
+
Math.pow(e.clientX - window.__donobu.startDragPosition.x, 2) +
|
|
73
|
+
Math.pow(e.clientY - window.__donobu.startDragPosition.y, 2),
|
|
53
74
|
);
|
|
54
75
|
}
|
|
55
76
|
|
|
56
|
-
|
|
77
|
+
__donobuTrackInteraction(eventData);
|
|
57
78
|
},
|
|
58
79
|
true,
|
|
59
80
|
);
|
|
@@ -70,7 +91,7 @@
|
|
|
70
91
|
return;
|
|
71
92
|
}
|
|
72
93
|
|
|
73
|
-
|
|
94
|
+
__donobuTrackInteraction({
|
|
74
95
|
type: eventType,
|
|
75
96
|
key: e.key,
|
|
76
97
|
keyCode: e.keyCode,
|
|
@@ -78,7 +99,7 @@
|
|
|
78
99
|
ctrlKey: e.ctrlKey,
|
|
79
100
|
metaKey: e.metaKey,
|
|
80
101
|
shiftKey: e.shiftKey,
|
|
81
|
-
selectors: window.
|
|
102
|
+
selectors: window.__donobu.generateSmartSelectors(e.target),
|
|
82
103
|
timestamp: new Date().getTime(),
|
|
83
104
|
});
|
|
84
105
|
},
|
|
@@ -98,7 +119,7 @@
|
|
|
98
119
|
|
|
99
120
|
const eventData = {
|
|
100
121
|
type: eventType,
|
|
101
|
-
selectors: window.
|
|
122
|
+
selectors: window.__donobu.generateSmartSelectors(e.target),
|
|
102
123
|
timestamp: new Date().getTime(),
|
|
103
124
|
};
|
|
104
125
|
|
|
@@ -115,7 +136,7 @@
|
|
|
115
136
|
}
|
|
116
137
|
}
|
|
117
138
|
|
|
118
|
-
|
|
139
|
+
__donobuTrackInteraction(eventData);
|
|
119
140
|
},
|
|
120
141
|
true,
|
|
121
142
|
);
|
|
@@ -127,7 +148,7 @@
|
|
|
127
148
|
// window.addEventListener(
|
|
128
149
|
// "scroll",
|
|
129
150
|
// function (e) {
|
|
130
|
-
//
|
|
151
|
+
// __donobuTrackInteraction({
|
|
131
152
|
// type: "scroll",
|
|
132
153
|
// scrollX: window.scrollX,
|
|
133
154
|
// scrollY: window.scrollY,
|
|
@@ -141,7 +162,7 @@
|
|
|
141
162
|
// window.addEventListener(
|
|
142
163
|
// "resize",
|
|
143
164
|
// function (e) {
|
|
144
|
-
//
|
|
165
|
+
// __donobuTrackInteraction({
|
|
145
166
|
// type: "resize",
|
|
146
167
|
// width: window.innerWidth,
|
|
147
168
|
// height: window.innerHeight,
|
|
@@ -168,10 +189,10 @@
|
|
|
168
189
|
identifier: touch.identifier,
|
|
169
190
|
}));
|
|
170
191
|
|
|
171
|
-
|
|
192
|
+
__donobuTrackInteraction({
|
|
172
193
|
type: eventType,
|
|
173
194
|
touches: touches,
|
|
174
|
-
selectors: window.
|
|
195
|
+
selectors: window.__donobu.generateSmartSelectors(e.target),
|
|
175
196
|
timestamp: new Date().getTime(),
|
|
176
197
|
});
|
|
177
198
|
},
|
|
@@ -179,6 +200,4 @@
|
|
|
179
200
|
);
|
|
180
201
|
},
|
|
181
202
|
);
|
|
182
|
-
|
|
183
|
-
window.donobuListenersRegistered = true;
|
|
184
203
|
})();
|
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
(() => {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
if (!window.__donobu) {
|
|
3
|
+
Object.defineProperty(window, '__donobu', {
|
|
4
|
+
value: {},
|
|
5
|
+
enumerable: false,
|
|
6
|
+
writable: true,
|
|
7
|
+
configurable: false,
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
if (!window.__donobu.cssEscape) {
|
|
12
|
+
// Prevent sneaky websites from undefining the CSS escape function.
|
|
13
|
+
// We run first and we can save the CSS escape function.
|
|
14
|
+
Object.defineProperty(window.__donobu, 'cssEscape', {
|
|
15
|
+
value: CSS.escape,
|
|
16
|
+
enumerable: false,
|
|
17
|
+
writable: false,
|
|
18
|
+
configurable: false,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
6
21
|
|
|
7
22
|
class SelectorToCount {
|
|
8
23
|
constructor(selector) {
|
|
@@ -118,7 +133,8 @@
|
|
|
118
133
|
return null;
|
|
119
134
|
}
|
|
120
135
|
})
|
|
121
|
-
.filter((a) => a !== null
|
|
136
|
+
.filter((a) => a !== null)
|
|
137
|
+
.filter((a) => a.count !== 0)
|
|
122
138
|
.sort((a, b) => {
|
|
123
139
|
// 1. fewer matches -> better
|
|
124
140
|
if (a.count !== b.count) return a.count - b.count;
|
|
@@ -235,7 +251,7 @@
|
|
|
235
251
|
if (id) {
|
|
236
252
|
const label = document.querySelector(`label[for='${id}']`);
|
|
237
253
|
if (label) {
|
|
238
|
-
const labelText = label.textContent
|
|
254
|
+
const labelText = label.textContent?.trim();
|
|
239
255
|
if (labelText) {
|
|
240
256
|
const safeLabelText = xpathLiteral(labelText);
|
|
241
257
|
return [
|
|
@@ -311,16 +327,23 @@
|
|
|
311
327
|
}
|
|
312
328
|
|
|
313
329
|
escapeCss(str) {
|
|
314
|
-
return window.
|
|
330
|
+
return window.__donobu.cssEscape(str);
|
|
315
331
|
}
|
|
316
332
|
}
|
|
317
333
|
|
|
318
|
-
window.
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
334
|
+
if (!window.__donobu.generateSmartSelectors) {
|
|
335
|
+
Object.defineProperty(window.__donobu, 'generateSmartSelectors', {
|
|
336
|
+
value: (element) => {
|
|
337
|
+
try {
|
|
338
|
+
return new SelectorGenerator(element).generate();
|
|
339
|
+
} catch (e) {
|
|
340
|
+
console.warn('Exception while generating selector', e);
|
|
341
|
+
return [];
|
|
342
|
+
}
|
|
343
|
+
},
|
|
344
|
+
enumerable: false,
|
|
345
|
+
writable: false,
|
|
346
|
+
configurable: false,
|
|
347
|
+
});
|
|
348
|
+
}
|
|
326
349
|
})();
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { FocusedPage } from '../models/FocusedPage';
|
|
2
2
|
import { NamedBindingCallback } from './NamedBindingCallback';
|
|
3
3
|
import { BrowserContext, Page, Frame } from 'playwright';
|
|
4
|
+
declare global {
|
|
5
|
+
interface Window {
|
|
6
|
+
[FocusPage.NAME]: () => void;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
4
9
|
/**
|
|
5
10
|
* A binding that brings the page executing this callback into focus.
|
|
6
11
|
*/
|
|
@@ -13,6 +18,6 @@ export declare class FocusPage implements NamedBindingCallback {
|
|
|
13
18
|
context: BrowserContext;
|
|
14
19
|
page: Page;
|
|
15
20
|
frame: Frame;
|
|
16
|
-
}, ...
|
|
21
|
+
}, ..._args: any[]): void;
|
|
17
22
|
}
|
|
18
23
|
//# sourceMappingURL=FocusPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FocusPage.d.ts","sourceRoot":"","sources":["../../src/bindings/FocusPage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEzD;;GAEG;AACH,qBAAa,SAAU,YAAW,oBAAoB;IAGjC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAF/C,gBAAuB,IAAI,qBAAqB;gBAEZ,WAAW,EAAE,WAAW;IAErD,IAAI,IAAI,MAAM;IAId,IAAI,CACT,MAAM,EAAE;QAAE,OAAO,EAAE,cAAc,CAAC;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAC7D,GAAG,
|
|
1
|
+
{"version":3,"file":"FocusPage.d.ts","sourceRoot":"","sources":["../../src/bindings/FocusPage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;KAC9B;CACF;AAED;;GAEG;AACH,qBAAa,SAAU,YAAW,oBAAoB;IAGjC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAF/C,gBAAuB,IAAI,qBAAqB;gBAEZ,WAAW,EAAE,WAAW;IAErD,IAAI,IAAI,MAAM;IAId,IAAI,CACT,MAAM,EAAE;QAAE,OAAO,EAAE,cAAc,CAAC;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAC7D,GAAG,KAAK,EAAE,GAAG,EAAE,GACd,IAAI;CAGR"}
|
|
@@ -11,14 +11,8 @@ class FocusPage {
|
|
|
11
11
|
name() {
|
|
12
12
|
return FocusPage.NAME;
|
|
13
13
|
}
|
|
14
|
-
call(source, ...
|
|
15
|
-
|
|
16
|
-
const page = source.context.pages().find((tab) => tab.url() === tabUrl);
|
|
17
|
-
if (page) {
|
|
18
|
-
this.focusedPage.current = page;
|
|
19
|
-
return true;
|
|
20
|
-
}
|
|
21
|
-
return false;
|
|
14
|
+
call(source, ..._args) {
|
|
15
|
+
this.focusedPage.current = source.page;
|
|
22
16
|
}
|
|
23
17
|
}
|
|
24
18
|
exports.FocusPage = FocusPage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FocusPage.js","sourceRoot":"","sources":["../../src/bindings/FocusPage.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"FocusPage.js","sourceRoot":"","sources":["../../src/bindings/FocusPage.ts"],"names":[],"mappings":";;;AAUA;;GAEG;AACH,MAAa,SAAS;IAGpB,YAAoC,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAEzD,IAAI;QACT,OAAO,SAAS,CAAC,IAAI,CAAC;IACxB,CAAC;IAEM,IAAI,CACT,MAA6D,EAC7D,GAAG,KAAY;QAEf,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IACzC,CAAC;;AAdH,8BAeC;AAdwB,cAAI,GAAG,iBAAiB,CAAC"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { BrowserContext, Page, Frame } from 'playwright';
|
|
2
2
|
import { NamedBindingCallback } from './NamedBindingCallback';
|
|
3
3
|
import { DonobuFlow } from '../managers/DonobuFlow';
|
|
4
|
+
declare global {
|
|
5
|
+
interface Window {
|
|
6
|
+
[PageInteractionTracker.NAME]: () => boolean;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
4
9
|
/**
|
|
5
10
|
* Tracks direct user actions that have occurred in the web browser.
|
|
6
11
|
* This differs from normal Donobu flows which use GPT to analyze pages and propose actions.
|
|
@@ -8,8 +13,10 @@ import { DonobuFlow } from '../managers/DonobuFlow';
|
|
|
8
13
|
*/
|
|
9
14
|
export declare class PageInteractionTracker implements NamedBindingCallback {
|
|
10
15
|
private readonly donobuFlow;
|
|
11
|
-
static readonly
|
|
12
|
-
|
|
16
|
+
private static readonly INIT_SCRIPT;
|
|
17
|
+
static readonly NAME = "__donobuTrackInteraction";
|
|
18
|
+
static register(donobuFlow: DonobuFlow, browserContext: BrowserContext): Promise<PageInteractionTracker>;
|
|
19
|
+
private constructor();
|
|
13
20
|
name(): string;
|
|
14
21
|
/**
|
|
15
22
|
* Handles tracking of page interactions.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageInteractionTracker.d.ts","sourceRoot":"","sources":["../../src/bindings/PageInteractionTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"PageInteractionTracker.d.ts","sourceRoot":"","sources":["../../src/bindings/PageInteractionTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAgBpD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC;KAC9C;CACF;AAQD;;;;GAIG;AACH,qBAAa,sBAAuB,YAAW,oBAAoB;IAqC7C,OAAO,CAAC,QAAQ,CAAC,UAAU;IApC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAEjC;IAGF,gBAAuB,IAAI,8BAA8B;WAErC,QAAQ,CAC1B,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA0BlC,OAAO;IAEA,IAAI,IAAI,MAAM;IAIrB;;;;;OAKG;IACU,IAAI,CACf,MAAM,EAAE;QAAE,OAAO,EAAE,cAAc,CAAC;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAC7D,GAAG,IAAI,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,IAAI,CAAC;YAkDF,cAAc;CAyD7B"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.PageInteractionTracker = void 0;
|
|
4
7
|
const MiscUtils_1 = require("../utils/MiscUtils");
|
|
@@ -6,12 +9,31 @@ const ClickTool_1 = require("../tools/ClickTool");
|
|
|
6
9
|
const PressKeyTool_1 = require("../tools/PressKeyTool");
|
|
7
10
|
const Logger_1 = require("../utils/Logger");
|
|
8
11
|
const PlaywrightUtils_1 = require("../utils/PlaywrightUtils");
|
|
12
|
+
const path_1 = __importDefault(require("path"));
|
|
9
13
|
/**
|
|
10
14
|
* Tracks direct user actions that have occurred in the web browser.
|
|
11
15
|
* This differs from normal Donobu flows which use GPT to analyze pages and propose actions.
|
|
12
16
|
* This tracker records direct user actions for reliable replay and GPT visibility.
|
|
13
17
|
*/
|
|
14
18
|
class PageInteractionTracker {
|
|
19
|
+
static async register(donobuFlow, browserContext) {
|
|
20
|
+
const instance = new PageInteractionTracker(donobuFlow);
|
|
21
|
+
await browserContext.addInitScript(PlaywrightUtils_1.PlaywrightUtils.SMART_SELECTOR_GENERATOR_INIT_SCRIPT);
|
|
22
|
+
browserContext.on('page', async (page) => {
|
|
23
|
+
page.on('framenavigated', async (frame) => {
|
|
24
|
+
try {
|
|
25
|
+
await frame.evaluate(PageInteractionTracker.INIT_SCRIPT);
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
if (!PlaywrightUtils_1.PlaywrightUtils.isPageClosedError(error)) {
|
|
29
|
+
Logger_1.appLogger.error('Error when evaluating PageInteractionTracker.INIT_SCRIPT', error);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
await browserContext.exposeBinding(instance.name(), instance.call.bind(instance));
|
|
35
|
+
return instance;
|
|
36
|
+
}
|
|
15
37
|
constructor(donobuFlow) {
|
|
16
38
|
this.donobuFlow = donobuFlow;
|
|
17
39
|
}
|
|
@@ -31,11 +53,11 @@ class PageInteractionTracker {
|
|
|
31
53
|
const timestamp = new Date().getTime();
|
|
32
54
|
const event = args[0];
|
|
33
55
|
Logger_1.appLogger.debug(`Event: ${JSON.stringify(event)}`);
|
|
34
|
-
const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.
|
|
35
|
-
const postCallImageId = await this.donobuFlow.persistence.
|
|
56
|
+
const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takeScreenshot(source.page);
|
|
57
|
+
const postCallImageId = await this.donobuFlow.persistence.saveScreenShot(this.donobuFlow.metadata.id, postCallImage);
|
|
36
58
|
const frameSelector = source.frame.url() === source.page.url()
|
|
37
59
|
? null
|
|
38
|
-
: await PlaywrightUtils_1.PlaywrightUtils.
|
|
60
|
+
: (await PlaywrightUtils_1.PlaywrightUtils.generateSelectors(await source.frame.frameElement()))[0];
|
|
39
61
|
const elementSelectors = event.selectors;
|
|
40
62
|
const externalToolCall = await this.createToolCall(event, elementSelectors, frameSelector, postCallImageId, source.page.url(), timestamp);
|
|
41
63
|
if (externalToolCall) {
|
|
@@ -79,7 +101,7 @@ class PageInteractionTracker {
|
|
|
79
101
|
},
|
|
80
102
|
outcome: {
|
|
81
103
|
isSuccessful: true,
|
|
82
|
-
forLlm:
|
|
104
|
+
forLlm: `Pressed the '${event.key}' key at the element.`,
|
|
83
105
|
metadata: selectorForReplay,
|
|
84
106
|
},
|
|
85
107
|
postCallImageId: postCallImageId,
|
|
@@ -94,5 +116,7 @@ class PageInteractionTracker {
|
|
|
94
116
|
}
|
|
95
117
|
}
|
|
96
118
|
exports.PageInteractionTracker = PageInteractionTracker;
|
|
97
|
-
PageInteractionTracker.
|
|
119
|
+
PageInteractionTracker.INIT_SCRIPT = MiscUtils_1.MiscUtils.getResourceFileAsString(path_1.default.join('page-interactions-tracker.js'));
|
|
120
|
+
// If this name is updated, the init script must also be updated.
|
|
121
|
+
PageInteractionTracker.NAME = '__donobuTrackInteraction';
|
|
98
122
|
//# sourceMappingURL=PageInteractionTracker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageInteractionTracker.js","sourceRoot":"","sources":["../../src/bindings/PageInteractionTracker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PageInteractionTracker.js","sourceRoot":"","sources":["../../src/bindings/PageInteractionTracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BrowserContext, Page, Frame } from 'playwright';
|
|
2
|
+
import { NamedBindingCallback } from './NamedBindingCallback';
|
|
3
|
+
import { DonobuFlow } from '../managers/DonobuFlow';
|
|
4
|
+
/**
|
|
5
|
+
* A binding to allow arbitrary tool calls to be proposed from the frontend.
|
|
6
|
+
* This is for debugging purposes only.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ProposeToolCall implements NamedBindingCallback {
|
|
9
|
+
private readonly donobuFlow;
|
|
10
|
+
static readonly NAME = "__donobuProposeToolCall";
|
|
11
|
+
static register(donobuFlow: DonobuFlow, browserContext: BrowserContext): Promise<ProposeToolCall>;
|
|
12
|
+
constructor(donobuFlow: DonobuFlow);
|
|
13
|
+
name(): string;
|
|
14
|
+
call(_source: {
|
|
15
|
+
context: BrowserContext;
|
|
16
|
+
page: Page;
|
|
17
|
+
frame: Frame;
|
|
18
|
+
}, ...args: any[]): Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ProposeToolCall.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProposeToolCall.d.ts","sourceRoot":"","sources":["../../src/bindings/ProposeToolCall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIpD;;;GAGG;AACH,qBAAa,eAAgB,YAAW,oBAAoB;IAevC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAd9C,gBAAuB,IAAI,6BAA6B;WAEpC,QAAQ,CAC1B,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,eAAe,CAAC;gBASS,UAAU,EAAE,UAAU;IAEnD,IAAI,IAAI,MAAM;IAIR,IAAI,CACf,OAAO,EAAE;QAAE,OAAO,EAAE,cAAc,CAAC;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAC9D,GAAG,IAAI,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,IAAI,CAAC;CAOjB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProposeToolCall = void 0;
|
|
4
|
+
const Logger_1 = require("../utils/Logger");
|
|
5
|
+
/**
|
|
6
|
+
* A binding to allow arbitrary tool calls to be proposed from the frontend.
|
|
7
|
+
* This is for debugging purposes only.
|
|
8
|
+
*/
|
|
9
|
+
class ProposeToolCall {
|
|
10
|
+
static async register(donobuFlow, browserContext) {
|
|
11
|
+
const instance = new ProposeToolCall(donobuFlow);
|
|
12
|
+
await browserContext.exposeBinding(instance.name(), instance.call.bind(instance));
|
|
13
|
+
return instance;
|
|
14
|
+
}
|
|
15
|
+
constructor(donobuFlow) {
|
|
16
|
+
this.donobuFlow = donobuFlow;
|
|
17
|
+
}
|
|
18
|
+
name() {
|
|
19
|
+
return ProposeToolCall.NAME;
|
|
20
|
+
}
|
|
21
|
+
async call(_source, ...args) {
|
|
22
|
+
Logger_1.appLogger.debug(`Proposed tool call from frontend: ${JSON.stringify(args[0])}`);
|
|
23
|
+
const proposedToolCall = args[0];
|
|
24
|
+
this.donobuFlow.proposedToolCalls.push(proposedToolCall);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.ProposeToolCall = ProposeToolCall;
|
|
28
|
+
ProposeToolCall.NAME = '__donobuProposeToolCall';
|
|
29
|
+
//# sourceMappingURL=ProposeToolCall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProposeToolCall.js","sourceRoot":"","sources":["../../src/bindings/ProposeToolCall.ts"],"names":[],"mappings":";;;AAGA,4CAA4C;AAG5C;;;GAGG;AACH,MAAa,eAAe;IAGnB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAC1B,UAAsB,EACtB,cAA8B;QAE9B,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,cAAc,CAAC,aAAa,CAChC,QAAQ,CAAC,IAAI,EAAE,EACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC7B,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,YAAoC,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAEvD,IAAI;QACT,OAAO,eAAe,CAAC,IAAI,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,IAAI,CACf,OAA8D,EAC9D,GAAG,IAAW;QAEd,kBAAS,CAAC,KAAK,CACb,qCAAqC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAC/D,CAAC;QACF,MAAM,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAA0B,CAAC;QAC1D,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3D,CAAC;;AA9BH,0CA+BC;AA9BwB,oBAAI,GAAG,yBAAyB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PageInspector } from '../managers/PageInspector';
|
|
1
2
|
import { NamedBindingCallback } from './NamedBindingCallback';
|
|
2
3
|
import { BrowserContext, Page, Frame } from 'playwright';
|
|
3
4
|
/**
|
|
@@ -6,8 +7,10 @@ import { BrowserContext, Page, Frame } from 'playwright';
|
|
|
6
7
|
* as understood by the Donobu engine.
|
|
7
8
|
*/
|
|
8
9
|
export declare class ToggleDonobuAnnotations implements NamedBindingCallback {
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
private readonly pageInspector;
|
|
11
|
+
static readonly NAME = "__donobuToggleAnnotations";
|
|
12
|
+
static register(pageInspector: PageInspector, browserContext: BrowserContext): Promise<ToggleDonobuAnnotations>;
|
|
13
|
+
constructor(pageInspector: PageInspector);
|
|
11
14
|
name(): string;
|
|
12
15
|
call(source: {
|
|
13
16
|
context: BrowserContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleDonobuAnnotations.d.ts","sourceRoot":"","sources":["../../src/bindings/ToggleDonobuAnnotations.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ToggleDonobuAnnotations.d.ts","sourceRoot":"","sources":["../../src/bindings/ToggleDonobuAnnotations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,uBAAwB,YAAW,oBAAoB;IAe/C,OAAO,CAAC,QAAQ,CAAC,aAAa;IAdjD,gBAAuB,IAAI,+BAA+B;WAEtC,QAAQ,CAC1B,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,uBAAuB,CAAC;gBASC,aAAa,EAAE,aAAa;IAEzD,IAAI,IAAI,MAAM;IAIR,IAAI,CACf,MAAM,EAAE;QAAE,OAAO,EAAE,cAAc,CAAC;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAC7D,GAAG,IAAI,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,IAAI,CAAC;CAYjB"}
|
|
@@ -1,29 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ToggleDonobuAnnotations = void 0;
|
|
4
|
-
const PlaywrightUtils_1 = require("../utils/PlaywrightUtils");
|
|
5
4
|
/**
|
|
6
5
|
* A binding that toggles the annotations on the page executing this callback.
|
|
7
6
|
* This is used for debugging purposes to show the interactable elements on the page
|
|
8
7
|
* as understood by the Donobu engine.
|
|
9
8
|
*/
|
|
10
9
|
class ToggleDonobuAnnotations {
|
|
11
|
-
|
|
10
|
+
static async register(pageInspector, browserContext) {
|
|
11
|
+
const instance = new ToggleDonobuAnnotations(pageInspector);
|
|
12
|
+
await browserContext.exposeBinding(instance.name(), instance.call.bind(instance));
|
|
13
|
+
return instance;
|
|
14
|
+
}
|
|
15
|
+
constructor(pageInspector) {
|
|
16
|
+
this.pageInspector = pageInspector;
|
|
17
|
+
}
|
|
12
18
|
name() {
|
|
13
19
|
return ToggleDonobuAnnotations.NAME;
|
|
14
20
|
}
|
|
15
21
|
async call(source, ...args) {
|
|
16
22
|
const isToggled = args[0];
|
|
17
23
|
if (isToggled) {
|
|
18
|
-
await
|
|
19
|
-
await
|
|
24
|
+
await this.pageInspector.attributeInteractableElements(source.page);
|
|
25
|
+
await this.pageInspector.annotateInteractableElements(source.page);
|
|
20
26
|
}
|
|
21
27
|
else {
|
|
22
|
-
await
|
|
28
|
+
await this.pageInspector.removeDonobuAnnotations(source.page);
|
|
23
29
|
}
|
|
24
30
|
return;
|
|
25
31
|
}
|
|
26
32
|
}
|
|
27
33
|
exports.ToggleDonobuAnnotations = ToggleDonobuAnnotations;
|
|
28
|
-
ToggleDonobuAnnotations.NAME = '
|
|
34
|
+
ToggleDonobuAnnotations.NAME = '__donobuToggleAnnotations';
|
|
29
35
|
//# sourceMappingURL=ToggleDonobuAnnotations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleDonobuAnnotations.js","sourceRoot":"","sources":["../../src/bindings/ToggleDonobuAnnotations.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ToggleDonobuAnnotations.js","sourceRoot":"","sources":["../../src/bindings/ToggleDonobuAnnotations.ts"],"names":[],"mappings":";;;AAIA;;;;GAIG;AACH,MAAa,uBAAuB;IAG3B,MAAM,CAAC,KAAK,CAAC,QAAQ,CAC1B,aAA4B,EAC5B,cAA8B;QAE9B,MAAM,QAAQ,GAAG,IAAI,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,cAAc,CAAC,aAAa,CAChC,QAAQ,CAAC,IAAI,EAAE,EACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC7B,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,YAAoC,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAE7D,IAAI;QACT,OAAO,uBAAuB,CAAC,IAAI,CAAC;IACtC,CAAC;IAEM,KAAK,CAAC,IAAI,CACf,MAA6D,EAC7D,GAAG,IAAW;QAEd,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAY,CAAC;QAErC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChE,CAAC;QAED,OAAO;IACT,CAAC;;AAnCH,0DAoCC;AAnCwB,4BAAI,GAAG,2BAA2B,CAAC"}
|
|
@@ -8,30 +8,11 @@ import { AnthropicAwsBedrockConfig } from '../models/GptConfig';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class AnthropicAwsBedrockGptClient extends GptClient {
|
|
10
10
|
private readonly anthropicAwsBedrockConfig;
|
|
11
|
-
private
|
|
12
|
-
private readonly bedrockClient;
|
|
13
|
-
/**
|
|
14
|
-
* Create a new instance.
|
|
15
|
-
*/
|
|
11
|
+
private readonly delegate;
|
|
16
12
|
constructor(anthropicAwsBedrockConfig: AnthropicAwsBedrockConfig);
|
|
17
13
|
ping(): Promise<void>;
|
|
18
14
|
getMessage(messages: GptMessage[]): Promise<AssistantMessage>;
|
|
19
15
|
getStructuredOutput(messages: GptMessage[], jsonSchema: JSONSchema7): Promise<StructuredOutputMessage>;
|
|
20
16
|
getToolCalls(messages: GptMessage[], tools: ToolOption[]): Promise<ProposedToolCallsMessage>;
|
|
21
|
-
/**
|
|
22
|
-
* Extract system prompt from messages
|
|
23
|
-
*/
|
|
24
|
-
private extractSystemPrompt;
|
|
25
|
-
/**
|
|
26
|
-
* Maps AWS SDK errors to our application-specific exceptions
|
|
27
|
-
*/
|
|
28
|
-
private mapErrorToDonobuException;
|
|
29
|
-
/**
|
|
30
|
-
* Merges adjacent user messages because Anthropic will reject requests that do not delicately
|
|
31
|
-
* flip-flop between "user" and "assistant" roles.
|
|
32
|
-
*/
|
|
33
|
-
private static shenanigansUserMessageMerge;
|
|
34
|
-
private static chatRequestMessageFromGptMessage;
|
|
35
|
-
private static toolChoiceFromTool;
|
|
36
17
|
}
|
|
37
18
|
//# sourceMappingURL=AnthropicAwsBedrockGptClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnthropicAwsBedrockGptClient.d.ts","sourceRoot":"","sources":["../../src/clients/AnthropicAwsBedrockGptClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AnthropicAwsBedrockGptClient.d.ts","sourceRoot":"","sources":["../../src/clients/AnthropicAwsBedrockGptClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAKhE;;;GAGG;AACH,qBAAa,4BAA6B,SAAQ,SAAS;IAIvD,OAAO,CAAC,QAAQ,CAAC,yBAAyB;IAH5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;gBAGlB,yBAAyB,EAAE,yBAAyB;IAY1D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAM7D,mBAAmB,CAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,uBAAuB,CAAC;IAOtB,YAAY,CACvB,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,EAAE,UAAU,EAAE,GAClB,OAAO,CAAC,wBAAwB,CAAC;CAMrC"}
|