donobu 2.3.0 → 2.4.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/README.md +14 -0
- package/dist/apis/SpecialFlowsApi.d.ts +7 -1
- package/dist/apis/SpecialFlowsApi.js +41 -29
- package/dist/apis/SpecialFlowsApi.js.map +1 -1
- package/dist/apis/ToolsApi.d.ts +1 -1
- package/dist/apis/ToolsApi.js +1 -1
- package/dist/apis/ToolsApi.js.map +1 -1
- package/dist/assets/control-panel.js +3 -3
- package/dist/assets/generated/parameter-schemas.json +4 -4
- package/dist/assets/generated/version +1 -1
- package/dist/clients/AnthropicAwsBedrockGptClient.js +1 -1
- package/dist/clients/AnthropicAwsBedrockGptClient.js.map +1 -1
- package/dist/clients/AnthropicGptClient.js +1 -1
- package/dist/clients/AnthropicGptClient.js.map +1 -1
- package/dist/clients/GoogleGptClient.js +3 -3
- package/dist/clients/GoogleGptClient.js.map +1 -1
- package/dist/clients/GptClient.d.ts +1 -1
- package/dist/clients/OpenAiGptClient.js +1 -1
- package/dist/clients/OpenAiGptClient.js.map +1 -1
- package/dist/clients/VercelAiGptClient.js +1 -1
- package/dist/clients/VercelAiGptClient.js.map +1 -1
- package/dist/esm/apis/SpecialFlowsApi.d.ts +7 -1
- package/dist/esm/apis/SpecialFlowsApi.js +41 -29
- package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
- package/dist/esm/apis/ToolsApi.d.ts +1 -1
- package/dist/esm/apis/ToolsApi.js +1 -1
- package/dist/esm/apis/ToolsApi.js.map +1 -1
- package/dist/esm/assets/control-panel.js +3 -3
- package/dist/esm/assets/generated/parameter-schemas.json +4 -4
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/clients/AnthropicAwsBedrockGptClient.js +1 -1
- package/dist/esm/clients/AnthropicAwsBedrockGptClient.js.map +1 -1
- package/dist/esm/clients/AnthropicGptClient.js +1 -1
- package/dist/esm/clients/AnthropicGptClient.js.map +1 -1
- package/dist/esm/clients/GoogleGptClient.js +3 -3
- package/dist/esm/clients/GoogleGptClient.js.map +1 -1
- package/dist/esm/clients/GptClient.d.ts +1 -1
- package/dist/esm/clients/OpenAiGptClient.js +1 -1
- package/dist/esm/clients/OpenAiGptClient.js.map +1 -1
- package/dist/esm/clients/VercelAiGptClient.js +1 -1
- package/dist/esm/clients/VercelAiGptClient.js.map +1 -1
- package/dist/esm/main.d.ts +6 -6
- package/dist/esm/main.js +50 -39
- package/dist/esm/main.js.map +1 -1
- package/dist/esm/managers/AdminApiController.js +12 -25
- package/dist/esm/managers/AdminApiController.js.map +1 -1
- package/dist/esm/managers/CodeGenerator.d.ts +8 -0
- package/dist/esm/managers/CodeGenerator.js +25 -9
- package/dist/esm/managers/CodeGenerator.js.map +1 -1
- package/dist/esm/managers/DonobuFlow.js +4 -2
- package/dist/esm/managers/DonobuFlow.js.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.js +16 -7
- package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/esm/managers/DonobuMcpServer.d.ts +24 -0
- package/dist/esm/managers/DonobuMcpServer.js +146 -0
- package/dist/esm/managers/DonobuMcpServer.js.map +1 -0
- package/dist/esm/managers/DonobuStack.d.ts +19 -0
- package/dist/esm/managers/DonobuStack.js +29 -0
- package/dist/esm/managers/DonobuStack.js.map +1 -0
- package/dist/esm/managers/ToolManager.d.ts +1 -2
- package/dist/esm/managers/ToolManager.js +14 -14
- package/dist/esm/managers/ToolManager.js.map +1 -1
- package/dist/esm/models/BrowserFramework.d.ts +8 -15
- package/dist/esm/models/BrowserFramework.js +74 -96
- package/dist/esm/models/BrowserFramework.js.map +1 -1
- package/dist/esm/models/CustomTool.d.ts +1 -1
- package/dist/esm/persistence/DonobuSqliteDb.js +3 -2
- package/dist/esm/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/esm/test.d.ts +2 -15
- package/dist/esm/test.js +37 -54
- package/dist/esm/test.js.map +1 -1
- package/dist/esm/tools/CustomToolRunnerTool.js +5 -5
- package/dist/esm/tools/CustomToolRunnerTool.js.map +1 -1
- package/dist/esm/tools/GoToGoogleMapsStreetViewTool.js +9 -11
- package/dist/esm/tools/GoToGoogleMapsStreetViewTool.js.map +1 -1
- package/dist/esm/tools/Tool.d.ts +2 -2
- package/dist/esm/tools/Tool.js +4 -4
- package/dist/esm/tools/Tool.js.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.js +0 -2
- package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
- package/dist/main.d.ts +6 -6
- package/dist/main.js +50 -39
- package/dist/main.js.map +1 -1
- package/dist/managers/AdminApiController.js +12 -25
- package/dist/managers/AdminApiController.js.map +1 -1
- package/dist/managers/CodeGenerator.d.ts +8 -0
- package/dist/managers/CodeGenerator.js +25 -9
- package/dist/managers/CodeGenerator.js.map +1 -1
- package/dist/managers/DonobuFlow.js +4 -2
- package/dist/managers/DonobuFlow.js.map +1 -1
- package/dist/managers/DonobuFlowsManager.js +16 -7
- package/dist/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/managers/DonobuMcpServer.d.ts +24 -0
- package/dist/managers/DonobuMcpServer.js +146 -0
- package/dist/managers/DonobuMcpServer.js.map +1 -0
- package/dist/managers/DonobuStack.d.ts +19 -0
- package/dist/managers/DonobuStack.js +29 -0
- package/dist/managers/DonobuStack.js.map +1 -0
- package/dist/managers/ToolManager.d.ts +1 -2
- package/dist/managers/ToolManager.js +14 -14
- package/dist/managers/ToolManager.js.map +1 -1
- package/dist/models/BrowserFramework.d.ts +8 -15
- package/dist/models/BrowserFramework.js +74 -96
- package/dist/models/BrowserFramework.js.map +1 -1
- package/dist/models/CustomTool.d.ts +1 -1
- package/dist/persistence/DonobuSqliteDb.js +3 -2
- package/dist/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/test.d.ts +2 -15
- package/dist/test.js +37 -54
- package/dist/test.js.map +1 -1
- package/dist/tools/CustomToolRunnerTool.js +5 -5
- package/dist/tools/CustomToolRunnerTool.js.map +1 -1
- package/dist/tools/GoToGoogleMapsStreetViewTool.js +9 -11
- package/dist/tools/GoToGoogleMapsStreetViewTool.js.map +1 -1
- package/dist/tools/Tool.d.ts +2 -2
- package/dist/tools/Tool.js +4 -4
- package/dist/tools/Tool.js.map +1 -1
- package/dist/utils/PlaywrightUtils.js +0 -2
- package/dist/utils/PlaywrightUtils.js.map +1 -1
- package/package.json +1 -1
- package/dist/apis/GptResourcesApi.d.ts +0 -20
- package/dist/apis/GptResourcesApi.js +0 -53
- package/dist/apis/GptResourcesApi.js.map +0 -1
- package/dist/apis/KeysApi.d.ts +0 -25
- package/dist/apis/KeysApi.js +0 -64
- package/dist/apis/KeysApi.js.map +0 -1
- package/dist/assets/Donobu.entitlements.plist +0 -28
- package/dist/clients/GoogleGptClient2.d.ts +0 -18
- package/dist/clients/GoogleGptClient2.js +0 -237
- package/dist/clients/GoogleGptClient2.js.map +0 -1
- package/dist/donobu.fixtures.d.ts +0 -57
- package/dist/donobu.fixtures.js +0 -167
- package/dist/donobu.fixtures.js.map +0 -1
- package/dist/esm/apis/GptResourcesApi.d.ts +0 -20
- package/dist/esm/apis/GptResourcesApi.js +0 -53
- package/dist/esm/apis/GptResourcesApi.js.map +0 -1
- package/dist/esm/apis/KeysApi.d.ts +0 -25
- package/dist/esm/apis/KeysApi.js +0 -64
- package/dist/esm/apis/KeysApi.js.map +0 -1
- package/dist/esm/assets/Donobu.entitlements.plist +0 -28
- package/dist/esm/donobu.fixtures.d.ts +0 -57
- package/dist/esm/donobu.fixtures.js +0 -167
- package/dist/esm/donobu.fixtures.js.map +0 -1
- package/dist/esm/exceptions/GptResourceNotFoundException.d.ts +0 -8
- package/dist/esm/exceptions/GptResourceNotFoundException.js +0 -16
- package/dist/esm/exceptions/GptResourceNotFoundException.js.map +0 -1
- package/dist/esm/managers/FlowsPersistence.d.ts +0 -79
- package/dist/esm/managers/FlowsPersistence.js +0 -3
- package/dist/esm/managers/FlowsPersistence.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceAwsS3.d.ts +0 -48
- package/dist/esm/managers/FlowsPersistenceAwsS3.js +0 -284
- package/dist/esm/managers/FlowsPersistenceAwsS3.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceFactory.d.ts +0 -9
- package/dist/esm/managers/FlowsPersistenceFactory.js +0 -3
- package/dist/esm/managers/FlowsPersistenceFactory.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceFactoryImpl.d.ts +0 -57
- package/dist/esm/managers/FlowsPersistenceFactoryImpl.js +0 -119
- package/dist/esm/managers/FlowsPersistenceFactoryImpl.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceFactoryPreset.d.ts +0 -12
- package/dist/esm/managers/FlowsPersistenceFactoryPreset.js +0 -25
- package/dist/esm/managers/FlowsPersistenceFactoryPreset.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceFilesystem.d.ts +0 -33
- package/dist/esm/managers/FlowsPersistenceFilesystem.js +0 -180
- package/dist/esm/managers/FlowsPersistenceFilesystem.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceGoogleCloudStorage.d.ts +0 -40
- package/dist/esm/managers/FlowsPersistenceGoogleCloudStorage.js +0 -209
- package/dist/esm/managers/FlowsPersistenceGoogleCloudStorage.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceSupabase.d.ts +0 -33
- package/dist/esm/managers/FlowsPersistenceSupabase.js +0 -152
- package/dist/esm/managers/FlowsPersistenceSupabase.js.map +0 -1
- package/dist/esm/managers/FlowsPersistenceVolatile.d.ts +0 -30
- package/dist/esm/managers/FlowsPersistenceVolatile.js +0 -103
- package/dist/esm/managers/FlowsPersistenceVolatile.js.map +0 -1
- package/dist/esm/managers/GptPlatformApiKeysManager.d.ts +0 -36
- package/dist/esm/managers/GptPlatformApiKeysManager.js +0 -3
- package/dist/esm/managers/GptPlatformApiKeysManager.js.map +0 -1
- package/dist/esm/managers/GptPlatformApiKeysManagerFilesystem.d.ts +0 -29
- package/dist/esm/managers/GptPlatformApiKeysManagerFilesystem.js +0 -136
- package/dist/esm/managers/GptPlatformApiKeysManagerFilesystem.js.map +0 -1
- package/dist/esm/managers/GptPlatformApiKeysManagerVolatile.d.ts +0 -35
- package/dist/esm/managers/GptPlatformApiKeysManagerVolatile.js +0 -51
- package/dist/esm/managers/GptPlatformApiKeysManagerVolatile.js.map +0 -1
- package/dist/esm/managers/GptResourcesManager.d.ts +0 -39
- package/dist/esm/managers/GptResourcesManager.js +0 -130
- package/dist/esm/managers/GptResourcesManager.js.map +0 -1
- package/dist/esm/managers/SelectorGenerator.d.ts +0 -8
- package/dist/esm/managers/SelectorGenerator.js +0 -15
- package/dist/esm/managers/SelectorGenerator.js.map +0 -1
- package/dist/esm/models/ElementSelectorForReplay.d.ts +0 -14
- package/dist/esm/models/ElementSelectorForReplay.js +0 -3
- package/dist/esm/models/ElementSelectorForReplay.js.map +0 -1
- package/dist/esm/models/GptResource.d.ts +0 -33
- package/dist/esm/models/GptResource.js +0 -3
- package/dist/esm/models/GptResource.js.map +0 -1
- package/dist/esm/persistence/AgentsPersistenceFilesystem.d.ts +0 -15
- package/dist/esm/persistence/AgentsPersistenceFilesystem.js +0 -48
- package/dist/esm/persistence/AgentsPersistenceFilesystem.js.map +0 -1
- package/dist/esm/persistence/GptConfigsPersistenceFilesystem.d.ts +0 -16
- package/dist/esm/persistence/GptConfigsPersistenceFilesystem.js +0 -54
- package/dist/esm/persistence/GptConfigsPersistenceFilesystem.js.map +0 -1
- package/dist/esm/persistence/GptResourcesPersistence.d.ts +0 -11
- package/dist/esm/persistence/GptResourcesPersistence.js +0 -3
- package/dist/esm/persistence/GptResourcesPersistence.js.map +0 -1
- package/dist/esm/persistence/GptResourcesPersistenceFilesystem.d.ts +0 -20
- package/dist/esm/persistence/GptResourcesPersistenceFilesystem.js +0 -79
- package/dist/esm/persistence/GptResourcesPersistenceFilesystem.js.map +0 -1
- package/dist/esm/persistence/GptResourcesPersistenceVolatile.d.ts +0 -14
- package/dist/esm/persistence/GptResourcesPersistenceVolatile.js +0 -32
- package/dist/esm/persistence/GptResourcesPersistenceVolatile.js.map +0 -1
- package/dist/esm/testfixtures.d.ts +0 -66
- package/dist/esm/testfixtures.js +0 -288
- package/dist/esm/testfixtures.js.map +0 -1
- package/dist/esm/tools/AssertTextVisibility.d.ts +0 -19
- package/dist/esm/tools/AssertTextVisibility.js +0 -32
- package/dist/esm/tools/AssertTextVisibility.js.map +0 -1
- package/dist/esm/tools/ClickButtonTool.d.ts +0 -14
- package/dist/esm/tools/ClickButtonTool.js +0 -36
- package/dist/esm/tools/ClickButtonTool.js.map +0 -1
- package/dist/esm/tools/NavigateToWebpageTool.d.ts +0 -20
- package/dist/esm/tools/NavigateToWebpageTool.js +0 -40
- package/dist/esm/tools/NavigateToWebpageTool.js.map +0 -1
- package/dist/esm/utils/DirectoryUtils.d.ts +0 -11
- package/dist/esm/utils/DirectoryUtils.js +0 -37
- package/dist/esm/utils/DirectoryUtils.js.map +0 -1
- package/dist/exceptions/GptResourceNotFoundException.d.ts +0 -8
- package/dist/exceptions/GptResourceNotFoundException.js +0 -16
- package/dist/exceptions/GptResourceNotFoundException.js.map +0 -1
- package/dist/managers/FlowsPersistence.d.ts +0 -79
- package/dist/managers/FlowsPersistence.js +0 -3
- package/dist/managers/FlowsPersistence.js.map +0 -1
- package/dist/managers/FlowsPersistenceAwsS3.d.ts +0 -48
- package/dist/managers/FlowsPersistenceAwsS3.js +0 -284
- package/dist/managers/FlowsPersistenceAwsS3.js.map +0 -1
- package/dist/managers/FlowsPersistenceFactory.d.ts +0 -9
- package/dist/managers/FlowsPersistenceFactory.js +0 -3
- package/dist/managers/FlowsPersistenceFactory.js.map +0 -1
- package/dist/managers/FlowsPersistenceFactoryImpl.d.ts +0 -57
- package/dist/managers/FlowsPersistenceFactoryImpl.js +0 -119
- package/dist/managers/FlowsPersistenceFactoryImpl.js.map +0 -1
- package/dist/managers/FlowsPersistenceFactoryPreset.d.ts +0 -12
- package/dist/managers/FlowsPersistenceFactoryPreset.js +0 -25
- package/dist/managers/FlowsPersistenceFactoryPreset.js.map +0 -1
- package/dist/managers/FlowsPersistenceFilesystem.d.ts +0 -33
- package/dist/managers/FlowsPersistenceFilesystem.js +0 -180
- package/dist/managers/FlowsPersistenceFilesystem.js.map +0 -1
- package/dist/managers/FlowsPersistenceGoogleCloudStorage.d.ts +0 -40
- package/dist/managers/FlowsPersistenceGoogleCloudStorage.js +0 -209
- package/dist/managers/FlowsPersistenceGoogleCloudStorage.js.map +0 -1
- package/dist/managers/FlowsPersistenceSupabase.d.ts +0 -33
- package/dist/managers/FlowsPersistenceSupabase.js +0 -152
- package/dist/managers/FlowsPersistenceSupabase.js.map +0 -1
- package/dist/managers/FlowsPersistenceVolatile.d.ts +0 -30
- package/dist/managers/FlowsPersistenceVolatile.js +0 -103
- package/dist/managers/FlowsPersistenceVolatile.js.map +0 -1
- package/dist/managers/GptPlatformApiKeysManager.d.ts +0 -36
- package/dist/managers/GptPlatformApiKeysManager.js +0 -3
- package/dist/managers/GptPlatformApiKeysManager.js.map +0 -1
- package/dist/managers/GptPlatformApiKeysManagerFilesystem.d.ts +0 -29
- package/dist/managers/GptPlatformApiKeysManagerFilesystem.js +0 -136
- package/dist/managers/GptPlatformApiKeysManagerFilesystem.js.map +0 -1
- package/dist/managers/GptPlatformApiKeysManagerVolatile.d.ts +0 -35
- package/dist/managers/GptPlatformApiKeysManagerVolatile.js +0 -51
- package/dist/managers/GptPlatformApiKeysManagerVolatile.js.map +0 -1
- package/dist/managers/GptResourcesManager.d.ts +0 -44
- package/dist/managers/GptResourcesManager.js +0 -180
- package/dist/managers/GptResourcesManager.js.map +0 -1
- package/dist/managers/SelectorGenerator.d.ts +0 -8
- package/dist/managers/SelectorGenerator.js +0 -15
- package/dist/managers/SelectorGenerator.js.map +0 -1
- package/dist/models/BaseToolParam.d.ts +0 -9
- package/dist/models/BaseToolParam.js +0 -3
- package/dist/models/BaseToolParam.js.map +0 -1
- package/dist/models/BaseToolParameters.d.ts +0 -9
- package/dist/models/BaseToolParameters.js +0 -3
- package/dist/models/BaseToolParameters.js.map +0 -1
- package/dist/models/DonobuAnnotated.d.ts +0 -23
- package/dist/models/DonobuAnnotated.js +0 -12
- package/dist/models/DonobuAnnotated.js.map +0 -1
- package/dist/models/ElementSelectorForReplay.d.ts +0 -14
- package/dist/models/ElementSelectorForReplay.js +0 -3
- package/dist/models/ElementSelectorForReplay.js.map +0 -1
- package/dist/models/GptResource.d.ts +0 -33
- package/dist/models/GptResource.js +0 -3
- package/dist/models/GptResource.js.map +0 -1
- package/dist/persistence/AgentsPersistenceFilesystem.d.ts +0 -15
- package/dist/persistence/AgentsPersistenceFilesystem.js +0 -48
- package/dist/persistence/AgentsPersistenceFilesystem.js.map +0 -1
- package/dist/persistence/GptConfigsPersistenceFilesystem.d.ts +0 -16
- package/dist/persistence/GptConfigsPersistenceFilesystem.js +0 -54
- package/dist/persistence/GptConfigsPersistenceFilesystem.js.map +0 -1
- package/dist/persistence/GptResourcesPersistence.d.ts +0 -11
- package/dist/persistence/GptResourcesPersistence.js +0 -3
- package/dist/persistence/GptResourcesPersistence.js.map +0 -1
- package/dist/persistence/GptResourcesPersistenceFilesystem.d.ts +0 -20
- package/dist/persistence/GptResourcesPersistenceFilesystem.js +0 -79
- package/dist/persistence/GptResourcesPersistenceFilesystem.js.map +0 -1
- package/dist/persistence/GptResourcesPersistenceVolatile.d.ts +0 -14
- package/dist/persistence/GptResourcesPersistenceVolatile.js +0 -32
- package/dist/persistence/GptResourcesPersistenceVolatile.js.map +0 -1
- package/dist/testfixtures.d.ts +0 -66
- package/dist/testfixtures.js +0 -288
- package/dist/testfixtures.js.map +0 -1
- package/dist/tools/AssertTextVisibility.d.ts +0 -19
- package/dist/tools/AssertTextVisibility.js +0 -32
- package/dist/tools/AssertTextVisibility.js.map +0 -1
- package/dist/tools/ClickButtonTool.d.ts +0 -14
- package/dist/tools/ClickButtonTool.js +0 -36
- package/dist/tools/ClickButtonTool.js.map +0 -1
- package/dist/tools/NavigateToWebpage.d.ts +0 -19
- package/dist/tools/NavigateToWebpage.js +0 -25
- package/dist/tools/NavigateToWebpage.js.map +0 -1
- package/dist/tools/NavigateToWebpageTool.d.ts +0 -20
- package/dist/tools/NavigateToWebpageTool.js +0 -40
- package/dist/tools/NavigateToWebpageTool.js.map +0 -1
- package/dist/utils/DirectoryUtils.d.ts +0 -11
- package/dist/utils/DirectoryUtils.js +0 -37
- package/dist/utils/DirectoryUtils.js.map +0 -1
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { GptResource } from '../models/GptResource';
|
|
2
|
-
import { GptResourcesPersistence } from './GptResourcesPersistence';
|
|
3
|
-
/**
|
|
4
|
-
* A GPT resource "persistence" implementation that manages state using an
|
|
5
|
-
* in-memory map.
|
|
6
|
-
*/
|
|
7
|
-
export declare class GptResourcesPersistenceVolatile implements GptResourcesPersistence {
|
|
8
|
-
private readonly gptResources;
|
|
9
|
-
constructor(gptResources?: Map<string, GptResource>);
|
|
10
|
-
set(name: string, resource: GptResource): Promise<void>;
|
|
11
|
-
get(name: string): Promise<GptResource>;
|
|
12
|
-
getAll(): Promise<Map<string, GptResource>>;
|
|
13
|
-
delete(name: string): Promise<void>;
|
|
14
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GptResourcesPersistenceVolatile = void 0;
|
|
4
|
-
const GptResourceNotFoundException_1 = require("../exceptions/GptResourceNotFoundException");
|
|
5
|
-
/**
|
|
6
|
-
* A GPT resource "persistence" implementation that manages state using an
|
|
7
|
-
* in-memory map.
|
|
8
|
-
*/
|
|
9
|
-
class GptResourcesPersistenceVolatile {
|
|
10
|
-
gptResources;
|
|
11
|
-
constructor(gptResources = new Map()) {
|
|
12
|
-
this.gptResources = gptResources;
|
|
13
|
-
}
|
|
14
|
-
async set(name, resource) {
|
|
15
|
-
this.gptResources.set(name, resource);
|
|
16
|
-
}
|
|
17
|
-
async get(name) {
|
|
18
|
-
const gptResource = this.gptResources.get(name);
|
|
19
|
-
if (!gptResource) {
|
|
20
|
-
throw new GptResourceNotFoundException_1.GptResourceNotFoundException(name);
|
|
21
|
-
}
|
|
22
|
-
return gptResource;
|
|
23
|
-
}
|
|
24
|
-
async getAll() {
|
|
25
|
-
return this.gptResources;
|
|
26
|
-
}
|
|
27
|
-
async delete(name) {
|
|
28
|
-
this.gptResources.delete(name);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.GptResourcesPersistenceVolatile = GptResourcesPersistenceVolatile;
|
|
32
|
-
//# sourceMappingURL=GptResourcesPersistenceVolatile.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GptResourcesPersistenceVolatile.js","sourceRoot":"","sources":["../../src/persistence/GptResourcesPersistenceVolatile.ts"],"names":[],"mappings":";;;AAAA,6FAA0F;AAI1F;;;GAGG;AACH,MAAa,+BAA+B;IAIvB;IADnB,YACmB,eAAyC,IAAI,GAAG,EAAE;QAAlD,iBAAY,GAAZ,YAAY,CAAsC;IAClE,CAAC;IAEG,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,QAAqB;QAClD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,IAAY;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEhD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,2DAA4B,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,IAAY;QAC9B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CACF;AA5BD,0EA4BC"}
|
package/dist/testfixtures.d.ts
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { TestFixture } from '@playwright/test';
|
|
2
|
-
import type { Page } from '@playwright/test';
|
|
3
|
-
import { DonobuFlowsManager } from './managers/DonobuFlowsManager';
|
|
4
|
-
import { FlowsPersistenceFactory } from './persistence/FlowsPersistenceFactory';
|
|
5
|
-
import { ToolManager } from './managers/ToolManager';
|
|
6
|
-
import { FlowMetadata } from './models/FlowMetadata';
|
|
7
|
-
import { BrowserStorageState } from './models/BrowserState';
|
|
8
|
-
import { FlowsPersistence } from './persistence/FlowsPersistence';
|
|
9
|
-
import { DonobuDeploymentEnvironment } from './models/DonobuDeploymentEnvironment';
|
|
10
|
-
import { BrowserStateFlowReference } from './models/BrowserStateFlowReference';
|
|
11
|
-
import { ToolCallResult } from './models/ToolCallResult';
|
|
12
|
-
import { AnalyzePageTextToolCoreParameters } from './tools/AnalyzePageTextTool';
|
|
13
|
-
import { AssertToolCoreParameters } from './tools/AssertTool';
|
|
14
|
-
import { GptClient } from './clients/GptClient';
|
|
15
|
-
import { SelectorBasedChooseSelectOptionToolParameters } from './tools/ChooseSelectOptionTool';
|
|
16
|
-
import { InputRandomizedEmailAddressToolCoreParameters } from './tools/InputRandomizedEmailAddressTool';
|
|
17
|
-
import { SelectorBasedInputTextToolParameters } from './tools/InputTextTool';
|
|
18
|
-
import { SelectorBasedPressKeyToolParameters } from './tools/PressKeyTool';
|
|
19
|
-
import { ScrollPageToolCoreParameters } from './tools/ScrollPageTool';
|
|
20
|
-
import { SelectorBasedHoverOverElementToolParameters } from './tools/HoverOverElementTool';
|
|
21
|
-
import { SelectorBasedClickToolParameters } from './tools/ClickTool';
|
|
22
|
-
/**
|
|
23
|
-
* Extends the Page object with additional test-related methods.
|
|
24
|
-
*/
|
|
25
|
-
interface DonobuExtendedPage extends Page {
|
|
26
|
-
run(toolName: string, toolParams?: any): Promise<ToolCallResult>;
|
|
27
|
-
analyzePageText(params: AnalyzePageTextToolCoreParameters): Promise<ToolCallResult>;
|
|
28
|
-
chooseSelectOption(params: SelectorBasedChooseSelectOptionToolParameters): Promise<ToolCallResult>;
|
|
29
|
-
clickElement(params: SelectorBasedClickToolParameters): Promise<ToolCallResult>;
|
|
30
|
-
createCookieReport(): Promise<ToolCallResult>;
|
|
31
|
-
detectBrokenLinks(): Promise<ToolCallResult>;
|
|
32
|
-
hoverOverElement(params: SelectorBasedHoverOverElementToolParameters): Promise<ToolCallResult>;
|
|
33
|
-
inputRandomizedEmailAddress(params: InputRandomizedEmailAddressToolCoreParameters): Promise<ToolCallResult>;
|
|
34
|
-
inputText(params: SelectorBasedInputTextToolParameters): Promise<ToolCallResult>;
|
|
35
|
-
pressKey(params: SelectorBasedPressKeyToolParameters): Promise<ToolCallResult>;
|
|
36
|
-
runAccessibilityTest(): Promise<ToolCallResult>;
|
|
37
|
-
scroll(params: ScrollPageToolCoreParameters): Promise<ToolCallResult>;
|
|
38
|
-
visuallyAssert(params: AssertToolCoreParameters): Promise<ToolCallResult>;
|
|
39
|
-
_donobu: DonobuParams;
|
|
40
|
-
_donobuFlowMetadata: FlowMetadata;
|
|
41
|
-
_gptClient: GptClient | null;
|
|
42
|
-
}
|
|
43
|
-
type DonobuParams = {
|
|
44
|
-
donobuVersion: string;
|
|
45
|
-
deploymentEnvironment: DonobuDeploymentEnvironment;
|
|
46
|
-
flowsPersistenceFactory: FlowsPersistenceFactory;
|
|
47
|
-
toolManager: ToolManager;
|
|
48
|
-
flowsManager: DonobuFlowsManager;
|
|
49
|
-
persistenceLayer: FlowsPersistence;
|
|
50
|
-
};
|
|
51
|
-
export declare function getBrowserStorageState(flowIdOrName: BrowserStateFlowReference): Promise<BrowserStorageState>;
|
|
52
|
-
export declare function getBrowserStorageStateFixture(flowIdOrName: BrowserStateFlowReference): TestFixture<BrowserStorageState, any>;
|
|
53
|
-
export declare function getAnthropicClient(modelName: string, apiKey?: string): Promise<GptClient>;
|
|
54
|
-
export declare function getAnthropicClientFixture(modelName: string, apiKey?: string): TestFixture<GptClient, any>;
|
|
55
|
-
export declare function getGoogleGeminiClient(modelName: string, apiKey?: string): Promise<GptClient>;
|
|
56
|
-
export declare function getGoogleGeminiClientFixture(modelName: string, apiKey?: string): TestFixture<GptClient, any>;
|
|
57
|
-
export declare function getOpenAiClient(modelName: string, apiKey?: string): Promise<GptClient>;
|
|
58
|
-
export declare function getOpenAiClientFixture(modelName: string, apiKey?: string): TestFixture<GptClient, any>;
|
|
59
|
-
export declare function getAnthropicAwsBedrockClient(modelName: string, region: string, accessKeyId?: string, secretAccessKey?: string): Promise<GptClient>;
|
|
60
|
-
export declare function getAnthropicAwsBedrockClientFixture(modelName: string, region: string, accessKeyId?: string, secretAccessKey?: string): TestFixture<GptClient, any>;
|
|
61
|
-
export declare const test: import("@playwright/test").TestType<import("@playwright/test").PlaywrightTestArgs & import("@playwright/test").PlaywrightTestOptions & {
|
|
62
|
-
storageState?: BrowserStorageState | Promise<BrowserStorageState>;
|
|
63
|
-
gptClient?: GptClient;
|
|
64
|
-
page: DonobuExtendedPage;
|
|
65
|
-
}, import("@playwright/test").PlaywrightWorkerArgs & import("@playwright/test").PlaywrightWorkerOptions>;
|
|
66
|
-
export {};
|
package/dist/testfixtures.js
DELETED
|
@@ -1,288 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.test = void 0;
|
|
7
|
-
exports.getBrowserStorageState = getBrowserStorageState;
|
|
8
|
-
exports.getBrowserStorageStateFixture = getBrowserStorageStateFixture;
|
|
9
|
-
exports.getAnthropicClient = getAnthropicClient;
|
|
10
|
-
exports.getAnthropicClientFixture = getAnthropicClientFixture;
|
|
11
|
-
exports.getGoogleGeminiClient = getGoogleGeminiClient;
|
|
12
|
-
exports.getGoogleGeminiClientFixture = getGoogleGeminiClientFixture;
|
|
13
|
-
exports.getOpenAiClient = getOpenAiClient;
|
|
14
|
-
exports.getOpenAiClientFixture = getOpenAiClientFixture;
|
|
15
|
-
exports.getAnthropicAwsBedrockClient = getAnthropicAwsBedrockClient;
|
|
16
|
-
exports.getAnthropicAwsBedrockClientFixture = getAnthropicAwsBedrockClientFixture;
|
|
17
|
-
/**
|
|
18
|
-
* This code extends the Playwright Page object and test fixture with
|
|
19
|
-
* test-related Donobu methods.
|
|
20
|
-
*/
|
|
21
|
-
const crypto_1 = __importDefault(require("crypto"));
|
|
22
|
-
const test_1 = require("@playwright/test");
|
|
23
|
-
const DonobuFlowsManager_1 = require("./managers/DonobuFlowsManager");
|
|
24
|
-
const FlowsPersistenceFactoryImpl_1 = require("./persistence/FlowsPersistenceFactoryImpl");
|
|
25
|
-
const RequestContextHolder_1 = require("./managers/RequestContextHolder");
|
|
26
|
-
const ToolManager_1 = require("./managers/ToolManager");
|
|
27
|
-
const ToolTipper_1 = require("./managers/ToolTipper");
|
|
28
|
-
const FlowMetadata_1 = require("./models/FlowMetadata");
|
|
29
|
-
const PlaywrightUtils_1 = require("./utils/PlaywrightUtils");
|
|
30
|
-
const MiscUtils_1 = require("./utils/MiscUtils");
|
|
31
|
-
const DonobuDeploymentEnvironment_1 = require("./models/DonobuDeploymentEnvironment");
|
|
32
|
-
const GptConfigsManager_1 = require("./managers/GptConfigsManager");
|
|
33
|
-
const AgentsManager_1 = require("./managers/AgentsManager");
|
|
34
|
-
const GptConfigsPersistenceSqlite_1 = require("./persistence/GptConfigsPersistenceSqlite");
|
|
35
|
-
const DonobuSqliteDb_1 = require("./persistence/DonobuSqliteDb");
|
|
36
|
-
const AgentsPersistenceSqlite_1 = require("./persistence/AgentsPersistenceSqlite");
|
|
37
|
-
const GptClientFactory_1 = require("./clients/GptClientFactory");
|
|
38
|
-
async function setupDonobu() {
|
|
39
|
-
const donobuVersion = MiscUtils_1.MiscUtils.DONOBU_VERSION;
|
|
40
|
-
const deploymentEnvironment = DonobuDeploymentEnvironment_1.DonobuDeploymentEnvironment.LOCAL;
|
|
41
|
-
const sqliteDb = (0, DonobuSqliteDb_1.getDonobuSqliteDatabase)();
|
|
42
|
-
const gptConfigsPersistence = await GptConfigsPersistenceSqlite_1.GptConfigsPersistenceSqlite.create(sqliteDb);
|
|
43
|
-
const gptConfigsManager = await GptConfigsManager_1.GptConfigsManager.create(gptConfigsPersistence);
|
|
44
|
-
const agentsPersistence = await AgentsPersistenceSqlite_1.AgentsPersistenceSqlite.create(sqliteDb);
|
|
45
|
-
const agentsManager = await AgentsManager_1.AgentsManager.create(agentsPersistence, gptConfigsManager);
|
|
46
|
-
const flowsPersistenceFactory = await FlowsPersistenceFactoryImpl_1.FlowsPersistenceFactoryImpl.fromEnvironment(DonobuDeploymentEnvironment_1.DonobuDeploymentEnvironment.LOCAL, new RequestContextHolder_1.RequestContextHolder());
|
|
47
|
-
const toolManager = new ToolManager_1.ToolManager(ToolManager_1.ToolManager.ALL_TOOLS);
|
|
48
|
-
const flowsManager = new DonobuFlowsManager_1.DonobuFlowsManager(deploymentEnvironment, gptConfigsManager, agentsManager, flowsPersistenceFactory, toolManager.tools);
|
|
49
|
-
const persistenceLayer = await flowsPersistenceFactory.createPersistenceLayer();
|
|
50
|
-
return {
|
|
51
|
-
donobuVersion,
|
|
52
|
-
deploymentEnvironment,
|
|
53
|
-
flowsPersistenceFactory,
|
|
54
|
-
toolManager,
|
|
55
|
-
flowsManager,
|
|
56
|
-
persistenceLayer,
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
async function getBrowserStorageState(flowIdOrName) {
|
|
60
|
-
return (await setupDonobu()).flowsManager.getBrowserStorageState(flowIdOrName);
|
|
61
|
-
}
|
|
62
|
-
function getBrowserStorageStateFixture(flowIdOrName) {
|
|
63
|
-
return async ({}, use) => {
|
|
64
|
-
const storage = await (await setupDonobu()).flowsManager.getBrowserStorageState(flowIdOrName);
|
|
65
|
-
await use(storage);
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
async function getAnthropicClient(modelName, apiKey) {
|
|
69
|
-
const divinedApiKey = apiKey || process.env.ANTHROPIC_API_KEY;
|
|
70
|
-
if (!divinedApiKey) {
|
|
71
|
-
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.');
|
|
72
|
-
}
|
|
73
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
74
|
-
type: 'ANTHROPIC',
|
|
75
|
-
apiKey: divinedApiKey,
|
|
76
|
-
modelName: modelName,
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
function getAnthropicClientFixture(modelName, apiKey) {
|
|
80
|
-
return async ({}, use) => {
|
|
81
|
-
const client = await getAnthropicClient(modelName, apiKey);
|
|
82
|
-
await use(client);
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
async function getGoogleGeminiClient(modelName, apiKey) {
|
|
86
|
-
const divinedApiKey = apiKey || process.env.GOOGLE_GENERATIVE_AI_API_KEY;
|
|
87
|
-
if (!divinedApiKey) {
|
|
88
|
-
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.');
|
|
89
|
-
}
|
|
90
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
91
|
-
type: 'GOOGLE_GEMINI',
|
|
92
|
-
apiKey: divinedApiKey,
|
|
93
|
-
modelName: modelName,
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
function getGoogleGeminiClientFixture(modelName, apiKey) {
|
|
97
|
-
return async ({}, use) => {
|
|
98
|
-
const client = await getGoogleGeminiClient(modelName, apiKey);
|
|
99
|
-
await use(client);
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
async function getOpenAiClient(modelName, apiKey) {
|
|
103
|
-
const divinedApiKey = apiKey || process.env.OPENAI_API_KEY;
|
|
104
|
-
if (!divinedApiKey) {
|
|
105
|
-
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.');
|
|
106
|
-
}
|
|
107
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
108
|
-
type: 'OPENAI',
|
|
109
|
-
apiKey: divinedApiKey,
|
|
110
|
-
modelName: modelName,
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
function getOpenAiClientFixture(modelName, apiKey) {
|
|
114
|
-
return async ({}, use) => {
|
|
115
|
-
const client = await getOpenAiClient(modelName, apiKey);
|
|
116
|
-
await use(client);
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
async function getAnthropicAwsBedrockClient(modelName, region, accessKeyId, secretAccessKey) {
|
|
120
|
-
const divinedAccessKeyId = accessKeyId || process.env.AWS_ACCESS_KEY_ID;
|
|
121
|
-
const divinedSecretAccessKey = secretAccessKey || process.env.AWS_SECRET_ACCESS_KEY;
|
|
122
|
-
if (!divinedAccessKeyId || !divinedSecretAccessKey) {
|
|
123
|
-
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.');
|
|
124
|
-
}
|
|
125
|
-
return GptClientFactory_1.GptClientFactory.createFromGptConfig({
|
|
126
|
-
type: 'ANTHROPIC_AWS_BEDROCK',
|
|
127
|
-
region: region,
|
|
128
|
-
modelName: modelName,
|
|
129
|
-
accessKeyId: divinedAccessKeyId,
|
|
130
|
-
secretAccessKey: divinedSecretAccessKey,
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
function getAnthropicAwsBedrockClientFixture(modelName, region, accessKeyId, secretAccessKey) {
|
|
134
|
-
return async ({}, use) => {
|
|
135
|
-
const client = await getAnthropicAwsBedrockClient(modelName, region, accessKeyId, secretAccessKey);
|
|
136
|
-
await use(client);
|
|
137
|
-
};
|
|
138
|
-
}
|
|
139
|
-
exports.test = test_1.test.extend({
|
|
140
|
-
// 1) Declare `gptClient` as an "option" fixture with a default of `undefined`.
|
|
141
|
-
gptClient: [
|
|
142
|
-
undefined, // default
|
|
143
|
-
{ option: true }, // so that test.use({ gptClient: ... }) can override
|
|
144
|
-
],
|
|
145
|
-
// Override the default page fixture
|
|
146
|
-
page: async ({ page, gptClient }, use, testInfo) => {
|
|
147
|
-
// Patch the page with "run", but do it lazily
|
|
148
|
-
const donobu = await setupDonobu();
|
|
149
|
-
await page
|
|
150
|
-
.context()
|
|
151
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.accessibilityTestInitScript());
|
|
152
|
-
await page
|
|
153
|
-
.context()
|
|
154
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.clickableElementsTrackerInitScript());
|
|
155
|
-
await page
|
|
156
|
-
.context()
|
|
157
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.dialogPromptTrackerInitScript());
|
|
158
|
-
await page
|
|
159
|
-
.context()
|
|
160
|
-
.addInitScript(PlaywrightUtils_1.PlaywrightUtils.smartSelectorGeneratorInitScript());
|
|
161
|
-
let isInitialized = false;
|
|
162
|
-
async function maybeInitDonobu() {
|
|
163
|
-
if (isInitialized) {
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
const donobuTestFlowMetadata = {
|
|
167
|
-
id: crypto_1.default.randomUUID(),
|
|
168
|
-
name: testInfo.title,
|
|
169
|
-
createdWithDonobuVersion: donobu.donobuVersion,
|
|
170
|
-
initialBrowserState: null,
|
|
171
|
-
persistBrowserState: null,
|
|
172
|
-
gptConfigName: null,
|
|
173
|
-
hasGptConfigNameOverride: false,
|
|
174
|
-
customTools: null,
|
|
175
|
-
defaultToolTipDurationMilliseconds: 0,
|
|
176
|
-
runMode: FlowMetadata_1.RunMode.DETERMINISTIC,
|
|
177
|
-
isControlPanelEnabled: false,
|
|
178
|
-
deviceName: null,
|
|
179
|
-
remoteBrowserInstanceUrl: null,
|
|
180
|
-
callbackUrl: null,
|
|
181
|
-
headless: true,
|
|
182
|
-
targetWebsite: 'https://example.com',
|
|
183
|
-
overallObjective: null,
|
|
184
|
-
allowedTools: [],
|
|
185
|
-
resultJsonSchema: null,
|
|
186
|
-
result: null,
|
|
187
|
-
inputTokensUsed: 0,
|
|
188
|
-
completionTokensUsed: 0,
|
|
189
|
-
iterations: 0,
|
|
190
|
-
maxIterations: 0,
|
|
191
|
-
startedAt: new Date().getTime(),
|
|
192
|
-
completedAt: null,
|
|
193
|
-
state: FlowMetadata_1.State.RUNNING_ACTION,
|
|
194
|
-
nextState: null,
|
|
195
|
-
};
|
|
196
|
-
await donobu.persistenceLayer.saveMetadata(donobuTestFlowMetadata);
|
|
197
|
-
page._donobu = donobu;
|
|
198
|
-
page._donobuFlowMetadata = donobuTestFlowMetadata;
|
|
199
|
-
page._gptClient = gptClient ?? null;
|
|
200
|
-
isInitialized = true;
|
|
201
|
-
}
|
|
202
|
-
page.run = async (toolName, toolParams) => {
|
|
203
|
-
await maybeInitDonobu();
|
|
204
|
-
const clonedParams = toolParams
|
|
205
|
-
? JSON.parse(JSON.stringify(toolParams))
|
|
206
|
-
: {};
|
|
207
|
-
clonedParams.rationale ||= '';
|
|
208
|
-
const toolCallContext = {
|
|
209
|
-
flowsManager: page._donobu.flowsManager,
|
|
210
|
-
persistence: page._donobu.persistenceLayer,
|
|
211
|
-
gptClient: page._gptClient,
|
|
212
|
-
toolTipper: new ToolTipper_1.ToolTipper(0),
|
|
213
|
-
proposedToolCalls: [],
|
|
214
|
-
invokedToolCalls: [],
|
|
215
|
-
page: page,
|
|
216
|
-
metadata: page._donobuFlowMetadata,
|
|
217
|
-
toolCallId: clonedParams.toolCallId ?? MiscUtils_1.MiscUtils.createAdHocToolCallId(),
|
|
218
|
-
};
|
|
219
|
-
const proposedToolCall = {
|
|
220
|
-
name: toolName,
|
|
221
|
-
parameters: clonedParams,
|
|
222
|
-
toolCallId: null,
|
|
223
|
-
};
|
|
224
|
-
return page._donobu.toolManager
|
|
225
|
-
.invokeTool(toolCallContext, proposedToolCall, false)
|
|
226
|
-
.then(async (result) => {
|
|
227
|
-
await page._donobu.persistenceLayer.saveMetadata(page._donobuFlowMetadata);
|
|
228
|
-
await page._donobu.persistenceLayer.saveToolCall(page._donobuFlowMetadata.id, result);
|
|
229
|
-
return result;
|
|
230
|
-
})
|
|
231
|
-
.then((result) => result.outcome);
|
|
232
|
-
};
|
|
233
|
-
page.analyzePageText = async (params) => {
|
|
234
|
-
return page.run('analyzePageText', params);
|
|
235
|
-
};
|
|
236
|
-
page.chooseSelectOption = async (params) => {
|
|
237
|
-
return page.run('chooseSelectOption', params);
|
|
238
|
-
};
|
|
239
|
-
page.clickElement = async (params) => {
|
|
240
|
-
return page.run('click', params);
|
|
241
|
-
};
|
|
242
|
-
page.createCookieReport = async () => {
|
|
243
|
-
return page.run('createCookieReport');
|
|
244
|
-
};
|
|
245
|
-
page.detectBrokenLinks = async () => {
|
|
246
|
-
return page.run('detectBrokenLinks');
|
|
247
|
-
};
|
|
248
|
-
page.hoverOverElement = async (params) => {
|
|
249
|
-
return page.run('hover', params);
|
|
250
|
-
};
|
|
251
|
-
page.inputRandomizedEmailAddress = async (params) => {
|
|
252
|
-
return page.run('inputRandomizedEmailAddress', params);
|
|
253
|
-
};
|
|
254
|
-
page.inputText = async (params) => {
|
|
255
|
-
return page.run('inputText', params);
|
|
256
|
-
};
|
|
257
|
-
page.pressKey = async (params) => {
|
|
258
|
-
return page.run('pressKey', params);
|
|
259
|
-
};
|
|
260
|
-
page.runAccessibilityTest = async () => {
|
|
261
|
-
return page.run('runAccessibilityTest');
|
|
262
|
-
};
|
|
263
|
-
page.scroll = async (params) => {
|
|
264
|
-
return page.run('scrollPage', params);
|
|
265
|
-
};
|
|
266
|
-
page.visuallyAssert = async (params) => {
|
|
267
|
-
return page.run('assert', params);
|
|
268
|
-
};
|
|
269
|
-
try {
|
|
270
|
-
// Let Playwright continue and give tests the patched page.
|
|
271
|
-
await use(page);
|
|
272
|
-
}
|
|
273
|
-
finally {
|
|
274
|
-
try {
|
|
275
|
-
if (page._donobuFlowMetadata) {
|
|
276
|
-
page._donobuFlowMetadata.state = FlowMetadata_1.State.SUCCESS;
|
|
277
|
-
page._donobuFlowMetadata.completedAt = new Date().getTime();
|
|
278
|
-
await page._donobu.persistenceLayer.saveMetadata(page._donobuFlowMetadata);
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
catch (error) {
|
|
282
|
-
// Log but don't throw, to ensure cleanup continues.
|
|
283
|
-
console.error('Error during test cleanup:', error);
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
},
|
|
287
|
-
});
|
|
288
|
-
//# sourceMappingURL=testfixtures.js.map
|
package/dist/testfixtures.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"testfixtures.js","sourceRoot":"","sources":["../src/testfixtures.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Tool } from './Tool';
|
|
2
|
-
import { ToolCallContext } from '../models/ToolCallContext';
|
|
3
|
-
import { ToolCallResult } from '../models/ToolCallResult';
|
|
4
|
-
import { BaseToolGptParameters } from '../models/BaseToolGptParameters';
|
|
5
|
-
export interface AssertTextVisibilityToolCoreParameters {
|
|
6
|
-
/**
|
|
7
|
-
* The text to check visibility for in the current page.
|
|
8
|
-
*/
|
|
9
|
-
text: string;
|
|
10
|
-
}
|
|
11
|
-
interface AssertTextVisibilityToolGptParameters extends BaseToolGptParameters, AssertTextVisibilityToolCoreParameters {
|
|
12
|
-
}
|
|
13
|
-
export declare class AssertTextVisibilityTool extends Tool<AssertTextVisibilityToolCoreParameters, AssertTextVisibilityToolGptParameters> {
|
|
14
|
-
static readonly NAME = "assertTextVisibility";
|
|
15
|
-
constructor();
|
|
16
|
-
call(context: ToolCallContext, parameters: AssertTextVisibilityToolCoreParameters): Promise<ToolCallResult>;
|
|
17
|
-
callFromGpt(context: ToolCallContext, parameters: AssertTextVisibilityToolGptParameters): Promise<ToolCallResult>;
|
|
18
|
-
}
|
|
19
|
-
export {};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AssertTextVisibilityTool = void 0;
|
|
4
|
-
const Tool_1 = require("./Tool");
|
|
5
|
-
const ToolCallResult_1 = require("../models/ToolCallResult");
|
|
6
|
-
class AssertTextVisibilityTool extends Tool_1.Tool {
|
|
7
|
-
static NAME = 'assertTextVisibility';
|
|
8
|
-
constructor() {
|
|
9
|
-
super(AssertTextVisibilityTool.NAME, 'This method will test that the given text is visible in the current page.', 'AssertTextVisibilityToolCoreParameters', 'AssertTextVisibilityToolGptParameters', true);
|
|
10
|
-
}
|
|
11
|
-
async call(context, parameters) {
|
|
12
|
-
const locator = context.page.getByText(parameters.text);
|
|
13
|
-
const count = await locator.count();
|
|
14
|
-
for (let i = 0; i < count; ++i) {
|
|
15
|
-
const element = locator.nth(i);
|
|
16
|
-
await element.scrollIntoViewIfNeeded();
|
|
17
|
-
if (await element.isVisible()) {
|
|
18
|
-
return ToolCallResult_1.ToolCallResult.successful();
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
return {
|
|
22
|
-
isSuccessful: false,
|
|
23
|
-
forLlm: `Failed to find the text: "${parameters.text}"`,
|
|
24
|
-
metadata: null,
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
async callFromGpt(context, parameters) {
|
|
28
|
-
return this.call(context, parameters);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.AssertTextVisibilityTool = AssertTextVisibilityTool;
|
|
32
|
-
//# sourceMappingURL=AssertTextVisibility.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AssertTextVisibility.js","sourceRoot":"","sources":["../../src/tools/AssertTextVisibility.ts"],"names":[],"mappings":";;;AAAA,iCAA8B;AAE9B,6DAA0D;AAc1D,MAAa,wBAAyB,SAAQ,WAG7C;IACQ,MAAM,CAAU,IAAI,GAAG,sBAAsB,CAAC;IAErD;QACE,KAAK,CACH,wBAAwB,CAAC,IAAI,EAC7B,2EAA2E,EAC3E,wCAAwC,EACxC,uCAAuC,EACvC,IAAI,CACL,CAAC;IACJ,CAAC;IAEe,KAAK,CAAC,IAAI,CACxB,OAAwB,EACxB,UAAkD;QAElD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,OAAO,CAAC,sBAAsB,EAAE,CAAC;YAEvC,IAAI,MAAM,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;gBAC9B,OAAO,+BAAc,CAAC,UAAU,EAAE,CAAC;YACrC,CAAC;QACH,CAAC;QAED,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,MAAM,EAAE,6BAA6B,UAAU,CAAC,IAAI,GAAG;YACvD,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAEe,KAAK,CAAC,WAAW,CAC/B,OAAwB,EACxB,UAAiD;QAEjD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACxC,CAAC;;AA5CH,4DA6CC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Locator } from 'playwright';
|
|
2
|
-
import { ToolCallContext } from '../models/ToolCallContext';
|
|
3
|
-
import { ReplayableInteraction, AnnotationBasedParameters, SelectorBasedParameters } from './ReplayableInteraction';
|
|
4
|
-
export interface ClickButtonToolCoreParameters {
|
|
5
|
-
}
|
|
6
|
-
export interface SelectorBasedClickButtonToolParameters extends SelectorBasedParameters, ClickButtonToolCoreParameters {
|
|
7
|
-
}
|
|
8
|
-
export interface AnnotationBasedClickButtonToolParameters extends AnnotationBasedParameters, ClickButtonToolCoreParameters {
|
|
9
|
-
}
|
|
10
|
-
export declare class ClickButtonTool extends ReplayableInteraction<ClickButtonToolCoreParameters, SelectorBasedClickButtonToolParameters, AnnotationBasedClickButtonToolParameters> {
|
|
11
|
-
static readonly NAME = "clickButton";
|
|
12
|
-
constructor();
|
|
13
|
-
invoke(context: ToolCallContext, _parameters: ClickButtonToolCoreParameters, element: Locator): Promise<string>;
|
|
14
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ClickButtonTool = void 0;
|
|
4
|
-
const ReplayableInteraction_1 = require("./ReplayableInteraction");
|
|
5
|
-
const MiscUtils_1 = require("../utils/MiscUtils");
|
|
6
|
-
class ClickButtonTool extends ReplayableInteraction_1.ReplayableInteraction {
|
|
7
|
-
static NAME = 'clickButton';
|
|
8
|
-
constructor() {
|
|
9
|
-
super(ClickButtonTool.NAME, 'Click an element on a webpage.', 'SelectorBasedClickButtonToolParameters', 'AnnotationBasedClickButtonToolParameters');
|
|
10
|
-
}
|
|
11
|
-
async invoke(context, _parameters, element) {
|
|
12
|
-
const page = context.page;
|
|
13
|
-
const box = await element.boundingBox();
|
|
14
|
-
if (!box) {
|
|
15
|
-
throw new Error(`Failed to retrieve element bounding box for '${element}'; element may be offscreen or detached.`);
|
|
16
|
-
}
|
|
17
|
-
try {
|
|
18
|
-
await element.click({
|
|
19
|
-
delay: MiscUtils_1.MiscUtils.generateHumanLikeClickDurationInMs(),
|
|
20
|
-
timeout: 1000,
|
|
21
|
-
});
|
|
22
|
-
return 'Clicked the element.';
|
|
23
|
-
}
|
|
24
|
-
catch (_error) {
|
|
25
|
-
const x = box.x + box.width / 2;
|
|
26
|
-
const y = box.y + box.height / 2;
|
|
27
|
-
await page.mouse.move(x, y);
|
|
28
|
-
await page.mouse.click(x, y, {
|
|
29
|
-
delay: MiscUtils_1.MiscUtils.generateHumanLikeClickDurationInMs(),
|
|
30
|
-
});
|
|
31
|
-
return 'Clicked on the element.';
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
exports.ClickButtonTool = ClickButtonTool;
|
|
36
|
-
//# sourceMappingURL=ClickButtonTool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ClickButtonTool.js","sourceRoot":"","sources":["../../src/tools/ClickButtonTool.ts"],"names":[],"mappings":";;;AAEA,mEAIiC;AACjC,kDAA+C;AAU/C,MAAa,eAAgB,SAAQ,6CAIpC;IACQ,MAAM,CAAU,IAAI,GAAG,aAAa,CAAC;IAE5C;QACE,KAAK,CACH,eAAe,CAAC,IAAI,EACpB,gCAAgC,EAChC,wCAAwC,EACxC,0CAA0C,CAC3C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CACV,OAAwB,EACxB,WAA0C,EAC1C,OAAgB;QAEhB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1B,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;QAExC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb,gDAAgD,OAAO,0CAA0C,CAClG,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,KAAK,CAAC;gBAClB,KAAK,EAAE,qBAAS,CAAC,kCAAkC,EAAE;gBACrD,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,OAAO,sBAAsB,CAAC;QAChC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;YAChC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5B,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE;gBAC3B,KAAK,EAAE,qBAAS,CAAC,kCAAkC,EAAE;aACtD,CAAC,CAAC;YACH,OAAO,yBAAyB,CAAC;QACnC,CAAC;IACH,CAAC;;AA7CH,0CA8CC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Tool } from './Tool';
|
|
2
|
-
import { ToolCallContext } from '../models/ToolCallContext';
|
|
3
|
-
import { ToolCallResult } from '../models/ToolCallResult';
|
|
4
|
-
export interface NavigateToWebpageToolParameters {
|
|
5
|
-
/**
|
|
6
|
-
* The reason why this particular action is being taken. It MUST relate to the overall objective.
|
|
7
|
-
*/
|
|
8
|
-
rationale: string;
|
|
9
|
-
/**
|
|
10
|
-
* The URL to navigate to. Must use HTTP or file protocol (example is https://google.com).
|
|
11
|
-
*/
|
|
12
|
-
url: string;
|
|
13
|
-
}
|
|
14
|
-
/** Directly navigate to the specified URL. */
|
|
15
|
-
export declare class NavigateToWebpageTool extends Tool<NavigateToWebpageToolParameters> {
|
|
16
|
-
private static readonly VALID_PROTOCOLS;
|
|
17
|
-
constructor();
|
|
18
|
-
call(context: ToolCallContext, parameters: NavigateToWebpageToolParameters): Promise<ToolCallResult>;
|
|
19
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NavigateToWebpageTool = void 0;
|
|
4
|
-
const Tool_1 = require("./Tool");
|
|
5
|
-
const ToolCallResult_1 = require("../models/ToolCallResult");
|
|
6
|
-
/** Directly navigate to the specified URL. */
|
|
7
|
-
class NavigateToWebpageTool extends Tool_1.Tool {
|
|
8
|
-
static VALID_PROTOCOLS = ['https://', 'http://', 'file://'];
|
|
9
|
-
constructor() {
|
|
10
|
-
super('Navigate to the specified URL.', 'NavigateToWebpageToolParameters');
|
|
11
|
-
}
|
|
12
|
-
async call(context, parameters) {
|
|
13
|
-
const page = context.page;
|
|
14
|
-
const url = parameters.url.trim();
|
|
15
|
-
if (NavigateToWebpageTool.VALID_PROTOCOLS.some((protocol) => url.startsWith(protocol))) {
|
|
16
|
-
await page.goto(url);
|
|
17
|
-
return ToolCallResult_1.ToolCallResult.successful();
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
return ToolCallResult_1.ToolCallResult.failed(`Will not navigate a URL not using the following prefixes: ${NavigateToWebpageTool.VALID_PROTOCOLS}`);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
exports.NavigateToWebpageTool = NavigateToWebpageTool;
|
|
25
|
-
//# sourceMappingURL=NavigateToWebpage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavigateToWebpage.js","sourceRoot":"","sources":["../../src/tools/NavigateToWebpage.ts"],"names":[],"mappings":";;;AAAA,iCAA8B;AAE9B,6DAA0D;AAc1D,8CAA8C;AAC9C,MAAa,qBAAsB,SAAQ,WAAqC;IACtE,MAAM,CAAU,eAAe,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAE7E;QACE,KAAK,CAAC,gCAAgC,EAAE,iCAAiC,CAAC,CAAC;IAC7E,CAAC;IAEe,KAAK,CAAC,IAAI,CACxB,OAAwB,EACxB,UAA2C;QAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1B,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAElC,IACE,qBAAqB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACtD,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CACzB,EACD,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,+BAAc,CAAC,UAAU,EAAE,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,OAAO,+BAAc,CAAC,MAAM,CAC1B,6DAA6D,qBAAqB,CAAC,eAAe,EAAE,CACrG,CAAC;QACJ,CAAC;IACH,CAAC;;AA1BH,sDA2BC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Tool } from './Tool';
|
|
2
|
-
import { ToolCallContext } from '../models/ToolCallContext';
|
|
3
|
-
import { ToolCallResult } from '../models/ToolCallResult';
|
|
4
|
-
import { BaseToolGptParameters } from '../models/BaseToolGptParameters';
|
|
5
|
-
export interface NavigateToWebpageToolCoreParameters {
|
|
6
|
-
/**
|
|
7
|
-
* The URL to navigate to. Must use HTTP or file protocol (example is https://google.com).
|
|
8
|
-
*/
|
|
9
|
-
url: string;
|
|
10
|
-
}
|
|
11
|
-
export interface NavigateToWebpageToolGptParameters extends BaseToolGptParameters, NavigateToWebpageToolCoreParameters {
|
|
12
|
-
}
|
|
13
|
-
/** Directly navigate to the specified URL. */
|
|
14
|
-
export declare class NavigateToWebpageTool extends Tool<NavigateToWebpageToolCoreParameters, NavigateToWebpageToolGptParameters> {
|
|
15
|
-
static readonly NAME = "navigateToWebpage";
|
|
16
|
-
private static readonly VALID_PROTOCOLS;
|
|
17
|
-
constructor();
|
|
18
|
-
call(context: ToolCallContext, parameters: NavigateToWebpageToolCoreParameters): Promise<ToolCallResult>;
|
|
19
|
-
callFromGpt(context: ToolCallContext, parameters: NavigateToWebpageToolGptParameters): Promise<ToolCallResult>;
|
|
20
|
-
}
|