donobu 2.41.0 → 2.43.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/AskAiApi.js.map +1 -1
- package/dist/apis/ToolsApi.d.ts +2 -1
- package/dist/apis/ToolsApi.d.ts.map +1 -1
- package/dist/apis/ToolsApi.js.map +1 -1
- package/dist/assets/generated/version +1 -1
- package/dist/assets/interactive-elements-tracker.js +100 -5
- package/dist/bindings/NamedBindingCallback.d.ts +1 -1
- package/dist/bindings/NamedBindingCallback.d.ts.map +1 -1
- package/dist/bindings/PageInteractionTracker.d.ts +1 -1
- package/dist/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/bindings/ProposeToolCall.d.ts +1 -1
- package/dist/bindings/ProposeToolCall.d.ts.map +1 -1
- package/dist/bindings/ProposeToolCall.js.map +1 -1
- package/dist/bindings/SetDonobuAnnotations.d.ts +1 -1
- package/dist/bindings/SetDonobuAnnotations.d.ts.map +1 -1
- package/dist/bindings/SetDonobuAnnotations.js.map +1 -1
- package/dist/clients/GptClient.d.ts +1 -1
- package/dist/clients/GptClient.d.ts.map +1 -1
- package/dist/envVars.d.ts +57 -148
- package/dist/envVars.d.ts.map +1 -1
- package/dist/envVars.js +53 -99
- package/dist/envVars.js.map +1 -1
- package/dist/esm/apis/AskAiApi.js.map +1 -1
- package/dist/esm/apis/ToolsApi.d.ts +2 -1
- package/dist/esm/apis/ToolsApi.d.ts.map +1 -1
- package/dist/esm/apis/ToolsApi.js.map +1 -1
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/assets/interactive-elements-tracker.js +100 -5
- package/dist/esm/bindings/NamedBindingCallback.d.ts +1 -1
- package/dist/esm/bindings/NamedBindingCallback.d.ts.map +1 -1
- package/dist/esm/bindings/PageInteractionTracker.d.ts +1 -1
- package/dist/esm/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/esm/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/esm/bindings/ProposeToolCall.d.ts +1 -1
- package/dist/esm/bindings/ProposeToolCall.d.ts.map +1 -1
- package/dist/esm/bindings/ProposeToolCall.js.map +1 -1
- package/dist/esm/bindings/SetDonobuAnnotations.d.ts +1 -1
- package/dist/esm/bindings/SetDonobuAnnotations.d.ts.map +1 -1
- package/dist/esm/bindings/SetDonobuAnnotations.js.map +1 -1
- package/dist/esm/clients/GptClient.d.ts +1 -1
- package/dist/esm/clients/GptClient.d.ts.map +1 -1
- package/dist/esm/envVars.d.ts +57 -148
- package/dist/esm/envVars.d.ts.map +1 -1
- package/dist/esm/envVars.js +53 -99
- package/dist/esm/envVars.js.map +1 -1
- package/dist/esm/exceptions/PageAiException.d.ts +10 -0
- package/dist/esm/exceptions/PageAiException.d.ts.map +1 -0
- package/dist/esm/exceptions/PageAiException.js +15 -0
- package/dist/esm/exceptions/PageAiException.js.map +1 -0
- package/dist/esm/lib/DonobuExtendedPage.d.ts +16 -12
- package/dist/esm/lib/DonobuExtendedPage.d.ts.map +1 -1
- package/dist/esm/lib/PageAi.d.ts +110 -0
- package/dist/esm/lib/PageAi.d.ts.map +1 -0
- package/dist/esm/lib/PageAi.js +291 -0
- package/dist/esm/lib/PageAi.js.map +1 -0
- package/dist/esm/lib/testExtension.d.ts.map +1 -1
- package/dist/esm/lib/testExtension.js +19 -51
- package/dist/esm/lib/testExtension.js.map +1 -1
- package/dist/esm/main.d.ts +1 -1
- package/dist/esm/main.d.ts.map +1 -1
- package/dist/esm/main.js +1 -1
- package/dist/esm/main.js.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 +1 -1
- package/dist/esm/managers/CodeGenerator.js.map +1 -1
- package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlow.js +4 -42
- package/dist/esm/managers/DonobuFlow.js.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.js +3 -3
- package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/esm/managers/PageInspector.d.ts.map +1 -1
- package/dist/esm/managers/PageInspector.js +20 -8
- package/dist/esm/managers/PageInspector.js.map +1 -1
- package/dist/esm/managers/PluginLoader.d.ts +1 -1
- package/dist/esm/managers/PluginLoader.d.ts.map +1 -1
- package/dist/esm/managers/PluginLoader.js.map +1 -1
- package/dist/esm/managers/ToolManager.d.ts +6 -6
- package/dist/esm/managers/ToolManager.d.ts.map +1 -1
- package/dist/esm/managers/ToolManager.js.map +1 -1
- package/dist/esm/tools/CustomToolRunnerTool.d.ts +4 -4
- package/dist/esm/tools/CustomToolRunnerTool.d.ts.map +1 -1
- package/dist/esm/tools/CustomToolRunnerTool.js.map +1 -1
- package/dist/esm/tools/ReplayableInteraction.d.ts +1 -1
- package/dist/esm/tools/ReplayableInteraction.d.ts.map +1 -1
- package/dist/esm/tools/ReplayableInteraction.js +13 -4
- package/dist/esm/tools/ReplayableInteraction.js.map +1 -1
- package/dist/esm/tools/ScrollPageTool.d.ts.map +1 -1
- package/dist/esm/tools/ScrollPageTool.js +3 -1
- package/dist/esm/tools/ScrollPageTool.js.map +1 -1
- package/dist/esm/tools/Tool.d.ts +1 -1
- package/dist/esm/tools/Tool.d.ts.map +1 -1
- package/dist/esm/utils/BrowserUtils.d.ts +0 -16
- package/dist/esm/utils/BrowserUtils.d.ts.map +1 -1
- package/dist/esm/utils/BrowserUtils.js +4 -75
- package/dist/esm/utils/BrowserUtils.js.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.d.ts +6 -16
- package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.js +4 -138
- package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
- package/dist/exceptions/PageAiException.d.ts +10 -0
- package/dist/exceptions/PageAiException.d.ts.map +1 -0
- package/dist/exceptions/PageAiException.js +15 -0
- package/dist/exceptions/PageAiException.js.map +1 -0
- package/dist/lib/DonobuExtendedPage.d.ts +16 -12
- package/dist/lib/DonobuExtendedPage.d.ts.map +1 -1
- package/dist/lib/PageAi.d.ts +110 -0
- package/dist/lib/PageAi.d.ts.map +1 -0
- package/dist/lib/PageAi.js +291 -0
- package/dist/lib/PageAi.js.map +1 -0
- package/dist/lib/testExtension.d.ts.map +1 -1
- package/dist/lib/testExtension.js +19 -51
- package/dist/lib/testExtension.js.map +1 -1
- package/dist/main.d.ts +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.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 +1 -1
- package/dist/managers/CodeGenerator.js.map +1 -1
- package/dist/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/managers/DonobuFlow.js +4 -42
- package/dist/managers/DonobuFlow.js.map +1 -1
- package/dist/managers/DonobuFlowsManager.js +3 -3
- package/dist/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/managers/PageInspector.d.ts.map +1 -1
- package/dist/managers/PageInspector.js +20 -8
- package/dist/managers/PageInspector.js.map +1 -1
- package/dist/managers/PluginLoader.d.ts +1 -1
- package/dist/managers/PluginLoader.d.ts.map +1 -1
- package/dist/managers/PluginLoader.js.map +1 -1
- package/dist/managers/ToolManager.d.ts +6 -6
- package/dist/managers/ToolManager.d.ts.map +1 -1
- package/dist/managers/ToolManager.js.map +1 -1
- package/dist/tools/CustomToolRunnerTool.d.ts +4 -4
- package/dist/tools/CustomToolRunnerTool.d.ts.map +1 -1
- package/dist/tools/CustomToolRunnerTool.js.map +1 -1
- package/dist/tools/ReplayableInteraction.d.ts +1 -1
- package/dist/tools/ReplayableInteraction.d.ts.map +1 -1
- package/dist/tools/ReplayableInteraction.js +13 -4
- package/dist/tools/ReplayableInteraction.js.map +1 -1
- package/dist/tools/ScrollPageTool.d.ts.map +1 -1
- package/dist/tools/ScrollPageTool.js +3 -1
- package/dist/tools/ScrollPageTool.js.map +1 -1
- package/dist/tools/Tool.d.ts +1 -1
- package/dist/tools/Tool.d.ts.map +1 -1
- package/dist/utils/BrowserUtils.d.ts +0 -16
- package/dist/utils/BrowserUtils.d.ts.map +1 -1
- package/dist/utils/BrowserUtils.js +4 -75
- package/dist/utils/BrowserUtils.js.map +1 -1
- package/dist/utils/PlaywrightUtils.d.ts +6 -16
- package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/utils/PlaywrightUtils.js +4 -138
- package/dist/utils/PlaywrightUtils.js.map +1 -1
- package/package.json +6 -4
- package/dist/esm/models/DonobuToolPlugin.d.ts +0 -5
- package/dist/esm/models/DonobuToolPlugin.d.ts.map +0 -1
- package/dist/esm/models/DonobuToolPlugin.js +0 -3
- package/dist/esm/models/DonobuToolPlugin.js.map +0 -1
- package/dist/models/DonobuToolPlugin.d.ts +0 -5
- package/dist/models/DonobuToolPlugin.d.ts.map +0 -1
- package/dist/models/DonobuToolPlugin.js +0 -3
- package/dist/models/DonobuToolPlugin.js.map +0 -1
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { z } from 'zod/v4';
|
|
2
|
+
import { DonobuStack } from '../managers/DonobuStack';
|
|
3
|
+
import { DonobuExtendedPage } from './DonobuExtendedPage';
|
|
4
|
+
import { GptClient } from '../clients/GptClient';
|
|
5
|
+
import { FlowsPersistence } from '../persistence/flows/FlowsPersistence';
|
|
6
|
+
import { ProposedToolCall } from '../models/ProposedToolCall';
|
|
7
|
+
type PageAiBaseOptions = {
|
|
8
|
+
cache?: boolean;
|
|
9
|
+
allowedTools?: string[];
|
|
10
|
+
maxToolCalls?: number;
|
|
11
|
+
};
|
|
12
|
+
type PageAiSchemaOptions<Schema extends z.ZodObject> = PageAiBaseOptions & {
|
|
13
|
+
schema: Schema;
|
|
14
|
+
};
|
|
15
|
+
type PageAiNoSchemaOptions = PageAiBaseOptions & {
|
|
16
|
+
schema?: undefined;
|
|
17
|
+
};
|
|
18
|
+
export type PageAiOptions<Schema extends z.ZodObject | undefined = undefined> = Schema extends z.ZodObject ? PageAiSchemaOptions<Schema> : PageAiNoSchemaOptions;
|
|
19
|
+
type AiResult<Schema extends z.ZodObject | undefined> = Schema extends z.ZodObject ? z.infer<Schema> : void;
|
|
20
|
+
export type CacheKey = {
|
|
21
|
+
pageUrl: string;
|
|
22
|
+
instruction: string | null;
|
|
23
|
+
schema: Record<string, unknown> | null;
|
|
24
|
+
allowedTools: string[];
|
|
25
|
+
maxToolCalls: number | null;
|
|
26
|
+
};
|
|
27
|
+
export type CacheEntry = CacheKey & {
|
|
28
|
+
toolCallCache: ProposedToolCall[];
|
|
29
|
+
};
|
|
30
|
+
export declare class PageAi {
|
|
31
|
+
private readonly donobu;
|
|
32
|
+
private readonly persistence;
|
|
33
|
+
private readonly gptClient;
|
|
34
|
+
private readonly cacheFilepath;
|
|
35
|
+
constructor(donobu: DonobuStack, persistence: FlowsPersistence, gptClient: GptClient, cacheFilepath: string);
|
|
36
|
+
/**
|
|
37
|
+
* Executes an AI-driven autonomous flow to accomplish a natural language instruction
|
|
38
|
+
* on a web page. The AI agent can interact with the page using Donobu tools and will
|
|
39
|
+
* attempt to satisfy the given objective.
|
|
40
|
+
*
|
|
41
|
+
* This method supports intelligent caching: successful flows are cached and can be
|
|
42
|
+
* replayed deterministically on subsequent runs with identical parameters, significantly
|
|
43
|
+
* reducing AI token usage and execution time. When a cache hit occurs, the flow runs
|
|
44
|
+
* in INSTRUCT mode using the cached tool calls; otherwise, it runs in AUTONOMOUS mode
|
|
45
|
+
* where the AI determines the necessary actions.
|
|
46
|
+
*
|
|
47
|
+
* @template T The Zod object schema describing the expected shape of the AI result.
|
|
48
|
+
* @param page The Donobu page instance to use as the starting point of the flow.
|
|
49
|
+
* @param instruction A high-level, natural language description of what the flow should
|
|
50
|
+
* accomplish (e.g., "Fill out the login form and submit it").
|
|
51
|
+
* @param options Optional configuration for the flow execution:
|
|
52
|
+
* - `cache`: Set to false to bypass cache lookup and population (default: true)
|
|
53
|
+
* - `allowedTools`: Restrict the AI to only use specified tools by name
|
|
54
|
+
* - `maxToolCalls`: Maximum number of tool invocations allowed (default: 25)
|
|
55
|
+
* @returns A promise that resolves to the parsed result payload if a schema is provided,
|
|
56
|
+
* or void if no schema is specified.
|
|
57
|
+
* @throws {PageAiException} If the autonomous flow fails, reaches a terminal non-success
|
|
58
|
+
* state, or the result fails schema validation.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* // Simple flow without structured output
|
|
62
|
+
* await pageAi.ai(page, "Click the 'Get Started' button");
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* // Flow with structured output and schema validation
|
|
66
|
+
* const userSchema = z.object({
|
|
67
|
+
* name: z.string(),
|
|
68
|
+
* email: z.string().email(),
|
|
69
|
+
* isPremium: z.boolean(),
|
|
70
|
+
* });
|
|
71
|
+
* const user = await pageAi.ai(
|
|
72
|
+
* page,
|
|
73
|
+
* "Extract the user profile information from the page",
|
|
74
|
+
* { schema: userSchema }
|
|
75
|
+
* );
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* // Flow with custom options
|
|
79
|
+
* await pageAi.ai(
|
|
80
|
+
* page,
|
|
81
|
+
* "Navigate to the settings page",
|
|
82
|
+
* {
|
|
83
|
+
* cache: false,
|
|
84
|
+
* allowedTools: ['goto', 'click'],
|
|
85
|
+
* maxToolCalls: 10,
|
|
86
|
+
* }
|
|
87
|
+
* );
|
|
88
|
+
*/
|
|
89
|
+
ai<Schema extends z.ZodObject | undefined = undefined>(page: DonobuExtendedPage, instruction: string, options?: PageAiOptions<Schema>): Promise<AiResult<Schema>>;
|
|
90
|
+
private ensureCacheFileExists;
|
|
91
|
+
/**
|
|
92
|
+
* Executes a cache operation within an exclusive file lock to prevent race conditions
|
|
93
|
+
* across multiple processes. This method handles cache file initialization, locking,
|
|
94
|
+
* reading, executing the provided operation, and conditionally writing back changes.
|
|
95
|
+
*
|
|
96
|
+
* @template T The type of result returned by the cache operation.
|
|
97
|
+
* @param operation A function that receives the current cache and returns both the
|
|
98
|
+
* modified cache (or the same cache if no modifications) and a result
|
|
99
|
+
* value. If the returned cache reference is different from the input,
|
|
100
|
+
* the cache file will be updated.
|
|
101
|
+
* @returns A promise that resolves to the result value from the operation.
|
|
102
|
+
* @throws Any error from the operation or file system operations (except expected ENOENT
|
|
103
|
+
* and EEXIST errors which are handled internally).
|
|
104
|
+
*/
|
|
105
|
+
private withCacheLock;
|
|
106
|
+
private getCachedFlow;
|
|
107
|
+
private cacheFlow;
|
|
108
|
+
}
|
|
109
|
+
export {};
|
|
110
|
+
//# sourceMappingURL=PageAi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PageAi.d.ts","sourceRoot":"","sources":["../../src/lib/PageAi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAS1D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAIzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,KAAK,iBAAiB,GAAG;IAEvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,KAAK,mBAAmB,CAAC,MAAM,SAAS,CAAC,CAAC,SAAS,IAAI,iBAAiB,GAAG;IAGzE,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,qBAAqB,GAAG,iBAAiB,GAAG;IAC/C,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,CAAC,CAAC,SAAS,GAAG,SAAS,GAAG,SAAS,IAC1E,MAAM,SAAS,CAAC,CAAC,SAAS,GACtB,mBAAmB,CAAC,MAAM,CAAC,GAC3B,qBAAqB,CAAC;AAE5B,KAAK,QAAQ,CAAC,MAAM,SAAS,CAAC,CAAC,SAAS,GAAG,SAAS,IAClD,MAAM,SAAS,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;AAEtD,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACvC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG;IAClC,aAAa,EAAE,gBAAgB,EAAE,CAAC;CACnC,CAAC;AAEF,qBAAa,MAAM;IAEf,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAHb,MAAM,EAAE,WAAW,EACnB,WAAW,EAAE,gBAAgB,EAC7B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,MAAM;IAGxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoDG;IACU,EAAE,CAAC,MAAM,SAAS,CAAC,CAAC,SAAS,GAAG,SAAS,GAAG,SAAS,EAChE,IAAI,EAAE,kBAAkB,EACxB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAoGd,qBAAqB;IAanC;;;;;;;;;;;;;OAaG;YACW,aAAa;YA8Cb,aAAa;YAqBb,SAAS;CA0CxB"}
|
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.PageAi = void 0;
|
|
40
|
+
const v4_1 = require("zod/v4");
|
|
41
|
+
const ToolManager_1 = require("../managers/ToolManager");
|
|
42
|
+
const MarkObjectiveCompleteTool_1 = require("../tools/MarkObjectiveCompleteTool");
|
|
43
|
+
const MarkObjectiveNotCompletableTool_1 = require("../tools/MarkObjectiveNotCompletableTool");
|
|
44
|
+
const DonobuFlow_1 = require("../managers/DonobuFlow");
|
|
45
|
+
const PageAiException_1 = require("../exceptions/PageAiException");
|
|
46
|
+
const ControlPanel_1 = require("../models/ControlPanel");
|
|
47
|
+
const InteractionVisualizer_1 = require("../managers/InteractionVisualizer");
|
|
48
|
+
const CodeGenerator_1 = require("../managers/CodeGenerator");
|
|
49
|
+
const promises_1 = __importDefault(require("fs/promises"));
|
|
50
|
+
const LockFile = __importStar(require("proper-lockfile"));
|
|
51
|
+
const Logger_1 = require("../utils/Logger");
|
|
52
|
+
class PageAi {
|
|
53
|
+
constructor(donobu, persistence, gptClient, cacheFilepath) {
|
|
54
|
+
this.donobu = donobu;
|
|
55
|
+
this.persistence = persistence;
|
|
56
|
+
this.gptClient = gptClient;
|
|
57
|
+
this.cacheFilepath = cacheFilepath;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Executes an AI-driven autonomous flow to accomplish a natural language instruction
|
|
61
|
+
* on a web page. The AI agent can interact with the page using Donobu tools and will
|
|
62
|
+
* attempt to satisfy the given objective.
|
|
63
|
+
*
|
|
64
|
+
* This method supports intelligent caching: successful flows are cached and can be
|
|
65
|
+
* replayed deterministically on subsequent runs with identical parameters, significantly
|
|
66
|
+
* reducing AI token usage and execution time. When a cache hit occurs, the flow runs
|
|
67
|
+
* in INSTRUCT mode using the cached tool calls; otherwise, it runs in AUTONOMOUS mode
|
|
68
|
+
* where the AI determines the necessary actions.
|
|
69
|
+
*
|
|
70
|
+
* @template T The Zod object schema describing the expected shape of the AI result.
|
|
71
|
+
* @param page The Donobu page instance to use as the starting point of the flow.
|
|
72
|
+
* @param instruction A high-level, natural language description of what the flow should
|
|
73
|
+
* accomplish (e.g., "Fill out the login form and submit it").
|
|
74
|
+
* @param options Optional configuration for the flow execution:
|
|
75
|
+
* - `cache`: Set to false to bypass cache lookup and population (default: true)
|
|
76
|
+
* - `allowedTools`: Restrict the AI to only use specified tools by name
|
|
77
|
+
* - `maxToolCalls`: Maximum number of tool invocations allowed (default: 25)
|
|
78
|
+
* @returns A promise that resolves to the parsed result payload if a schema is provided,
|
|
79
|
+
* or void if no schema is specified.
|
|
80
|
+
* @throws {PageAiException} If the autonomous flow fails, reaches a terminal non-success
|
|
81
|
+
* state, or the result fails schema validation.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* // Simple flow without structured output
|
|
85
|
+
* await pageAi.ai(page, "Click the 'Get Started' button");
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* // Flow with structured output and schema validation
|
|
89
|
+
* const userSchema = z.object({
|
|
90
|
+
* name: z.string(),
|
|
91
|
+
* email: z.string().email(),
|
|
92
|
+
* isPremium: z.boolean(),
|
|
93
|
+
* });
|
|
94
|
+
* const user = await pageAi.ai(
|
|
95
|
+
* page,
|
|
96
|
+
* "Extract the user profile information from the page",
|
|
97
|
+
* { schema: userSchema }
|
|
98
|
+
* );
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* // Flow with custom options
|
|
102
|
+
* await pageAi.ai(
|
|
103
|
+
* page,
|
|
104
|
+
* "Navigate to the settings page",
|
|
105
|
+
* {
|
|
106
|
+
* cache: false,
|
|
107
|
+
* allowedTools: ['goto', 'click'],
|
|
108
|
+
* maxToolCalls: 10,
|
|
109
|
+
* }
|
|
110
|
+
* );
|
|
111
|
+
*/
|
|
112
|
+
async ai(page, instruction, options) {
|
|
113
|
+
const useCache = options?.cache !== undefined ? options.cache : true;
|
|
114
|
+
const startingPageUrl = page.url();
|
|
115
|
+
const jsonSchema = options?.schema ? v4_1.z.toJSONSchema(options.schema) : null;
|
|
116
|
+
const maxToolCalls = options?.maxToolCalls ?? 25;
|
|
117
|
+
const allowedTools = options?.allowedTools ?? [];
|
|
118
|
+
const envData = await this.donobu.flowsManager.buildEnvData(page._donobuFlowMetadata.envVars ?? []);
|
|
119
|
+
const originalFlowMetadata = {
|
|
120
|
+
...page._donobuFlowMetadata,
|
|
121
|
+
};
|
|
122
|
+
const cachedToolCalls = useCache
|
|
123
|
+
? await this.getCachedFlow({
|
|
124
|
+
pageUrl: startingPageUrl,
|
|
125
|
+
instruction: instruction,
|
|
126
|
+
schema: jsonSchema,
|
|
127
|
+
maxToolCalls: maxToolCalls,
|
|
128
|
+
allowedTools: allowedTools,
|
|
129
|
+
})
|
|
130
|
+
: null;
|
|
131
|
+
const runMode = cachedToolCalls !== null ? 'INSTRUCT' : 'AUTONOMOUS';
|
|
132
|
+
const autonomousFlowMetadata = {
|
|
133
|
+
...originalFlowMetadata,
|
|
134
|
+
runMode: runMode,
|
|
135
|
+
overallObjective: instruction,
|
|
136
|
+
resultJsonSchema: jsonSchema,
|
|
137
|
+
maxToolCalls: maxToolCalls,
|
|
138
|
+
state: 'UNSTARTED',
|
|
139
|
+
allowedTools: allowedTools,
|
|
140
|
+
};
|
|
141
|
+
const toolManager = new ToolManager_1.ToolManager(options?.allowedTools
|
|
142
|
+
? (await ToolManager_1.ToolManager.allTools()).filter((t) => options?.allowedTools?.includes(t.name) ||
|
|
143
|
+
t.name === MarkObjectiveCompleteTool_1.MarkObjectiveCompleteTool.NAME ||
|
|
144
|
+
t.name === MarkObjectiveNotCompletableTool_1.MarkObjectiveNotCompletableTool.NAME)
|
|
145
|
+
: await ToolManager_1.ToolManager.defaultTools());
|
|
146
|
+
// We have to revert to the original goto method in case the autonomous
|
|
147
|
+
// flow invokes a goto tool call (and it takes care of the things that
|
|
148
|
+
// the overwritten page goto method does).
|
|
149
|
+
const pageWithOriginalGoto = Object.create(page);
|
|
150
|
+
pageWithOriginalGoto.goto = page._originalGoto;
|
|
151
|
+
const donobuFlow = new DonobuFlow_1.DonobuFlow(this.donobu.flowsManager, envData, page.context(), this.persistence, this.gptClient, toolManager, new InteractionVisualizer_1.InteractionVisualizer(autonomousFlowMetadata.defaultMessageDuration ?? 0), cachedToolCalls ?? [], [], [], {
|
|
152
|
+
current: pageWithOriginalGoto,
|
|
153
|
+
}, autonomousFlowMetadata, new ControlPanel_1.NoOpControlPanel());
|
|
154
|
+
try {
|
|
155
|
+
const rawResult = await donobuFlow.run();
|
|
156
|
+
if (donobuFlow.metadata.state === 'SUCCESS') {
|
|
157
|
+
if (useCache) {
|
|
158
|
+
await this.cacheFlow(startingPageUrl, donobuFlow);
|
|
159
|
+
}
|
|
160
|
+
const schema = options?.schema;
|
|
161
|
+
if (schema) {
|
|
162
|
+
return schema.parse(rawResult);
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
return undefined;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
Logger_1.appLogger.error(`Failed to complete instruction: ${JSON.stringify(donobuFlow.metadata.result, null, 2)}`);
|
|
170
|
+
throw new PageAiException_1.PageAiException(donobuFlow.metadata);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
finally {
|
|
174
|
+
// Unset the finality of the autonomous flow so that the test can
|
|
175
|
+
// continue and be recorded properly if there are subsequent steps.
|
|
176
|
+
// The `finally` block for the test fixture will tie up loose ends.
|
|
177
|
+
const updatedMetadata = {
|
|
178
|
+
...originalFlowMetadata,
|
|
179
|
+
inputTokensUsed: donobuFlow.metadata.inputTokensUsed,
|
|
180
|
+
completionTokensUsed: donobuFlow.metadata.completionTokensUsed,
|
|
181
|
+
};
|
|
182
|
+
await this.persistence.setFlowMetadata(updatedMetadata);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
async ensureCacheFileExists() {
|
|
186
|
+
try {
|
|
187
|
+
await promises_1.default.writeFile(this.cacheFilepath, '[]', {
|
|
188
|
+
encoding: 'utf-8',
|
|
189
|
+
flag: 'wx',
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
catch (error) {
|
|
193
|
+
if (error.code !== 'EEXIST') {
|
|
194
|
+
throw error;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Executes a cache operation within an exclusive file lock to prevent race conditions
|
|
200
|
+
* across multiple processes. This method handles cache file initialization, locking,
|
|
201
|
+
* reading, executing the provided operation, and conditionally writing back changes.
|
|
202
|
+
*
|
|
203
|
+
* @template T The type of result returned by the cache operation.
|
|
204
|
+
* @param operation A function that receives the current cache and returns both the
|
|
205
|
+
* modified cache (or the same cache if no modifications) and a result
|
|
206
|
+
* value. If the returned cache reference is different from the input,
|
|
207
|
+
* the cache file will be updated.
|
|
208
|
+
* @returns A promise that resolves to the result value from the operation.
|
|
209
|
+
* @throws Any error from the operation or file system operations (except expected ENOENT
|
|
210
|
+
* and EEXIST errors which are handled internally).
|
|
211
|
+
*/
|
|
212
|
+
async withCacheLock(operation) {
|
|
213
|
+
await this.ensureCacheFileExists();
|
|
214
|
+
const release = await LockFile.lock(this.cacheFilepath, {
|
|
215
|
+
retries: {
|
|
216
|
+
retries: 5,
|
|
217
|
+
minTimeout: 100,
|
|
218
|
+
maxTimeout: 1000,
|
|
219
|
+
},
|
|
220
|
+
});
|
|
221
|
+
try {
|
|
222
|
+
// Read the cache file as JSON.
|
|
223
|
+
let cache = [];
|
|
224
|
+
try {
|
|
225
|
+
const cacheContent = await promises_1.default.readFile(this.cacheFilepath, 'utf-8');
|
|
226
|
+
cache = JSON.parse(cacheContent);
|
|
227
|
+
}
|
|
228
|
+
catch (error) {
|
|
229
|
+
if (error.code !== 'ENOENT') {
|
|
230
|
+
throw error;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
// Perform the operation.
|
|
234
|
+
const { cache: modifiedCache, result } = await operation(cache);
|
|
235
|
+
// Write the cache file if it was modified.
|
|
236
|
+
if (modifiedCache !== cache) {
|
|
237
|
+
await promises_1.default.writeFile(this.cacheFilepath, JSON.stringify(modifiedCache, null, 2), 'utf-8');
|
|
238
|
+
}
|
|
239
|
+
return result;
|
|
240
|
+
}
|
|
241
|
+
finally {
|
|
242
|
+
await release();
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
async getCachedFlow(cacheKey) {
|
|
246
|
+
return this.withCacheLock(async (cache) => {
|
|
247
|
+
const matchingEntry = cache.find((entry) => entry.pageUrl === cacheKey.pageUrl &&
|
|
248
|
+
entry.instruction === cacheKey.instruction &&
|
|
249
|
+
JSON.stringify(entry.schema) === JSON.stringify(cacheKey.schema) &&
|
|
250
|
+
JSON.stringify(entry.allowedTools) ===
|
|
251
|
+
JSON.stringify(cacheKey.allowedTools) &&
|
|
252
|
+
entry.maxToolCalls === cacheKey.maxToolCalls);
|
|
253
|
+
return {
|
|
254
|
+
cache, // No modification
|
|
255
|
+
result: matchingEntry?.toolCallCache ?? null,
|
|
256
|
+
};
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
async cacheFlow(pageUrl, donobuFlow) {
|
|
260
|
+
const toolCallsOnStart = await CodeGenerator_1.CodeGenerator.prepareToolCallsForRerun(donobuFlow.invokedToolCalls, {});
|
|
261
|
+
const cacheEntry = {
|
|
262
|
+
pageUrl: pageUrl,
|
|
263
|
+
instruction: donobuFlow.metadata.overallObjective,
|
|
264
|
+
schema: donobuFlow.metadata.resultJsonSchema,
|
|
265
|
+
allowedTools: donobuFlow.metadata.allowedTools,
|
|
266
|
+
maxToolCalls: donobuFlow.metadata.maxToolCalls,
|
|
267
|
+
toolCallCache: toolCallsOnStart,
|
|
268
|
+
};
|
|
269
|
+
await this.withCacheLock(async (cache) => {
|
|
270
|
+
const existingIndex = cache.findIndex((entry) => entry.pageUrl === cacheEntry.pageUrl &&
|
|
271
|
+
entry.instruction === cacheEntry.instruction &&
|
|
272
|
+
JSON.stringify(entry.schema) === JSON.stringify(cacheEntry.schema) &&
|
|
273
|
+
JSON.stringify(entry.allowedTools) ===
|
|
274
|
+
JSON.stringify(cacheEntry.allowedTools) &&
|
|
275
|
+
entry.maxToolCalls === cacheEntry.maxToolCalls);
|
|
276
|
+
const modifiedCache = [...cache];
|
|
277
|
+
if (existingIndex !== -1) {
|
|
278
|
+
modifiedCache[existingIndex] = cacheEntry;
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
modifiedCache.push(cacheEntry);
|
|
282
|
+
}
|
|
283
|
+
return {
|
|
284
|
+
cache: modifiedCache,
|
|
285
|
+
result: undefined,
|
|
286
|
+
};
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
exports.PageAi = PageAi;
|
|
291
|
+
//# sourceMappingURL=PageAi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PageAi.js","sourceRoot":"","sources":["../../src/lib/PageAi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testExtension.d.ts","sourceRoot":"","sources":["../../src/lib/testExtension.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAqDjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAUpE,cAAc,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"testExtension.d.ts","sourceRoot":"","sources":["../../src/lib/testExtension.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAqDjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAUpE,cAAc,iBAAiB,CAAC;AAoBhC,eAAO,MAAM,IAAI;mBACA,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;gBACrD,SAAS;UACf,kBAAkB;wGAkbxB,CAAC"}
|
|
@@ -49,9 +49,9 @@ const BrowserUtils_1 = require("../utils/BrowserUtils");
|
|
|
49
49
|
const v4_1 = require("zod/v4");
|
|
50
50
|
const ControlPanel_1 = require("../models/ControlPanel");
|
|
51
51
|
const GptApiKeysNotSetupException_1 = require("../exceptions/GptApiKeysNotSetupException");
|
|
52
|
-
const MarkObjectiveCompleteTool_1 = require("../tools/MarkObjectiveCompleteTool");
|
|
53
|
-
const MarkObjectiveNotCompletableTool_1 = require("../tools/MarkObjectiveNotCompletableTool");
|
|
54
52
|
const SmartSelector_1 = require("./SmartSelector");
|
|
53
|
+
const PageAi_1 = require("./PageAi");
|
|
54
|
+
const path_1 = require("path");
|
|
55
55
|
__exportStar(require("playwright/test"), exports);
|
|
56
56
|
const PLACEHOLDER_FLOW_URL = 'https://example.com';
|
|
57
57
|
/**
|
|
@@ -63,10 +63,12 @@ function yn(value) {
|
|
|
63
63
|
if (/^(?:y|yes|true|1|on)$/i.test(value)) {
|
|
64
64
|
return true;
|
|
65
65
|
}
|
|
66
|
-
if (/^(?:n|no|false|0|off)$/i.test(value)) {
|
|
66
|
+
else if (/^(?:n|no|false|0|off)$/i.test(value)) {
|
|
67
67
|
return false;
|
|
68
68
|
}
|
|
69
|
-
|
|
69
|
+
else {
|
|
70
|
+
return undefined;
|
|
71
|
+
}
|
|
70
72
|
}
|
|
71
73
|
exports.test = test_1.test.extend({
|
|
72
74
|
// 1) Declare `gptClient` as an "option" fixture with a default of `undefined`.
|
|
@@ -84,51 +86,18 @@ exports.test = test_1.test.extend({
|
|
|
84
86
|
// Save the oringal goto method since we override it later. We need the
|
|
85
87
|
// original so we can delegate to it in our override.
|
|
86
88
|
page._originalGoto = page.goto;
|
|
87
|
-
page.ai = async (instruction,
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
...originalFlowMetadata,
|
|
95
|
-
runMode: 'AUTONOMOUS',
|
|
96
|
-
overallObjective: instruction,
|
|
97
|
-
resultJsonSchema: jsonSchema ?? null,
|
|
98
|
-
maxToolCalls: 25,
|
|
99
|
-
state: 'UNSTARTED',
|
|
100
|
-
allowedTools: allowedTools ?? [],
|
|
101
|
-
};
|
|
102
|
-
const toolManager = new ToolManager_1.ToolManager(allowedTools
|
|
103
|
-
? (await ToolManager_1.ToolManager.allTools()).filter((t) => allowedTools?.includes(t.name) ||
|
|
104
|
-
t.name === MarkObjectiveCompleteTool_1.MarkObjectiveCompleteTool.NAME ||
|
|
105
|
-
t.name === MarkObjectiveNotCompletableTool_1.MarkObjectiveNotCompletableTool.NAME)
|
|
106
|
-
: await ToolManager_1.ToolManager.defaultTools());
|
|
107
|
-
// We have to revert to the original goto method in case the autonomous
|
|
108
|
-
// flow invokes a goto tool call (and it takes care of the things that
|
|
109
|
-
// the overwritten page goto method does).
|
|
110
|
-
const pageWithOriginalGoto = Object.create(page);
|
|
111
|
-
pageWithOriginalGoto.goto = page._originalGoto;
|
|
112
|
-
const donobuFlow = new DonobuFlow_1.DonobuFlow(donobu.flowsManager, envData, page.context(), persistenceLayer, gptClient ?? null, toolManager, new InteractionVisualizer_1.InteractionVisualizer(0), [], [], [], {
|
|
113
|
-
current: pageWithOriginalGoto,
|
|
114
|
-
}, autonomousFlowMetadata, new ControlPanel_1.NoOpControlPanel());
|
|
115
|
-
try {
|
|
116
|
-
await donobuFlow.run();
|
|
117
|
-
const result = schema
|
|
118
|
-
? schema.parse(donobuFlow.metadata.result)
|
|
119
|
-
: undefined;
|
|
120
|
-
return { metadata: donobuFlow.metadata, result: result };
|
|
89
|
+
page.ai = async (instruction, options) => {
|
|
90
|
+
if (!gptClient) {
|
|
91
|
+
throw new Error(`No AI connection available. Establish a connection by setting an API key via an environment variable.
|
|
92
|
+
Valid options:
|
|
93
|
+
- ${envVars_1.ENV_NAMES.ANTHROPIC_API_KEY}
|
|
94
|
+
- ${envVars_1.ENV_NAMES.GOOGLE_GENERATIVE_AI_API_KEY}
|
|
95
|
+
- ${envVars_1.ENV_NAMES.OPENAI_API_KEY}`);
|
|
121
96
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
const updatedMetadata = {
|
|
127
|
-
...originalFlowMetadata,
|
|
128
|
-
inputTokensUsed: donobuFlow.metadata.inputTokensUsed,
|
|
129
|
-
completionTokensUsed: donobuFlow.metadata.completionTokensUsed,
|
|
130
|
-
};
|
|
131
|
-
await persistenceLayer.setFlowMetadata(updatedMetadata);
|
|
97
|
+
else {
|
|
98
|
+
const cacheFilepath = (0, path_1.join)((0, path_1.dirname)(testInfo.file), '.test-lock.json');
|
|
99
|
+
const pageAi = new PageAi_1.PageAi(donobu, persistenceLayer, gptClient, cacheFilepath);
|
|
100
|
+
return pageAi.ai(page, instruction, options);
|
|
132
101
|
}
|
|
133
102
|
};
|
|
134
103
|
page.find = (selector, options) => {
|
|
@@ -434,10 +403,9 @@ exports.test = test_1.test.extend({
|
|
|
434
403
|
},
|
|
435
404
|
});
|
|
436
405
|
function isSelfHealingEnabled(testInfo) {
|
|
437
|
-
if (envVars_1.
|
|
406
|
+
if (envVars_1.ENV_NAMES.SELF_HEAL_TESTS_ENABLED in testInfo.project.metadata) {
|
|
438
407
|
// Check project-specific metadata. This takes priority if it exists.
|
|
439
|
-
const isSelfHealEnabledForProject = yn(testInfo.project.metadata[envVars_1.
|
|
440
|
-
false;
|
|
408
|
+
const isSelfHealEnabledForProject = yn(testInfo.project.metadata[envVars_1.ENV_NAMES.SELF_HEAL_TESTS_ENABLED]) ?? false;
|
|
441
409
|
return isSelfHealEnabledForProject;
|
|
442
410
|
}
|
|
443
411
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testExtension.js","sourceRoot":"","sources":["../../src/lib/testExtension.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"testExtension.js","sourceRoot":"","sources":["../../src/lib/testExtension.ts"],"names":[],"mappings":"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"}
|
package/dist/main.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import './init';
|
|
2
2
|
import { ControlPanelFactory } from './models/ControlPanel';
|
|
3
|
-
export * from './utils/PlaywrightUtils';
|
|
4
3
|
export * from './lib/fixtures/browserState';
|
|
5
4
|
export * from './lib/fixtures/gptClients';
|
|
6
5
|
export * from './lib/utils/donobuTestStack';
|
|
7
6
|
export * from './lib/DonobuExtendedPage';
|
|
8
7
|
export * from './lib/testExtension';
|
|
8
|
+
export * from './utils/PlaywrightUtils';
|
|
9
9
|
export * from './utils/JsonUtils';
|
|
10
10
|
export * from './utils/MiscUtils';
|
|
11
11
|
export * from './utils/Logger';
|
package/dist/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC;AAQhB,OAAO,EACL,mBAAmB,EAEpB,MAAM,uBAAuB,CAAC;AAE/B,cAAc,
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC;AAQhB,OAAO,EACL,mBAAmB,EAEpB,MAAM,uBAAuB,CAAC;AAE/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yCAAyC,CAAC;AAgBxD;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,GAAE,MAAqB,EAC3B,gBAAgB,GAAE,mBAA6C,GAC9D,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED;;;GAGG;AACH,qBAAa,IAAI;IACf;;;OAGG;WACiB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBvD,OAAO,CAAC,MAAM,CAAC,SAAS;CAUzB"}
|
package/dist/main.js
CHANGED
|
@@ -25,12 +25,12 @@ const envVars_1 = require("./envVars");
|
|
|
25
25
|
const ToolManager_1 = require("./managers/ToolManager");
|
|
26
26
|
const Logger_1 = require("./utils/Logger");
|
|
27
27
|
const ControlPanel_1 = require("./models/ControlPanel");
|
|
28
|
-
__exportStar(require("./utils/PlaywrightUtils"), exports);
|
|
29
28
|
__exportStar(require("./lib/fixtures/browserState"), exports);
|
|
30
29
|
__exportStar(require("./lib/fixtures/gptClients"), exports);
|
|
31
30
|
__exportStar(require("./lib/utils/donobuTestStack"), exports);
|
|
32
31
|
__exportStar(require("./lib/DonobuExtendedPage"), exports);
|
|
33
32
|
__exportStar(require("./lib/testExtension"), exports);
|
|
33
|
+
__exportStar(require("./utils/PlaywrightUtils"), exports);
|
|
34
34
|
__exportStar(require("./utils/JsonUtils"), exports);
|
|
35
35
|
__exportStar(require("./utils/MiscUtils"), exports);
|
|
36
36
|
__exportStar(require("./utils/Logger"), exports);
|