automation_model 1.0.477-dev → 1.0.477-stage

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 (50) hide show
  1. package/lib/api.d.ts +42 -1
  2. package/lib/api.js +221 -47
  3. package/lib/api.js.map +1 -1
  4. package/lib/auto_page.d.ts +2 -1
  5. package/lib/auto_page.js +39 -17
  6. package/lib/auto_page.js.map +1 -1
  7. package/lib/browser_manager.d.ts +6 -3
  8. package/lib/browser_manager.js +92 -18
  9. package/lib/browser_manager.js.map +1 -1
  10. package/lib/command_common.d.ts +1 -0
  11. package/lib/command_common.js +61 -7
  12. package/lib/command_common.js.map +1 -1
  13. package/lib/environment.js +5 -3
  14. package/lib/environment.js.map +1 -1
  15. package/lib/error-messages.d.ts +6 -0
  16. package/lib/error-messages.js +188 -0
  17. package/lib/error-messages.js.map +1 -0
  18. package/lib/generation_scripts.d.ts +4 -0
  19. package/lib/generation_scripts.js +2 -0
  20. package/lib/generation_scripts.js.map +1 -0
  21. package/lib/index.d.ts +1 -0
  22. package/lib/index.js +1 -0
  23. package/lib/index.js.map +1 -1
  24. package/lib/init_browser.d.ts +2 -1
  25. package/lib/init_browser.js +31 -4
  26. package/lib/init_browser.js.map +1 -1
  27. package/lib/locate_element.js +5 -3
  28. package/lib/locate_element.js.map +1 -1
  29. package/lib/locator.d.ts +36 -0
  30. package/lib/locator.js +165 -0
  31. package/lib/locator.js.map +1 -1
  32. package/lib/locator_log.d.ts +26 -0
  33. package/lib/locator_log.js +69 -0
  34. package/lib/locator_log.js.map +1 -0
  35. package/lib/network.d.ts +3 -0
  36. package/lib/network.js +155 -0
  37. package/lib/network.js.map +1 -0
  38. package/lib/stable_browser.d.ts +44 -9
  39. package/lib/stable_browser.js +490 -295
  40. package/lib/stable_browser.js.map +1 -1
  41. package/lib/table.d.ts +13 -0
  42. package/lib/table.js +187 -0
  43. package/lib/table.js.map +1 -0
  44. package/lib/test_context.d.ts +1 -0
  45. package/lib/test_context.js +12 -12
  46. package/lib/test_context.js.map +1 -1
  47. package/lib/utils.d.ts +3 -1
  48. package/lib/utils.js +68 -1
  49. package/lib/utils.js.map +1 -1
  50. package/package.json +5 -4
@@ -1,5 +1,8 @@
1
1
  import { chromium, firefox, webkit, } from "playwright";
2
+ import fs from "fs";
3
+ import path from "path";
2
4
  class BrowserManager {
5
+ browsers;
3
6
  constructor(browsers = []) {
4
7
  this.browsers = browsers;
5
8
  }
@@ -22,28 +25,41 @@ class BrowserManager {
22
25
  }
23
26
  }
24
27
  }
25
- async createBrowser(headless = false, storageState, extensionPath, userDataDirPath) {
28
+ async createBrowser(headless = false, storageState, extensionPath, userDataDirPath, reportFolder, userAgent, channel, aiConfig, initScripts = null) {
26
29
  const browser = new Browser();
27
- await browser.init(headless, storageState, extensionPath, userDataDirPath);
30
+ await browser.init(headless, storageState, extensionPath, userDataDirPath, reportFolder, userAgent, channel, aiConfig, initScripts);
28
31
  this.browsers.push(browser);
29
32
  return browser;
30
33
  }
31
- async getBrowser(headless = false, storageState, extensionPath, userDataDirPath) {
32
- if (this.browsers.length === 0) {
33
- return await this.createBrowser(headless, storageState, extensionPath, userDataDirPath);
34
- }
35
- return this.browsers[0];
36
- }
37
34
  }
38
35
  class Browser {
36
+ browser;
37
+ context;
38
+ page;
39
+ headless = false;
40
+ reportFolder = null;
41
+ trace = false;
42
+ traceFolder = null;
39
43
  constructor() {
40
- this.headless = false;
41
44
  this.browser = null;
42
45
  this.context = null;
43
46
  this.page = null;
44
47
  }
45
- async init(headless = false, storageState, extensionPath, userDataDirPath) {
48
+ async init(headless = false, storageState, extensionPath, userDataDirPath, reportFolder, userAgent, channel, aiConfig, initScripts = null) {
49
+ if (!aiConfig) {
50
+ aiConfig = {};
51
+ }
52
+ // if (!downloadsPath) {
53
+ // downloadsPath = "downloads";
54
+ // }
55
+ // // check if downloads path exists
56
+ // if (!fs.existsSync(downloadsPath)) {
57
+ // fs.mkdirSync(downloadsPath, { recursive: true });
58
+ // }
46
59
  this.headless = headless;
60
+ if (reportFolder) {
61
+ this.reportFolder = reportFolder;
62
+ }
47
63
  let viewport = null;
48
64
  if (process.env.HEADLESS === "true") {
49
65
  headless = true;
@@ -84,7 +100,7 @@ class Browser {
84
100
  // }
85
101
  }
86
102
  else if (extensionPath) {
87
- this.context = await chromium.launchPersistentContext(userDataDirPath !== null && userDataDirPath !== void 0 ? userDataDirPath : "", {
103
+ this.context = await chromium.launchPersistentContext(userDataDirPath ?? "", {
88
104
  headless: headless,
89
105
  timeout: 0,
90
106
  bypassCSP: true,
@@ -103,6 +119,7 @@ class Browser {
103
119
  headless: headless,
104
120
  timeout: 0,
105
121
  args: ["--ignore-https-errors", "--ignore-certificate-errors"],
122
+ //downloadsPath: downloadsPath,
106
123
  });
107
124
  }
108
125
  else if (process.env.BROWSER === "webkit") {
@@ -110,16 +127,37 @@ class Browser {
110
127
  headless: headless,
111
128
  timeout: 0,
112
129
  args: ["--ignore-https-errors", "--ignore-certificate-errors"],
130
+ //downloadsPath: downloadsPath,
113
131
  });
114
132
  }
133
+ else if (channel) {
134
+ {
135
+ this.browser = await chromium.launch({
136
+ headless: headless,
137
+ timeout: 0,
138
+ args: ["--ignore-https-errors", "--ignore-certificate-errors"],
139
+ channel: channel,
140
+ //downloadsPath: downloadsPath,
141
+ });
142
+ }
143
+ }
115
144
  else {
116
145
  this.browser = await chromium.launch({
117
146
  headless: headless,
118
147
  timeout: 0,
119
148
  args: ["--ignore-https-errors", "--ignore-certificate-errors"],
149
+ //downloadsPath: downloadsPath,
120
150
  });
121
151
  }
152
+ // downloadsPath
122
153
  let contextOptions = {};
154
+ if (aiConfig.contextOptions) {
155
+ contextOptions = aiConfig.contextOptions;
156
+ console.log("contextOptions: " + JSON.stringify(contextOptions));
157
+ }
158
+ if (!contextOptions["acceptDownloads"]) {
159
+ contextOptions["acceptDownloads"] = true;
160
+ }
123
161
  if (storageState) {
124
162
  contextOptions.storageState = storageState;
125
163
  contextOptions.bypassCSP = true;
@@ -128,13 +166,56 @@ class Browser {
128
166
  if (viewport) {
129
167
  contextOptions.viewport = viewport;
130
168
  }
169
+ if (userAgent) {
170
+ contextOptions.userAgent = userAgent;
171
+ }
131
172
  if (!this.context && this.browser) {
132
173
  this.context = await this.browser.newContext(contextOptions);
133
174
  }
134
175
  }
176
+ if (process.env.TRACE === "true" && this.context) {
177
+ this.trace = true;
178
+ const traceFolder = path.join(this.reportFolder, "trace");
179
+ //const traceFile = path.join(traceFolder, "trace.zip");
180
+ if (!fs.existsSync(traceFolder)) {
181
+ fs.mkdirSync(traceFolder, { recursive: true });
182
+ }
183
+ this.traceFolder = traceFolder;
184
+ await this.context.tracing.start({ screenshots: true, snapshots: true });
185
+ }
186
+ if (initScripts && this.context) {
187
+ if (initScripts.recorderCjs) {
188
+ await this.context.addInitScript({
189
+ content: `
190
+ (() => {
191
+ const module = {};
192
+ ${initScripts.recorderCjs}
193
+ const sss = new (module.exports.InjectedScript())(
194
+ window,
195
+ true,
196
+ "javascript",
197
+ [],
198
+ ${0},
199
+ "${this.browser?.browserType().name()}",
200
+ []
201
+ );
202
+ })();`,
203
+ });
204
+ }
205
+ if (initScripts.scripts) {
206
+ for (let script of initScripts.scripts) {
207
+ await this.context.addInitScript({
208
+ content: script,
209
+ });
210
+ }
211
+ }
212
+ }
135
213
  this.page = await this.context.newPage();
136
214
  }
137
215
  async close() {
216
+ // if (this.context && this.trace) {
217
+ // await this.context.tracing.stop({ path: traceFile });
218
+ // }
138
219
  if (this.browser !== null) {
139
220
  await this.browser.close();
140
221
  this.browser = null;
@@ -145,11 +226,4 @@ class Browser {
145
226
  }
146
227
  const browserManager = new BrowserManager();
147
228
  export { browserManager };
148
- // let browser = await browserManager.createBrowser();
149
- // browser.page.goto("https://www.cnn.com");
150
- // let browser2 = await browserManager.createBrowser();
151
- // await browser2.page.goto("https://www.google.com");
152
- // // sleep for 2 seconds
153
- // await new Promise((r) => setTimeout(r, 1000));
154
- // await browserManager.closeAll();
155
229
  //# sourceMappingURL=browser_manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser_manager.js","sourceRoot":"","sources":["../../src/browser_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser_manager.js","sourceRoot":"","sources":["../../src/browser_manager.ts"],"names":[],"mappings":"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"}
@@ -3,3 +3,4 @@ export declare function _commandError(state: any, error: any, stable: any): Prom
3
3
  export declare function _screenshot(state: any, stable: any): Promise<void>;
4
4
  export declare function _commandFinally(state: any, stable: any): void;
5
5
  export declare function _validateSelectors(selectors: any): void;
6
+ export declare function _reportToWorld(world: any, properties: any): void;
@@ -1,9 +1,17 @@
1
+ import { getHumanReadableErrorMessage } from "./error-messages.js";
2
+ import { LocatorLog } from "./locator_log.js";
3
+ import { maskValue } from "./utils.js";
1
4
  export async function _preCommand(state, stable) {
2
5
  if (!state) {
3
6
  return;
4
7
  }
5
8
  if (state.selectors) {
6
9
  _validateSelectors(state.selectors);
10
+ const originalSelectors = state.selectors;
11
+ state.selectors = JSON.parse(JSON.stringify(state.selectors));
12
+ if (originalSelectors.frame) {
13
+ state.selectors.frame = originalSelectors.frame;
14
+ }
7
15
  }
8
16
  if (state.locate !== false) {
9
17
  state.locate = true;
@@ -17,15 +25,26 @@ export async function _preCommand(state, stable) {
17
25
  if (state.highlight !== false) {
18
26
  state.highlight = true;
19
27
  }
28
+ if (state.throwError !== false) {
29
+ state.throwError = true;
30
+ }
20
31
  state.info = {};
21
32
  if (state.value) {
22
33
  state.value = stable._fixUsingParams(state.value, state._params);
23
34
  state.info.value = state.value;
24
35
  }
36
+ if (state.attribute) {
37
+ state.info.attribute = state.attribute;
38
+ }
25
39
  state.startTime = Date.now();
26
40
  state.info.selectors = state.selectors;
27
41
  state.info.log = state.log ? state.log : "";
42
+ if (state.selectors) {
43
+ state.info.locatorLog = new LocatorLog();
44
+ state.info.locatorLog.mission = state.info.log.trim();
45
+ }
28
46
  state.info.operation = state.operation;
47
+ state.info.failCause = {};
29
48
  state.error = null;
30
49
  state.screenshotId = null;
31
50
  state.screenshotPath = null;
@@ -50,16 +69,37 @@ export async function _preCommand(state, stable) {
50
69
  // ignore
51
70
  }
52
71
  }
72
+ state.info.failCause.operationFailed = true;
53
73
  }
54
74
  export async function _commandError(state, error, stable) {
55
- stable.logger.error(state.text + " failed " + state.info.log);
75
+ if (!state.info) {
76
+ state.info = {};
77
+ }
78
+ if (!state.info.failCause) {
79
+ state.info.failCause = {};
80
+ }
81
+ stable.logger.error(state.text + " failed");
82
+ if (state.info.locatorLog) {
83
+ const lines = state.info.locatorLog.toString().split("\n");
84
+ for (let line of lines) {
85
+ stable.logger.error(line);
86
+ }
87
+ }
56
88
  const { screenshotId, screenshotPath } = await stable._screenShot(state.options, state.world, state.info);
57
89
  state.screenshotId = screenshotId;
58
90
  state.screenshotPath = screenshotPath;
59
91
  state.info.screenshotPath = screenshotPath;
92
+ // state.info.failCause.error = error;
93
+ state.info.failCause.fail = true;
94
+ const errorClassification = getHumanReadableErrorMessage(error, state.info);
95
+ state.info.errorType = errorClassification.errorType;
96
+ state.info.errorMessage = errorClassification.errorMessage;
60
97
  Object.assign(error, { info: state.info });
61
98
  state.error = error;
62
- throw error;
99
+ state.commandError = true;
100
+ if (state.throwError) {
101
+ throw error;
102
+ }
63
103
  }
64
104
  export async function _screenshot(state, stable) {
65
105
  const { screenshotId, screenshotPath } = await stable._screenShot(state.options, state.world, state.info);
@@ -67,19 +107,22 @@ export async function _screenshot(state, stable) {
67
107
  state.screenshotPath = screenshotPath;
68
108
  }
69
109
  export function _commandFinally(state, stable) {
70
- var _a;
110
+ if (state && !state.commandError === true) {
111
+ state.info.failCause = {};
112
+ }
71
113
  state.endTime = Date.now();
72
- stable._reportToWorld(state.world, {
73
- element_name: state.selectors.element_name,
114
+ const reportObject = {
115
+ element_name: state.selectors ? state.selectors.element_name : null,
74
116
  type: state.type,
75
117
  text: state.text,
118
+ value: state.originalValue ? maskValue(state.originalValue) : state.value,
76
119
  screenshotId: state.screenshotId,
77
120
  result: state.error
78
121
  ? {
79
122
  status: "FAILED",
80
123
  startTime: state.startTime,
81
124
  endTime: state.endTime,
82
- message: (_a = state.error) === null || _a === void 0 ? void 0 : _a.message,
125
+ message: state.error?.message,
83
126
  }
84
127
  : {
85
128
  status: "PASSED",
@@ -87,7 +130,12 @@ export function _commandFinally(state, stable) {
87
130
  endTime: state.endTime,
88
131
  },
89
132
  info: state.info,
90
- });
133
+ locatorLog: state.info.locatorLog ? state.info.locatorLog.toString() : null,
134
+ };
135
+ if (state.originalValue && state.info) {
136
+ state.info.value = maskValue(state.originalValue);
137
+ }
138
+ _reportToWorld(state.world, reportObject);
91
139
  }
92
140
  export function _validateSelectors(selectors) {
93
141
  if (!selectors) {
@@ -103,4 +151,10 @@ export function _validateSelectors(selectors) {
103
151
  throw new Error("selectors.locators expected to be non empty array");
104
152
  }
105
153
  }
154
+ export function _reportToWorld(world, properties) {
155
+ if (!world || !world.attach) {
156
+ return;
157
+ }
158
+ world.attach(JSON.stringify(properties), { mediaType: "application/json" });
159
+ }
106
160
  //# sourceMappingURL=command_common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command_common.js","sourceRoot":"","sources":["../../src/command_common.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAU,EAAE,MAAW;IACvD,IAAI,CAAC,KAAK,EAAE;QACV,OAAO;KACR;IACD,IAAI,KAAK,CAAC,SAAS,EAAE;QACnB,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;KACrC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;QAC1B,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;KACrB;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;QAC1B,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;KACrB;IACD,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,EAAE;QAC9B,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;KACzB;IACD,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,EAAE;QAC7B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;KACxB;IACD,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC;IAChB,IAAI,KAAK,CAAC,KAAK,EAAE;QACf,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;KAChC;IACD,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;IACnB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE;QACzB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;YAC1C,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;SACjC;QACD,KAAK,CAAC,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;KAC3F;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE;QACzB,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;KACxD;IACD,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI,EAAE;QAC7B,MAAM,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KAClC;IACD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE;QAC5B,IAAI;YACF,MAAM,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SAChD;QAAC,OAAO,CAAC,EAAE;YACV,SAAS;SACV;KACF;AACH,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAU,EAAE,KAAU,EAAE,MAAW;IACrE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9D,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1G,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;IAClC,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IAC3C,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,MAAM,KAAK,CAAC;AACd,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAU,EAAE,MAAW;IACvD,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1G,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;IAClC,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC;AACxC,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,KAAU,EAAE,MAAW;;IACrD,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE;QACjC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY;QAC1C,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,MAAM,EAAE,KAAK,CAAC,KAAK;YACjB,CAAC,CAAC;gBACE,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,MAAA,KAAK,CAAC,KAAK,0CAAE,OAAO;aAC9B;YACH,CAAC,CAAC;gBACE,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAC,SAAc;IAC/C,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;KACtC;IACD,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;KAC/C;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;KAC5D;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACnC,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;KACtE;AACH,CAAC"}
1
+ {"version":3,"file":"command_common.js","sourceRoot":"","sources":["../../src/command_common.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,15 @@
1
1
  class Environment {
2
+ baseUrl;
3
+ cookies = [];
4
+ origins = [];
5
+ extensionPath;
2
6
  constructor(baseUrl) {
3
7
  this.baseUrl = baseUrl;
4
- this.cookies = [];
5
- this.origins = [];
6
- this.apps = {};
7
8
  }
8
9
  setBaseUrl(url) {
9
10
  this.baseUrl = url;
10
11
  }
12
+ apps = {};
11
13
  }
12
14
  export { Environment };
13
15
  //# sourceMappingURL=environment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/environment.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW;IAIf,YAAmB,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;QAHnC,YAAO,GAAa,EAAE,CAAC;QACvB,YAAO,GAAqD,EAAE,CAAC;QAM/D,SAAI,GAAmC,EAAE,CAAC;IAJJ,CAAC;IACvC,UAAU,CAAC,GAAW;QACpB,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACrB,CAAC;CAEF;AACD,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/environment.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW;IAII;IAHnB,OAAO,GAAa,EAAE,CAAC;IACvB,OAAO,GAAqD,EAAE,CAAC;IAC/D,aAAa,CAAU;IACvB,YAAmB,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IACvC,UAAU,CAAC,GAAW;QACpB,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACrB,CAAC;IACD,IAAI,GAAmC,EAAE,CAAC;CAC3C;AACD,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ type ErrorClassification = {
2
+ errorType: string;
3
+ errorMessage: string;
4
+ };
5
+ declare const getHumanReadableErrorMessage: (error: Error, info: any) => ErrorClassification;
6
+ export { getHumanReadableErrorMessage };
@@ -0,0 +1,188 @@
1
+ function classifyPlaywrightError(error) {
2
+ const errorMessage = error.message.toLowerCase();
3
+ // Timeout Errors
4
+ if (error.name === "TimeoutError" || errorMessage.includes("timeout")) {
5
+ return {
6
+ errorType: "TimeoutError",
7
+ errorMessage: error.message,
8
+ };
9
+ }
10
+ // Network Errors
11
+ if (errorMessage.includes("connect econnrefused") ||
12
+ errorMessage.includes("net::") ||
13
+ errorMessage.includes("network") ||
14
+ errorMessage.includes("connection refused") ||
15
+ errorMessage.includes("failed to fetch")) {
16
+ return {
17
+ errorType: "NetworkError",
18
+ errorMessage: error.message,
19
+ };
20
+ }
21
+ // Selector Errors
22
+ if (errorMessage.includes("no element matches selector") ||
23
+ errorMessage.includes("no node found for selector") ||
24
+ errorMessage.includes("resolved to") ||
25
+ errorMessage.includes("element not found")) {
26
+ return {
27
+ errorType: "SelectorError",
28
+ errorMessage: error.message,
29
+ };
30
+ }
31
+ // Frame Errors
32
+ if (errorMessage.includes("frame was detached") ||
33
+ errorMessage.includes("frame not found") ||
34
+ errorMessage.includes("execution context was destroyed")) {
35
+ return {
36
+ errorType: "FrameError",
37
+ errorMessage: error.message,
38
+ };
39
+ }
40
+ // Element State Errors
41
+ if (errorMessage.includes("element is not clickable") ||
42
+ errorMessage.includes("element is outside of viewport") ||
43
+ errorMessage.includes("element is not visible") ||
44
+ errorMessage.includes("element is disabled")) {
45
+ return {
46
+ errorType: "ElementStateError",
47
+ errorMessage: error.message,
48
+ };
49
+ }
50
+ // Browser Context Errors
51
+ if (errorMessage.includes("target closed") ||
52
+ errorMessage.includes("browser has been closed") ||
53
+ errorMessage.includes("connection closed")) {
54
+ return {
55
+ errorType: "BrowserContextError",
56
+ errorMessage: error.message,
57
+ };
58
+ }
59
+ // Screenshot Errors
60
+ if (errorMessage.includes("failed to save screenshot") ||
61
+ errorMessage.includes("screenshot") ||
62
+ (errorMessage.includes("enoent") && errorMessage.includes("screenshots"))) {
63
+ return {
64
+ errorType: "ScreenshotError",
65
+ errorMessage: error.message,
66
+ };
67
+ }
68
+ // Type Errors
69
+ if (errorMessage.includes("cannot type") ||
70
+ errorMessage.includes("element is not an <input>") ||
71
+ errorMessage.includes("element is not focusable")) {
72
+ return {
73
+ errorType: "TypeError",
74
+ errorMessage: error.message,
75
+ };
76
+ }
77
+ // Evaluation Errors
78
+ if (errorMessage.includes("evaluation failed") ||
79
+ errorMessage.includes("execution context was destroyed") ||
80
+ errorMessage.includes("cannot execute in detached frame")) {
81
+ return {
82
+ errorType: "EvaluationError",
83
+ errorMessage: error.message,
84
+ };
85
+ }
86
+ // Assertion Errors
87
+ if (error.name === "AssertionError" || errorMessage.includes("expect(") || errorMessage.includes("assertion")) {
88
+ return {
89
+ errorType: "AssertionError",
90
+ errorMessage: error.message,
91
+ };
92
+ }
93
+ // Default case for unrecognized errors
94
+ return {
95
+ errorType: "UnknownError",
96
+ errorMessage: error.message,
97
+ };
98
+ }
99
+ function classifyJSError(error) {
100
+ const errorMessage = error.message.toLowerCase();
101
+ // Syntax Errors
102
+ if (error.name === "SyntaxError" || errorMessage.includes("syntax error")) {
103
+ return {
104
+ errorType: "SyntaxError",
105
+ errorMessage: error.message,
106
+ };
107
+ }
108
+ // Reference Errors
109
+ if (error.name === "ReferenceError" || errorMessage.includes("reference error")) {
110
+ return {
111
+ errorType: "ReferenceError",
112
+ errorMessage: error.message,
113
+ };
114
+ }
115
+ // Type Errors
116
+ if (error.name === "TypeError" || errorMessage.includes("type error")) {
117
+ return {
118
+ errorType: "TypeError",
119
+ errorMessage: error.message,
120
+ };
121
+ }
122
+ // Range Errors
123
+ if (error.name === "RangeError" || errorMessage.includes("range error")) {
124
+ return {
125
+ errorType: "RangeError",
126
+ errorMessage: error.message,
127
+ };
128
+ }
129
+ // Default case for unrecognized errors
130
+ return {
131
+ errorType: "UnknownError",
132
+ errorMessage: error.message,
133
+ };
134
+ }
135
+ const classifyErrorFromInfo = (error, info) => {
136
+ const failCause = info?.failCause;
137
+ if (!failCause) {
138
+ return {
139
+ errorType: "UnknownError",
140
+ errorMessage: error.message,
141
+ };
142
+ }
143
+ if (failCause.textNotFound) {
144
+ return {
145
+ errorType: "TextNotFoundError",
146
+ errorMessage: failCause.lastError,
147
+ };
148
+ }
149
+ if (failCause.iframeNotFound) {
150
+ return {
151
+ errorType: "IframeNotFoundError",
152
+ errorMessage: failCause.lastError,
153
+ };
154
+ }
155
+ if (failCause.locatorNotFound) {
156
+ return {
157
+ errorType: "ElementNotFoundError",
158
+ errorMessage: failCause.lastError,
159
+ };
160
+ }
161
+ if (failCause.foundMultiple) {
162
+ return {
163
+ errorType: "MultipleElementsFoundError",
164
+ errorMessage: failCause.lastError ?? `Found ${failCause.count} elements`,
165
+ };
166
+ }
167
+ return {
168
+ errorType: "UnknownError",
169
+ errorMessage: error.message,
170
+ };
171
+ };
172
+ const getHumanReadableErrorMessage = (error, info) => {
173
+ // @ts-ignore
174
+ if (error.errors && error.errors.length > 0) {
175
+ // @ts-ignore
176
+ return getHumanReadableErrorMessage(error.errors[0], info);
177
+ }
178
+ let errorClassification = classifyErrorFromInfo(error, info);
179
+ if (errorClassification.errorType === "UnknownError") {
180
+ errorClassification = classifyPlaywrightError(error);
181
+ }
182
+ if (errorClassification.errorType === "UnknownError") {
183
+ errorClassification = classifyJSError(error);
184
+ }
185
+ return errorClassification;
186
+ };
187
+ export { getHumanReadableErrorMessage };
188
+ //# sourceMappingURL=error-messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-messages.js","sourceRoot":"","sources":["../../src/error-messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export interface InitScripts {
2
+ recorderCjs: string | null;
3
+ scripts: string[] | null;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=generation_scripts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generation_scripts.js","sourceRoot":"","sources":["../../src/generation_scripts.ts"],"names":[],"mappings":""}
package/lib/index.d.ts CHANGED
@@ -7,3 +7,4 @@ export * from "./browser_manager.js";
7
7
  export * from "./analyze_helper.js";
8
8
  export * from "./find_function.js";
9
9
  export * from "./utils.js";
10
+ export * from "./table.js";
package/lib/index.js CHANGED
@@ -7,4 +7,5 @@ export * from "./browser_manager.js";
7
7
  export * from "./analyze_helper.js";
8
8
  export * from "./find_function.js";
9
9
  export * from "./utils.js";
10
+ export * from "./table.js";
10
11
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -3,6 +3,7 @@ import { TestContext } from "./test_context.js";
3
3
  import { StableBrowser } from "./stable_browser.js";
4
4
  import { Browser as PlaywrightBrowser } from "playwright";
5
5
  import { Browser } from "./browser_manager.js";
6
- declare const getContext: (environment: Environment | null, headless: boolean | undefined, world: any, logger?: null, appName?: string | null, createStable?: boolean, stable?: StableBrowser | null, moveToRight?: number) => Promise<TestContext>;
6
+ import { InitScripts } from "./generation_scripts.js";
7
+ declare const getContext: (environment: Environment | null, headless: boolean | undefined, world: any, logger?: null, appName?: string | null, createStable?: boolean, stable?: StableBrowser | null, moveToRight?: number, reportFolder?: string | null, initScripts?: InitScripts | null) => Promise<TestContext>;
7
8
  declare const closeBrowser: (browser?: Browser | PlaywrightBrowser) => Promise<void>;
8
9
  export { getContext, closeBrowser };