donobu 2.42.0 → 2.44.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.
Files changed (61) hide show
  1. package/dist/assets/generated/version +1 -1
  2. package/dist/envVars.d.ts +57 -148
  3. package/dist/envVars.d.ts.map +1 -1
  4. package/dist/envVars.js +53 -99
  5. package/dist/envVars.js.map +1 -1
  6. package/dist/esm/assets/generated/version +1 -1
  7. package/dist/esm/envVars.d.ts +57 -148
  8. package/dist/esm/envVars.d.ts.map +1 -1
  9. package/dist/esm/envVars.js +53 -99
  10. package/dist/esm/envVars.js.map +1 -1
  11. package/dist/esm/exceptions/PageAiException.d.ts +10 -0
  12. package/dist/esm/exceptions/PageAiException.d.ts.map +1 -0
  13. package/dist/esm/exceptions/PageAiException.js +15 -0
  14. package/dist/esm/exceptions/PageAiException.js.map +1 -0
  15. package/dist/esm/lib/DonobuExtendedPage.d.ts +15 -7
  16. package/dist/esm/lib/DonobuExtendedPage.d.ts.map +1 -1
  17. package/dist/esm/lib/PageAi.d.ts +112 -0
  18. package/dist/esm/lib/PageAi.d.ts.map +1 -0
  19. package/dist/esm/lib/PageAi.js +337 -0
  20. package/dist/esm/lib/PageAi.js.map +1 -0
  21. package/dist/esm/lib/testExtension.d.ts.map +1 -1
  22. package/dist/esm/lib/testExtension.js +18 -48
  23. package/dist/esm/lib/testExtension.js.map +1 -1
  24. package/dist/esm/main.d.ts +1 -1
  25. package/dist/esm/main.d.ts.map +1 -1
  26. package/dist/esm/main.js +1 -1
  27. package/dist/esm/main.js.map +1 -1
  28. package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
  29. package/dist/esm/managers/DonobuFlow.js +10 -1
  30. package/dist/esm/managers/DonobuFlow.js.map +1 -1
  31. package/dist/esm/managers/DonobuFlowsManager.js +3 -3
  32. package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
  33. package/dist/esm/utils/BrowserUtils.d.ts.map +1 -1
  34. package/dist/esm/utils/BrowserUtils.js +2 -2
  35. package/dist/esm/utils/BrowserUtils.js.map +1 -1
  36. package/dist/exceptions/PageAiException.d.ts +10 -0
  37. package/dist/exceptions/PageAiException.d.ts.map +1 -0
  38. package/dist/exceptions/PageAiException.js +15 -0
  39. package/dist/exceptions/PageAiException.js.map +1 -0
  40. package/dist/lib/DonobuExtendedPage.d.ts +15 -7
  41. package/dist/lib/DonobuExtendedPage.d.ts.map +1 -1
  42. package/dist/lib/PageAi.d.ts +112 -0
  43. package/dist/lib/PageAi.d.ts.map +1 -0
  44. package/dist/lib/PageAi.js +337 -0
  45. package/dist/lib/PageAi.js.map +1 -0
  46. package/dist/lib/testExtension.d.ts.map +1 -1
  47. package/dist/lib/testExtension.js +18 -48
  48. package/dist/lib/testExtension.js.map +1 -1
  49. package/dist/main.d.ts +1 -1
  50. package/dist/main.d.ts.map +1 -1
  51. package/dist/main.js +1 -1
  52. package/dist/main.js.map +1 -1
  53. package/dist/managers/DonobuFlow.d.ts.map +1 -1
  54. package/dist/managers/DonobuFlow.js +10 -1
  55. package/dist/managers/DonobuFlow.js.map +1 -1
  56. package/dist/managers/DonobuFlowsManager.js +3 -3
  57. package/dist/managers/DonobuFlowsManager.js.map +1 -1
  58. package/dist/utils/BrowserUtils.d.ts.map +1 -1
  59. package/dist/utils/BrowserUtils.js +2 -2
  60. package/dist/utils/BrowserUtils.js.map +1 -1
  61. package/package.json +3 -1
@@ -3,153 +3,62 @@
3
3
  * This should not be confused with the user-defined API-based environment variables
4
4
  * that may be used in a flow.
5
5
  */
6
- export declare const ENV_VAR_NAMES: {
7
- /**
8
- * Overrides the effective working/persistence directory.
9
- */
10
- readonly BASE_WORKING_DIR: "BASE_WORKING_DIR";
11
- /**
12
- * If specified, use this base-64 JSON GPT configuration for running flows.
13
- * This takes priority over all other GPT configuration options.
14
- */
15
- readonly BASE64_GPT_CONFIG: "BASE64_GPT_CONFIG";
16
- /**
17
- * The API key to use for the BrowserBase API.
18
- */
19
- readonly BROWSERBASE_API_KEY: "BROWSERBASE_API_KEY";
20
- /**
21
- * The project ID to use for the BrowserBase API.
22
- */
23
- readonly BROWSERBASE_PROJECT_ID: "BROWSERBASE_PROJECT_ID";
24
- /**
25
- * The deployment environment for this application.
26
- *
27
- * If this is set to "DONOBU_HOSTED_MULTI_TENANT" then the
28
- * SUPABASE_JWT_SECRET_KEY environment variable must also be set.
29
- */
30
- readonly DONOBU_DEPLOYMENT_ENVIRONMENT: "DONOBU_DEPLOYMENT_ENVIRONMENT";
31
- /**
32
- * Automatically create GPT configurations for Anthropic using this API key.
33
- * For convenience, the created configuration names will reflect the
34
- * underlying models they map to (ex: "claude-3-7-sonnet-latest", etc).
35
- */
36
- readonly ANTHROPIC_API_KEY: "ANTHROPIC_API_KEY";
37
- /**
38
- * If specified, this will shade the default flow runner agent when running
39
- * flows. If specified, ANTHROPIC_API_KEY must also be specified.
40
- */
41
- readonly ANTHROPIC_MODEL_NAME: "ANTHROPIC_MODEL_NAME";
42
- /**
43
- * Automatically create GPT configurations for Google Gemini using this API key.
44
- * For convenience, the created configuration names will reflect the
45
- * underlying models they map to (ex: "gemini-2.0-flash", etc).
46
- */
47
- readonly GOOGLE_GENERATIVE_AI_API_KEY: "GOOGLE_GENERATIVE_AI_API_KEY";
48
- /**
49
- * If specified, this will shade the default flow runner agent when running
50
- * flows. If specified, GOOGLE_GENERATIVE_AI_API_KEY must also be specified.
51
- */
52
- readonly GOOGLE_GENERATIVE_AI_MODEL_NAME: "GOOGLE_GENERATIVE_AI_MODEL_NAME";
53
- /**
54
- * Automatically create GPT configurations for OpenAI using this API key.
55
- * For convenience, the created configuration names will reflect the
56
- * underlying models they map to (ex: "gpt-4o", etc).
57
- */
58
- readonly OPENAI_API_KEY: "OPENAI_API_KEY";
59
- /**
60
- * If specified, this will shade the default flow runner agent when running
61
- * flows. If specified, OPENAI_API_KEY must also be specified.
62
- */
63
- readonly OPENAI_API_MODEL_NAME: "OPENAI_API_MODEL_NAME";
64
- /**
65
- * Automatically set the 'flow-runner' agent to use this GPT configuration by name.
66
- */
67
- readonly DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME: "DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME";
68
- /**
69
- * Directs Donobu flows to be persisted using this AWS S3 bucket. Takes
70
- * priority over GOOGLE_CLOUD_STORAGE_BUCKET being specified.
71
- */
72
- readonly AWS_S3_BUCKET: "AWS_S3_BUCKET";
73
- /**
74
- * The AWS S3 region the corresponding AWS_S3_BUCKET lives in. Fails over to
75
- * the AWS_REGION environment variable if not specified.
76
- */
77
- readonly AWS_S3_REGION: "AWS_S3_REGION";
78
- /**
79
- * If specified, this will shade the default flow runner agent when running
80
- * flows. If specified, AWS credentials must also be present.
81
- */
82
- readonly AWS_BEDROCK_MODEL_NAME: "AWS_BEDROCK_MODEL_NAME";
83
- /**
84
- * The AWS region to use for operations using the AWS SDK.
85
- */
86
- readonly AWS_REGION: "AWS_REGION";
87
- /**
88
- * The AWS access key ID to use for operations using the AWS SDK.
89
- */
90
- readonly AWS_ACCESS_KEY_ID: "AWS_ACCESS_KEY_ID";
91
- /**
92
- * The AWS access key to use for operations using the AWS SDK.
93
- */
94
- readonly AWS_SECRET_ACCESS_KEY: "AWS_SECRET_ACCESS_KEY";
95
- /**
96
- * Directs Donobu flows to be persisted using this Google Cloud Storage
97
- * bucket.
98
- */
99
- readonly GOOGLE_CLOUD_STORAGE_BUCKET: "GOOGLE_CLOUD_STORAGE_BUCKET";
100
- /**
101
- * Directs Donobu flows to be persisted using Supabase using this key.
102
- *
103
- * This environment variable MUST be specified if the
104
- * DONOBU_DEPLOYMENT_ENVIRONMENT environment variable is set to
105
- * "DONOBU_HOSTED_MULTI_TENANT".
106
- */
107
- readonly SUPABASE_JWT_SECRET_KEY: "SUPABASE_JWT_SECRET_KEY";
108
- /**
109
- * If set to 'true', then Donobu will attempt to self-heal tests. This option
110
- * is only used when using Donobu as a library to run Playwright-based tests.
111
- */
112
- readonly SELF_HEAL_TESTS_ENABLED: "SELF_HEAL_TESTS_ENABLED";
113
- /**
114
- * Default URL for the browser proxy configuration. Only applies when running
115
- * flows using the 'device' type and a proxy URL is not otherwise specified.
116
- */
117
- readonly PROXY_SERVER: "PROXY_SERVER";
118
- /**
119
- * Default user name for the browser proxy configuration. Only applies when running
120
- * flows using the 'device' type and a proxy username is not otherwise specified.
121
- */
122
- readonly PROXY_USERNAME: "PROXY_USERNAME";
123
- /**
124
- * Default password for the browser proxy configuration. Only applies when running
125
- * flows using the 'device' type and a proxy password is not otherwise specified.
126
- */
127
- readonly PROXY_PASSWORD: "PROXY_PASSWORD";
128
- };
129
- export declare const ENV: {
130
- readonly BASE_WORKING_DIR: string | undefined;
131
- readonly BASE64_GPT_CONFIG: string | undefined;
132
- readonly BROWSERBASE_API_KEY: string | undefined;
133
- readonly BROWSERBASE_PROJECT_ID: string | undefined;
134
- readonly DONOBU_DEPLOYMENT_ENVIRONMENT: string | undefined;
135
- readonly ANTHROPIC_API_KEY: string | undefined;
136
- readonly ANTHROPIC_MODEL_NAME: string | undefined;
137
- readonly GOOGLE_GENERATIVE_AI_API_KEY: string | undefined;
138
- readonly GOOGLE_GENERATIVE_AI_MODEL_NAME: string | undefined;
139
- readonly OPENAI_API_KEY: string | undefined;
140
- readonly OPENAI_API_MODEL_NAME: string | undefined;
141
- readonly DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME: string | undefined;
142
- readonly AWS_S3_BUCKET: string | undefined;
143
- readonly AWS_S3_REGION: string | undefined;
144
- readonly AWS_BEDROCK_MODEL_NAME: string | undefined;
145
- readonly AWS_REGION: string | undefined;
146
- readonly AWS_ACCESS_KEY_ID: string | undefined;
147
- readonly AWS_SECRET_ACCESS_KEY: string | undefined;
148
- readonly GOOGLE_CLOUD_STORAGE_BUCKET: string | undefined;
149
- readonly SUPABASE_JWT_SECRET_KEY: string | undefined;
150
- readonly SELF_HEAL_TESTS_ENABLED: string | undefined;
151
- readonly PROXY_SERVER: string | undefined;
152
- readonly PROXY_USERNAME: string | undefined;
153
- readonly PROXY_PASSWORD: string | undefined;
6
+ declare const ENV_VAR_LIST: readonly ["BASE_WORKING_DIR", "BASE64_GPT_CONFIG", "BROWSERBASE_API_KEY", "BROWSERBASE_PROJECT_ID", "DONOBU_DEPLOYMENT_ENVIRONMENT", "ANTHROPIC_API_KEY", "ANTHROPIC_MODEL_NAME", "GOOGLE_GENERATIVE_AI_API_KEY", "GOOGLE_GENERATIVE_AI_MODEL_NAME", "OPENAI_API_KEY", "OPENAI_API_MODEL_NAME", "DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME", "AWS_S3_BUCKET", "AWS_S3_REGION", "AWS_BEDROCK_MODEL_NAME", "AWS_REGION", "AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY", "GOOGLE_CLOUD_STORAGE_BUCKET", "SUPABASE_JWT_SECRET_KEY", "SELF_HEAL_TESTS_ENABLED", "PROXY_SERVER", "PROXY_USERNAME", "PROXY_PASSWORD"];
7
+ type ReadonlyEnvAccessor<T extends Record<string, string>> = {
8
+ readonly [K in keyof T]: string | undefined;
154
9
  };
10
+ export type EnvName = (typeof ENV_VAR_LIST)[number];
11
+ export declare const ENV_NAMES: Readonly<{
12
+ BASE_WORKING_DIR: "BASE_WORKING_DIR";
13
+ BASE64_GPT_CONFIG: "BASE64_GPT_CONFIG";
14
+ BROWSERBASE_API_KEY: "BROWSERBASE_API_KEY";
15
+ BROWSERBASE_PROJECT_ID: "BROWSERBASE_PROJECT_ID";
16
+ DONOBU_DEPLOYMENT_ENVIRONMENT: "DONOBU_DEPLOYMENT_ENVIRONMENT";
17
+ ANTHROPIC_API_KEY: "ANTHROPIC_API_KEY";
18
+ ANTHROPIC_MODEL_NAME: "ANTHROPIC_MODEL_NAME";
19
+ GOOGLE_GENERATIVE_AI_API_KEY: "GOOGLE_GENERATIVE_AI_API_KEY";
20
+ GOOGLE_GENERATIVE_AI_MODEL_NAME: "GOOGLE_GENERATIVE_AI_MODEL_NAME";
21
+ OPENAI_API_KEY: "OPENAI_API_KEY";
22
+ OPENAI_API_MODEL_NAME: "OPENAI_API_MODEL_NAME";
23
+ DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME: "DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME";
24
+ AWS_S3_BUCKET: "AWS_S3_BUCKET";
25
+ AWS_S3_REGION: "AWS_S3_REGION";
26
+ AWS_BEDROCK_MODEL_NAME: "AWS_BEDROCK_MODEL_NAME";
27
+ AWS_REGION: "AWS_REGION";
28
+ AWS_ACCESS_KEY_ID: "AWS_ACCESS_KEY_ID";
29
+ AWS_SECRET_ACCESS_KEY: "AWS_SECRET_ACCESS_KEY";
30
+ GOOGLE_CLOUD_STORAGE_BUCKET: "GOOGLE_CLOUD_STORAGE_BUCKET";
31
+ SUPABASE_JWT_SECRET_KEY: "SUPABASE_JWT_SECRET_KEY";
32
+ SELF_HEAL_TESTS_ENABLED: "SELF_HEAL_TESTS_ENABLED";
33
+ PROXY_SERVER: "PROXY_SERVER";
34
+ PROXY_USERNAME: "PROXY_USERNAME";
35
+ PROXY_PASSWORD: "PROXY_PASSWORD";
36
+ }>;
37
+ export declare const ENV: ReadonlyEnvAccessor<Readonly<{
38
+ BASE_WORKING_DIR: "BASE_WORKING_DIR";
39
+ BASE64_GPT_CONFIG: "BASE64_GPT_CONFIG";
40
+ BROWSERBASE_API_KEY: "BROWSERBASE_API_KEY";
41
+ BROWSERBASE_PROJECT_ID: "BROWSERBASE_PROJECT_ID";
42
+ DONOBU_DEPLOYMENT_ENVIRONMENT: "DONOBU_DEPLOYMENT_ENVIRONMENT";
43
+ ANTHROPIC_API_KEY: "ANTHROPIC_API_KEY";
44
+ ANTHROPIC_MODEL_NAME: "ANTHROPIC_MODEL_NAME";
45
+ GOOGLE_GENERATIVE_AI_API_KEY: "GOOGLE_GENERATIVE_AI_API_KEY";
46
+ GOOGLE_GENERATIVE_AI_MODEL_NAME: "GOOGLE_GENERATIVE_AI_MODEL_NAME";
47
+ OPENAI_API_KEY: "OPENAI_API_KEY";
48
+ OPENAI_API_MODEL_NAME: "OPENAI_API_MODEL_NAME";
49
+ DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME: "DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME";
50
+ AWS_S3_BUCKET: "AWS_S3_BUCKET";
51
+ AWS_S3_REGION: "AWS_S3_REGION";
52
+ AWS_BEDROCK_MODEL_NAME: "AWS_BEDROCK_MODEL_NAME";
53
+ AWS_REGION: "AWS_REGION";
54
+ AWS_ACCESS_KEY_ID: "AWS_ACCESS_KEY_ID";
55
+ AWS_SECRET_ACCESS_KEY: "AWS_SECRET_ACCESS_KEY";
56
+ GOOGLE_CLOUD_STORAGE_BUCKET: "GOOGLE_CLOUD_STORAGE_BUCKET";
57
+ SUPABASE_JWT_SECRET_KEY: "SUPABASE_JWT_SECRET_KEY";
58
+ SELF_HEAL_TESTS_ENABLED: "SELF_HEAL_TESTS_ENABLED";
59
+ PROXY_SERVER: "PROXY_SERVER";
60
+ PROXY_USERNAME: "PROXY_USERNAME";
61
+ PROXY_PASSWORD: "PROXY_PASSWORD";
62
+ }>>;
63
+ export {};
155
64
  //# sourceMappingURL=envVars.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"envVars.d.ts","sourceRoot":"","sources":["../../src/envVars.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,aAAa;IACxB;;OAEG;;IAEH;;;OAGG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;IAEH;;;OAGG;;IAEH;;;;OAIG;;IAEH;;;OAGG;;IAEH;;;;OAIG;;IAEH;;;OAGG;;IAEH;;OAEG;;IAEH;;;OAGG;;IAEH;;;OAGG;;IAEH;;;OAGG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;;OAGG;;IAEH;;;;;;OAMG;;IAEH;;;OAGG;;IAEH;;;OAGG;;IAEH;;;OAGG;;IAEH;;;OAGG;;CAEK,CAAC;AAEX,eAAO,MAAM,GAAG;+BACU,MAAM,GAAG,SAAS;gCAIjB,MAAM,GAAG,SAAS;kCAIhB,MAAM,GAAG,SAAS;qCAIf,MAAM,GAAG,SAAS;4CAIX,MAAM,GAAG,SAAS;gCAI9B,MAAM,GAAG,SAAS;mCAIf,MAAM,GAAG,SAAS;2CAIV,MAAM,GAAG,SAAS;8CAIf,MAAM,GAAG,SAAS;6BAInC,MAAM,GAAG,SAAS;oCAIX,MAAM,GAAG,SAAS;kDAIJ,MAAM,GAAG,SAAS;4BAIxC,MAAM,GAAG,SAAS;4BAIlB,MAAM,GAAG,SAAS;qCAIT,MAAM,GAAG,SAAS;yBAI9B,MAAM,GAAG,SAAS;gCAIX,MAAM,GAAG,SAAS;oCAId,MAAM,GAAG,SAAS;0CAIZ,MAAM,GAAG,SAAS;sCAItB,MAAM,GAAG,SAAS;sCAIlB,MAAM,GAAG,SAAS;2BAI7B,MAAM,GAAG,SAAS;6BAIhB,MAAM,GAAG,SAAS;6BAIlB,MAAM,GAAG,SAAS;CAGhC,CAAC"}
1
+ {"version":3,"file":"envVars.d.ts","sourceRoot":"","sources":["../../src/envVars.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,QAAA,MAAM,YAAY,ykBA0HR,CAAC;AAoBX,KAAK,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI;IAC3D,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS;CAC5C,CAAC;AAqBF,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AACpD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;EAAkC,CAAC;AACzD,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;GAA+B,CAAC"}
@@ -1,105 +1,105 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ENV = exports.ENV_VAR_NAMES = void 0;
3
+ exports.ENV = exports.ENV_NAMES = void 0;
4
4
  /**
5
5
  * This is the set of environment variable (for the process) names that Donobu may use.
6
6
  * This should not be confused with the user-defined API-based environment variables
7
7
  * that may be used in a flow.
8
8
  */
9
- exports.ENV_VAR_NAMES = {
9
+ const ENV_VAR_LIST = [
10
10
  /**
11
11
  * Overrides the effective working/persistence directory.
12
12
  */
13
- BASE_WORKING_DIR: 'BASE_WORKING_DIR',
13
+ 'BASE_WORKING_DIR',
14
14
  /**
15
15
  * If specified, use this base-64 JSON GPT configuration for running flows.
16
16
  * This takes priority over all other GPT configuration options.
17
17
  */
18
- BASE64_GPT_CONFIG: 'BASE64_GPT_CONFIG',
18
+ 'BASE64_GPT_CONFIG',
19
19
  /**
20
20
  * The API key to use for the BrowserBase API.
21
21
  */
22
- BROWSERBASE_API_KEY: 'BROWSERBASE_API_KEY',
22
+ 'BROWSERBASE_API_KEY',
23
23
  /**
24
24
  * The project ID to use for the BrowserBase API.
25
25
  */
26
- BROWSERBASE_PROJECT_ID: 'BROWSERBASE_PROJECT_ID',
26
+ 'BROWSERBASE_PROJECT_ID',
27
27
  /**
28
28
  * The deployment environment for this application.
29
29
  *
30
30
  * If this is set to "DONOBU_HOSTED_MULTI_TENANT" then the
31
31
  * SUPABASE_JWT_SECRET_KEY environment variable must also be set.
32
32
  */
33
- DONOBU_DEPLOYMENT_ENVIRONMENT: 'DONOBU_DEPLOYMENT_ENVIRONMENT',
33
+ 'DONOBU_DEPLOYMENT_ENVIRONMENT',
34
34
  /**
35
35
  * Automatically create GPT configurations for Anthropic using this API key.
36
36
  * For convenience, the created configuration names will reflect the
37
37
  * underlying models they map to (ex: "claude-3-7-sonnet-latest", etc).
38
38
  */
39
- ANTHROPIC_API_KEY: 'ANTHROPIC_API_KEY',
39
+ 'ANTHROPIC_API_KEY',
40
40
  /**
41
41
  * If specified, this will shade the default flow runner agent when running
42
42
  * flows. If specified, ANTHROPIC_API_KEY must also be specified.
43
43
  */
44
- ANTHROPIC_MODEL_NAME: 'ANTHROPIC_MODEL_NAME',
44
+ 'ANTHROPIC_MODEL_NAME',
45
45
  /**
46
46
  * Automatically create GPT configurations for Google Gemini using this API key.
47
47
  * For convenience, the created configuration names will reflect the
48
48
  * underlying models they map to (ex: "gemini-2.0-flash", etc).
49
49
  */
50
- GOOGLE_GENERATIVE_AI_API_KEY: 'GOOGLE_GENERATIVE_AI_API_KEY',
50
+ 'GOOGLE_GENERATIVE_AI_API_KEY',
51
51
  /**
52
52
  * If specified, this will shade the default flow runner agent when running
53
53
  * flows. If specified, GOOGLE_GENERATIVE_AI_API_KEY must also be specified.
54
54
  */
55
- GOOGLE_GENERATIVE_AI_MODEL_NAME: 'GOOGLE_GENERATIVE_AI_MODEL_NAME',
55
+ 'GOOGLE_GENERATIVE_AI_MODEL_NAME',
56
56
  /**
57
57
  * Automatically create GPT configurations for OpenAI using this API key.
58
58
  * For convenience, the created configuration names will reflect the
59
59
  * underlying models they map to (ex: "gpt-4o", etc).
60
60
  */
61
- OPENAI_API_KEY: 'OPENAI_API_KEY',
61
+ 'OPENAI_API_KEY',
62
62
  /**
63
63
  * If specified, this will shade the default flow runner agent when running
64
64
  * flows. If specified, OPENAI_API_KEY must also be specified.
65
65
  */
66
- OPENAI_API_MODEL_NAME: 'OPENAI_API_MODEL_NAME',
66
+ 'OPENAI_API_MODEL_NAME',
67
67
  /**
68
68
  * Automatically set the 'flow-runner' agent to use this GPT configuration by name.
69
69
  */
70
- DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME: 'DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME',
70
+ 'DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME',
71
71
  /**
72
72
  * Directs Donobu flows to be persisted using this AWS S3 bucket. Takes
73
73
  * priority over GOOGLE_CLOUD_STORAGE_BUCKET being specified.
74
74
  */
75
- AWS_S3_BUCKET: 'AWS_S3_BUCKET',
75
+ 'AWS_S3_BUCKET',
76
76
  /**
77
77
  * The AWS S3 region the corresponding AWS_S3_BUCKET lives in. Fails over to
78
78
  * the AWS_REGION environment variable if not specified.
79
79
  */
80
- AWS_S3_REGION: 'AWS_S3_REGION',
80
+ 'AWS_S3_REGION',
81
81
  /**
82
82
  * If specified, this will shade the default flow runner agent when running
83
83
  * flows. If specified, AWS credentials must also be present.
84
84
  */
85
- AWS_BEDROCK_MODEL_NAME: 'AWS_BEDROCK_MODEL_NAME',
85
+ 'AWS_BEDROCK_MODEL_NAME',
86
86
  /**
87
87
  * The AWS region to use for operations using the AWS SDK.
88
88
  */
89
- AWS_REGION: 'AWS_REGION',
89
+ 'AWS_REGION',
90
90
  /**
91
91
  * The AWS access key ID to use for operations using the AWS SDK.
92
92
  */
93
- AWS_ACCESS_KEY_ID: 'AWS_ACCESS_KEY_ID',
93
+ 'AWS_ACCESS_KEY_ID',
94
94
  /**
95
95
  * The AWS access key to use for operations using the AWS SDK.
96
96
  */
97
- AWS_SECRET_ACCESS_KEY: 'AWS_SECRET_ACCESS_KEY',
97
+ 'AWS_SECRET_ACCESS_KEY',
98
98
  /**
99
99
  * Directs Donobu flows to be persisted using this Google Cloud Storage
100
100
  * bucket.
101
101
  */
102
- GOOGLE_CLOUD_STORAGE_BUCKET: 'GOOGLE_CLOUD_STORAGE_BUCKET',
102
+ 'GOOGLE_CLOUD_STORAGE_BUCKET',
103
103
  /**
104
104
  * Directs Donobu flows to be persisted using Supabase using this key.
105
105
  *
@@ -107,100 +107,54 @@ exports.ENV_VAR_NAMES = {
107
107
  * DONOBU_DEPLOYMENT_ENVIRONMENT environment variable is set to
108
108
  * "DONOBU_HOSTED_MULTI_TENANT".
109
109
  */
110
- SUPABASE_JWT_SECRET_KEY: 'SUPABASE_JWT_SECRET_KEY',
110
+ 'SUPABASE_JWT_SECRET_KEY',
111
111
  /**
112
112
  * If set to 'true', then Donobu will attempt to self-heal tests. This option
113
113
  * is only used when using Donobu as a library to run Playwright-based tests.
114
114
  */
115
- SELF_HEAL_TESTS_ENABLED: 'SELF_HEAL_TESTS_ENABLED',
115
+ 'SELF_HEAL_TESTS_ENABLED',
116
116
  /**
117
117
  * Default URL for the browser proxy configuration. Only applies when running
118
118
  * flows using the 'device' type and a proxy URL is not otherwise specified.
119
119
  */
120
- PROXY_SERVER: 'PROXY_SERVER',
120
+ 'PROXY_SERVER',
121
121
  /**
122
122
  * Default user name for the browser proxy configuration. Only applies when running
123
123
  * flows using the 'device' type and a proxy username is not otherwise specified.
124
124
  */
125
- PROXY_USERNAME: 'PROXY_USERNAME',
125
+ 'PROXY_USERNAME',
126
126
  /**
127
127
  * Default password for the browser proxy configuration. Only applies when running
128
128
  * flows using the 'device' type and a proxy password is not otherwise specified.
129
129
  */
130
- PROXY_PASSWORD: 'PROXY_PASSWORD',
130
+ 'PROXY_PASSWORD',
131
+ ];
132
+ /**
133
+ * Creates a frozen record that maps each literal in the env var list back to itself.
134
+ * Consumers rely on this to keep compile-time and runtime views of env var names aligned.
135
+ */
136
+ const createEnvVarNames = (names) => {
137
+ const result = {};
138
+ for (const name of names) {
139
+ const key = name;
140
+ result[key] = key;
141
+ }
142
+ return Object.freeze(result);
131
143
  };
132
- exports.ENV = {
133
- get BASE_WORKING_DIR() {
134
- return process.env[exports.ENV_VAR_NAMES.BASE_WORKING_DIR];
135
- },
136
- get BASE64_GPT_CONFIG() {
137
- return process.env[exports.ENV_VAR_NAMES.BASE64_GPT_CONFIG];
138
- },
139
- get BROWSERBASE_API_KEY() {
140
- return process.env[exports.ENV_VAR_NAMES.BROWSERBASE_API_KEY];
141
- },
142
- get BROWSERBASE_PROJECT_ID() {
143
- return process.env[exports.ENV_VAR_NAMES.BROWSERBASE_PROJECT_ID];
144
- },
145
- get DONOBU_DEPLOYMENT_ENVIRONMENT() {
146
- return process.env[exports.ENV_VAR_NAMES.DONOBU_DEPLOYMENT_ENVIRONMENT];
147
- },
148
- get ANTHROPIC_API_KEY() {
149
- return process.env[exports.ENV_VAR_NAMES.ANTHROPIC_API_KEY];
150
- },
151
- get ANTHROPIC_MODEL_NAME() {
152
- return process.env[exports.ENV_VAR_NAMES.ANTHROPIC_MODEL_NAME];
153
- },
154
- get GOOGLE_GENERATIVE_AI_API_KEY() {
155
- return process.env[exports.ENV_VAR_NAMES.GOOGLE_GENERATIVE_AI_API_KEY];
156
- },
157
- get GOOGLE_GENERATIVE_AI_MODEL_NAME() {
158
- return process.env[exports.ENV_VAR_NAMES.GOOGLE_GENERATIVE_AI_MODEL_NAME];
159
- },
160
- get OPENAI_API_KEY() {
161
- return process.env[exports.ENV_VAR_NAMES.OPENAI_API_KEY];
162
- },
163
- get OPENAI_API_MODEL_NAME() {
164
- return process.env[exports.ENV_VAR_NAMES.OPENAI_API_MODEL_NAME];
165
- },
166
- get DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME() {
167
- return process.env[exports.ENV_VAR_NAMES.DEFAULT_FLOW_RUNNER_GPT_CONFIG_NAME];
168
- },
169
- get AWS_S3_BUCKET() {
170
- return process.env[exports.ENV_VAR_NAMES.AWS_S3_BUCKET];
171
- },
172
- get AWS_S3_REGION() {
173
- return process.env[exports.ENV_VAR_NAMES.AWS_S3_REGION];
174
- },
175
- get AWS_BEDROCK_MODEL_NAME() {
176
- return process.env[exports.ENV_VAR_NAMES.AWS_BEDROCK_MODEL_NAME];
177
- },
178
- get AWS_REGION() {
179
- return process.env[exports.ENV_VAR_NAMES.AWS_REGION];
180
- },
181
- get AWS_ACCESS_KEY_ID() {
182
- return process.env[exports.ENV_VAR_NAMES.AWS_ACCESS_KEY_ID];
183
- },
184
- get AWS_SECRET_ACCESS_KEY() {
185
- return process.env[exports.ENV_VAR_NAMES.AWS_SECRET_ACCESS_KEY];
186
- },
187
- get GOOGLE_CLOUD_STORAGE_BUCKET() {
188
- return process.env[exports.ENV_VAR_NAMES.GOOGLE_CLOUD_STORAGE_BUCKET];
189
- },
190
- get SUPABASE_JWT_SECRET_KEY() {
191
- return process.env[exports.ENV_VAR_NAMES.SUPABASE_JWT_SECRET_KEY];
192
- },
193
- get SELF_HEAL_TESTS_ENABLED() {
194
- return process.env[exports.ENV_VAR_NAMES.SELF_HEAL_TESTS_ENABLED];
195
- },
196
- get PROXY_SERVER() {
197
- return process.env[exports.ENV_VAR_NAMES.PROXY_SERVER];
198
- },
199
- get PROXY_USERNAME() {
200
- return process.env[exports.ENV_VAR_NAMES.PROXY_USERNAME];
201
- },
202
- get PROXY_PASSWORD() {
203
- return process.env[exports.ENV_VAR_NAMES.PROXY_PASSWORD];
204
- },
144
+ /**
145
+ * Creates an object with lazy getters that read from `process.env` using the provided key mapping.
146
+ * Keeps `ENV` in sync with `ENV_VAR_NAMES` without repeating every accessor.
147
+ */
148
+ const createEnvAccessor = (names) => {
149
+ const accessor = {};
150
+ for (const key of Object.keys(names)) {
151
+ Object.defineProperty(accessor, key, {
152
+ enumerable: true,
153
+ get: () => process.env[names[key]],
154
+ });
155
+ }
156
+ return Object.freeze(accessor);
205
157
  };
158
+ exports.ENV_NAMES = createEnvVarNames(ENV_VAR_LIST);
159
+ exports.ENV = createEnvAccessor(exports.ENV_NAMES);
206
160
  //# sourceMappingURL=envVars.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"envVars.js","sourceRoot":"","sources":["../../src/envVars.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"envVars.js","sourceRoot":"","sources":["../../src/envVars.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,MAAM,YAAY,GAAG;IACnB;;OAEG;IACH,kBAAkB;IAClB;;;OAGG;IACH,mBAAmB;IACnB;;OAEG;IACH,qBAAqB;IACrB;;OAEG;IACH,wBAAwB;IACxB;;;;;OAKG;IACH,+BAA+B;IAC/B;;;;OAIG;IACH,mBAAmB;IACnB;;;OAGG;IACH,sBAAsB;IACtB;;;;OAIG;IACH,8BAA8B;IAC9B;;;OAGG;IACH,iCAAiC;IACjC;;;;OAIG;IACH,gBAAgB;IAChB;;;OAGG;IACH,uBAAuB;IACvB;;OAEG;IACH,qCAAqC;IACrC;;;OAGG;IACH,eAAe;IACf;;;OAGG;IACH,eAAe;IACf;;;OAGG;IACH,wBAAwB;IACxB;;OAEG;IACH,YAAY;IACZ;;OAEG;IACH,mBAAmB;IACnB;;OAEG;IACH,uBAAuB;IACvB;;;OAGG;IACH,6BAA6B;IAC7B;;;;;;OAMG;IACH,yBAAyB;IACzB;;;OAGG;IACH,yBAAyB;IACzB;;;OAGG;IACH,cAAc;IACd;;;OAGG;IACH,gBAAgB;IAChB;;;OAGG;IACH,gBAAgB;CACR,CAAC;AAEX;;;GAGG;AACH,MAAM,iBAAiB,GAAG,CACxB,KAAY,EAC2B,EAAE;IACzC,MAAM,MAAM,GAAG,EAAiC,CAAC;IAEjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAqB,CAAC;QAClC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IACpB,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAOF;;;GAGG;AACH,MAAM,iBAAiB,GAAG,CACxB,KAAQ,EACgB,EAAE;IAC1B,MAAM,QAAQ,GAAG,EAA4B,CAAC;IAE9C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAmB,EAAE,CAAC;QACvD,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE;YACnC,UAAU,EAAE,IAAI;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACnC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC;AAGW,QAAA,SAAS,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;AAC5C,QAAA,GAAG,GAAG,iBAAiB,CAAC,iBAAS,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { FlowMetadata } from '../main';
2
+ /**
3
+ * This exception is thrown if a call to `donobuPage.ai` (i.e. an autonomous flow)
4
+ * finishes to a state that is not {@link State.SUCCESS}.
5
+ */
6
+ export declare class PageAiException extends Error {
7
+ readonly metadata: FlowMetadata;
8
+ constructor(metadata: FlowMetadata);
9
+ }
10
+ //# sourceMappingURL=PageAiException.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageAiException.d.ts","sourceRoot":"","sources":["../../../src/exceptions/PageAiException.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK;aACL,QAAQ,EAAE,YAAY;gBAAtB,QAAQ,EAAE,YAAY;CAG1D"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PageAiException = void 0;
4
+ /**
5
+ * This exception is thrown if a call to `donobuPage.ai` (i.e. an autonomous flow)
6
+ * finishes to a state that is not {@link State.SUCCESS}.
7
+ */
8
+ class PageAiException extends Error {
9
+ constructor(metadata) {
10
+ super();
11
+ this.metadata = metadata;
12
+ }
13
+ }
14
+ exports.PageAiException = PageAiException;
15
+ //# sourceMappingURL=PageAiException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageAiException.js","sourceRoot":"","sources":["../../../src/exceptions/PageAiException.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,MAAa,eAAgB,SAAQ,KAAK;IACxC,YAAmC,QAAsB;QACvD,KAAK,EAAE,CAAC;QADyB,aAAQ,GAAR,QAAQ,CAAc;IAEzD,CAAC;CACF;AAJD,0CAIC"}
@@ -15,17 +15,25 @@ import { SelectorBasedSchema } from '../tools/ReplayableInteraction';
15
15
  import { z } from 'zod/v4';
16
16
  import { BrowserStorageState } from '../models/BrowserStorageState';
17
17
  import { SmartSelector } from './SmartSelector';
18
+ import { PageAiOptions } from './PageAi';
19
+ export { PageAiOptions };
18
20
  /**
19
21
  * Extends the Page object with additional test-related methods.
20
22
  */
21
23
  export interface DonobuExtendedPage extends Page {
22
- ai<T extends z.ZodObject>(instruction: string, schema?: T, allowedTools?: string[]): Promise<{
23
- metadata: FlowMetadata;
24
- result: z.infer<T>;
25
- }>;
26
- ai(instruction: string): Promise<{
27
- metadata: FlowMetadata;
28
- }>;
24
+ /**
25
+ * Launches an autonomous Donobu flow that uses AI to satisfy a natural-language instruction.
26
+ * The flow may call Donobu tools and mirrors the metadata recorded for the surrounding test run.
27
+ *
28
+ * Provide a Zod schema when you want the flow to produce structured output; the AI's response is
29
+ * validated against the schema and is returned as the result.
30
+ *
31
+ * @template T The Zod object schema describing the expected shape of the AI result.
32
+ * @param instruction High-level description of what the autonomous flow should accomplish.
33
+ * @returns The parsed schema result when a schema is provided; otherwise, void.
34
+ * @throws PageAiException if the autonomous flow fails or reaches a terminal non-success state.
35
+ */
36
+ ai<Schema extends z.ZodObject | undefined = undefined>(instruction: string, options?: PageAiOptions<Schema>): Promise<Schema extends z.ZodObject ? z.infer<Schema> : void>;
29
37
  /**
30
38
  * Run an arbitrary Donobu tool by name.
31
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"DonobuExtendedPage.d.ts","sourceRoot":"","sources":["../../../src/lib/DonobuExtendedPage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DonobuExtendedPage.d.ts","sourceRoot":"","sources":["../../../src/lib/DonobuExtendedPage.ts"],"names":[],"mappings":"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"}