doc-detective-common 4.0.0-beta.0-dev.4 → 4.0.0-beta.0-dev.5

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 (200) hide show
  1. package/package.json +1 -1
  2. package/.c8rc.json +0 -8
  3. package/.mocharc.yml +0 -1
  4. package/icon.png +0 -0
  5. package/scripts/check-coverage-ratchet.cjs +0 -123
  6. package/scripts/createCjsWrapper.js +0 -25
  7. package/scripts/generateTypes.cjs +0 -54
  8. package/src/detectTests.ts +0 -660
  9. package/src/index.ts +0 -3
  10. package/src/schemas/build/checkLink_v2.schema.json +0 -81
  11. package/src/schemas/build/checkLink_v3.schema.json +0 -92
  12. package/src/schemas/build/click_v3.schema.json +0 -145
  13. package/src/schemas/build/config_v2.schema.json +0 -1079
  14. package/src/schemas/build/config_v3.schema.json +0 -696
  15. package/src/schemas/build/context_v2.schema.json +0 -135
  16. package/src/schemas/build/context_v3.schema.json +0 -229
  17. package/src/schemas/build/dragAndDrop_v3.schema.json +0 -189
  18. package/src/schemas/build/find_v2.schema.json +0 -168
  19. package/src/schemas/build/find_v3.schema.json +0 -214
  20. package/src/schemas/build/goTo_v2.schema.json +0 -63
  21. package/src/schemas/build/goTo_v3.schema.json +0 -257
  22. package/src/schemas/build/httpRequest_v2.schema.json +0 -321
  23. package/src/schemas/build/httpRequest_v3.schema.json +0 -439
  24. package/src/schemas/build/loadCookie_v3.schema.json +0 -138
  25. package/src/schemas/build/loadVariables_v3.schema.json +0 -10
  26. package/src/schemas/build/moveTo_v2.schema.json +0 -99
  27. package/src/schemas/build/openApi_v2.schema.json +0 -76
  28. package/src/schemas/build/openApi_v3.schema.json +0 -161
  29. package/src/schemas/build/record_v3.schema.json +0 -70
  30. package/src/schemas/build/report_v3.schema.json +0 -53
  31. package/src/schemas/build/resolvedTests_v3.schema.json +0 -238
  32. package/src/schemas/build/runCode_v2.schema.json +0 -201
  33. package/src/schemas/build/runCode_v3.schema.json +0 -138
  34. package/src/schemas/build/runShell_v2.schema.json +0 -189
  35. package/src/schemas/build/runShell_v3.schema.json +0 -156
  36. package/src/schemas/build/saveCookie_v3.schema.json +0 -149
  37. package/src/schemas/build/saveScreenshot_v2.schema.json +0 -150
  38. package/src/schemas/build/screenshot_v3.schema.json +0 -250
  39. package/src/schemas/build/setVariables_v2.schema.json +0 -39
  40. package/src/schemas/build/sourceIntegration_v3.schema.json +0 -51
  41. package/src/schemas/build/spec_v2.schema.json +0 -199
  42. package/src/schemas/build/spec_v3.schema.json +0 -213
  43. package/src/schemas/build/startRecording_v2.schema.json +0 -57
  44. package/src/schemas/build/step_v3.schema.json +0 -669
  45. package/src/schemas/build/stopRecord_v3.schema.json +0 -13
  46. package/src/schemas/build/stopRecording_v2.schema.json +0 -33
  47. package/src/schemas/build/test_v2.schema.json +0 -244
  48. package/src/schemas/build/test_v3.schema.json +0 -292
  49. package/src/schemas/build/typeKeys_v2.schema.json +0 -72
  50. package/src/schemas/build/type_v3.schema.json +0 -131
  51. package/src/schemas/build/wait_v2.schema.json +0 -42
  52. package/src/schemas/build/wait_v3.schema.json +0 -37
  53. package/src/schemas/dereferenceSchemas.cjs +0 -208
  54. package/src/schemas/index.ts +0 -6
  55. package/src/schemas/output_schemas/analytics_v1.schema.json +0 -585
  56. package/src/schemas/output_schemas/checkLink_v1.schema.json +0 -42
  57. package/src/schemas/output_schemas/checkLink_v2.schema.json +0 -80
  58. package/src/schemas/output_schemas/checkLink_v3.schema.json +0 -145
  59. package/src/schemas/output_schemas/click_v1.schema.json +0 -60
  60. package/src/schemas/output_schemas/click_v3.schema.json +0 -252
  61. package/src/schemas/output_schemas/config_v2.schema.json +0 -2628
  62. package/src/schemas/output_schemas/config_v3.schema.json +0 -16470
  63. package/src/schemas/output_schemas/context_v2.schema.json +0 -134
  64. package/src/schemas/output_schemas/context_v3.schema.json +0 -374
  65. package/src/schemas/output_schemas/dragAndDrop_v3.schema.json +0 -496
  66. package/src/schemas/output_schemas/endRecord_v3.schema.json +0 -12
  67. package/src/schemas/output_schemas/find_v1.schema.json +0 -171
  68. package/src/schemas/output_schemas/find_v2.schema.json +0 -184
  69. package/src/schemas/output_schemas/find_v3.schema.json +0 -1349
  70. package/src/schemas/output_schemas/goTo_v1.schema.json +0 -30
  71. package/src/schemas/output_schemas/goTo_v2.schema.json +0 -62
  72. package/src/schemas/output_schemas/goTo_v3.schema.json +0 -419
  73. package/src/schemas/output_schemas/httpRequest_v1.schema.json +0 -115
  74. package/src/schemas/output_schemas/httpRequest_v2.schema.json +0 -392
  75. package/src/schemas/output_schemas/httpRequest_v3.schema.json +0 -994
  76. package/src/schemas/output_schemas/loadCookie_v3.schema.json +0 -228
  77. package/src/schemas/output_schemas/loadVariables_v3.schema.json +0 -9
  78. package/src/schemas/output_schemas/matchText_v1.schema.json +0 -32
  79. package/src/schemas/output_schemas/moveMouse_v1.schema.json +0 -60
  80. package/src/schemas/output_schemas/moveTo_v2.schema.json +0 -98
  81. package/src/schemas/output_schemas/openApi_v2.schema.json +0 -75
  82. package/src/schemas/output_schemas/openApi_v3.schema.json +0 -162
  83. package/src/schemas/output_schemas/record_v3.schema.json +0 -101
  84. package/src/schemas/output_schemas/report_v3.schema.json +0 -16826
  85. package/src/schemas/output_schemas/resolvedTests_v3.schema.json +0 -33331
  86. package/src/schemas/output_schemas/runCode_v2.schema.json +0 -200
  87. package/src/schemas/output_schemas/runCode_v3.schema.json +0 -222
  88. package/src/schemas/output_schemas/runShell_v1.schema.json +0 -35
  89. package/src/schemas/output_schemas/runShell_v2.schema.json +0 -188
  90. package/src/schemas/output_schemas/runShell_v3.schema.json +0 -236
  91. package/src/schemas/output_schemas/saveCookie_v3.schema.json +0 -245
  92. package/src/schemas/output_schemas/saveScreenshot_v2.schema.json +0 -149
  93. package/src/schemas/output_schemas/screenshot_v1.schema.json +0 -48
  94. package/src/schemas/output_schemas/screenshot_v3.schema.json +0 -681
  95. package/src/schemas/output_schemas/scroll_v1.schema.json +0 -50
  96. package/src/schemas/output_schemas/setVariables_v2.schema.json +0 -38
  97. package/src/schemas/output_schemas/sourceIntegration_v3.schema.json +0 -50
  98. package/src/schemas/output_schemas/spec_v2.schema.json +0 -2301
  99. package/src/schemas/output_schemas/spec_v3.schema.json +0 -16630
  100. package/src/schemas/output_schemas/startRecording_v1.schema.json +0 -55
  101. package/src/schemas/output_schemas/startRecording_v2.schema.json +0 -56
  102. package/src/schemas/output_schemas/step_v3.schema.json +0 -7317
  103. package/src/schemas/output_schemas/stopRecord_v3.schema.json +0 -12
  104. package/src/schemas/output_schemas/stopRecording_v1.schema.json +0 -20
  105. package/src/schemas/output_schemas/stopRecording_v2.schema.json +0 -32
  106. package/src/schemas/output_schemas/test_v2.schema.json +0 -1903
  107. package/src/schemas/output_schemas/test_v3.schema.json +0 -15863
  108. package/src/schemas/output_schemas/typeKeys_v2.schema.json +0 -71
  109. package/src/schemas/output_schemas/type_v1.schema.json +0 -62
  110. package/src/schemas/output_schemas/type_v3.schema.json +0 -244
  111. package/src/schemas/output_schemas/wait_v1.schema.json +0 -42
  112. package/src/schemas/output_schemas/wait_v2.schema.json +0 -41
  113. package/src/schemas/output_schemas/wait_v3.schema.json +0 -41
  114. package/src/schemas/schemas.json +0 -121331
  115. package/src/schemas/src_schemas/analytics_v1.schema.json +0 -585
  116. package/src/schemas/src_schemas/checkLink_v1.schema.json +0 -42
  117. package/src/schemas/src_schemas/checkLink_v2.schema.json +0 -65
  118. package/src/schemas/src_schemas/checkLink_v3.schema.json +0 -91
  119. package/src/schemas/src_schemas/click_v1.schema.json +0 -60
  120. package/src/schemas/src_schemas/click_v3.schema.json +0 -144
  121. package/src/schemas/src_schemas/config_v2.schema.json +0 -929
  122. package/src/schemas/src_schemas/config_v3.schema.json +0 -633
  123. package/src/schemas/src_schemas/context_v2.schema.json +0 -108
  124. package/src/schemas/src_schemas/context_v3.schema.json +0 -202
  125. package/src/schemas/src_schemas/dragAndDrop_v3.schema.json +0 -185
  126. package/src/schemas/src_schemas/find_v1.schema.json +0 -137
  127. package/src/schemas/src_schemas/find_v2.schema.json +0 -155
  128. package/src/schemas/src_schemas/find_v3.schema.json +0 -210
  129. package/src/schemas/src_schemas/goTo_v1.schema.json +0 -30
  130. package/src/schemas/src_schemas/goTo_v2.schema.json +0 -58
  131. package/src/schemas/src_schemas/goTo_v3.schema.json +0 -232
  132. package/src/schemas/src_schemas/httpRequest_v1.schema.json +0 -115
  133. package/src/schemas/src_schemas/httpRequest_v2.schema.json +0 -284
  134. package/src/schemas/src_schemas/httpRequest_v3.schema.json +0 -402
  135. package/src/schemas/src_schemas/loadCookie_v3.schema.json +0 -113
  136. package/src/schemas/src_schemas/loadVariables_v3.schema.json +0 -9
  137. package/src/schemas/src_schemas/matchText_v1.schema.json +0 -32
  138. package/src/schemas/src_schemas/moveMouse_v1.schema.json +0 -60
  139. package/src/schemas/src_schemas/moveTo_v2.schema.json +0 -89
  140. package/src/schemas/src_schemas/openApi_v2.schema.json +0 -64
  141. package/src/schemas/src_schemas/openApi_v3.schema.json +0 -161
  142. package/src/schemas/src_schemas/record_v3.schema.json +0 -69
  143. package/src/schemas/src_schemas/report_v3.schema.json +0 -52
  144. package/src/schemas/src_schemas/resolvedTests_v3.schema.json +0 -237
  145. package/src/schemas/src_schemas/runCode_v2.schema.json +0 -181
  146. package/src/schemas/src_schemas/runCode_v3.schema.json +0 -137
  147. package/src/schemas/src_schemas/runShell_v1.schema.json +0 -35
  148. package/src/schemas/src_schemas/runShell_v2.schema.json +0 -166
  149. package/src/schemas/src_schemas/runShell_v3.schema.json +0 -155
  150. package/src/schemas/src_schemas/saveCookie_v3.schema.json +0 -124
  151. package/src/schemas/src_schemas/saveScreenshot_v2.schema.json +0 -129
  152. package/src/schemas/src_schemas/screenshot_v1.schema.json +0 -48
  153. package/src/schemas/src_schemas/screenshot_v3.schema.json +0 -249
  154. package/src/schemas/src_schemas/scroll_v1.schema.json +0 -50
  155. package/src/schemas/src_schemas/setVariables_v2.schema.json +0 -38
  156. package/src/schemas/src_schemas/sourceIntegration_v3.schema.json +0 -45
  157. package/src/schemas/src_schemas/spec_v2.schema.json +0 -175
  158. package/src/schemas/src_schemas/spec_v3.schema.json +0 -212
  159. package/src/schemas/src_schemas/startRecording_v1.schema.json +0 -55
  160. package/src/schemas/src_schemas/startRecording_v2.schema.json +0 -54
  161. package/src/schemas/src_schemas/step_v3.schema.json +0 -632
  162. package/src/schemas/src_schemas/stopRecord_v3.schema.json +0 -9
  163. package/src/schemas/src_schemas/stopRecording_v1.schema.json +0 -20
  164. package/src/schemas/src_schemas/stopRecording_v2.schema.json +0 -32
  165. package/src/schemas/src_schemas/test_v2.schema.json +0 -200
  166. package/src/schemas/src_schemas/test_v3.schema.json +0 -268
  167. package/src/schemas/src_schemas/typeKeys_v2.schema.json +0 -63
  168. package/src/schemas/src_schemas/type_v1.schema.json +0 -62
  169. package/src/schemas/src_schemas/type_v3.schema.json +0 -118
  170. package/src/schemas/src_schemas/wait_v1.schema.json +0 -42
  171. package/src/schemas/src_schemas/wait_v2.schema.json +0 -41
  172. package/src/schemas/src_schemas/wait_v3.schema.json +0 -36
  173. package/src/types/generated/checkLink_v3.ts +0 -29
  174. package/src/types/generated/click_v3.ts +0 -17
  175. package/src/types/generated/config_v3.ts +0 -405
  176. package/src/types/generated/context_v3.ts +0 -112
  177. package/src/types/generated/dragAndDrop_v3.ts +0 -39
  178. package/src/types/generated/endRecord_v3.ts +0 -10
  179. package/src/types/generated/find_v3.ts +0 -17
  180. package/src/types/generated/goTo_v3.ts +0 -48
  181. package/src/types/generated/httpRequest_v3.ts +0 -17
  182. package/src/types/generated/loadCookie_v3.ts +0 -17
  183. package/src/types/generated/loadVariables_v3.ts +0 -10
  184. package/src/types/generated/openApi_v3.ts +0 -64
  185. package/src/types/generated/record_v3.ts +0 -34
  186. package/src/types/generated/report_v3.ts +0 -183
  187. package/src/types/generated/resolvedTests_v3.ts +0 -585
  188. package/src/types/generated/runCode_v3.ts +0 -59
  189. package/src/types/generated/runShell_v3.ts +0 -58
  190. package/src/types/generated/saveCookie_v3.ts +0 -17
  191. package/src/types/generated/screenshot_v3.ts +0 -76
  192. package/src/types/generated/sourceIntegration_v3.ts +0 -31
  193. package/src/types/generated/spec_v3.ts +0 -166
  194. package/src/types/generated/step_v3.ts +0 -1288
  195. package/src/types/generated/stopRecord_v3.ts +0 -10
  196. package/src/types/generated/test_v3.ts +0 -3048
  197. package/src/types/generated/type_v3.ts +0 -56
  198. package/src/types/generated/wait_v3.ts +0 -13
  199. package/src/validate.ts +0 -627
  200. package/tsconfig.json +0 -22
@@ -1,1349 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "title": "find",
4
- "description": "Find an element based on display text or a selector, then optionally interact with it.",
5
- "anyOf": [
6
- {
7
- "title": "Find element (simple)",
8
- "type": "string",
9
- "description": "Identifier for the element to find. Can be a selector, element text, ARIA name, ID, or test ID."
10
- },
11
- {
12
- "title": "Find element (detailed)",
13
- "type": "object",
14
- "anyOf": [
15
- {
16
- "required": [
17
- "selector"
18
- ]
19
- },
20
- {
21
- "required": [
22
- "elementText"
23
- ]
24
- },
25
- {
26
- "required": [
27
- "elementId"
28
- ]
29
- },
30
- {
31
- "required": [
32
- "elementTestId"
33
- ]
34
- },
35
- {
36
- "required": [
37
- "elementClass"
38
- ]
39
- },
40
- {
41
- "required": [
42
- "elementAttribute"
43
- ]
44
- },
45
- {
46
- "required": [
47
- "elementAria"
48
- ]
49
- }
50
- ],
51
- "additionalProperties": false,
52
- "properties": {
53
- "elementText": {
54
- "type": "string",
55
- "description": "Display text of the element to find. If combined with other element finding fields, the element must match all specified criteria."
56
- },
57
- "selector": {
58
- "type": "string",
59
- "description": "Selector of the element to find. If combined with other element finding fields, the element must match all specified criteria."
60
- },
61
- "elementId": {
62
- "type": "string",
63
- "description": "ID attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
64
- },
65
- "elementTestId": {
66
- "type": "string",
67
- "description": "data-testid attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
68
- },
69
- "elementClass": {
70
- "anyOf": [
71
- {
72
- "type": "string"
73
- },
74
- {
75
- "type": "array",
76
- "items": {
77
- "type": "string"
78
- }
79
- }
80
- ],
81
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
82
- },
83
- "elementAttribute": {
84
- "type": "object",
85
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
86
- "additionalProperties": {
87
- "anyOf": [
88
- {
89
- "type": "string"
90
- },
91
- {
92
- "type": "number"
93
- },
94
- {
95
- "type": "boolean"
96
- }
97
- ]
98
- }
99
- },
100
- "elementAria": {
101
- "type": "string",
102
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
103
- },
104
- "timeout": {
105
- "type": "integer",
106
- "description": "Max duration in milliseconds to wait for the element to exist.",
107
- "default": 5000
108
- },
109
- "moveTo": {
110
- "description": "Move to the element. If the element isn't visible, it's scrolled into view.",
111
- "type": "boolean",
112
- "default": true
113
- },
114
- "click": {
115
- "description": "Click the element.",
116
- "anyOf": [
117
- {
118
- "$schema": "http://json-schema.org/draft-07/schema#",
119
- "title": "click",
120
- "description": "Click or tap an element.",
121
- "anyOf": [
122
- {
123
- "title": "Click element (simple)",
124
- "type": "string",
125
- "description": "Identifier for the element to click. Can be a selector, element text, ARIA name, ID, or test ID."
126
- },
127
- {
128
- "title": "Click element (detailed)",
129
- "type": "object",
130
- "anyOf": [
131
- {
132
- "required": [
133
- "selector"
134
- ]
135
- },
136
- {
137
- "required": [
138
- "elementText"
139
- ]
140
- },
141
- {
142
- "required": [
143
- "elementId"
144
- ]
145
- },
146
- {
147
- "required": [
148
- "elementTestId"
149
- ]
150
- },
151
- {
152
- "required": [
153
- "elementClass"
154
- ]
155
- },
156
- {
157
- "required": [
158
- "elementAttribute"
159
- ]
160
- },
161
- {
162
- "required": [
163
- "elementAria"
164
- ]
165
- }
166
- ],
167
- "properties": {
168
- "button": {
169
- "description": "Kind of click to perform.",
170
- "type": "string",
171
- "enum": [
172
- "left",
173
- "right",
174
- "middle"
175
- ]
176
- },
177
- "elementText": {
178
- "type": "string",
179
- "description": "Display text of the element to click. If combined with other element finding fields, the element must match all specified criteria."
180
- },
181
- "selector": {
182
- "type": "string",
183
- "description": "Selector of the element to click. If combined with other element finding fields, the element must match all specified criteria."
184
- },
185
- "elementId": {
186
- "type": "string",
187
- "description": "ID attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
188
- },
189
- "elementTestId": {
190
- "type": "string",
191
- "description": "data-testid attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
192
- },
193
- "elementClass": {
194
- "anyOf": [
195
- {
196
- "type": "string"
197
- },
198
- {
199
- "type": "array",
200
- "items": {
201
- "type": "string"
202
- }
203
- }
204
- ],
205
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
206
- },
207
- "elementAttribute": {
208
- "type": "object",
209
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
210
- "additionalProperties": {
211
- "anyOf": [
212
- {
213
- "type": "string"
214
- },
215
- {
216
- "type": "number"
217
- },
218
- {
219
- "type": "boolean"
220
- }
221
- ]
222
- }
223
- },
224
- "elementAria": {
225
- "type": "string",
226
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
227
- }
228
- }
229
- },
230
- {
231
- "type": "boolean"
232
- }
233
- ],
234
- "components": {
235
- "schemas": {
236
- "string": {
237
- "title": "Click element (simple)",
238
- "type": "string",
239
- "description": "Identifier for the element to click. Can be a selector, element text, ARIA name, ID, or test ID."
240
- },
241
- "button": {
242
- "description": "Kind of click to perform.",
243
- "type": "string",
244
- "enum": [
245
- "left",
246
- "right",
247
- "middle"
248
- ]
249
- },
250
- "object": {
251
- "title": "Click element (detailed)",
252
- "type": "object",
253
- "anyOf": [
254
- {
255
- "required": [
256
- "selector"
257
- ]
258
- },
259
- {
260
- "required": [
261
- "elementText"
262
- ]
263
- },
264
- {
265
- "required": [
266
- "elementId"
267
- ]
268
- },
269
- {
270
- "required": [
271
- "elementTestId"
272
- ]
273
- },
274
- {
275
- "required": [
276
- "elementClass"
277
- ]
278
- },
279
- {
280
- "required": [
281
- "elementAttribute"
282
- ]
283
- },
284
- {
285
- "required": [
286
- "elementAria"
287
- ]
288
- }
289
- ],
290
- "properties": {
291
- "button": {
292
- "description": "Kind of click to perform.",
293
- "type": "string",
294
- "enum": [
295
- "left",
296
- "right",
297
- "middle"
298
- ]
299
- },
300
- "elementText": {
301
- "type": "string",
302
- "description": "Display text of the element to click. If combined with other element finding fields, the element must match all specified criteria."
303
- },
304
- "selector": {
305
- "type": "string",
306
- "description": "Selector of the element to click. If combined with other element finding fields, the element must match all specified criteria."
307
- },
308
- "elementId": {
309
- "type": "string",
310
- "description": "ID attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
311
- },
312
- "elementTestId": {
313
- "type": "string",
314
- "description": "data-testid attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
315
- },
316
- "elementClass": {
317
- "anyOf": [
318
- {
319
- "type": "string"
320
- },
321
- {
322
- "type": "array",
323
- "items": {
324
- "type": "string"
325
- }
326
- }
327
- ],
328
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
329
- },
330
- "elementAttribute": {
331
- "type": "object",
332
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
333
- "additionalProperties": {
334
- "anyOf": [
335
- {
336
- "type": "string"
337
- },
338
- {
339
- "type": "number"
340
- },
341
- {
342
- "type": "boolean"
343
- }
344
- ]
345
- }
346
- },
347
- "elementAria": {
348
- "type": "string",
349
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
350
- }
351
- }
352
- }
353
- }
354
- },
355
- "examples": [
356
- true,
357
- "Submit",
358
- {
359
- "button": "left",
360
- "elementText": "Element text"
361
- },
362
- {
363
- "selector": "#elementToScreenshot",
364
- "elementText": "Element text",
365
- "button": "middle"
366
- }
367
- ]
368
- },
369
- {
370
- "type": "object",
371
- "properties": {
372
- "button": {
373
- "description": "Kind of click to perform.",
374
- "type": "string",
375
- "enum": [
376
- "left",
377
- "right",
378
- "middle"
379
- ]
380
- }
381
- },
382
- "title": "Find element and click"
383
- }
384
- ]
385
- },
386
- "type": {
387
- "description": "Type keys after finding the element. Either a string or an object with a `keys` field as defined in [`type`](type). To type in the element, make the element active with the `click` parameter.",
388
- "allOf": [
389
- {
390
- "$schema": "http://json-schema.org/draft-07/schema#",
391
- "title": "typeKeys",
392
- "description": "Type keys. To type special keys, begin and end the string with `$` and use the special key's keyword. For example, to type the Escape key, enter `$ESCAPE$`.",
393
- "anyOf": [
394
- {
395
- "title": "Type keys (simple)",
396
- "description": "Sequence of keys to enter.",
397
- "anyOf": [
398
- {
399
- "type": "string"
400
- },
401
- {
402
- "type": "array",
403
- "items": {
404
- "anyOf": [
405
- {
406
- "type": "string"
407
- }
408
- ]
409
- }
410
- }
411
- ]
412
- },
413
- {
414
- "title": "Type keys (detailed)",
415
- "type": "object",
416
- "properties": {
417
- "keys": {
418
- "title": "Type keys (simple)",
419
- "description": "Sequence of keys to enter.",
420
- "anyOf": [
421
- {
422
- "type": "string"
423
- },
424
- {
425
- "type": "array",
426
- "items": {
427
- "anyOf": [
428
- {
429
- "type": "string"
430
- }
431
- ]
432
- }
433
- }
434
- ]
435
- },
436
- "inputDelay": {
437
- "type": "number",
438
- "description": "Delay in milliseconds between each key press during a recording",
439
- "default": 100
440
- },
441
- "selector": {
442
- "type": "string",
443
- "description": "Selector for the element to type into. If not specified, the typing occurs in the active element."
444
- },
445
- "elementText": {
446
- "type": "string",
447
- "description": "Display text of the element to type into. If combined with other element finding fields, the element must match all specified criteria."
448
- },
449
- "elementId": {
450
- "type": "string",
451
- "description": "ID attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
452
- },
453
- "elementTestId": {
454
- "type": "string",
455
- "description": "data-testid attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
456
- },
457
- "elementClass": {
458
- "anyOf": [
459
- {
460
- "type": "string"
461
- },
462
- {
463
- "type": "array",
464
- "items": {
465
- "type": "string"
466
- }
467
- }
468
- ],
469
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
470
- },
471
- "elementAttribute": {
472
- "type": "object",
473
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
474
- "additionalProperties": {
475
- "anyOf": [
476
- {
477
- "type": "string"
478
- },
479
- {
480
- "type": "number"
481
- },
482
- {
483
- "type": "boolean"
484
- }
485
- ]
486
- }
487
- },
488
- "elementAria": {
489
- "type": "string",
490
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
491
- }
492
- },
493
- "required": [
494
- "keys"
495
- ],
496
- "additionalProperties": false
497
- }
498
- ],
499
- "components": {
500
- "schemas": {
501
- "keys": {
502
- "title": "Type keys (simple)",
503
- "description": "Sequence of keys to enter.",
504
- "anyOf": [
505
- {
506
- "type": "string"
507
- },
508
- {
509
- "type": "array",
510
- "items": {
511
- "anyOf": [
512
- {
513
- "type": "string"
514
- }
515
- ]
516
- }
517
- }
518
- ]
519
- },
520
- "object": {
521
- "title": "Type keys (detailed)",
522
- "type": "object",
523
- "properties": {
524
- "keys": {
525
- "title": "Type keys (simple)",
526
- "description": "Sequence of keys to enter.",
527
- "anyOf": [
528
- {
529
- "type": "string"
530
- },
531
- {
532
- "type": "array",
533
- "items": {
534
- "anyOf": [
535
- {
536
- "type": "string"
537
- }
538
- ]
539
- }
540
- }
541
- ]
542
- },
543
- "inputDelay": {
544
- "type": "number",
545
- "description": "Delay in milliseconds between each key press during a recording",
546
- "default": 100
547
- },
548
- "selector": {
549
- "type": "string",
550
- "description": "Selector for the element to type into. If not specified, the typing occurs in the active element."
551
- },
552
- "elementText": {
553
- "type": "string",
554
- "description": "Display text of the element to type into. If combined with other element finding fields, the element must match all specified criteria."
555
- },
556
- "elementId": {
557
- "type": "string",
558
- "description": "ID attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
559
- },
560
- "elementTestId": {
561
- "type": "string",
562
- "description": "data-testid attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
563
- },
564
- "elementClass": {
565
- "anyOf": [
566
- {
567
- "type": "string"
568
- },
569
- {
570
- "type": "array",
571
- "items": {
572
- "type": "string"
573
- }
574
- }
575
- ],
576
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
577
- },
578
- "elementAttribute": {
579
- "type": "object",
580
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
581
- "additionalProperties": {
582
- "anyOf": [
583
- {
584
- "type": "string"
585
- },
586
- {
587
- "type": "number"
588
- },
589
- {
590
- "type": "boolean"
591
- }
592
- ]
593
- }
594
- },
595
- "elementAria": {
596
- "type": "string",
597
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
598
- }
599
- },
600
- "required": [
601
- "keys"
602
- ],
603
- "additionalProperties": false
604
- }
605
- }
606
- },
607
- "examples": [
608
- "kittens",
609
- [
610
- "$ENTER$"
611
- ],
612
- [
613
- "kittens",
614
- "$ENTER$"
615
- ],
616
- {
617
- "keys": "kittens"
618
- },
619
- {
620
- "keys": [
621
- "$ENTER$"
622
- ]
623
- },
624
- {
625
- "keys": [
626
- "kittens",
627
- "$ENTER$"
628
- ],
629
- "inputDelay": 500
630
- }
631
- ]
632
- },
633
- {
634
- "not": {
635
- "type": "object",
636
- "required": [
637
- "selector",
638
- "elementText",
639
- "elementId",
640
- "elementTestId",
641
- "elementClass",
642
- "elementAttribute",
643
- "elementAria"
644
- ],
645
- "title": "Find element and type"
646
- }
647
- }
648
- ]
649
- }
650
- }
651
- }
652
- ],
653
- "components": {
654
- "schemas": {
655
- "string": {
656
- "title": "Find element (simple)",
657
- "type": "string",
658
- "description": "Identifier for the element to find. Can be a selector, element text, ARIA name, ID, or test ID."
659
- },
660
- "object": {
661
- "title": "Find element (detailed)",
662
- "type": "object",
663
- "anyOf": [
664
- {
665
- "required": [
666
- "selector"
667
- ]
668
- },
669
- {
670
- "required": [
671
- "elementText"
672
- ]
673
- },
674
- {
675
- "required": [
676
- "elementId"
677
- ]
678
- },
679
- {
680
- "required": [
681
- "elementTestId"
682
- ]
683
- },
684
- {
685
- "required": [
686
- "elementClass"
687
- ]
688
- },
689
- {
690
- "required": [
691
- "elementAttribute"
692
- ]
693
- },
694
- {
695
- "required": [
696
- "elementAria"
697
- ]
698
- }
699
- ],
700
- "additionalProperties": false,
701
- "properties": {
702
- "elementText": {
703
- "type": "string",
704
- "description": "Display text of the element to find. If combined with other element finding fields, the element must match all specified criteria."
705
- },
706
- "selector": {
707
- "type": "string",
708
- "description": "Selector of the element to find. If combined with other element finding fields, the element must match all specified criteria."
709
- },
710
- "elementId": {
711
- "type": "string",
712
- "description": "ID attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
713
- },
714
- "elementTestId": {
715
- "type": "string",
716
- "description": "data-testid attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
717
- },
718
- "elementClass": {
719
- "anyOf": [
720
- {
721
- "type": "string"
722
- },
723
- {
724
- "type": "array",
725
- "items": {
726
- "type": "string"
727
- }
728
- }
729
- ],
730
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
731
- },
732
- "elementAttribute": {
733
- "type": "object",
734
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
735
- "additionalProperties": {
736
- "anyOf": [
737
- {
738
- "type": "string"
739
- },
740
- {
741
- "type": "number"
742
- },
743
- {
744
- "type": "boolean"
745
- }
746
- ]
747
- }
748
- },
749
- "elementAria": {
750
- "type": "string",
751
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
752
- },
753
- "timeout": {
754
- "type": "integer",
755
- "description": "Max duration in milliseconds to wait for the element to exist.",
756
- "default": 5000
757
- },
758
- "moveTo": {
759
- "description": "Move to the element. If the element isn't visible, it's scrolled into view.",
760
- "type": "boolean",
761
- "default": true
762
- },
763
- "click": {
764
- "description": "Click the element.",
765
- "anyOf": [
766
- {
767
- "$schema": "http://json-schema.org/draft-07/schema#",
768
- "title": "click",
769
- "description": "Click or tap an element.",
770
- "anyOf": [
771
- {
772
- "title": "Click element (simple)",
773
- "type": "string",
774
- "description": "Identifier for the element to click. Can be a selector, element text, ARIA name, ID, or test ID."
775
- },
776
- {
777
- "title": "Click element (detailed)",
778
- "type": "object",
779
- "anyOf": [
780
- {
781
- "required": [
782
- "selector"
783
- ]
784
- },
785
- {
786
- "required": [
787
- "elementText"
788
- ]
789
- },
790
- {
791
- "required": [
792
- "elementId"
793
- ]
794
- },
795
- {
796
- "required": [
797
- "elementTestId"
798
- ]
799
- },
800
- {
801
- "required": [
802
- "elementClass"
803
- ]
804
- },
805
- {
806
- "required": [
807
- "elementAttribute"
808
- ]
809
- },
810
- {
811
- "required": [
812
- "elementAria"
813
- ]
814
- }
815
- ],
816
- "properties": {
817
- "button": {
818
- "description": "Kind of click to perform.",
819
- "type": "string",
820
- "enum": [
821
- "left",
822
- "right",
823
- "middle"
824
- ]
825
- },
826
- "elementText": {
827
- "type": "string",
828
- "description": "Display text of the element to click. If combined with other element finding fields, the element must match all specified criteria."
829
- },
830
- "selector": {
831
- "type": "string",
832
- "description": "Selector of the element to click. If combined with other element finding fields, the element must match all specified criteria."
833
- },
834
- "elementId": {
835
- "type": "string",
836
- "description": "ID attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
837
- },
838
- "elementTestId": {
839
- "type": "string",
840
- "description": "data-testid attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
841
- },
842
- "elementClass": {
843
- "anyOf": [
844
- {
845
- "type": "string"
846
- },
847
- {
848
- "type": "array",
849
- "items": {
850
- "type": "string"
851
- }
852
- }
853
- ],
854
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
855
- },
856
- "elementAttribute": {
857
- "type": "object",
858
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
859
- "additionalProperties": {
860
- "anyOf": [
861
- {
862
- "type": "string"
863
- },
864
- {
865
- "type": "number"
866
- },
867
- {
868
- "type": "boolean"
869
- }
870
- ]
871
- }
872
- },
873
- "elementAria": {
874
- "type": "string",
875
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
876
- }
877
- }
878
- },
879
- {
880
- "type": "boolean"
881
- }
882
- ],
883
- "components": {
884
- "schemas": {
885
- "string": {
886
- "title": "Click element (simple)",
887
- "type": "string",
888
- "description": "Identifier for the element to click. Can be a selector, element text, ARIA name, ID, or test ID."
889
- },
890
- "button": {
891
- "description": "Kind of click to perform.",
892
- "type": "string",
893
- "enum": [
894
- "left",
895
- "right",
896
- "middle"
897
- ]
898
- },
899
- "object": {
900
- "title": "Click element (detailed)",
901
- "type": "object",
902
- "anyOf": [
903
- {
904
- "required": [
905
- "selector"
906
- ]
907
- },
908
- {
909
- "required": [
910
- "elementText"
911
- ]
912
- },
913
- {
914
- "required": [
915
- "elementId"
916
- ]
917
- },
918
- {
919
- "required": [
920
- "elementTestId"
921
- ]
922
- },
923
- {
924
- "required": [
925
- "elementClass"
926
- ]
927
- },
928
- {
929
- "required": [
930
- "elementAttribute"
931
- ]
932
- },
933
- {
934
- "required": [
935
- "elementAria"
936
- ]
937
- }
938
- ],
939
- "properties": {
940
- "button": {
941
- "description": "Kind of click to perform.",
942
- "type": "string",
943
- "enum": [
944
- "left",
945
- "right",
946
- "middle"
947
- ]
948
- },
949
- "elementText": {
950
- "type": "string",
951
- "description": "Display text of the element to click. If combined with other element finding fields, the element must match all specified criteria."
952
- },
953
- "selector": {
954
- "type": "string",
955
- "description": "Selector of the element to click. If combined with other element finding fields, the element must match all specified criteria."
956
- },
957
- "elementId": {
958
- "type": "string",
959
- "description": "ID attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
960
- },
961
- "elementTestId": {
962
- "type": "string",
963
- "description": "data-testid attribute of the element to click. Supports exact match or regex pattern using /pattern/ syntax."
964
- },
965
- "elementClass": {
966
- "anyOf": [
967
- {
968
- "type": "string"
969
- },
970
- {
971
- "type": "array",
972
- "items": {
973
- "type": "string"
974
- }
975
- }
976
- ],
977
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
978
- },
979
- "elementAttribute": {
980
- "type": "object",
981
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
982
- "additionalProperties": {
983
- "anyOf": [
984
- {
985
- "type": "string"
986
- },
987
- {
988
- "type": "number"
989
- },
990
- {
991
- "type": "boolean"
992
- }
993
- ]
994
- }
995
- },
996
- "elementAria": {
997
- "type": "string",
998
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
999
- }
1000
- }
1001
- }
1002
- }
1003
- },
1004
- "examples": [
1005
- true,
1006
- "Submit",
1007
- {
1008
- "button": "left",
1009
- "elementText": "Element text"
1010
- },
1011
- {
1012
- "selector": "#elementToScreenshot",
1013
- "elementText": "Element text",
1014
- "button": "middle"
1015
- }
1016
- ]
1017
- },
1018
- {
1019
- "type": "object",
1020
- "properties": {
1021
- "button": {
1022
- "description": "Kind of click to perform.",
1023
- "type": "string",
1024
- "enum": [
1025
- "left",
1026
- "right",
1027
- "middle"
1028
- ]
1029
- }
1030
- },
1031
- "title": "Find element and click"
1032
- }
1033
- ]
1034
- },
1035
- "type": {
1036
- "description": "Type keys after finding the element. Either a string or an object with a `keys` field as defined in [`type`](type). To type in the element, make the element active with the `click` parameter.",
1037
- "allOf": [
1038
- {
1039
- "$schema": "http://json-schema.org/draft-07/schema#",
1040
- "title": "typeKeys",
1041
- "description": "Type keys. To type special keys, begin and end the string with `$` and use the special key's keyword. For example, to type the Escape key, enter `$ESCAPE$`.",
1042
- "anyOf": [
1043
- {
1044
- "title": "Type keys (simple)",
1045
- "description": "Sequence of keys to enter.",
1046
- "anyOf": [
1047
- {
1048
- "type": "string"
1049
- },
1050
- {
1051
- "type": "array",
1052
- "items": {
1053
- "anyOf": [
1054
- {
1055
- "type": "string"
1056
- }
1057
- ]
1058
- }
1059
- }
1060
- ]
1061
- },
1062
- {
1063
- "title": "Type keys (detailed)",
1064
- "type": "object",
1065
- "properties": {
1066
- "keys": {
1067
- "title": "Type keys (simple)",
1068
- "description": "Sequence of keys to enter.",
1069
- "anyOf": [
1070
- {
1071
- "type": "string"
1072
- },
1073
- {
1074
- "type": "array",
1075
- "items": {
1076
- "anyOf": [
1077
- {
1078
- "type": "string"
1079
- }
1080
- ]
1081
- }
1082
- }
1083
- ]
1084
- },
1085
- "inputDelay": {
1086
- "type": "number",
1087
- "description": "Delay in milliseconds between each key press during a recording",
1088
- "default": 100
1089
- },
1090
- "selector": {
1091
- "type": "string",
1092
- "description": "Selector for the element to type into. If not specified, the typing occurs in the active element."
1093
- },
1094
- "elementText": {
1095
- "type": "string",
1096
- "description": "Display text of the element to type into. If combined with other element finding fields, the element must match all specified criteria."
1097
- },
1098
- "elementId": {
1099
- "type": "string",
1100
- "description": "ID attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
1101
- },
1102
- "elementTestId": {
1103
- "type": "string",
1104
- "description": "data-testid attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
1105
- },
1106
- "elementClass": {
1107
- "anyOf": [
1108
- {
1109
- "type": "string"
1110
- },
1111
- {
1112
- "type": "array",
1113
- "items": {
1114
- "type": "string"
1115
- }
1116
- }
1117
- ],
1118
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
1119
- },
1120
- "elementAttribute": {
1121
- "type": "object",
1122
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
1123
- "additionalProperties": {
1124
- "anyOf": [
1125
- {
1126
- "type": "string"
1127
- },
1128
- {
1129
- "type": "number"
1130
- },
1131
- {
1132
- "type": "boolean"
1133
- }
1134
- ]
1135
- }
1136
- },
1137
- "elementAria": {
1138
- "type": "string",
1139
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
1140
- }
1141
- },
1142
- "required": [
1143
- "keys"
1144
- ],
1145
- "additionalProperties": false
1146
- }
1147
- ],
1148
- "components": {
1149
- "schemas": {
1150
- "keys": {
1151
- "title": "Type keys (simple)",
1152
- "description": "Sequence of keys to enter.",
1153
- "anyOf": [
1154
- {
1155
- "type": "string"
1156
- },
1157
- {
1158
- "type": "array",
1159
- "items": {
1160
- "anyOf": [
1161
- {
1162
- "type": "string"
1163
- }
1164
- ]
1165
- }
1166
- }
1167
- ]
1168
- },
1169
- "object": {
1170
- "title": "Type keys (detailed)",
1171
- "type": "object",
1172
- "properties": {
1173
- "keys": {
1174
- "title": "Type keys (simple)",
1175
- "description": "Sequence of keys to enter.",
1176
- "anyOf": [
1177
- {
1178
- "type": "string"
1179
- },
1180
- {
1181
- "type": "array",
1182
- "items": {
1183
- "anyOf": [
1184
- {
1185
- "type": "string"
1186
- }
1187
- ]
1188
- }
1189
- }
1190
- ]
1191
- },
1192
- "inputDelay": {
1193
- "type": "number",
1194
- "description": "Delay in milliseconds between each key press during a recording",
1195
- "default": 100
1196
- },
1197
- "selector": {
1198
- "type": "string",
1199
- "description": "Selector for the element to type into. If not specified, the typing occurs in the active element."
1200
- },
1201
- "elementText": {
1202
- "type": "string",
1203
- "description": "Display text of the element to type into. If combined with other element finding fields, the element must match all specified criteria."
1204
- },
1205
- "elementId": {
1206
- "type": "string",
1207
- "description": "ID attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
1208
- },
1209
- "elementTestId": {
1210
- "type": "string",
1211
- "description": "data-testid attribute of the element to find. Supports exact match or regex pattern using /pattern/ syntax."
1212
- },
1213
- "elementClass": {
1214
- "anyOf": [
1215
- {
1216
- "type": "string"
1217
- },
1218
- {
1219
- "type": "array",
1220
- "items": {
1221
- "type": "string"
1222
- }
1223
- }
1224
- ],
1225
- "description": "Class or array of classes that the element must have. Each class supports exact match or regex pattern using /pattern/ syntax. Element must have all specified classes."
1226
- },
1227
- "elementAttribute": {
1228
- "type": "object",
1229
- "description": "Object of attribute key-value pairs that the element must have. Values can be strings (supporting /pattern/ regex), numbers, or booleans. Boolean true matches attribute presence, false matches absence.",
1230
- "additionalProperties": {
1231
- "anyOf": [
1232
- {
1233
- "type": "string"
1234
- },
1235
- {
1236
- "type": "number"
1237
- },
1238
- {
1239
- "type": "boolean"
1240
- }
1241
- ]
1242
- }
1243
- },
1244
- "elementAria": {
1245
- "type": "string",
1246
- "description": "Computed accessible name of the element per ARIA specification. Supports exact match or regex pattern using /pattern/ syntax."
1247
- }
1248
- },
1249
- "required": [
1250
- "keys"
1251
- ],
1252
- "additionalProperties": false
1253
- }
1254
- }
1255
- },
1256
- "examples": [
1257
- "kittens",
1258
- [
1259
- "$ENTER$"
1260
- ],
1261
- [
1262
- "kittens",
1263
- "$ENTER$"
1264
- ],
1265
- {
1266
- "keys": "kittens"
1267
- },
1268
- {
1269
- "keys": [
1270
- "$ENTER$"
1271
- ]
1272
- },
1273
- {
1274
- "keys": [
1275
- "kittens",
1276
- "$ENTER$"
1277
- ],
1278
- "inputDelay": 500
1279
- }
1280
- ]
1281
- },
1282
- {
1283
- "not": {
1284
- "type": "object",
1285
- "required": [
1286
- "selector",
1287
- "elementText",
1288
- "elementId",
1289
- "elementTestId",
1290
- "elementClass",
1291
- "elementAttribute",
1292
- "elementAria"
1293
- ],
1294
- "title": "Find element and type"
1295
- }
1296
- }
1297
- ]
1298
- }
1299
- }
1300
- }
1301
- }
1302
- },
1303
- "examples": [
1304
- "Find me!",
1305
- {
1306
- "selector": "[title=Search]"
1307
- },
1308
- {
1309
- "selector": "[title=Search]",
1310
- "timeout": 10000,
1311
- "elementText": "Search",
1312
- "moveTo": true,
1313
- "click": true,
1314
- "type": "shorthair cat"
1315
- },
1316
- {
1317
- "selector": "[title=Search]",
1318
- "click": {
1319
- "button": "right"
1320
- }
1321
- },
1322
- {
1323
- "selector": "[title=Search]",
1324
- "timeout": 10000,
1325
- "elementText": "Search",
1326
- "moveTo": true,
1327
- "click": true,
1328
- "type": {
1329
- "keys": [
1330
- "shorthair cat"
1331
- ],
1332
- "inputDelay": 100
1333
- }
1334
- },
1335
- {
1336
- "elementId": "/^user-[0-9]+$/",
1337
- "elementClass": [
1338
- "admin",
1339
- "/^level-[1-5]$/"
1340
- ],
1341
- "elementAttribute": {
1342
- "data-active": true,
1343
- "data-score": "/^[0-9]+$/"
1344
- },
1345
- "timeout": 8000,
1346
- "moveTo": false
1347
- }
1348
- ]
1349
- }