donobu 2.47.1 → 2.48.1
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/assets/generated/version +1 -1
- package/dist/clients/DonobuGptClient.d.ts +25 -0
- package/dist/clients/DonobuGptClient.d.ts.map +1 -0
- package/dist/clients/DonobuGptClient.js +49 -0
- package/dist/clients/DonobuGptClient.js.map +1 -0
- package/dist/clients/GptClientFactory.d.ts.map +1 -1
- package/dist/clients/GptClientFactory.js +4 -0
- package/dist/clients/GptClientFactory.js.map +1 -1
- package/dist/clients/OpenAiGptClient.d.ts +3 -2
- package/dist/clients/OpenAiGptClient.d.ts.map +1 -1
- package/dist/clients/OpenAiGptClient.js +4 -3
- package/dist/clients/OpenAiGptClient.js.map +1 -1
- package/dist/envVars.d.ts +31 -118
- package/dist/envVars.d.ts.map +1 -1
- package/dist/envVars.js +108 -148
- package/dist/envVars.js.map +1 -1
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/clients/DonobuGptClient.d.ts +25 -0
- package/dist/esm/clients/DonobuGptClient.d.ts.map +1 -0
- package/dist/esm/clients/DonobuGptClient.js +49 -0
- package/dist/esm/clients/DonobuGptClient.js.map +1 -0
- package/dist/esm/clients/GptClientFactory.d.ts.map +1 -1
- package/dist/esm/clients/GptClientFactory.js +4 -0
- package/dist/esm/clients/GptClientFactory.js.map +1 -1
- package/dist/esm/clients/OpenAiGptClient.d.ts +3 -2
- package/dist/esm/clients/OpenAiGptClient.d.ts.map +1 -1
- package/dist/esm/clients/OpenAiGptClient.js +4 -3
- package/dist/esm/clients/OpenAiGptClient.js.map +1 -1
- package/dist/esm/envVars.d.ts +31 -118
- package/dist/esm/envVars.d.ts.map +1 -1
- package/dist/esm/envVars.js +108 -148
- package/dist/esm/envVars.js.map +1 -1
- package/dist/esm/lib/fixtures/gptClients.d.ts +36 -0
- package/dist/esm/lib/fixtures/gptClients.d.ts.map +1 -1
- package/dist/esm/lib/fixtures/gptClients.js +25 -3
- package/dist/esm/lib/fixtures/gptClients.js.map +1 -1
- package/dist/esm/lib/testExtension.js +2 -2
- package/dist/esm/lib/testExtension.js.map +1 -1
- package/dist/esm/lib/utils/donobuTestStack.d.ts +19 -0
- package/dist/esm/lib/utils/donobuTestStack.d.ts.map +1 -1
- package/dist/esm/lib/utils/donobuTestStack.js +1 -1
- package/dist/esm/lib/utils/donobuTestStack.js.map +1 -1
- package/dist/esm/managers/AdminApiController.d.ts +1 -1
- package/dist/esm/managers/AdminApiController.d.ts.map +1 -1
- package/dist/esm/managers/AdminApiController.js.map +1 -1
- package/dist/esm/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/esm/managers/CodeGenerator.js +3 -0
- package/dist/esm/managers/CodeGenerator.js.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.d.ts +1 -1
- package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.js +6 -0
- package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/esm/managers/DonobuStack.d.ts +19 -0
- package/dist/esm/managers/DonobuStack.d.ts.map +1 -1
- package/dist/esm/managers/DonobuStack.js +1 -1
- package/dist/esm/managers/DonobuStack.js.map +1 -1
- package/dist/esm/managers/GptConfigsManager.d.ts +1 -1
- package/dist/esm/managers/GptConfigsManager.d.ts.map +1 -1
- package/dist/esm/managers/GptConfigsManager.js +25 -0
- package/dist/esm/managers/GptConfigsManager.js.map +1 -1
- package/dist/esm/models/GptConfig.d.ts +8 -0
- package/dist/esm/models/GptConfig.d.ts.map +1 -1
- package/dist/esm/models/GptConfig.js +6 -1
- package/dist/esm/models/GptConfig.js.map +1 -1
- package/dist/esm/persistence/DonobuSqliteDb.js +18 -19
- package/dist/esm/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.d.ts +0 -5
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js +0 -127
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js +5 -2
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/esm/utils/BrowserUtils.d.ts +5 -0
- package/dist/esm/utils/BrowserUtils.d.ts.map +1 -1
- package/dist/esm/utils/MiscUtils.d.ts +4 -0
- package/dist/esm/utils/MiscUtils.d.ts.map +1 -1
- package/dist/lib/fixtures/gptClients.d.ts +36 -0
- package/dist/lib/fixtures/gptClients.d.ts.map +1 -1
- package/dist/lib/fixtures/gptClients.js +25 -3
- package/dist/lib/fixtures/gptClients.js.map +1 -1
- package/dist/lib/testExtension.js +2 -2
- package/dist/lib/testExtension.js.map +1 -1
- package/dist/lib/utils/donobuTestStack.d.ts +19 -0
- package/dist/lib/utils/donobuTestStack.d.ts.map +1 -1
- package/dist/lib/utils/donobuTestStack.js +1 -1
- package/dist/lib/utils/donobuTestStack.js.map +1 -1
- package/dist/managers/AdminApiController.d.ts +1 -1
- package/dist/managers/AdminApiController.d.ts.map +1 -1
- package/dist/managers/AdminApiController.js.map +1 -1
- package/dist/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/managers/CodeGenerator.js +3 -0
- package/dist/managers/CodeGenerator.js.map +1 -1
- package/dist/managers/DonobuFlowsManager.d.ts +1 -1
- package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/managers/DonobuFlowsManager.js +6 -0
- package/dist/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/managers/DonobuStack.d.ts +19 -0
- package/dist/managers/DonobuStack.d.ts.map +1 -1
- package/dist/managers/DonobuStack.js +1 -1
- package/dist/managers/DonobuStack.js.map +1 -1
- package/dist/managers/GptConfigsManager.d.ts +1 -1
- package/dist/managers/GptConfigsManager.d.ts.map +1 -1
- package/dist/managers/GptConfigsManager.js +25 -0
- package/dist/managers/GptConfigsManager.js.map +1 -1
- package/dist/models/GptConfig.d.ts +8 -0
- package/dist/models/GptConfig.d.ts.map +1 -1
- package/dist/models/GptConfig.js +6 -1
- package/dist/models/GptConfig.js.map +1 -1
- package/dist/persistence/DonobuSqliteDb.js +18 -19
- package/dist/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.d.ts +0 -5
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js +0 -127
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceSqlite.js +5 -2
- package/dist/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/utils/BrowserUtils.d.ts +5 -0
- package/dist/utils/BrowserUtils.d.ts.map +1 -1
- package/dist/utils/MiscUtils.d.ts +4 -0
- package/dist/utils/MiscUtils.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1,20 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.FlowsPersistenceFactoryImpl = void 0;
|
|
7
|
-
const promises_1 = __importDefault(require("fs/promises"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
4
|
const NoApiAccessTokenPresentException_1 = require("../../exceptions/NoApiAccessTokenPresentException");
|
|
10
5
|
const FlowsPersistenceGoogleCloudStorage_1 = require("./FlowsPersistenceGoogleCloudStorage");
|
|
11
|
-
const FlowsPersistenceFilesystem_1 = require("./FlowsPersistenceFilesystem");
|
|
12
6
|
const FlowsPersistenceSupabase_1 = require("./FlowsPersistenceSupabase");
|
|
13
7
|
const SupabaseClient_1 = require("../../clients/SupabaseClient");
|
|
14
8
|
const FlowsPersistenceAwsS3_1 = require("./FlowsPersistenceAwsS3");
|
|
15
9
|
const FlowsPersistenceSqlite_1 = require("./FlowsPersistenceSqlite");
|
|
16
|
-
const Logger_1 = require("../../utils/Logger");
|
|
17
|
-
const MiscUtils_1 = require("../../utils/MiscUtils");
|
|
18
10
|
const DonobuSqliteDb_1 = require("../DonobuSqliteDb");
|
|
19
11
|
/**
|
|
20
12
|
* A factory class for creating new FlowsPersistence instances. The type of persistence
|
|
@@ -57,9 +49,6 @@ class FlowsPersistenceFactoryImpl {
|
|
|
57
49
|
* supabaseJwtSecretKey from the environment variables.
|
|
58
50
|
*/
|
|
59
51
|
static async fromEnvironment(deploymentEnvironment, requestContextHolder, environ) {
|
|
60
|
-
if (deploymentEnvironment === 'LOCAL') {
|
|
61
|
-
await FlowsPersistenceFactoryImpl.migrateToSqlite();
|
|
62
|
-
}
|
|
63
52
|
const awsS3Bucket = environ.data.AWS_S3_BUCKET;
|
|
64
53
|
const awsS3Region = environ.data.AWS_S3_REGION || environ.data.AWS_REGION;
|
|
65
54
|
const googleCloudStorageBucket = environ.data.GOOGLE_CLOUD_STORAGE_BUCKET;
|
|
@@ -112,122 +101,6 @@ class FlowsPersistenceFactoryImpl {
|
|
|
112
101
|
}
|
|
113
102
|
return layers;
|
|
114
103
|
}
|
|
115
|
-
static async migrateToSqlite() {
|
|
116
|
-
const legacyFlowsDir = path_1.default.join(MiscUtils_1.MiscUtils.baseWorkingDirectory(), 'flows');
|
|
117
|
-
// Check if the `flows` directory exists.
|
|
118
|
-
try {
|
|
119
|
-
await promises_1.default.access(legacyFlowsDir);
|
|
120
|
-
}
|
|
121
|
-
catch (_error) {
|
|
122
|
-
// No legacy flows to migrate.
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
const legacyPersistence = await FlowsPersistenceFilesystem_1.FlowsPersistenceFilesystem.create(MiscUtils_1.MiscUtils.baseWorkingDirectory());
|
|
126
|
-
const sqlitePersistence = await FlowsPersistenceSqlite_1.FlowsPersistenceSqlite.create((0, DonobuSqliteDb_1.getDonobuSqliteDatabase)());
|
|
127
|
-
try {
|
|
128
|
-
// Use pagination to fetch all flows.
|
|
129
|
-
let allFlows = [];
|
|
130
|
-
let nextPageToken;
|
|
131
|
-
// Collect all flows using pagination.
|
|
132
|
-
do {
|
|
133
|
-
const result = await legacyPersistence.getFlowsMetadata({
|
|
134
|
-
limit: 100, // Use large batch size for migration
|
|
135
|
-
pageToken: nextPageToken,
|
|
136
|
-
});
|
|
137
|
-
allFlows.push(...result.items);
|
|
138
|
-
nextPageToken = result.nextPageToken;
|
|
139
|
-
} while (nextPageToken);
|
|
140
|
-
Logger_1.appLogger.info(`Migrating ${allFlows.length} flows to SQLite...`);
|
|
141
|
-
for (const metadata of allFlows) {
|
|
142
|
-
try {
|
|
143
|
-
await sqlitePersistence.setFlowMetadata(metadata);
|
|
144
|
-
// Migrate tool calls for each flow...
|
|
145
|
-
const toolCalls = (await legacyPersistence.getToolCalls(metadata.id)).map((t) => FlowsPersistenceFactoryImpl.revampToolCall(t));
|
|
146
|
-
for (const toolCall of toolCalls) {
|
|
147
|
-
await sqlitePersistence.saveToolCall(metadata.id, toolCall);
|
|
148
|
-
// Migrate the images of each tool call...
|
|
149
|
-
if (toolCall.postCallImageId) {
|
|
150
|
-
const image = await legacyPersistence.getFlowFile(metadata.id, toolCall.postCallImageId);
|
|
151
|
-
if (image) {
|
|
152
|
-
await sqlitePersistence.setFlowFile(metadata.id, toolCall.postCallImageId, image);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
// Migrate browser state for each flow...
|
|
157
|
-
const browserState = await legacyPersistence.getBrowserState(metadata.id);
|
|
158
|
-
if (browserState) {
|
|
159
|
-
await sqlitePersistence.setBrowserState(metadata.id, browserState);
|
|
160
|
-
}
|
|
161
|
-
// Migrate the video of each flow...
|
|
162
|
-
const flowVideo = await legacyPersistence.getVideoSegment(metadata.id, 0, Number.MAX_SAFE_INTEGER);
|
|
163
|
-
if (flowVideo) {
|
|
164
|
-
await sqlitePersistence.setVideo(metadata.id, flowVideo.bytes);
|
|
165
|
-
}
|
|
166
|
-
Logger_1.appLogger.info(`Successfully migrated flow ${metadata.id}`);
|
|
167
|
-
}
|
|
168
|
-
catch (error) {
|
|
169
|
-
Logger_1.appLogger.error(`Failed to migrate flow ${metadata.id} to SQLite`, error);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
// Only remove the directory if migration was successful
|
|
173
|
-
if (allFlows.length > 0) {
|
|
174
|
-
Logger_1.appLogger.info('Migration complete. Removing legacy flows directory...');
|
|
175
|
-
await promises_1.default.rm(legacyPersistence.flowsDirectory, {
|
|
176
|
-
recursive: true,
|
|
177
|
-
force: true,
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
catch (error) {
|
|
182
|
-
Logger_1.appLogger.error('Failed to migrate flows to SQLite', error);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Update a given tool call to conform with the latest expected schema.
|
|
187
|
-
*/
|
|
188
|
-
static revampToolCall(toolCall) {
|
|
189
|
-
const outcomeMetadata = toolCall.outcome.metadata;
|
|
190
|
-
const isLegacyMetadata = (outcomeMetadata?.elementSelectorCandidatesForReplay ?? false)
|
|
191
|
-
? true
|
|
192
|
-
: false;
|
|
193
|
-
if (isLegacyMetadata) {
|
|
194
|
-
// Remap the legacy selector metadata to the new format.
|
|
195
|
-
outcomeMetadata.element =
|
|
196
|
-
outcomeMetadata.elementSelectorCandidatesForReplay;
|
|
197
|
-
outcomeMetadata.frame = outcomeMetadata.frameSelectorForReplay;
|
|
198
|
-
delete outcomeMetadata.elementSelectorCandidatesForReplay;
|
|
199
|
-
delete outcomeMetadata.frameSelectorForReplay;
|
|
200
|
-
}
|
|
201
|
-
const isLegacyRerun = (toolCall.parameters.selectorForReplay ?? false) ? true : false;
|
|
202
|
-
if (isLegacyRerun) {
|
|
203
|
-
// Remap the legacy rerun params to the new format.
|
|
204
|
-
toolCall.parameters.selector = {
|
|
205
|
-
element: toolCall.parameters.selectorForReplay
|
|
206
|
-
.elementSelectorCandidatesForReplay,
|
|
207
|
-
frame: toolCall.parameters.selectorForReplay.frameSelectorForReplay,
|
|
208
|
-
};
|
|
209
|
-
delete toolCall.parameters.selectorForReplay;
|
|
210
|
-
}
|
|
211
|
-
else if (toolCall.parameters.selectorForReplay === null) {
|
|
212
|
-
delete toolCall.parameters.selectorForReplay;
|
|
213
|
-
}
|
|
214
|
-
// Remap legacy tool names.
|
|
215
|
-
if (toolCall.toolName === 'clickButton') {
|
|
216
|
-
return {
|
|
217
|
-
...toolCall,
|
|
218
|
-
toolName: 'click',
|
|
219
|
-
};
|
|
220
|
-
}
|
|
221
|
-
else if (toolCall.toolName === 'navigateToWebpage') {
|
|
222
|
-
return {
|
|
223
|
-
...toolCall,
|
|
224
|
-
toolName: 'goToWebpage',
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
|
-
else {
|
|
228
|
-
return toolCall;
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
104
|
}
|
|
232
105
|
exports.FlowsPersistenceFactoryImpl = FlowsPersistenceFactoryImpl;
|
|
233
106
|
//# sourceMappingURL=FlowsPersistenceFactoryImpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowsPersistenceFactoryImpl.js","sourceRoot":"","sources":["../../../src/persistence/flows/FlowsPersistenceFactoryImpl.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FlowsPersistenceFactoryImpl.js","sourceRoot":"","sources":["../../../src/persistence/flows/FlowsPersistenceFactoryImpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowsPersistenceSqlite.d.ts","sourceRoot":"","sources":["../../../src/persistence/flows/FlowsPersistenceSqlite.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FlowsPersistenceSqlite.d.ts","sourceRoot":"","sources":["../../../src/persistence/flows/FlowsPersistenceSqlite.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAGvE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D;;GAEG;AACH,qBAAa,sBAAuB,YAAW,gBAAgB;IAKzC,OAAO,CAAC,QAAQ,CAAC,EAAE;IAJvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAgB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAuB;IACpE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAErD,OAAO;WAEa,MAAM,CACxB,EAAE,EAAE,QAAQ,CAAC,QAAQ,GACpB,OAAO,CAAC,sBAAsB,CAAC;IAIrB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9D,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASlD,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAa1E;;OAEG;IACU,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAarD,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA4C1D,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAiB1D,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAiB9D,gBAAgB,CAC3B,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAmE5B,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqB9D,aAAa,CACxB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgBZ,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/D,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAajD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBtD,eAAe,CAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAsClB,WAAW,CACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAUZ,WAAW,CACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAcH,eAAe,CAC1B,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,mBAAmB,GAChC,OAAO,CAAC,IAAI,CAAC;IAaH,eAAe,CAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAuBzB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/C,KAAK,IAAI,IAAI;IAKpB,OAAO,CAAC,qBAAqB;CAS9B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FlowsPersistenceSqlite = void 0;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
4
5
|
const FlowNotFoundException_1 = require("../../exceptions/FlowNotFoundException");
|
|
5
6
|
const JsonUtils_1 = require("../../utils/JsonUtils");
|
|
6
7
|
const MiscUtils_1 = require("../../utils/MiscUtils");
|
|
@@ -51,9 +52,9 @@ class FlowsPersistenceSqlite {
|
|
|
51
52
|
async setFlowMetadata(flowMetadata) {
|
|
52
53
|
// Check if the flow already exists.
|
|
53
54
|
const existingFlowStmt = this.db.prepare('SELECT id FROM flow_metadata WHERE id = ?');
|
|
54
|
-
const existingFlow = existingFlowStmt.get(flowMetadata.id);
|
|
55
55
|
// Start a transaction for data consistency.
|
|
56
56
|
const transaction = this.db.transaction(() => {
|
|
57
|
+
const existingFlow = existingFlowStmt.get(flowMetadata.id);
|
|
57
58
|
if (existingFlow) {
|
|
58
59
|
// If flow exists, use UPDATE instead of REPLACE to avoid triggering ON DELETE CASCADE.
|
|
59
60
|
const updateStmt = this.db.prepare('UPDATE flow_metadata SET name = ?, metadata = ?, created_at = ?, run_mode = ?, state = ? WHERE id = ?');
|
|
@@ -140,8 +141,10 @@ class FlowsPersistenceSqlite {
|
|
|
140
141
|
await this.getFlowMetadataById(flowId);
|
|
141
142
|
const imageType = MiscUtils_1.MiscUtils.detectImageType(bytes);
|
|
142
143
|
const mimeType = `image/${imageType}`;
|
|
144
|
+
const hash = (0, crypto_1.createHash)('sha256').update(bytes).digest('hex').slice(0, 12);
|
|
145
|
+
const epochMillis = Date.now();
|
|
143
146
|
// Generate a unique filename.
|
|
144
|
-
const fileId = `${
|
|
147
|
+
const fileId = `${epochMillis}.${hash}.${imageType}`;
|
|
145
148
|
const binaryId = `${flowId}-${fileId}`;
|
|
146
149
|
const stmt = this.db.prepare('INSERT INTO binary_files (id, flow_id, file_id, mime_type, content) VALUES (?, ?, ?, ?, ?)');
|
|
147
150
|
stmt.run(binaryId, flowId, fileId, mimeType, bytes);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowsPersistenceSqlite.js","sourceRoot":"","sources":["../../../src/persistence/flows/FlowsPersistenceSqlite.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"FlowsPersistenceSqlite.js","sourceRoot":"","sources":["../../../src/persistence/flows/FlowsPersistenceSqlite.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,6 +74,11 @@ export declare class BrowserUtils {
|
|
|
74
74
|
PROXY_SERVER: import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
75
75
|
PROXY_USERNAME: import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
76
76
|
PROXY_PASSWORD: import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
77
|
+
}, {
|
|
78
|
+
BROWSERBASE_API_KEY?: string | undefined;
|
|
79
|
+
PROXY_SERVER?: string | undefined;
|
|
80
|
+
PROXY_USERNAME?: string | undefined;
|
|
81
|
+
PROXY_PASSWORD?: string | undefined;
|
|
77
82
|
}>): Promise<BrowserContext>;
|
|
78
83
|
/**
|
|
79
84
|
* Gets the browser storage state including cookies, localStorage, and sessionStorage.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserUtils.d.ts","sourceRoot":"","sources":["../../src/utils/BrowserUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAGf,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAA0B,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAWhF,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,KAAK,CAAC;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAoB;IAEtE;;;;;;;;;;OAUG;WACW,mBAAmB,IAAI,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC;IAY/D;;;;;;;;;;;;OAYG;WACiB,MAAM,CACxB,aAAa,EAAE,aAAa,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,mBAAmB,EAClC,OAAO
|
|
1
|
+
{"version":3,"file":"BrowserUtils.d.ts","sourceRoot":"","sources":["../../src/utils/BrowserUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAGf,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAA0B,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAWhF,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,KAAK,CAAC;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAoB;IAEtE;;;;;;;;;;OAUG;WACW,mBAAmB,IAAI,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC;IAY/D;;;;;;;;;;;;OAYG;WACiB,MAAM,CACxB,aAAa,EAAE,aAAa,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,mBAAmB,EAClC,OAAO;;;;;;;;;;MAKN,GACA,OAAO,CAAC,cAAc,CAAC;IAuG1B;;;;;OAKG;WACiB,sBAAsB,CACxC,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,mBAAmB,CAAC;IAkF/B;;;;;;;;;OASG;mBACkB,eAAe;IAyKpC;;;;;;;OAOG;mBACkB,kBAAkB;IAyDvC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAiC7B;;;;;;;;OAQG;mBACkB,gBAAgB;IAiCrC;;;;;;;;;;;;OAYG;mBACkB,SAAS;IAkC9B;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,8BAA8B;IAgD7C;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,wBAAwB;IA6BvC;;;;;;;;;OASG;mBACkB,UAAU;IAqC/B;;;;;;;;;;;;;OAaG;mBACkB,cAAc;IA8BnC;;;;;;;;OAQG;mBACkB,2BAA2B;IAmChD;;;;;;OAMG;WACiB,oCAAoC,CACtD,cAAc,EAAE,cAAc,EAC9B,YAAY,CAAC,EAAE,mBAAmB,GACjC,OAAO,CAAC,IAAI,CAAC;IAwChB;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;CAgB1B"}
|
|
@@ -18,6 +18,10 @@ export declare class MiscUtils {
|
|
|
18
18
|
APPDATA: import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
19
19
|
BASE_WORKING_DIR: import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
20
20
|
XDG_CONFIG_HOME: import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
21
|
+
}, {
|
|
22
|
+
APPDATA?: string | undefined;
|
|
23
|
+
BASE_WORKING_DIR?: string | undefined;
|
|
24
|
+
XDG_CONFIG_HOME?: string | undefined;
|
|
21
25
|
}>): string;
|
|
22
26
|
static detectImageType(buffer: Uint8Array): 'png' | 'jpeg';
|
|
23
27
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MiscUtils.d.ts","sourceRoot":"","sources":["../../src/utils/MiscUtils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAe,MAAM,sBAAsB,CAAC;AAE/D,qBAAa,SAAS;IACpB,OAAO;IAEP,gBAAuB,cAAc,SAEnC;IAEF;;;;;;;;;;;OAWG;WACW,oBAAoB,CAChC,OAAO
|
|
1
|
+
{"version":3,"file":"MiscUtils.d.ts","sourceRoot":"","sources":["../../src/utils/MiscUtils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAe,MAAM,sBAAsB,CAAC;AAE/D,qBAAa,SAAS;IACpB,OAAO;IAEP,gBAAuB,cAAc,SAEnC;IAEF;;;;;;;;;;;OAWG;WACW,oBAAoB,CAChC,OAAO;;;;;;;;MAA6D,GACnE,MAAM;WAkCK,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,GAAG,MAAM;IA8BjE;;OAEG;WACW,iBAAiB,CAC7B,WAAW,EAAE;QACX,gBAAgB,EAAE,MAAM,CAAC;QACzB,oBAAoB,EAAE,MAAM,CAAC;KAC9B,EACD,YAAY,EAAE;QACZ,eAAe,EAAE,MAAM,CAAC;QACxB,oBAAoB,EAAE,MAAM,CAAC;KAC9B,GACA,IAAI;IAKP;;OAEG;WACW,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAK/D;;OAEG;WACW,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAS9D;;;;;;;OAOG;WACiB,wBAAwB,CAC1C,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC;IAyDlB;;;OAGG;WACW,kCAAkC,IAAI,MAAM;IAkB1D;;;OAGG;WACW,qCAAqC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAoDxE;;;;;;;OAOG;WACW,qBAAqB,IAAI,MAAM;IAI7C;;OAEG;WACW,yBAAyB,CACrC,QAAQ,EAAE,UAAU,EAAE,GACrB,UAAU,EAAE;CA2BhB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "donobu",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.48.1",
|
|
4
4
|
"description": "Create browser automations with an LLM agent and replay them as Playwright scripts.",
|
|
5
5
|
"main": "dist/main.js",
|
|
6
6
|
"module": "dist/esm/main.js",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"ai": "^5.0.10",
|
|
81
81
|
"better-sqlite3": "^12.2.0",
|
|
82
82
|
"commander": "^13.0.0",
|
|
83
|
-
"env-struct": "1.
|
|
83
|
+
"env-struct": "^1.3.1",
|
|
84
84
|
"express": "^4.21.2",
|
|
85
85
|
"googleapis": "^155.0.1",
|
|
86
86
|
"jimp": "^1.6.0",
|