automation_model 1.0.463-dev → 1.0.463

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 (77) hide show
  1. package/README.md +133 -0
  2. package/lib/analyze_helper.js.map +1 -1
  3. package/lib/api.d.ts +43 -2
  4. package/lib/api.js +240 -49
  5. package/lib/api.js.map +1 -1
  6. package/lib/auto_page.d.ts +7 -2
  7. package/lib/auto_page.js +282 -26
  8. package/lib/auto_page.js.map +1 -1
  9. package/lib/browser_manager.d.ts +6 -3
  10. package/lib/browser_manager.js +163 -47
  11. package/lib/browser_manager.js.map +1 -1
  12. package/lib/bruno.d.ts +2 -0
  13. package/lib/bruno.js +381 -0
  14. package/lib/bruno.js.map +1 -0
  15. package/lib/check_performance.d.ts +1 -0
  16. package/lib/check_performance.js +57 -0
  17. package/lib/check_performance.js.map +1 -0
  18. package/lib/command_common.d.ts +6 -0
  19. package/lib/command_common.js +218 -0
  20. package/lib/command_common.js.map +1 -0
  21. package/lib/date_time.js.map +1 -1
  22. package/lib/drawRect.js.map +1 -1
  23. package/lib/environment.d.ts +1 -0
  24. package/lib/environment.js +6 -3
  25. package/lib/environment.js.map +1 -1
  26. package/lib/error-messages.d.ts +6 -0
  27. package/lib/error-messages.js +206 -0
  28. package/lib/error-messages.js.map +1 -0
  29. package/lib/file_checker.d.ts +1 -0
  30. package/lib/file_checker.js +165 -0
  31. package/lib/file_checker.js.map +1 -0
  32. package/lib/find_function.js.map +1 -1
  33. package/lib/generation_scripts.d.ts +4 -0
  34. package/lib/generation_scripts.js +2 -0
  35. package/lib/generation_scripts.js.map +1 -0
  36. package/lib/index.d.ts +3 -0
  37. package/lib/index.js +4 -0
  38. package/lib/index.js.map +1 -1
  39. package/lib/init_browser.d.ts +4 -3
  40. package/lib/init_browser.js +159 -82
  41. package/lib/init_browser.js.map +1 -1
  42. package/lib/locate_element.d.ts +7 -0
  43. package/lib/locate_element.js +215 -0
  44. package/lib/locate_element.js.map +1 -0
  45. package/lib/locator.d.ts +37 -0
  46. package/lib/locator.js +172 -0
  47. package/lib/locator.js.map +1 -1
  48. package/lib/locator_log.d.ts +26 -0
  49. package/lib/locator_log.js +69 -0
  50. package/lib/locator_log.js.map +1 -0
  51. package/lib/network.d.ts +5 -0
  52. package/lib/network.js +471 -0
  53. package/lib/network.js.map +1 -0
  54. package/lib/route.d.ts +21 -0
  55. package/lib/route.js +535 -0
  56. package/lib/route.js.map +1 -0
  57. package/lib/scripts/axe.mini.js +12 -0
  58. package/lib/snapshot_validation.d.ts +37 -0
  59. package/lib/snapshot_validation.js +357 -0
  60. package/lib/snapshot_validation.js.map +1 -0
  61. package/lib/stable_browser.d.ts +157 -55
  62. package/lib/stable_browser.js +2760 -1296
  63. package/lib/stable_browser.js.map +1 -1
  64. package/lib/table.d.ts +15 -0
  65. package/lib/table.js +257 -0
  66. package/lib/table.js.map +1 -0
  67. package/lib/table_analyze.js.map +1 -1
  68. package/lib/table_helper.d.ts +19 -0
  69. package/lib/table_helper.js +130 -0
  70. package/lib/table_helper.js.map +1 -0
  71. package/lib/test_context.d.ts +6 -0
  72. package/lib/test_context.js +16 -12
  73. package/lib/test_context.js.map +1 -1
  74. package/lib/utils.d.ts +36 -2
  75. package/lib/utils.js +709 -13
  76. package/lib/utils.js.map +1 -1
  77. package/package.json +22 -12
@@ -1,5 +1,52 @@
1
1
  import type { Browser, Page } from "playwright";
2
- type Params = Record<string, string>;
2
+ import { Params } from "./utils.js";
3
+ export declare const Types: {
4
+ CLICK: string;
5
+ WAIT_ELEMENT: string;
6
+ NAVIGATE: string;
7
+ GO_BACK: string;
8
+ GO_FORWARD: string;
9
+ FILL: string;
10
+ EXECUTE: string;
11
+ OPEN: string;
12
+ COMPLETE: string;
13
+ ASK: string;
14
+ GET_PAGE_STATUS: string;
15
+ CLICK_ROW_ACTION: string;
16
+ VERIFY_ELEMENT_CONTAINS_TEXT: string;
17
+ VERIFY_PAGE_CONTAINS_TEXT: string;
18
+ VERIFY_PAGE_CONTAINS_NO_TEXT: string;
19
+ ANALYZE_TABLE: string;
20
+ SELECT: string;
21
+ VERIFY_PROPERTY: string;
22
+ VERIFY_PAGE_PATH: string;
23
+ VERIFY_PAGE_TITLE: string;
24
+ TYPE_PRESS: string;
25
+ PRESS: string;
26
+ HOVER: string;
27
+ CHECK: string;
28
+ UNCHECK: string;
29
+ EXTRACT: string;
30
+ EXTRACT_PROPERTY: string;
31
+ CLOSE_PAGE: string;
32
+ TABLE_OPERATION: string;
33
+ SET_DATE_TIME: string;
34
+ SET_VIEWPORT: string;
35
+ VERIFY_VISUAL: string;
36
+ LOAD_DATA: string;
37
+ SET_INPUT: string;
38
+ WAIT_FOR_TEXT_TO_DISAPPEAR: string;
39
+ VERIFY_ATTRIBUTE: string;
40
+ VERIFY_TEXT_WITH_RELATION: string;
41
+ BRUNO: string;
42
+ VERIFY_FILE_EXISTS: string;
43
+ SET_INPUT_FILES: string;
44
+ SNAPSHOT_VALIDATION: string;
45
+ REPORT_COMMAND: string;
46
+ STEP_COMPLETE: string;
47
+ SLEEP: string;
48
+ CONDITIONAL_WAIT: string;
49
+ };
3
50
  export declare const apps: {};
4
51
  declare class StableBrowser {
5
52
  browser: Browser;
@@ -7,45 +54,58 @@ declare class StableBrowser {
7
54
  logger: any;
8
55
  context: any;
9
56
  world?: any;
57
+ fastMode: boolean;
58
+ stepTags: string[];
10
59
  project_path: null;
11
60
  webLogFile: null;
12
61
  networkLogger: null;
13
62
  configuration: null;
14
63
  appName: string;
15
- constructor(browser: Browser, page: Page, logger?: any, context?: any, world?: any);
64
+ tags: null;
65
+ isRecording: boolean;
66
+ initSnapshotTaken: boolean;
67
+ onlyFailuresScreenshot: boolean;
68
+ constructor(browser: Browser, page: Page, logger?: any, context?: any, world?: any, fastMode?: boolean, stepTags?: string[]);
16
69
  registerEventListeners(context: any): void;
17
70
  switchApp(appName: any): Promise<void>;
18
- _copyContext(from: any, to: any): void;
19
- getWebLogFile(logFolder: string): string;
71
+ switchTab(tabTitleOrIndex: number | string): Promise<void>;
20
72
  registerConsoleLogListener(page: Page, context: any): void;
21
73
  registerRequestListener(page: Page, context: any, logFile: string): void;
22
- goto(url: string): Promise<void>;
23
- _validateSelectors(selectors: any): void;
24
- _fixUsingParams(text: any, _params: Params): any;
25
- _fixLocatorUsingParams(locator: any, _params: Params): any;
26
- _isObject(value: any): any;
27
- scanAndManipulate(currentObj: any, _params: Params): void;
28
- _getLocator(locator: any, scope: any, _params: any): any;
74
+ goto(url: string, world?: null): Promise<void>;
75
+ goBack(options: any, world?: null): Promise<void>;
76
+ goForward(options: any, world?: null): Promise<void>;
77
+ _getLocator(locator: any, scope: any, _params: any): Promise<any>;
29
78
  _locateElmentByTextClimbCss(scope: any, text: any, climb: any, css: any, _params: Params): Promise<string | undefined>;
30
- _locateElementByText(scope: any, text1: any, tag1: any, regex1: boolean | undefined, partial1: any, _params: Params): Promise<any>;
31
- _collectLocatorInformation(selectorHierarchy: any, index: number | undefined, scope: any, foundLocators: any, _params: Params, info: any, visibleOnly?: boolean): Promise<void>;
79
+ _locateElementByText(scope: any, text1: any, tag1: any, regex1: boolean | undefined, partial1: any, ignoreCase: boolean | undefined, _params: Params): Promise<{
80
+ elementCount: number;
81
+ randomToken: string;
82
+ }>;
83
+ _collectLocatorInformation(selectorHierarchy: any, index: number | undefined, scope: any, foundLocators: any, _params: Params, info: any, visibleOnly?: boolean, allowDisabled?: boolean | undefined, element_name?: null, logErrors?: boolean | undefined): Promise<void>;
32
84
  closeUnexpectedPopups(info: any, _params: any): Promise<{
33
85
  rerun: boolean;
34
86
  }>;
35
- _locate(selectors: any, info: any, _params?: Params, timeout?: number): Promise<any>;
36
- _locate_internal(selectors: any, info: any, _params?: Params, timeout?: number): Promise<any>;
37
- _scanLocatorsGroup(locatorsGroup: any, scope: any, _params: any, info: any, visibleOnly: any): Promise<{
87
+ getFilePath(): string | null;
88
+ getFullElementLocators(selectors: any, filePath: any): any;
89
+ _locate(selectors: any, info: any, _params?: Params, timeout: any, allowDisabled?: boolean | undefined): Promise<any>;
90
+ _findFrameScope(selectors: any, timeout: number | undefined, info: any): Promise<any>;
91
+ _getDocumentBody(selectors: any, timeout: number | undefined, info: any): Promise<any>;
92
+ _locate_internal(selectors: any, info: any, _params?: Params, timeout?: number, allowDisabled?: boolean | undefined): Promise<any>;
93
+ _scanLocatorsGroup(locatorsGroup: any, scope: any, _params: any, info: any, visibleOnly: any, allowDisabled?: boolean | undefined, element_name: any, logErrors?: boolean | undefined): Promise<{
38
94
  foundElements: any[];
39
95
  }>;
40
- click(selectors: any, _params?: Params, options?: {}, world?: null): Promise<{}>;
41
- setCheck(selectors: any, checked?: boolean, _params?: Params, options?: {}, world?: null): Promise<{}>;
42
- hover(selectors: any, _params?: Params, options?: {}, world?: null): Promise<{}>;
43
- selectOption(selectors: any, values: any, _params?: null, options?: {}, world?: null): Promise<{}>;
44
- type(_value: any, _params?: null, options?: {}, world?: null): Promise<{}>;
96
+ simpleClick(elementDescription: any, _params?: Params, options?: {}, world?: null): Promise<void>;
97
+ simpleClickType(elementDescription: any, value: any, _params?: Params, options?: {}, world?: null): Promise<void>;
98
+ click(selectors: any, _params?: Params, options?: {}, world?: null): Promise<any>;
99
+ waitForElement(selectors: any, _params?: Params, options?: {}, world?: null): Promise<boolean>;
100
+ setCheck(selectors: any, checked?: boolean, _params?: Params, options?: {}, world?: null): Promise<any>;
101
+ hover(selectors: any, _params?: Params, options?: {}, world?: null): Promise<any>;
102
+ selectOption(selectors: any, values: any, _params?: null, options?: {}, world?: null): Promise<any>;
103
+ type(_value: any, _params?: null, options?: {}, world?: null): Promise<any>;
45
104
  setInputValue(selectors: any, value: any, _params?: null, options?: {}, world?: null): Promise<void>;
46
105
  setDateTime(selectors: any, value: any, format?: null, enter?: boolean, _params?: null, options?: {}, world?: null): Promise<void>;
47
- clickType(selectors: any, _value: any, enter?: boolean, _params?: null, options?: {}, world?: null): Promise<{}>;
48
- fill(selectors: any, value: any, enter?: boolean, _params?: null, options?: {}, world?: null): Promise<{}>;
106
+ clickType(selectors: any, _value: any, enter?: boolean, _params?: null, options?: {}, world?: null): Promise<any>;
107
+ fill(selectors: any, value: any, enter?: boolean, _params?: null, options?: {}, world?: null): Promise<any>;
108
+ setInputFiles(selectors: any, files: any, _params?: null, options?: {}, world?: null): Promise<any>;
49
109
  getText(selectors: any, _params?: null, options?: {}, info?: {}, world?: null): Promise<{
50
110
  text: any;
51
111
  screenshotId: any;
@@ -72,11 +132,12 @@ declare class StableBrowser {
72
132
  value: any;
73
133
  element?: undefined;
74
134
  }>;
75
- containsPattern(selectors: any, pattern: any, text: any, _params?: null, options?: {}, world?: null): Promise<{}>;
76
- containsText(selectors: any, text: any, climb: any, _params?: null, options?: {}, world?: null): Promise<{}>;
77
- _getDataFile(world?: null): string;
135
+ containsPattern(selectors: any, pattern: any, text: any, _params?: null, options?: {}, world?: null): Promise<any>;
136
+ containsText(selectors: any, text: any, climb: any, _params?: null, options?: {}, world?: null): Promise<any>;
137
+ snapshotValidation(frameSelectors: any, referanceSnapshot: any, _params?: null, options?: {}, world?: null): Promise<any>;
78
138
  waitForUserInput(message: any, world?: null): Promise<void>;
79
139
  setTestData(testData: any, world?: null): void;
140
+ overwriteTestData(testData: any, world?: null): void;
80
141
  _getDataFilePath(fileName: any): string;
81
142
  _parseCSVSync(filePath: any): Promise<unknown>;
82
143
  loadTestData(type: string, dataSelector: string, world?: null): {
@@ -88,47 +149,88 @@ declare class StableBrowser {
88
149
  getTestData(world?: null): {};
89
150
  _screenShot(options?: {}, world?: null, info?: null): Promise<{}>;
90
151
  takeScreenshot(screenshotPath: any): Promise<any>;
91
- verifyElementExistInPage(selectors: any, _params?: null, options?: {}, world?: null): Promise<{}>;
92
- extractAttribute(selectors: any, attribute: any, variable: any, _params?: null, options?: {}, world?: null): Promise<{}>;
152
+ verifyElementExistInPage(selectors: any, _params?: null, options?: {}, world?: null): Promise<any>;
153
+ extractAttribute(selectors: any, attribute: any, variable: any, _params?: null, options?: {}, world?: null): Promise<any>;
154
+ extractProperty(selectors: any, property: any, variable: any, _params?: null, options?: {}, world?: null): Promise<any>;
155
+ verifyAttribute(selectors: any, attribute: any, value: any, _params?: null, options?: {}, world?: null): Promise<any>;
156
+ verifyProperty(selectors: any, property: any, value: any, _params?: null, options?: {}, world?: null): Promise<any>;
157
+ conditionalWait(selectors: any, condition: any, timeout?: number, _params?: null, options?: {}, world?: null): Promise<{}>;
93
158
  extractEmailData(emailAddress: any, options: any, world: any): Promise<{
94
159
  emailUrl: any;
95
160
  emailCode: any;
96
161
  }>;
97
162
  _highlightElements(scope: any, css: any): Promise<void>;
98
- verifyPagePath(pathPart: any, options?: {}, world?: null): Promise<{} | undefined>;
99
- verifyTextExistInPage(text: any, options?: {}, world?: null): Promise<{}>;
100
- _getServerUrl(): string;
101
- visualVerification(text: any, options?: {}, world?: null): Promise<{}>;
163
+ _matcher(text: any): {
164
+ matcher: any;
165
+ queryText: any;
166
+ };
167
+ _getDomain(url: string): string;
168
+ /**
169
+ * Verify the page path matches the given path.
170
+ * @param {string} pathPart - The path to verify.
171
+ * @param {object} options - Options for verification.
172
+ * @param {object} world - The world context.
173
+ * @returns {Promise<object>} - The state info after verification.
174
+ */
175
+ verifyPagePath(pathPart: string, options?: object, world?: object): Promise<object>;
176
+ /**
177
+ * Verify the page title matches the given title.
178
+ * @param {string} title - The title to verify.
179
+ * @param {object} options - Options for verification.
180
+ * @param {object} world - The world context.
181
+ * @returns {Promise<object>} - The state info after verification.
182
+ */
183
+ verifyPageTitle(title: string, options?: object, world?: object): Promise<object>;
184
+ findTextInAllFrames(dateAlternatives: any, numberAlternatives: any, text: any, state: any, partial?: boolean, ignoreCase?: boolean): Promise<{
185
+ elementCount: number;
186
+ randomToken: string;
187
+ }[]>;
188
+ verifyTextExistInPage(text: any, options?: {}, world?: null): Promise<any>;
189
+ waitForTextToDisappear(text: any, options?: {}, world?: null): Promise<any>;
190
+ verifyTextRelatedToText(textAnchor: string, climb: number, textToVerify: string, options?: {}, world?: any): Promise<any>;
191
+ findRelatedTextInAllFrames(textAnchor: string, climb: number, textToVerify: string, params?: Params, options?: {}, world?: any): Promise<{
192
+ elementCount: number;
193
+ randomToken: string;
194
+ }[]>;
195
+ visualVerification(text: any, options?: {}, world?: null): Promise<{} | undefined>;
102
196
  verifyTableData(selectors: any, data: any, _params?: null, options?: {}, world?: null): Promise<void>;
103
197
  getTableData(selectors: any, _params?: null, options?: {}, world?: null): Promise<any>;
104
- analyzeTable(selectors: any, query: any, operator: any, value: any, _params?: null, options?: {}, world?: null): Promise<{}>;
105
- _replaceWithLocalData(value: any, world: any, _decrypt?: boolean, totpWait?: boolean): Promise<any>;
198
+ analyzeTable(selectors: any, query: any, operator: any, value: any, _params?: null, options?: {}, world?: null): Promise<{} | undefined>;
199
+ /**
200
+ * Explicit wait/sleep function that pauses execution for a specified duration
201
+ * @param duration - Duration to sleep in milliseconds (default: 1000ms)
202
+ * @param options - Optional configuration object
203
+ * @param world - Optional world context
204
+ * @returns Promise that resolves after the specified duration
205
+ */
206
+ sleep(duration?: number, options?: {}, world?: null): Promise<any>;
207
+ _replaceWithLocalData(value: any, world: any, _decrypt?: boolean, totpWait?: boolean): Promise<string>;
106
208
  _getLoadTimeout(options: any): number;
209
+ _getFindElementTimeout(options: any): any;
210
+ saveStoreState(path?: string | null, world?: any): Promise<void>;
211
+ restoreSaveState(path?: string | null, world?: any): Promise<void>;
107
212
  waitForPageLoad(options?: {}, world?: null): Promise<void>;
108
213
  closePage(options?: {}, world?: null): Promise<void>;
214
+ tableCellOperation(headerText: string, rowText: string, options: any, _params: Params, world?: null): Promise<void>;
215
+ saveTestDataAsGlobal(options: any, world: any): void;
109
216
  setViewportSize(width: number, hight: number, options?: {}, world?: null): Promise<void>;
110
217
  reloadPage(options?: {}, world?: null): Promise<void>;
111
218
  scrollIfNeeded(element: any, info: any): Promise<void>;
112
- _reportToWorld(world: any, properties: JsonCommandReport): void;
219
+ beforeScenario(world: any, scenario: any): Promise<void>;
220
+ afterScenario(world: any, scenario: any): Promise<void>;
221
+ beforeStep(world: any, step: any): Promise<void>;
222
+ setStepTags(tags: string[]): void;
223
+ getAriaSnapshot(): Promise<string | null>;
224
+ /**
225
+ * Sends command with custom payload to report.
226
+ * @param commandText - Title of the command to be shown in the report.
227
+ * @param commandStatus - Status of the command (e.g. "PASSED", "FAILED").
228
+ * @param content - Content of the command to be shown in the report.
229
+ * @param options - Options for the command. Example: { type: "json", screenshot: true }
230
+ * @param world - Optional world context.
231
+ * @public
232
+ */
233
+ addCommandToReport(commandText: string, commandStatus: "PASSED" | "FAILED", content: string, options?: any, world?: any): Promise<void>;
234
+ afterStep(world: any, step: any): Promise<void>;
113
235
  }
114
- type JsonTimestamp = number;
115
- type JsonResultPassed = {
116
- status: "PASSED";
117
- startTime: JsonTimestamp;
118
- endTime: JsonTimestamp;
119
- };
120
- type JsonResultFailed = {
121
- status: "FAILED";
122
- startTime: JsonTimestamp;
123
- endTime: JsonTimestamp;
124
- message?: string;
125
- };
126
- type JsonCommandResult = JsonResultPassed | JsonResultFailed;
127
- type JsonCommandReport = {
128
- type: string;
129
- value?: string;
130
- text: string;
131
- screenshotId?: string;
132
- result: JsonCommandResult;
133
- };
134
236
  export { StableBrowser };