automation_model 1.0.577-dev → 1.0.577-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.
- package/README.md +130 -0
- package/lib/api.js +36 -19
- package/lib/api.js.map +1 -1
- package/lib/auto_page.d.ts +4 -2
- package/lib/auto_page.js +105 -8
- package/lib/auto_page.js.map +1 -1
- package/lib/browser_manager.js +48 -24
- package/lib/browser_manager.js.map +1 -1
- package/lib/command_common.d.ts +4 -4
- package/lib/command_common.js +42 -20
- package/lib/command_common.js.map +1 -1
- package/lib/error-messages.js +18 -0
- package/lib/error-messages.js.map +1 -1
- package/lib/init_browser.d.ts +3 -2
- package/lib/init_browser.js +64 -11
- package/lib/init_browser.js.map +1 -1
- package/lib/locate_element.js +2 -2
- package/lib/locate_element.js.map +1 -1
- package/lib/network.d.ts +1 -1
- package/lib/network.js +45 -19
- package/lib/network.js.map +1 -1
- package/lib/stable_browser.d.ts +27 -7
- package/lib/stable_browser.js +755 -239
- package/lib/stable_browser.js.map +1 -1
- package/lib/table_helper.d.ts +19 -0
- package/lib/table_helper.js +116 -0
- package/lib/table_helper.js.map +1 -0
- package/lib/test_context.d.ts +3 -0
- package/lib/test_context.js +2 -0
- package/lib/test_context.js.map +1 -1
- package/lib/utils.d.ts +10 -3
- package/lib/utils.js +360 -21
- package/lib/utils.js.map +1 -1
- package/package.json +7 -8
- package/lib/scripts/find_text.js +0 -126
package/lib/network.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,SAAS,eAAe,CAAC,QAAa,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"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"}
|
package/lib/stable_browser.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { Browser, Page } from "playwright";
|
|
|
2
2
|
import { Params } from "./utils.js";
|
|
3
3
|
export declare const Types: {
|
|
4
4
|
CLICK: string;
|
|
5
|
+
WAIT_ELEMENT: string;
|
|
5
6
|
NAVIGATE: string;
|
|
6
7
|
FILL: string;
|
|
7
8
|
EXECUTE: string;
|
|
@@ -23,6 +24,7 @@ export declare const Types: {
|
|
|
23
24
|
UNCHECK: string;
|
|
24
25
|
EXTRACT: string;
|
|
25
26
|
CLOSE_PAGE: string;
|
|
27
|
+
TABLE_OPERATION: string;
|
|
26
28
|
SET_DATE_TIME: string;
|
|
27
29
|
SET_VIEWPORT: string;
|
|
28
30
|
VERIFY_VISUAL: string;
|
|
@@ -46,6 +48,7 @@ declare class StableBrowser {
|
|
|
46
48
|
appName: string;
|
|
47
49
|
tags: null;
|
|
48
50
|
isRecording: boolean;
|
|
51
|
+
initSnapshotTaken: boolean;
|
|
49
52
|
constructor(browser: Browser, page: Page, logger?: any, context?: any, world?: any);
|
|
50
53
|
registerEventListeners(context: any): void;
|
|
51
54
|
switchApp(appName: any): Promise<void>;
|
|
@@ -54,21 +57,25 @@ declare class StableBrowser {
|
|
|
54
57
|
goto(url: string, world?: null): Promise<void>;
|
|
55
58
|
_getLocator(locator: any, scope: any, _params: any): Promise<any>;
|
|
56
59
|
_locateElmentByTextClimbCss(scope: any, text: any, climb: any, css: any, _params: Params): Promise<string | undefined>;
|
|
57
|
-
_locateElementByText(scope: any, text1: any, tag1: any, regex1: boolean | undefined, partial1: any, _params: Params): Promise<
|
|
58
|
-
|
|
60
|
+
_locateElementByText(scope: any, text1: any, tag1: any, regex1: boolean | undefined, partial1: any, ignoreCase: boolean | undefined, _params: Params): Promise<{
|
|
61
|
+
elementCount: number;
|
|
62
|
+
randomToken: string;
|
|
63
|
+
}>;
|
|
64
|
+
_collectLocatorInformation(selectorHierarchy: any, index: number | undefined, scope: any, foundLocators: any, _params: Params, info: any, visibleOnly?: boolean, allowDisabled?: boolean | undefined, element_name?: null): Promise<void>;
|
|
59
65
|
closeUnexpectedPopups(info: any, _params: any): Promise<{
|
|
60
66
|
rerun: boolean;
|
|
61
67
|
}>;
|
|
62
|
-
_locate(selectors: any, info: any, _params?: Params, timeout: any): Promise<any>;
|
|
68
|
+
_locate(selectors: any, info: any, _params?: Params, timeout: any, allowDisabled?: boolean | undefined): Promise<any>;
|
|
63
69
|
_findFrameScope(selectors: any, timeout: number | undefined, info: any): Promise<any>;
|
|
64
70
|
_getDocumentBody(selectors: any, timeout: number | undefined, info: any): Promise<any>;
|
|
65
|
-
_locate_internal(selectors: any, info: any, _params?: Params, timeout?: number): Promise<any>;
|
|
66
|
-
_scanLocatorsGroup(locatorsGroup: any, scope: any, _params: any, info: any, visibleOnly: any): Promise<{
|
|
71
|
+
_locate_internal(selectors: any, info: any, _params?: Params, timeout?: number, allowDisabled?: boolean | undefined): Promise<any>;
|
|
72
|
+
_scanLocatorsGroup(locatorsGroup: any, scope: any, _params: any, info: any, visibleOnly: any, allowDisabled?: boolean | undefined, element_name: any): Promise<{
|
|
67
73
|
foundElements: any[];
|
|
68
74
|
}>;
|
|
69
75
|
simpleClick(elementDescription: any, _params?: Params, options?: {}, world?: null): Promise<void>;
|
|
70
76
|
simpleClickType(elementDescription: any, value: any, _params?: Params, options?: {}, world?: null): Promise<void>;
|
|
71
77
|
click(selectors: any, _params?: Params, options?: {}, world?: null): Promise<any>;
|
|
78
|
+
waitForElement(selectors: any, _params?: Params, options?: {}, world?: null): Promise<boolean>;
|
|
72
79
|
setCheck(selectors: any, checked?: boolean, _params?: Params, options?: {}, world?: null): Promise<any>;
|
|
73
80
|
hover(selectors: any, _params?: Params, options?: {}, world?: null): Promise<any>;
|
|
74
81
|
selectOption(selectors: any, values: any, _params?: null, options?: {}, world?: null): Promise<any>;
|
|
@@ -105,9 +112,9 @@ declare class StableBrowser {
|
|
|
105
112
|
}>;
|
|
106
113
|
containsPattern(selectors: any, pattern: any, text: any, _params?: null, options?: {}, world?: null): Promise<any>;
|
|
107
114
|
containsText(selectors: any, text: any, climb: any, _params?: null, options?: {}, world?: null): Promise<any>;
|
|
108
|
-
_getDataFile(world?: null): string;
|
|
109
115
|
waitForUserInput(message: any, world?: null): Promise<void>;
|
|
110
116
|
setTestData(testData: any, world?: null): void;
|
|
117
|
+
overwriteTestData(testData: any, world?: null): void;
|
|
111
118
|
_getDataFilePath(fileName: any): string;
|
|
112
119
|
_parseCSVSync(filePath: any): Promise<unknown>;
|
|
113
120
|
loadTestData(type: string, dataSelector: string, world?: null): {
|
|
@@ -128,23 +135,36 @@ declare class StableBrowser {
|
|
|
128
135
|
}>;
|
|
129
136
|
_highlightElements(scope: any, css: any): Promise<void>;
|
|
130
137
|
verifyPagePath(pathPart: any, options?: {}, world?: null): Promise<{} | undefined>;
|
|
131
|
-
|
|
138
|
+
verifyPageTitle(title: any, options?: {}, world?: null): Promise<{} | undefined>;
|
|
139
|
+
findTextInAllFrames(dateAlternatives: any, numberAlternatives: any, text: any, state: any, partial?: boolean, ignoreCase?: boolean): Promise<{
|
|
140
|
+
elementCount: number;
|
|
141
|
+
randomToken: string;
|
|
142
|
+
}[]>;
|
|
132
143
|
verifyTextExistInPage(text: any, options?: {}, world?: null): Promise<any>;
|
|
133
144
|
waitForTextToDisappear(text: any, options?: {}, world?: null): Promise<any>;
|
|
134
145
|
verifyTextRelatedToText(textAnchor: string, climb: number, textToVerify: string, options?: {}, world?: any): Promise<any>;
|
|
146
|
+
findRelatedTextInAllFrames(textAnchor: string, climb: number, textToVerify: string, params?: Params, options?: {}, world?: any): Promise<{
|
|
147
|
+
elementCount: number;
|
|
148
|
+
randomToken: string;
|
|
149
|
+
}[]>;
|
|
135
150
|
visualVerification(text: any, options?: {}, world?: null): Promise<{} | undefined>;
|
|
136
151
|
verifyTableData(selectors: any, data: any, _params?: null, options?: {}, world?: null): Promise<void>;
|
|
137
152
|
getTableData(selectors: any, _params?: null, options?: {}, world?: null): Promise<any>;
|
|
138
153
|
analyzeTable(selectors: any, query: any, operator: any, value: any, _params?: null, options?: {}, world?: null): Promise<{} | undefined>;
|
|
139
154
|
_replaceWithLocalData(value: any, world: any, _decrypt?: boolean, totpWait?: boolean): Promise<string>;
|
|
140
155
|
_getLoadTimeout(options: any): number;
|
|
156
|
+
_getFindElementTimeout(options: any): any;
|
|
157
|
+
saveStoreState(path?: string | null, world?: any): Promise<void>;
|
|
158
|
+
restoreSaveState(path?: string | null, world?: any): Promise<void>;
|
|
141
159
|
waitForPageLoad(options?: {}, world?: null): Promise<void>;
|
|
142
160
|
closePage(options?: {}, world?: null): Promise<void>;
|
|
161
|
+
tableCellOperation(headerText: string, rowText: string, options: any, _params: Params, world?: null): Promise<void>;
|
|
143
162
|
saveTestDataAsGlobal(options: any, world: any): void;
|
|
144
163
|
setViewportSize(width: number, hight: number, options?: {}, world?: null): Promise<void>;
|
|
145
164
|
reloadPage(options?: {}, world?: null): Promise<void>;
|
|
146
165
|
scrollIfNeeded(element: any, info: any): Promise<void>;
|
|
147
166
|
beforeStep(world: any, step: any): Promise<void>;
|
|
167
|
+
getAriaSnapshot(): Promise<string | null>;
|
|
148
168
|
afterStep(world: any, step: any): Promise<void>;
|
|
149
169
|
}
|
|
150
170
|
type JsonTimestamp = number;
|