@umbraco/playwright-testhelpers 17.1.0-beta.6 → 17.1.0-beta.7

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 (147) hide show
  1. package/dist/lib/helpers/BaseApiHelper.d.ts +19 -0
  2. package/dist/lib/helpers/BaseApiHelper.js +87 -0
  3. package/dist/lib/helpers/BaseApiHelper.js.map +1 -0
  4. package/dist/lib/helpers/ConstantHelper.d.ts +0 -17
  5. package/dist/lib/helpers/ConstantHelper.js +0 -17
  6. package/dist/lib/helpers/ConstantHelper.js.map +1 -1
  7. package/dist/lib/helpers/ContentRenderUiHelper.js +3 -3
  8. package/dist/lib/helpers/ContentRenderUiHelper.js.map +1 -1
  9. package/dist/lib/helpers/ContentUiHelper.js +487 -353
  10. package/dist/lib/helpers/ContentUiHelper.js.map +1 -1
  11. package/dist/lib/helpers/CurrentUserProfileUiHelper.js +10 -4
  12. package/dist/lib/helpers/CurrentUserProfileUiHelper.js.map +1 -1
  13. package/dist/lib/helpers/DataTypeApiHelper.d.ts +9 -21
  14. package/dist/lib/helpers/DataTypeApiHelper.js +32 -125
  15. package/dist/lib/helpers/DataTypeApiHelper.js.map +1 -1
  16. package/dist/lib/helpers/DataTypeUiHelper.js +332 -193
  17. package/dist/lib/helpers/DataTypeUiHelper.js.map +1 -1
  18. package/dist/lib/helpers/DictionaryApiHelper.d.ts +8 -15
  19. package/dist/lib/helpers/DictionaryApiHelper.js +49 -77
  20. package/dist/lib/helpers/DictionaryApiHelper.js.map +1 -1
  21. package/dist/lib/helpers/DictionaryUiHelper.js +23 -17
  22. package/dist/lib/helpers/DictionaryUiHelper.js.map +1 -1
  23. package/dist/lib/helpers/DocumentBlueprintApiHelper.d.ts +7 -13
  24. package/dist/lib/helpers/DocumentBlueprintApiHelper.js +44 -69
  25. package/dist/lib/helpers/DocumentBlueprintApiHelper.js.map +1 -1
  26. package/dist/lib/helpers/DocumentBlueprintUiHelper.js +10 -8
  27. package/dist/lib/helpers/DocumentBlueprintUiHelper.js.map +1 -1
  28. package/dist/lib/helpers/DocumentTypeApiHelper.d.ts +4 -18
  29. package/dist/lib/helpers/DocumentTypeApiHelper.js +4 -134
  30. package/dist/lib/helpers/DocumentTypeApiHelper.js.map +1 -1
  31. package/dist/lib/helpers/DocumentTypeUiHelper.js +34 -22
  32. package/dist/lib/helpers/DocumentTypeUiHelper.js.map +1 -1
  33. package/dist/lib/helpers/ExamineManagementUiHelper.js +6 -5
  34. package/dist/lib/helpers/ExamineManagementUiHelper.js.map +1 -1
  35. package/dist/lib/helpers/FormsUiHelper.js +159 -119
  36. package/dist/lib/helpers/FormsUiHelper.js.map +1 -1
  37. package/dist/lib/helpers/HealthCheckUiHelper.js +7 -7
  38. package/dist/lib/helpers/HealthCheckUiHelper.js.map +1 -1
  39. package/dist/lib/helpers/LanguageApiHelper.d.ts +10 -12
  40. package/dist/lib/helpers/LanguageApiHelper.js +34 -35
  41. package/dist/lib/helpers/LanguageApiHelper.js.map +1 -1
  42. package/dist/lib/helpers/LanguageUiHelper.js +19 -16
  43. package/dist/lib/helpers/LanguageUiHelper.js.map +1 -1
  44. package/dist/lib/helpers/LogViewerUiHelper.js +31 -22
  45. package/dist/lib/helpers/LogViewerUiHelper.js.map +1 -1
  46. package/dist/lib/helpers/LoginUiHelper.js +7 -4
  47. package/dist/lib/helpers/LoginUiHelper.js.map +1 -1
  48. package/dist/lib/helpers/MediaTypeApiHelper.d.ts +4 -18
  49. package/dist/lib/helpers/MediaTypeApiHelper.js +4 -134
  50. package/dist/lib/helpers/MediaTypeApiHelper.js.map +1 -1
  51. package/dist/lib/helpers/MediaTypeUiHelper.js +17 -11
  52. package/dist/lib/helpers/MediaTypeUiHelper.js.map +1 -1
  53. package/dist/lib/helpers/MediaUiHelper.js +45 -36
  54. package/dist/lib/helpers/MediaUiHelper.js.map +1 -1
  55. package/dist/lib/helpers/MemberApiHelper.d.ts +4 -12
  56. package/dist/lib/helpers/MemberApiHelper.js +6 -54
  57. package/dist/lib/helpers/MemberApiHelper.js.map +1 -1
  58. package/dist/lib/helpers/MemberGroupApiHelper.d.ts +6 -11
  59. package/dist/lib/helpers/MemberGroupApiHelper.js +20 -35
  60. package/dist/lib/helpers/MemberGroupApiHelper.js.map +1 -1
  61. package/dist/lib/helpers/MemberGroupUiHelper.js +16 -13
  62. package/dist/lib/helpers/MemberGroupUiHelper.js.map +1 -1
  63. package/dist/lib/helpers/MemberTypeApiHelper.d.ts +5 -12
  64. package/dist/lib/helpers/MemberTypeApiHelper.js +16 -49
  65. package/dist/lib/helpers/MemberTypeApiHelper.js.map +1 -1
  66. package/dist/lib/helpers/MemberTypeUiHelper.js +3 -2
  67. package/dist/lib/helpers/MemberTypeUiHelper.js.map +1 -1
  68. package/dist/lib/helpers/MemberUiHelper.js +43 -25
  69. package/dist/lib/helpers/MemberUiHelper.js.map +1 -1
  70. package/dist/lib/helpers/ModelsBuilderUiHelper.js +3 -2
  71. package/dist/lib/helpers/ModelsBuilderUiHelper.js.map +1 -1
  72. package/dist/lib/helpers/PackageApiHelper.d.ts +5 -4
  73. package/dist/lib/helpers/PackageApiHelper.js +47 -75
  74. package/dist/lib/helpers/PackageApiHelper.js.map +1 -1
  75. package/dist/lib/helpers/PackageUiHelper.js +36 -30
  76. package/dist/lib/helpers/PackageUiHelper.js.map +1 -1
  77. package/dist/lib/helpers/PartialViewApiHelper.d.ts +5 -20
  78. package/dist/lib/helpers/PartialViewApiHelper.js +12 -146
  79. package/dist/lib/helpers/PartialViewApiHelper.js.map +1 -1
  80. package/dist/lib/helpers/PartialViewUiHelper.js +17 -14
  81. package/dist/lib/helpers/PartialViewUiHelper.js.map +1 -1
  82. package/dist/lib/helpers/PathBasedTreeApiHelper.d.ts +32 -0
  83. package/dist/lib/helpers/PathBasedTreeApiHelper.js +164 -0
  84. package/dist/lib/helpers/PathBasedTreeApiHelper.js.map +1 -0
  85. package/dist/lib/helpers/ProfilingUiHelper.js +5 -3
  86. package/dist/lib/helpers/ProfilingUiHelper.js.map +1 -1
  87. package/dist/lib/helpers/PublishedStatusUiHelper.js +8 -7
  88. package/dist/lib/helpers/PublishedStatusUiHelper.js.map +1 -1
  89. package/dist/lib/helpers/RedirectManagementUiHelper.js +12 -7
  90. package/dist/lib/helpers/RedirectManagementUiHelper.js.map +1 -1
  91. package/dist/lib/helpers/RelationTypeApiHelper.d.ts +7 -12
  92. package/dist/lib/helpers/RelationTypeApiHelper.js +28 -49
  93. package/dist/lib/helpers/RelationTypeApiHelper.js.map +1 -1
  94. package/dist/lib/helpers/RelationTypeUiHelper.js +16 -13
  95. package/dist/lib/helpers/RelationTypeUiHelper.js.map +1 -1
  96. package/dist/lib/helpers/ScriptApiHelper.d.ts +6 -22
  97. package/dist/lib/helpers/ScriptApiHelper.js +12 -165
  98. package/dist/lib/helpers/ScriptApiHelper.js.map +1 -1
  99. package/dist/lib/helpers/ScriptUiHelper.js +13 -9
  100. package/dist/lib/helpers/ScriptUiHelper.js.map +1 -1
  101. package/dist/lib/helpers/StylesheetApiHelper.d.ts +5 -20
  102. package/dist/lib/helpers/StylesheetApiHelper.js +13 -154
  103. package/dist/lib/helpers/StylesheetApiHelper.js.map +1 -1
  104. package/dist/lib/helpers/StylesheetUiHelper.js +14 -9
  105. package/dist/lib/helpers/StylesheetUiHelper.js.map +1 -1
  106. package/dist/lib/helpers/TelemetryDataUiHelper.js +3 -2
  107. package/dist/lib/helpers/TelemetryDataUiHelper.js.map +1 -1
  108. package/dist/lib/helpers/TemplateApiHelper.d.ts +8 -15
  109. package/dist/lib/helpers/TemplateApiHelper.js +51 -83
  110. package/dist/lib/helpers/TemplateApiHelper.js.map +1 -1
  111. package/dist/lib/helpers/TemplateUiHelper.js +25 -19
  112. package/dist/lib/helpers/TemplateUiHelper.js.map +1 -1
  113. package/dist/lib/helpers/TreeApiHelper.d.ts +15 -0
  114. package/dist/lib/helpers/TreeApiHelper.js +116 -0
  115. package/dist/lib/helpers/TreeApiHelper.js.map +1 -0
  116. package/dist/lib/helpers/UiBaseLocators.d.ts +228 -230
  117. package/dist/lib/helpers/UiBaseLocators.js +871 -834
  118. package/dist/lib/helpers/UiBaseLocators.js.map +1 -1
  119. package/dist/lib/helpers/UserGroupApiHelper.d.ts +3 -13
  120. package/dist/lib/helpers/UserGroupApiHelper.js +3 -69
  121. package/dist/lib/helpers/UserGroupApiHelper.js.map +1 -1
  122. package/dist/lib/helpers/UserGroupUiHelper.js +49 -32
  123. package/dist/lib/helpers/UserGroupUiHelper.js.map +1 -1
  124. package/dist/lib/helpers/UserUiHelper.js +46 -43
  125. package/dist/lib/helpers/UserUiHelper.js.map +1 -1
  126. package/dist/lib/helpers/VariantBasedApiHelper.d.ts +23 -0
  127. package/dist/lib/helpers/VariantBasedApiHelper.js +81 -0
  128. package/dist/lib/helpers/VariantBasedApiHelper.js.map +1 -0
  129. package/dist/lib/helpers/WebhookApiHelper.d.ts +1 -0
  130. package/dist/lib/helpers/WebhookApiHelper.js +10 -11
  131. package/dist/lib/helpers/WebhookApiHelper.js.map +1 -1
  132. package/dist/lib/helpers/WebhookUiHelper.js +27 -11
  133. package/dist/lib/helpers/WebhookUiHelper.js.map +1 -1
  134. package/dist/lib/helpers/WelcomeDashboardUiHelper.js +1 -1
  135. package/dist/lib/helpers/WelcomeDashboardUiHelper.js.map +1 -1
  136. package/dist/lib/helpers/differentAppSettingsHelpers/ExternalLoginUiHelpers.js +9 -4
  137. package/dist/lib/helpers/differentAppSettingsHelpers/ExternalLoginUiHelpers.js.map +1 -1
  138. package/dist/lib/helpers/differentAppSettingsHelpers/InstallUiHelper.js +10 -5
  139. package/dist/lib/helpers/differentAppSettingsHelpers/InstallUiHelper.js.map +1 -1
  140. package/dist/lib/helpers/index.d.ts +4 -1
  141. package/dist/lib/helpers/index.js +9 -3
  142. package/dist/lib/helpers/index.js.map +1 -1
  143. package/dist/tsconfig.tsbuildinfo +1 -1
  144. package/package.json +1 -1
  145. package/dist/lib/helpers/BasePage.d.ts +0 -449
  146. package/dist/lib/helpers/BasePage.js +0 -547
  147. package/dist/lib/helpers/BasePage.js.map +0 -1
@@ -1,449 +0,0 @@
1
- import { Locator, Page } from "@playwright/test";
2
- /**
3
- * Base page class providing common UI interaction methods.
4
- * All methods follow best practices for reliability:
5
- * - click: Always checks element visibility before clicking
6
- * - enterText: Always clears before filling text
7
- * - select: Waits for element visibility before selecting
8
- *
9
- * @example
10
- * ```typescript
11
- * class MyPage extends BasePage {
12
- * readonly submitBtn: Locator;
13
- *
14
- * constructor(page: Page) {
15
- * super(page);
16
- * this.submitBtn = page.getByRole('button', {name: 'Submit'});
17
- * }
18
- *
19
- * async submit() {
20
- * await this.click(this.submitBtn);
21
- * }
22
- * }
23
- * ```
24
- */
25
- export declare class BasePage {
26
- readonly page: Page;
27
- constructor(page: Page);
28
- /**
29
- * Clicks an element after verifying it is visible.
30
- * @param locator - The element to click
31
- * @param options - Optional click configuration
32
- */
33
- click(locator: Locator, options?: {
34
- force?: boolean;
35
- timeout?: number;
36
- }): Promise<void>;
37
- /**
38
- * Double-clicks an element after verifying it is visible.
39
- * @param locator - The element to double-click
40
- * @param options - Optional configuration
41
- */
42
- doubleClick(locator: Locator, options?: {
43
- force?: boolean;
44
- timeout?: number;
45
- }): Promise<void>;
46
- /**
47
- * Right-clicks an element after verifying it is visible.
48
- * @param locator - The element to right-click
49
- * @param options - Optional configuration
50
- */
51
- rightClick(locator: Locator, options?: {
52
- force?: boolean;
53
- timeout?: number;
54
- }): Promise<void>;
55
- /**
56
- * Clicks an element using JavaScript (bypasses actionability checks).
57
- * Use when standard click doesn't work due to overlapping elements.
58
- * @param locator - The element to click
59
- */
60
- javascriptClick(locator: Locator): Promise<void>;
61
- /**
62
- * Enters text into an input field after clearing it.
63
- * Verifies element visibility before interaction.
64
- * @param locator - The input element
65
- * @param text - The text to enter
66
- * @param options - Optional configuration
67
- */
68
- enterText(locator: Locator, text: string, options?: {
69
- clearFirst?: boolean;
70
- verify?: boolean;
71
- timeout?: number;
72
- }): Promise<void>;
73
- /**
74
- * Types text character by character (simulates real typing).
75
- * Useful when fill() doesn't trigger necessary events.
76
- * @param locator - The input element
77
- * @param text - The text to type
78
- * @param options - Optional configuration
79
- */
80
- typeText(locator: Locator, text: string, options?: {
81
- clearFirst?: boolean;
82
- verify?: boolean;
83
- delay?: number;
84
- timeout?: number;
85
- }): Promise<void>;
86
- /**
87
- * Clears an input field.
88
- * @param locator - The input element to clear
89
- * @param options - Optional configuration
90
- */
91
- clearText(locator: Locator, options?: {
92
- timeout?: number;
93
- }): Promise<void>;
94
- /**
95
- * Presses a keyboard key while focused on an element.
96
- * @param locator - The element to focus
97
- * @param key - The key to press (e.g., 'Enter', 'Tab', 'Escape')
98
- */
99
- pressKey(locator: Locator, key: string, options?: {
100
- timeout?: number;
101
- }): Promise<void>;
102
- /**
103
- * Selects an option from a dropdown by value.
104
- * @param locator - The select element
105
- * @param value - The option value to select
106
- */
107
- selectByValue(locator: Locator, value: string, options?: {
108
- timeout?: number;
109
- }): Promise<void>;
110
- /**
111
- * Selects an option from a dropdown by visible text.
112
- * @param locator - The select element
113
- * @param text - The option text to select
114
- */
115
- selectByText(locator: Locator, text: string, options?: {
116
- timeout?: number;
117
- }): Promise<void>;
118
- /**
119
- * Selects an option from a dropdown by index.
120
- * @param locator - The select element
121
- * @param index - The option index to select (0-based)
122
- */
123
- selectByIndex(locator: Locator, index: number, options?: {
124
- timeout?: number;
125
- }): Promise<void>;
126
- /**
127
- * Selects multiple options from a multi-select dropdown.
128
- * @param locator - The select element
129
- * @param values - Array of option values to select
130
- */
131
- selectMultiple(locator: Locator, values: string[], options?: {
132
- timeout?: number;
133
- }): Promise<void>;
134
- /**
135
- * Checks a checkbox if it's not already checked.
136
- * @param locator - The checkbox element
137
- */
138
- check(locator: Locator, options?: {
139
- force?: boolean;
140
- timeout?: number;
141
- }): Promise<void>;
142
- /**
143
- * Unchecks a checkbox if it's currently checked.
144
- * @param locator - The checkbox element
145
- */
146
- uncheck(locator: Locator, options?: {
147
- force?: boolean;
148
- timeout?: number;
149
- }): Promise<void>;
150
- /**
151
- * Sets a checkbox to a specific state.
152
- * @param locator - The checkbox element
153
- * @param checked - Whether the checkbox should be checked
154
- */
155
- setChecked(locator: Locator, checked: boolean, options?: {
156
- force?: boolean;
157
- timeout?: number;
158
- }): Promise<void>;
159
- /**
160
- * Hovers over an element.
161
- * @param locator - The element to hover over
162
- */
163
- hover(locator: Locator, options?: {
164
- force?: boolean;
165
- timeout?: number;
166
- }): Promise<void>;
167
- /**
168
- * Focuses on an element.
169
- * @param locator - The element to focus
170
- */
171
- focus(locator: Locator, options?: {
172
- timeout?: number;
173
- }): Promise<void>;
174
- /**
175
- * Hovers over one element and clicks another (for menus that appear on hover).
176
- * @param hoverLocator - The element to hover over
177
- * @param clickLocator - The element to click after hover
178
- */
179
- hoverAndClick(hoverLocator: Locator, clickLocator: Locator, options?: {
180
- force?: boolean;
181
- timeout?: number;
182
- }): Promise<void>;
183
- /**
184
- * Waits for an element to be visible.
185
- * @param locator - The element to wait for
186
- * @param timeout - Maximum time to wait in milliseconds
187
- */
188
- waitForVisible(locator: Locator, timeout?: number): Promise<void>;
189
- /**
190
- * Waits for an element to be hidden.
191
- * @param locator - The element to wait for
192
- * @param timeout - Maximum time to wait in milliseconds
193
- */
194
- waitForHidden(locator: Locator, timeout?: number): Promise<void>;
195
- /**
196
- * Waits for an element to be attached to the DOM.
197
- * @param locator - The element to wait for
198
- * @param timeout - Maximum time to wait in milliseconds
199
- */
200
- waitForAttached(locator: Locator, timeout?: number): Promise<void>;
201
- /**
202
- * Waits for an element to be detached from the DOM.
203
- * @param locator - The element to wait for
204
- * @param timeout - Maximum time to wait in milliseconds
205
- */
206
- waitForDetached(locator: Locator, timeout?: number): Promise<void>;
207
- /**
208
- * Waits for the page to finish loading (network idle).
209
- */
210
- waitForPageLoad(): Promise<void>;
211
- /**
212
- * Waits for the DOM to be fully loaded.
213
- */
214
- waitForDOMContentLoaded(): Promise<void>;
215
- /**
216
- * Waits for all network requests to complete.
217
- */
218
- waitForLoadState(): Promise<void>;
219
- /**
220
- * Waits for an element to be enabled.
221
- * @param locator - The element to wait for
222
- * @param timeout - Maximum time to wait in milliseconds
223
- */
224
- waitForEnabled(locator: Locator, timeout?: number): Promise<void>;
225
- /**
226
- * Waits for an element to be disabled.
227
- * @param locator - The element to wait for
228
- * @param timeout - Maximum time to wait in milliseconds
229
- */
230
- waitForDisabled(locator: Locator, timeout?: number): Promise<void>;
231
- /**
232
- * Waits for an element to contain specific text.
233
- * @param locator - The element to wait for
234
- * @param text - The text to wait for
235
- * @param timeout - Maximum time to wait in milliseconds
236
- */
237
- waitForText(locator: Locator, text: string, timeout?: number): Promise<void>;
238
- /**
239
- * Waits for an input to have a specific value.
240
- * @param locator - The input element to wait for
241
- * @param value - The value to wait for
242
- * @param timeout - Maximum time to wait in milliseconds
243
- */
244
- waitForValue(locator: Locator, value: string, timeout?: number): Promise<void>;
245
- /**
246
- * Waits for an element to have a specific attribute value.
247
- * @param locator - The element to wait for
248
- * @param name - The attribute name
249
- * @param value - The expected attribute value
250
- * @param timeout - Maximum time to wait in milliseconds
251
- */
252
- waitForAttribute(locator: Locator, name: string, value: string | RegExp, timeout?: number): Promise<void>;
253
- /**
254
- * Waits for an element to have a specific CSS class.
255
- * @param locator - The element to wait for
256
- * @param className - The CSS class to wait for
257
- * @param timeout - Maximum time to wait in milliseconds
258
- */
259
- waitForClass(locator: Locator, className: string | RegExp, timeout?: number): Promise<void>;
260
- /**
261
- * Waits for an element to be editable.
262
- * @param locator - The element to wait for
263
- * @param timeout - Maximum time to wait in milliseconds
264
- */
265
- waitForEditable(locator: Locator, timeout?: number): Promise<void>;
266
- /**
267
- * Waits for an element to be checked.
268
- * @param locator - The checkbox/radio element to wait for
269
- * @param timeout - Maximum time to wait in milliseconds
270
- */
271
- waitForChecked(locator: Locator, timeout?: number): Promise<void>;
272
- /**
273
- * Waits for an element to be unchecked.
274
- * @param locator - The checkbox/radio element to wait for
275
- * @param timeout - Maximum time to wait in milliseconds
276
- */
277
- waitForUnchecked(locator: Locator, timeout?: number): Promise<void>;
278
- /**
279
- * Waits for a specific URL or URL pattern.
280
- * @param url - The URL string or regex pattern to wait for
281
- * @param timeout - Maximum time to wait in milliseconds
282
- */
283
- waitForURL(url: string | RegExp, timeout?: number): Promise<void>;
284
- /**
285
- * Waits for a navigation to complete.
286
- * @param timeout - Maximum time to wait in milliseconds
287
- */
288
- waitForNavigation(timeout?: number): Promise<void>;
289
- /**
290
- * Waits for a specific time (use sparingly, prefer explicit waits).
291
- * @param milliseconds - Time to wait in milliseconds
292
- */
293
- waitForTimeout(milliseconds: number): Promise<void>;
294
- /**
295
- * Waits for a network request to a specific URL.
296
- * @param urlOrPredicate - URL string, regex, or predicate function
297
- * @param timeout - Maximum time to wait in milliseconds
298
- */
299
- waitForRequest(urlOrPredicate: string | RegExp | ((request: any) => boolean), timeout?: number): Promise<any>;
300
- /**
301
- * Waits for a network response from a specific URL.
302
- * @param urlOrPredicate - URL string, regex, or predicate function
303
- * @param timeout - Maximum time to wait in milliseconds
304
- */
305
- waitForResponse(urlOrPredicate: string | RegExp | ((response: any) => boolean), timeout?: number): Promise<any>;
306
- /**
307
- * Waits for an element to be focused.
308
- * @param locator - The element to wait for
309
- * @param timeout - Maximum time to wait in milliseconds
310
- */
311
- waitForFocused(locator: Locator, timeout?: number): Promise<void>;
312
- /**
313
- * Waits for an element to be empty (no text content).
314
- * @param locator - The element to wait for
315
- * @param timeout - Maximum time to wait in milliseconds
316
- */
317
- waitForEmpty(locator: Locator, timeout?: number): Promise<void>;
318
- /**
319
- * Waits for a function to return true.
320
- * @param predicate - Function that returns a boolean or Promise<boolean>
321
- * @param timeout - Maximum time to wait in milliseconds
322
- */
323
- waitForFunction(predicate: () => boolean | Promise<boolean>, timeout?: number): Promise<void>;
324
- /**
325
- * Waits for an element to have a specific CSS property value.
326
- * @param locator - The element to wait for
327
- * @param property - The CSS property name
328
- * @param value - The expected CSS property value
329
- * @param timeout - Maximum time to wait in milliseconds
330
- */
331
- waitForCSS(locator: Locator, property: string, value: string | RegExp, timeout?: number): Promise<void>;
332
- /**
333
- * Asserts that an element is visible.
334
- * @param locator - The element to check
335
- * @param isVisible - Whether the element should be visible (default: true)
336
- */
337
- isVisible(locator: Locator, isVisible?: boolean, timeout?: number): Promise<void>;
338
- /**
339
- * Asserts that an element is enabled.
340
- * @param locator - The element to check
341
- */
342
- isEnabled(locator: Locator, timeout?: number): Promise<void>;
343
- /**
344
- * Asserts that an element is disabled.
345
- * @param locator - The element to check
346
- */
347
- isDisabled(locator: Locator, timeout?: number): Promise<void>;
348
- /**
349
- * Asserts that an element contains specific text.
350
- * @param locator - The element to check
351
- * @param text - The text to look for
352
- */
353
- containsText(locator: Locator, text: string, timeout?: number): Promise<void>;
354
- /**
355
- * Asserts that an element has specific text.
356
- * @param locator - The element to check
357
- * @param text - The exact text expected
358
- */
359
- hasText(locator: Locator, text: string, timeout?: number): Promise<void>;
360
- /**
361
- * Asserts that an input has a specific value.
362
- * @param locator - The input element to check
363
- * @param value - The expected value
364
- */
365
- hasValue(locator: Locator, value: string, timeout?: number): Promise<void>;
366
- /**
367
- * Asserts that an element has a specific attribute value.
368
- * @param locator - The element to check
369
- * @param name - The attribute name
370
- * @param value - The expected attribute value
371
- */
372
- hasAttribute(locator: Locator, name: string, value: string, timeout?: number): Promise<void>;
373
- /**
374
- * Asserts that a specific number of elements exist.
375
- * @param locator - The locator to count
376
- * @param count - The expected count
377
- */
378
- hasCount(locator: Locator, count: number, timeout?: number): Promise<void>;
379
- /**
380
- * Gets the text content of an element.
381
- * @param locator - The element to get text from
382
- * @returns The text content
383
- */
384
- getText(locator: Locator, options?: {
385
- timeout?: number;
386
- }): Promise<string>;
387
- /**
388
- * Gets the value of an input element.
389
- * @param locator - The input element
390
- * @returns The input value
391
- */
392
- getValue(locator: Locator, options?: {
393
- timeout?: number;
394
- }): Promise<string>;
395
- /**
396
- * Gets an attribute value from an element.
397
- * @param locator - The element
398
- * @param attributeName - The attribute name
399
- * @returns The attribute value or null
400
- */
401
- getAttribute(locator: Locator, attributeName: string, options?: {
402
- timeout?: number;
403
- }): Promise<string | null>;
404
- /**
405
- * Checks if an element is currently visible.
406
- * @param locator - The element to check
407
- * @returns True if visible, false otherwise
408
- */
409
- checkIsVisible(locator: Locator): Promise<boolean>;
410
- /**
411
- * Checks if a checkbox is checked.
412
- * @param locator - The checkbox element
413
- * @returns True if checked, false otherwise
414
- */
415
- isChecked(locator: Locator): Promise<boolean>;
416
- /**
417
- * Scrolls an element into view.
418
- * @param locator - The element to scroll to
419
- */
420
- scrollIntoView(locator: Locator, options?: {
421
- timeout?: number;
422
- }): Promise<void>;
423
- /**
424
- * Sets files on a file input element.
425
- * @param locator - The file input element
426
- * @param filePath - Path to the file(s) to set
427
- */
428
- setInputFiles(locator: Locator, filePath: string | string[]): Promise<void>;
429
- /**
430
- * Clears files from a file input.
431
- * @param locator - The file input element
432
- */
433
- clearInputFiles(locator: Locator): Promise<void>;
434
- /**
435
- * Drags an element and drops it on another element.
436
- * @param source - The element to drag
437
- * @param target - The element to drop on
438
- */
439
- dragTo(source: Locator, target: Locator, options?: {
440
- sourcePosition?: {
441
- x: number;
442
- y: number;
443
- };
444
- targetPosition?: {
445
- x: number;
446
- y: number;
447
- };
448
- }): Promise<void>;
449
- }