donobu 2.18.4 → 2.19.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/FlowsApi.d.ts +4 -0
- package/dist/apis/FlowsApi.d.ts.map +1 -1
- package/dist/apis/FlowsApi.js +15 -1
- package/dist/apis/FlowsApi.js.map +1 -1
- package/dist/apis/SpecialFlowsApi.d.ts.map +1 -1
- package/dist/apis/SpecialFlowsApi.js +11 -9
- package/dist/apis/SpecialFlowsApi.js.map +1 -1
- package/dist/assets/control-panel.js +7 -1
- package/dist/assets/generated/parameter-schemas.json +44 -0
- package/dist/assets/generated/version +1 -1
- package/dist/assets/page-interactions-tracker.js +27 -30
- package/dist/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/bindings/PageInteractionTracker.js +1 -1
- package/dist/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/esm/apis/FlowsApi.d.ts +4 -0
- package/dist/esm/apis/FlowsApi.d.ts.map +1 -1
- package/dist/esm/apis/FlowsApi.js +15 -1
- package/dist/esm/apis/FlowsApi.js.map +1 -1
- package/dist/esm/apis/SpecialFlowsApi.d.ts.map +1 -1
- package/dist/esm/apis/SpecialFlowsApi.js +11 -9
- package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
- package/dist/esm/assets/control-panel.js +7 -1
- package/dist/esm/assets/generated/parameter-schemas.json +44 -0
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/assets/page-interactions-tracker.js +27 -30
- package/dist/esm/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/esm/bindings/PageInteractionTracker.js +1 -1
- package/dist/esm/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/esm/lib/testExtension.d.ts.map +1 -1
- package/dist/esm/lib/testExtension.js +20 -19
- package/dist/esm/lib/testExtension.js.map +1 -1
- package/dist/esm/managers/AdminApiController.d.ts.map +1 -1
- package/dist/esm/managers/AdminApiController.js +1 -0
- package/dist/esm/managers/AdminApiController.js.map +1 -1
- package/dist/esm/managers/CodeGenerator.d.ts +47 -1
- package/dist/esm/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/esm/managers/CodeGenerator.js +211 -19
- package/dist/esm/managers/CodeGenerator.js.map +1 -1
- package/dist/esm/managers/ControlPanel.d.ts.map +1 -1
- package/dist/esm/managers/ControlPanel.js +7 -5
- package/dist/esm/managers/ControlPanel.js.map +1 -1
- package/dist/esm/managers/DonobuFlow.d.ts +3 -4
- package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlow.js +57 -44
- package/dist/esm/managers/DonobuFlow.js.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.d.ts +58 -34
- package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.js +217 -64
- package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/esm/managers/FlowDependencyAnalyzer.d.ts +40 -0
- package/dist/esm/managers/FlowDependencyAnalyzer.d.ts.map +1 -0
- package/dist/esm/managers/FlowDependencyAnalyzer.js +236 -0
- package/dist/esm/managers/FlowDependencyAnalyzer.js.map +1 -0
- package/dist/esm/managers/ProjectStructureGenerator.d.ts +62 -0
- package/dist/esm/managers/ProjectStructureGenerator.d.ts.map +1 -0
- package/dist/esm/managers/ProjectStructureGenerator.js +234 -0
- package/dist/esm/managers/ProjectStructureGenerator.js.map +1 -0
- package/dist/esm/managers/ToolManager.d.ts.map +1 -1
- package/dist/esm/managers/ToolManager.js +4 -2
- package/dist/esm/managers/ToolManager.js.map +1 -1
- package/dist/esm/models/FlowMetadata.d.ts +52 -0
- package/dist/esm/models/FlowMetadata.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistence.d.ts +11 -9
- package/dist/esm/persistence/flows/FlowsPersistence.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts +4 -5
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js +76 -77
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js +2 -2
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts +7 -7
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js +51 -60
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +4 -5
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +40 -41
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts +4 -4
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js +40 -40
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts +4 -5
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js +37 -37
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts +7 -7
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js +35 -33
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js.map +1 -1
- package/dist/esm/tools/AssertPageTool.d.ts +34 -0
- package/dist/esm/tools/AssertPageTool.d.ts.map +1 -0
- package/dist/esm/tools/AssertPageTool.js +156 -0
- package/dist/esm/tools/AssertPageTool.js.map +1 -0
- package/dist/esm/tools/AssertTool.js +1 -1
- package/dist/esm/tools/AssertTool.js.map +1 -1
- package/dist/esm/tools/ClickTool.d.ts.map +1 -1
- package/dist/esm/tools/ClickTool.js +3 -0
- package/dist/esm/tools/ClickTool.js.map +1 -1
- package/dist/esm/tools/DetectBrokenLinksTool.js +1 -1
- package/dist/esm/tools/DetectBrokenLinksTool.js.map +1 -1
- package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js +1 -1
- package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
- package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts +47 -1
- package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts.map +1 -1
- package/dist/esm/tools/ExtractPaymentProviderKeyTool.js +160 -25
- package/dist/esm/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
- package/dist/esm/tools/SolveMfaChallenge.d.ts.map +1 -1
- package/dist/esm/tools/SolveMfaChallenge.js.map +1 -1
- package/dist/esm/utils/BrowserUtils.d.ts +52 -0
- package/dist/esm/utils/BrowserUtils.d.ts.map +1 -0
- package/dist/esm/utils/BrowserUtils.js +340 -0
- package/dist/esm/utils/BrowserUtils.js.map +1 -0
- package/dist/esm/utils/PlaywrightUtils.d.ts +15 -11
- package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.js +110 -122
- package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
- package/dist/lib/autoTest.d.ts +2 -0
- package/dist/lib/autoTest.d.ts.map +1 -0
- package/dist/lib/autoTest.js +17 -0
- package/dist/lib/autoTest.js.map +1 -0
- package/dist/lib/testExtension.d.ts.map +1 -1
- package/dist/lib/testExtension.js +20 -19
- package/dist/lib/testExtension.js.map +1 -1
- package/dist/managers/AdminApiController.d.ts.map +1 -1
- package/dist/managers/AdminApiController.js +1 -0
- package/dist/managers/AdminApiController.js.map +1 -1
- package/dist/managers/CodeGenerator.d.ts +47 -1
- package/dist/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/managers/CodeGenerator.js +211 -19
- package/dist/managers/CodeGenerator.js.map +1 -1
- package/dist/managers/ControlPanel.d.ts.map +1 -1
- package/dist/managers/ControlPanel.js +7 -5
- package/dist/managers/ControlPanel.js.map +1 -1
- package/dist/managers/DonobuFlow.d.ts +3 -4
- package/dist/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/managers/DonobuFlow.js +57 -44
- package/dist/managers/DonobuFlow.js.map +1 -1
- package/dist/managers/DonobuFlowsManager.d.ts +58 -34
- package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/managers/DonobuFlowsManager.js +217 -64
- package/dist/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/managers/FlowDependencyAnalyzer.d.ts +40 -0
- package/dist/managers/FlowDependencyAnalyzer.d.ts.map +1 -0
- package/dist/managers/FlowDependencyAnalyzer.js +236 -0
- package/dist/managers/FlowDependencyAnalyzer.js.map +1 -0
- package/dist/managers/ProjectStructureGenerator.d.ts +62 -0
- package/dist/managers/ProjectStructureGenerator.d.ts.map +1 -0
- package/dist/managers/ProjectStructureGenerator.js +234 -0
- package/dist/managers/ProjectStructureGenerator.js.map +1 -0
- package/dist/managers/ToolManager.d.ts.map +1 -1
- package/dist/managers/ToolManager.js +4 -2
- package/dist/managers/ToolManager.js.map +1 -1
- package/dist/models/BrowserFramework.d.ts +2 -12
- package/dist/models/BrowserFramework.d.ts.map +1 -1
- package/dist/models/BrowserFramework.js +91 -66
- package/dist/models/BrowserFramework.js.map +1 -1
- package/dist/models/FlowMetadata.d.ts +52 -0
- package/dist/models/FlowMetadata.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistence.d.ts +11 -9
- package/dist/persistence/flows/FlowsPersistence.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts +4 -5
- package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceAwsS3.js +76 -77
- package/dist/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js +2 -2
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts +7 -7
- package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceFilesystem.js +51 -60
- package/dist/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +4 -5
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +40 -41
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts +4 -4
- package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceSqlite.js +40 -40
- package/dist/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts +4 -5
- package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceSupabase.js +37 -37
- package/dist/persistence/flows/FlowsPersistenceSupabase.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts +7 -7
- package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceVolatile.js +35 -33
- package/dist/persistence/flows/FlowsPersistenceVolatile.js.map +1 -1
- package/dist/tools/AssertPageTool.d.ts +34 -0
- package/dist/tools/AssertPageTool.d.ts.map +1 -0
- package/dist/tools/AssertPageTool.js +156 -0
- package/dist/tools/AssertPageTool.js.map +1 -0
- package/dist/tools/AssertTool.js +1 -1
- package/dist/tools/AssertTool.js.map +1 -1
- package/dist/tools/ClickTool.d.ts.map +1 -1
- package/dist/tools/ClickTool.js +3 -0
- package/dist/tools/ClickTool.js.map +1 -1
- package/dist/tools/DetectBrokenLinksTool.js +1 -1
- package/dist/tools/DetectBrokenLinksTool.js.map +1 -1
- package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js +1 -1
- package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
- package/dist/tools/ExtractPaymentProviderKeyTool.d.ts +47 -1
- package/dist/tools/ExtractPaymentProviderKeyTool.d.ts.map +1 -1
- package/dist/tools/ExtractPaymentProviderKeyTool.js +160 -25
- package/dist/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
- package/dist/tools/SolveMfaChallenge.d.ts.map +1 -1
- package/dist/tools/SolveMfaChallenge.js.map +1 -1
- package/dist/utils/BrowserUtils.d.ts +52 -0
- package/dist/utils/BrowserUtils.d.ts.map +1 -0
- package/dist/utils/BrowserUtils.js +340 -0
- package/dist/utils/BrowserUtils.js.map +1 -0
- package/dist/utils/PlaywrightUtils.d.ts +15 -11
- package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/utils/PlaywrightUtils.js +110 -122
- package/dist/utils/PlaywrightUtils.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.CodeGenerator = void 0;
|
|
4
4
|
const AnalyzePageTextTool_1 = require("../tools/AnalyzePageTextTool");
|
|
5
5
|
const AssertPageTextTool_1 = require("../tools/AssertPageTextTool");
|
|
6
|
+
const AssertPageTool_1 = require("../tools/AssertPageTool");
|
|
6
7
|
const AssertTool_1 = require("../tools/AssertTool");
|
|
7
8
|
const ChangeWebBrowserTabTool_1 = require("../tools/ChangeWebBrowserTabTool");
|
|
8
9
|
const ChooseSelectOptionTool_1 = require("../tools/ChooseSelectOptionTool");
|
|
@@ -23,6 +24,7 @@ const ScrollPageTool_1 = require("../tools/ScrollPageTool");
|
|
|
23
24
|
const SummarizeLearningsTool_1 = require("../tools/SummarizeLearningsTool");
|
|
24
25
|
const WaitTool_1 = require("../tools/WaitTool");
|
|
25
26
|
const JsonUtils_1 = require("../utils/JsonUtils");
|
|
27
|
+
const FlowDependencyAnalyzer_1 = require("./FlowDependencyAnalyzer");
|
|
26
28
|
const ToolManager_1 = require("./ToolManager");
|
|
27
29
|
class CodeGenerator {
|
|
28
30
|
/** Creates a Node.js Microsoft Playwright script to replay the given flow. */
|
|
@@ -39,8 +41,7 @@ class CodeGenerator {
|
|
|
39
41
|
const neededEnvVars = flowMetadata.envVars ?? [];
|
|
40
42
|
const envVarsUsageNote = neededEnvVars.length == 0
|
|
41
43
|
? ''
|
|
42
|
-
: ` *
|
|
43
|
-
* Note that this test expects the following environment variables to be available:
|
|
44
|
+
: ` * Note that this test expects the following environment variables to be available:
|
|
44
45
|
* - ${neededEnvVars.join('\n * - ')}
|
|
45
46
|
`;
|
|
46
47
|
const isGptClientRequired = flowMetadata.resultJsonSchema ||
|
|
@@ -55,10 +56,11 @@ class CodeGenerator {
|
|
|
55
56
|
return tool?.requiresGpt;
|
|
56
57
|
}).length > 0;
|
|
57
58
|
const gptSetupNote = isGptClientRequired
|
|
58
|
-
?
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
59
|
+
? `* Note that this test uses tools that require the usage of an LLM, so be
|
|
60
|
+
* sure to have an appropriate LLM API key available. This can be done
|
|
61
|
+
* by providing an environment variable (e.g. OPENAI_API_KEY, ANTHROPIC_API_KEY,
|
|
62
|
+
* or GOOGLE_GENERATIVE_AI_API_KEY) or by configuring a flow runner using
|
|
63
|
+
* the Donobu app.
|
|
62
64
|
`
|
|
63
65
|
: ' ';
|
|
64
66
|
const hasObjective = (flowMetadata.overallObjective?.trim().length ?? 0) > 0;
|
|
@@ -91,7 +93,7 @@ class CodeGenerator {
|
|
|
91
93
|
const scriptedToolCalls = toolCalls
|
|
92
94
|
.filter((toolCall) => !unsupportedToolsByName.has(toolCall.name))
|
|
93
95
|
.map((toolCall) => {
|
|
94
|
-
return
|
|
96
|
+
return this.convertProposedToolCallToPlaywrightCode(toolCall);
|
|
95
97
|
})
|
|
96
98
|
.join('\n');
|
|
97
99
|
const resultJson = flowMetadata.resultJsonSchema
|
|
@@ -99,29 +101,55 @@ class CodeGenerator {
|
|
|
99
101
|
const extractedObject = await page.extract({schema: ${JSON.stringify(flowMetadata.resultJsonSchema)}});
|
|
100
102
|
testInfo.attach('extracted-object', { body: JSON.stringify(extractedObject), contentType: 'application/json' });`
|
|
101
103
|
: '';
|
|
102
|
-
const
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
${
|
|
109
|
-
import { test } from 'donobu';${useStorageState ? "\nimport { getBrowserStorageStateFixture } from 'donobu';" : ''}
|
|
104
|
+
const needsExpectImport = toolCalls.some((toolCall) => toolCall.name === AssertPageTool_1.AssertPageTool.NAME);
|
|
105
|
+
const preamble = (envVarsUsageNote + gptSetupNote).trim().length > 0
|
|
106
|
+
? `/**
|
|
107
|
+
${envVarsUsageNote}${gptSetupNote}*/`
|
|
108
|
+
: '';
|
|
109
|
+
const script = `${preamble}
|
|
110
|
+
import { test${needsExpectImport ? ', expect' : ''} } from 'donobu';${useStorageState ? "\nimport { getBrowserStorageStateFixture } from 'donobu';" : ''}
|
|
110
111
|
|
|
111
|
-
const
|
|
112
|
-
const
|
|
113
|
-
test${testExtension}(
|
|
112
|
+
const title = '${testName}';
|
|
113
|
+
const details = ${testDetails};
|
|
114
|
+
test${testExtension}(title, details, async ({ page }${flowMetadata.resultJsonSchema ? ', testInfo' : ''}) => {
|
|
114
115
|
${scriptedToolCalls}
|
|
115
116
|
${resultJson}
|
|
116
117
|
});
|
|
117
118
|
`;
|
|
118
119
|
return this.prettifyCode(script);
|
|
119
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* Generates a complete Playwright project structure with dependency management.
|
|
123
|
+
*/
|
|
124
|
+
async generateProject(flowsWithToolCalls) {
|
|
125
|
+
// Analyze dependencies
|
|
126
|
+
const dependencyGraph = FlowDependencyAnalyzer_1.FlowDependencyAnalyzer.analyzeDependencies(flowsWithToolCalls.map((f) => f.metadata));
|
|
127
|
+
const files = [];
|
|
128
|
+
// Generate playwright.config.ts
|
|
129
|
+
files.push({
|
|
130
|
+
path: 'playwright.config.ts',
|
|
131
|
+
content: await this.generatePlaywrightConfig(dependencyGraph),
|
|
132
|
+
});
|
|
133
|
+
// Generate individual test files
|
|
134
|
+
const testFiles = await this.generateTestFiles(flowsWithToolCalls);
|
|
135
|
+
files.push(...testFiles);
|
|
136
|
+
// Generate package.json if needed
|
|
137
|
+
files.push({
|
|
138
|
+
path: 'package.json',
|
|
139
|
+
content: this.generatePackageJson(),
|
|
140
|
+
});
|
|
141
|
+
// Generate README
|
|
142
|
+
files.push({
|
|
143
|
+
path: 'README.md',
|
|
144
|
+
content: this.generateReadme(),
|
|
145
|
+
});
|
|
146
|
+
return { files };
|
|
147
|
+
}
|
|
120
148
|
/**
|
|
121
149
|
* Maps a proposed Donobu tool call to valid NodeJS Playwright code that uses
|
|
122
150
|
* the `DonobuExtendedPage` extension.
|
|
123
151
|
*/
|
|
124
|
-
|
|
152
|
+
convertProposedToolCallToPlaywrightCode(proposedToolCall) {
|
|
125
153
|
const rawParams = JsonUtils_1.JsonUtils.objectToJson(proposedToolCall.parameters);
|
|
126
154
|
const rationale = rawParams.rationale && rawParams.rationale.trim().length > 0
|
|
127
155
|
? rawParams.rationale
|
|
@@ -167,6 +195,37 @@ ${resultJson}
|
|
|
167
195
|
return `${rationale}await page.scroll(${serializedParams});`;
|
|
168
196
|
case WaitTool_1.WaitTool.NAME:
|
|
169
197
|
return `${rationale}await page.waitForTimeout(${rawParams.seconds * 1000});`;
|
|
198
|
+
case AssertPageTool_1.AssertPageTool.NAME: {
|
|
199
|
+
const assertionType = rawParams.type;
|
|
200
|
+
const expected = rawParams.expected;
|
|
201
|
+
const isRegex = rawParams.isRegex || false;
|
|
202
|
+
switch (assertionType) {
|
|
203
|
+
case 'title':
|
|
204
|
+
if (isRegex) {
|
|
205
|
+
return `${rationale}await expect(page).toHaveTitle(/${expected}/);`;
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
return `${rationale}await expect(page).toHaveTitle('${expected}');`;
|
|
209
|
+
}
|
|
210
|
+
case 'url':
|
|
211
|
+
if (isRegex) {
|
|
212
|
+
return `${rationale}await expect(page).toHaveURL(/${expected}/);`;
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
215
|
+
return `${rationale}await expect(page).toHaveURL('${expected}');`;
|
|
216
|
+
}
|
|
217
|
+
case 'content':
|
|
218
|
+
if (isRegex) {
|
|
219
|
+
return `${rationale}await expect(page.locator('body')).toContainText(/${expected}/);`;
|
|
220
|
+
}
|
|
221
|
+
else {
|
|
222
|
+
return `${rationale}await expect(page.getByText('${expected}')).toBeVisible();`;
|
|
223
|
+
}
|
|
224
|
+
default:
|
|
225
|
+
// Fallback to the generic tool call if unknown type
|
|
226
|
+
return `${rationale}await page.${proposedToolCall.name}(${hasNonEmptyParameters ? JSON.stringify({ type: assertionType, expected, isRegex }, null, 2) : ''});`;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
170
229
|
// The following tools can be mapped directly.
|
|
171
230
|
case AnalyzePageTextTool_1.AnalyzePageTextTool.NAME:
|
|
172
231
|
case AssertPageTextTool_1.AssertPageTextTool.NAME:
|
|
@@ -186,6 +245,139 @@ ${resultJson}
|
|
|
186
245
|
return toolCallScript;
|
|
187
246
|
}
|
|
188
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Generates the playwright.config.ts file with project dependencies
|
|
250
|
+
*/
|
|
251
|
+
async generatePlaywrightConfig(graph) {
|
|
252
|
+
const projects = [];
|
|
253
|
+
// Create a project for each flow (both single and multiple flows in waves get individual projects)
|
|
254
|
+
graph.executionOrder.forEach((wave) => {
|
|
255
|
+
wave.forEach((flowId) => {
|
|
256
|
+
const flow = graph.flows.get(flowId);
|
|
257
|
+
const projectName = this.getProjectName(flow);
|
|
258
|
+
const dependencies = this.getProjectDependencies(flowId, graph);
|
|
259
|
+
projects.push(this.generateProjectConfig(projectName, flow, dependencies));
|
|
260
|
+
});
|
|
261
|
+
});
|
|
262
|
+
const config = `import { defineConfig, devices } from 'donobu';
|
|
263
|
+
|
|
264
|
+
export default defineConfig({
|
|
265
|
+
testDir: './tests',
|
|
266
|
+
projects: [
|
|
267
|
+
${projects.map((p) => ' ' + p).join(',\n')}
|
|
268
|
+
],
|
|
269
|
+
reporter: [
|
|
270
|
+
["github"],
|
|
271
|
+
["json", { outputFile: "test-results/playwright-report.json" }],
|
|
272
|
+
],
|
|
273
|
+
});`;
|
|
274
|
+
return this.prettifyCode(config);
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Generates a single project configuration
|
|
278
|
+
*/
|
|
279
|
+
generateProjectConfig(projectName, flow, dependencies) {
|
|
280
|
+
const minimumTimeoutMilliseconds = 30000;
|
|
281
|
+
const defaultTimeoutMilliseconds = 60000;
|
|
282
|
+
const calculatedTimeout = flow.startedAt && flow.completedAt
|
|
283
|
+
? (flow.completedAt - flow.startedAt) * 2
|
|
284
|
+
: defaultTimeoutMilliseconds;
|
|
285
|
+
// Round up to the nearest 10000ms
|
|
286
|
+
const timeoutMilliseconds = Math.max(minimumTimeoutMilliseconds, Math.ceil(calculatedTimeout / 10000) * 10000);
|
|
287
|
+
const testMatch = `tests/${this.getTestFileName(flow)}`;
|
|
288
|
+
const deps = dependencies.length > 0
|
|
289
|
+
? `\n dependencies: [${dependencies.map((d) => `'${d}'`).join(', ')}],`
|
|
290
|
+
: '';
|
|
291
|
+
// Get device name from flow config, default to 'Desktop Chromium'
|
|
292
|
+
const deviceName = flow.browser?.using?.type === 'device'
|
|
293
|
+
? flow.browser.using.deviceName || 'Desktop Chromium'
|
|
294
|
+
: 'Desktop Chromium';
|
|
295
|
+
return `{
|
|
296
|
+
name: '${projectName}',
|
|
297
|
+
testMatch: '${testMatch}',${deps}
|
|
298
|
+
use: { ...devices['${deviceName}'] },
|
|
299
|
+
timeout: ${timeoutMilliseconds}
|
|
300
|
+
}`;
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Gets project dependencies for a given flow
|
|
304
|
+
*/
|
|
305
|
+
getProjectDependencies(flowId, graph) {
|
|
306
|
+
const dependencies = graph.dependencies.get(flowId) || [];
|
|
307
|
+
return dependencies.map((depId) => {
|
|
308
|
+
const depFlow = graph.flows.get(depId);
|
|
309
|
+
return this.getProjectName(depFlow);
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* Generates test files for all flows
|
|
314
|
+
*/
|
|
315
|
+
async generateTestFiles(flowsWithToolCalls) {
|
|
316
|
+
const files = [];
|
|
317
|
+
for (const { metadata, toolCalls } of flowsWithToolCalls) {
|
|
318
|
+
const fileName = this.getTestFileName(metadata);
|
|
319
|
+
const content = await this.getFlowAsPlaywrightScript(metadata, toolCalls);
|
|
320
|
+
files.push({
|
|
321
|
+
path: `tests/${fileName}`,
|
|
322
|
+
content,
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
return files;
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Generates package.json
|
|
329
|
+
*/
|
|
330
|
+
generatePackageJson() {
|
|
331
|
+
return JSON.stringify({
|
|
332
|
+
name: 'playwright-tests',
|
|
333
|
+
version: '1.0.0',
|
|
334
|
+
description: 'Playwright-based website tests made with Donobu',
|
|
335
|
+
scripts: {
|
|
336
|
+
test: 'npx playwright test',
|
|
337
|
+
},
|
|
338
|
+
devDependencies: {
|
|
339
|
+
donobu: 'latest',
|
|
340
|
+
},
|
|
341
|
+
}, null, 2);
|
|
342
|
+
}
|
|
343
|
+
/**
|
|
344
|
+
* Generates README.md
|
|
345
|
+
*/
|
|
346
|
+
generateReadme() {
|
|
347
|
+
return `# Playwright Tests
|
|
348
|
+
|
|
349
|
+
This project contains [Playwright](https://playwright.dev/)-based tests made with [Donobu](https://www.donobu.com/).
|
|
350
|
+
|
|
351
|
+
## Installation
|
|
352
|
+
|
|
353
|
+
\`\`\`bash
|
|
354
|
+
npm install donobu
|
|
355
|
+
npx playwright install
|
|
356
|
+
\`\`\`
|
|
357
|
+
|
|
358
|
+
## Running Tests
|
|
359
|
+
|
|
360
|
+
\`\`\`bash
|
|
361
|
+
npx playwright test
|
|
362
|
+
\`\`\`
|
|
363
|
+
`;
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* Gets a project name for a flow
|
|
367
|
+
*/
|
|
368
|
+
getProjectName(flow) {
|
|
369
|
+
if (flow.name) {
|
|
370
|
+
return flow.name.replace(/[^a-zA-Z0-9-_]/g, '-');
|
|
371
|
+
}
|
|
372
|
+
return `flow-${flow.id.substring(0, 8)}`;
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Gets a test file name for a flow
|
|
376
|
+
*/
|
|
377
|
+
getTestFileName(flow) {
|
|
378
|
+
const projectName = this.getProjectName(flow);
|
|
379
|
+
return `${projectName}.spec.ts`;
|
|
380
|
+
}
|
|
189
381
|
async prettifyCode(code) {
|
|
190
382
|
// Shenanigans way of importing prettier due to issues with Jest.
|
|
191
383
|
// See https://github.com/jestjs/jest/issues/14305
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeGenerator.js","sourceRoot":"","sources":["../../src/managers/CodeGenerator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CodeGenerator.js","sourceRoot":"","sources":["../../src/managers/CodeGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ControlPanel.d.ts","sourceRoot":"","sources":["../../src/managers/ControlPanel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAO7D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,YAAY;IAqBJ,OAAO,CAAC,QAAQ,CAAC,YAAY;IApBhD,gBAAuB,WAAW,SAEhC;IAEF;;;;;OAKG;IACH,gBAAuB,+BAA+B,0BAC7B;IAEzB;;;OAGG;IACH,gBAAuB,wCAAwC,qCAC3B;gBAEA,YAAY,EAAE,YAAY;IAE9D;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,mBAAmB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IA4BnE;;;;;;;;;;;;OAYG;IACU,IAAI,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ControlPanel.d.ts","sourceRoot":"","sources":["../../src/managers/ControlPanel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAO7D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,YAAY;IAqBJ,OAAO,CAAC,QAAQ,CAAC,YAAY;IApBhD,gBAAuB,WAAW,SAEhC;IAEF;;;;;OAKG;IACH,gBAAuB,+BAA+B,0BAC7B;IAEzB;;;OAGG;IACH,gBAAuB,wCAAwC,qCAC3B;gBAEA,YAAY,EAAE,YAAY;IAE9D;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,mBAAmB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IA4BnE;;;;;;;;;;;;OAYG;IACU,IAAI,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BhE;;;;;;;;;;;;OAYG;IACU,IAAI,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BhE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACU,MAAM,CACjB,cAAc,EAAE,cAAc,EAC9B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAiDhB,OAAO,CAAC,6BAA6B;IAsBrC,OAAO,CAAC,UAAU;YAOJ,yBAAyB;CAoBxC"}
|
|
@@ -105,8 +105,9 @@ class ControlPanel {
|
|
|
105
105
|
try {
|
|
106
106
|
await page.evaluate((panelId) => {
|
|
107
107
|
const element = document.querySelector(`#${panelId}`);
|
|
108
|
-
if (element) {
|
|
109
|
-
element.
|
|
108
|
+
if (element && !element.classList.contains('donobu-hidden')) {
|
|
109
|
+
element.classList.add('donobu-hidden');
|
|
110
|
+
element.setAttribute('aria-hidden', 'true');
|
|
110
111
|
}
|
|
111
112
|
}, ControlPanel.DONOBU_CONTROL_PANEL_ELEMENT_ID);
|
|
112
113
|
}
|
|
@@ -115,7 +116,7 @@ class ControlPanel {
|
|
|
115
116
|
// Pass; this can happen normally.
|
|
116
117
|
}
|
|
117
118
|
else {
|
|
118
|
-
Logger_1.appLogger.error(`Unexpected exception while attempting to
|
|
119
|
+
Logger_1.appLogger.error(`Unexpected exception while attempting to hide control panel`, error);
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
122
|
}
|
|
@@ -143,7 +144,8 @@ class ControlPanel {
|
|
|
143
144
|
await page.evaluate((panelId) => {
|
|
144
145
|
const element = document.querySelector(`#${panelId}`);
|
|
145
146
|
if (element) {
|
|
146
|
-
element.
|
|
147
|
+
element.classList.remove('donobu-hidden');
|
|
148
|
+
element.removeAttribute('aria-hidden');
|
|
147
149
|
}
|
|
148
150
|
}, ControlPanel.DONOBU_CONTROL_PANEL_ELEMENT_ID);
|
|
149
151
|
}
|
|
@@ -259,7 +261,7 @@ class ControlPanel {
|
|
|
259
261
|
}
|
|
260
262
|
catch (error) {
|
|
261
263
|
if (!PlaywrightUtils_1.PlaywrightUtils.isPageClosedError(error)) {
|
|
262
|
-
Logger_1.appLogger.error(`Error when evaluating ControlPanel.INIT_SCRIPT on page: ${page.url()}
|
|
264
|
+
Logger_1.appLogger.error(`Error when evaluating ControlPanel.INIT_SCRIPT on page: ${page.url()}`, error);
|
|
263
265
|
}
|
|
264
266
|
}
|
|
265
267
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ControlPanel.js","sourceRoot":"","sources":["../../src/managers/ControlPanel.ts"],"names":[],"mappings":";;;;;;AAEA,4CAA4C;AAC5C,2EAAwE;AACxE,8DAA2D;AAC3D,kDAA+C;AAC/C,gDAAwB;AAExB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAa,YAAY;IAqBvB,YAAoC,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAElE;;;;;;;;;;;;;;;;;;;;OAoBG;IACI,KAAK,CAAC,mBAAmB,CAAC,IAAU;QACzC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;gBAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC3C,MAAM,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;gBACjC,OAAO,QAAQ,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,IAAI,gBAAgB,EAAE,CAAC;gBACrB,OAAO,gBAAyB,CAAC;YACnC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,iCAAe,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,yCAAmB,EAAE,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,IAAI,CAAC,cAA8B;QAC9C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,EAAE;oBAC9B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"ControlPanel.js","sourceRoot":"","sources":["../../src/managers/ControlPanel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Page } from 'playwright';
|
|
1
|
+
import { BrowserContext, Page } from 'playwright';
|
|
2
2
|
import { GptClient } from '../clients/GptClient';
|
|
3
3
|
import { FlowMetadata } from '../models/FlowMetadata';
|
|
4
4
|
import { ProposedToolCall } from '../models/ProposedToolCall';
|
|
@@ -9,7 +9,6 @@ import { InteractionVisualizer } from './InteractionVisualizer';
|
|
|
9
9
|
import { FlowsPersistence } from '../persistence/flows/FlowsPersistence';
|
|
10
10
|
import { FocusedPage } from '../models/FocusedPage';
|
|
11
11
|
import { DonobuFlowsManager } from './DonobuFlowsManager';
|
|
12
|
-
import { BrowserFramework } from '../models/BrowserFramework';
|
|
13
12
|
import { JSONSchema7 } from 'json-schema';
|
|
14
13
|
import { PageInspector } from './PageInspector';
|
|
15
14
|
import { ControlPanel } from './ControlPanel';
|
|
@@ -25,7 +24,7 @@ export declare function extractFromPage(instruction: string, jsonSchema: JSONSch
|
|
|
25
24
|
export declare class DonobuFlow {
|
|
26
25
|
readonly flowsManager: DonobuFlowsManager;
|
|
27
26
|
readonly envData: Record<string, string>;
|
|
28
|
-
readonly
|
|
27
|
+
readonly browserContext: BrowserContext;
|
|
29
28
|
readonly persistence: FlowsPersistence;
|
|
30
29
|
readonly gptClient: GptClient | null;
|
|
31
30
|
readonly toolManager: ToolManager;
|
|
@@ -39,7 +38,7 @@ export declare class DonobuFlow {
|
|
|
39
38
|
static readonly MAX_IMAGE_BYTES_FOR_LLM: number;
|
|
40
39
|
readonly pageInspector: PageInspector;
|
|
41
40
|
readonly controlPanel: ControlPanel;
|
|
42
|
-
constructor(flowsManager: DonobuFlowsManager, envData: Record<string, string>,
|
|
41
|
+
constructor(flowsManager: DonobuFlowsManager, envData: Record<string, string>, browserContext: BrowserContext, persistence: FlowsPersistence, gptClient: GptClient | null, toolManager: ToolManager, interactionVisualizer: InteractionVisualizer, proposedToolCalls: ProposedToolCall<any>[], invokedToolCalls: ToolCall[], gptMessages: GptMessage[], focusedPage: FocusedPage, metadata: FlowMetadata);
|
|
43
42
|
run(): Promise<void>;
|
|
44
43
|
/**
|
|
45
44
|
* This method re-assigns the currently focused page (presumably due to the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DonobuFlow.d.ts","sourceRoot":"","sources":["../../src/managers/DonobuFlow.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"DonobuFlow.d.ts","sourceRoot":"","sources":["../../src/managers/DonobuFlow.ts"],"names":[],"mappings":"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"}
|