@vardot/varbase-e2e 2.0.1 → 2.0.2

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 (178) hide show
  1. package/.playwright-mcp/console-2026-08-10T08-51-59-747Z.log +5 -0
  2. package/.playwright-mcp/console-2026-08-10T09-00-26-735Z.log +7 -0
  3. package/.playwright-mcp/page-2026-08-10T01-04-54-039Z.yml +410 -0
  4. package/.playwright-mcp/page-2026-08-10T01-05-06-967Z.png +0 -0
  5. package/.playwright-mcp/page-2026-08-10T01-05-52-136Z.yml +720 -0
  6. package/.playwright-mcp/page-2026-08-10T01-06-05-985Z.yml +410 -0
  7. package/.playwright-mcp/page-2026-08-10T01-06-25-942Z.yml +726 -0
  8. package/.playwright-mcp/page-2026-08-10T01-25-57-152Z.yml +395 -0
  9. package/.playwright-mcp/page-2026-08-10T01-26-48-853Z.yml +395 -0
  10. package/.playwright-mcp/page-2026-08-10T01-27-47-127Z.yml +413 -0
  11. package/.playwright-mcp/page-2026-08-10T01-27-57-349Z.yml +413 -0
  12. package/.playwright-mcp/page-2026-08-10T01-28-07-943Z.yml +425 -0
  13. package/.playwright-mcp/page-2026-08-10T01-28-30-462Z.yml +369 -0
  14. package/.playwright-mcp/page-2026-08-10T01-29-00-369Z.yml +413 -0
  15. package/.playwright-mcp/page-2026-08-10T01-29-08-988Z.yml +413 -0
  16. package/.playwright-mcp/page-2026-08-10T01-29-19-888Z.yml +425 -0
  17. package/.playwright-mcp/page-2026-08-10T01-29-30-189Z.yml +369 -0
  18. package/.playwright-mcp/page-2026-08-10T01-30-08-272Z.yml +413 -0
  19. package/.playwright-mcp/page-2026-08-10T01-30-16-955Z.yml +413 -0
  20. package/.playwright-mcp/page-2026-08-10T01-30-27-612Z.yml +425 -0
  21. package/.playwright-mcp/page-2026-08-10T01-30-37-943Z.yml +465 -0
  22. package/.playwright-mcp/page-2026-08-10T01-31-15-265Z.yml +413 -0
  23. package/.playwright-mcp/page-2026-08-10T01-31-24-328Z.yml +413 -0
  24. package/.playwright-mcp/page-2026-08-10T01-31-36-622Z.yml +425 -0
  25. package/.playwright-mcp/page-2026-08-10T01-31-45-965Z.yml +470 -0
  26. package/.playwright-mcp/page-2026-08-10T01-32-13-400Z.yml +413 -0
  27. package/.playwright-mcp/page-2026-08-10T01-32-23-469Z.yml +413 -0
  28. package/.playwright-mcp/page-2026-08-10T01-32-33-859Z.yml +425 -0
  29. package/.playwright-mcp/page-2026-08-10T01-32-43-461Z.yml +513 -0
  30. package/.playwright-mcp/page-2026-08-10T01-33-13-160Z.yml +413 -0
  31. package/.playwright-mcp/page-2026-08-10T01-33-23-937Z.yml +413 -0
  32. package/.playwright-mcp/page-2026-08-10T01-33-35-367Z.yml +425 -0
  33. package/.playwright-mcp/page-2026-08-10T01-33-47-266Z.yml +459 -0
  34. package/.playwright-mcp/page-2026-08-10T01-34-14-452Z.yml +413 -0
  35. package/.playwright-mcp/page-2026-08-10T01-34-26-042Z.yml +413 -0
  36. package/.playwright-mcp/page-2026-08-10T01-34-40-869Z.yml +425 -0
  37. package/.playwright-mcp/page-2026-08-10T01-34-49-587Z.yml +391 -0
  38. package/.playwright-mcp/page-2026-08-10T01-35-16-735Z.yml +413 -0
  39. package/.playwright-mcp/page-2026-08-10T01-35-24-882Z.yml +413 -0
  40. package/.playwright-mcp/page-2026-08-10T01-35-36-165Z.yml +425 -0
  41. package/.playwright-mcp/page-2026-08-10T01-35-45-644Z.yml +455 -0
  42. package/.playwright-mcp/page-2026-08-10T01-36-18-148Z.yml +413 -0
  43. package/.playwright-mcp/page-2026-08-10T01-36-26-751Z.yml +413 -0
  44. package/.playwright-mcp/page-2026-08-10T01-36-37-834Z.yml +425 -0
  45. package/.playwright-mcp/page-2026-08-10T01-36-48-078Z.yml +370 -0
  46. package/.playwright-mcp/page-2026-08-10T01-37-16-309Z.yml +413 -0
  47. package/.playwright-mcp/page-2026-08-10T01-37-28-723Z.yml +413 -0
  48. package/.playwright-mcp/page-2026-08-10T01-37-39-325Z.yml +425 -0
  49. package/.playwright-mcp/page-2026-08-10T01-37-48-278Z.yml +409 -0
  50. package/.playwright-mcp/page-2026-08-10T01-38-27-405Z.yml +413 -0
  51. package/.playwright-mcp/page-2026-08-10T01-38-36-994Z.yml +413 -0
  52. package/.playwright-mcp/page-2026-08-10T01-38-49-584Z.yml +425 -0
  53. package/.playwright-mcp/page-2026-08-10T01-38-59-289Z.yml +396 -0
  54. package/.playwright-mcp/page-2026-08-10T01-39-24-880Z.yml +413 -0
  55. package/.playwright-mcp/page-2026-08-10T01-39-35-551Z.yml +413 -0
  56. package/.playwright-mcp/page-2026-08-10T01-39-47-960Z.yml +425 -0
  57. package/.playwright-mcp/page-2026-08-10T01-39-56-844Z.yml +549 -0
  58. package/.playwright-mcp/page-2026-08-10T01-40-24-645Z.yml +413 -0
  59. package/.playwright-mcp/page-2026-08-10T01-40-33-806Z.yml +413 -0
  60. package/.playwright-mcp/page-2026-08-10T01-40-46-946Z.yml +425 -0
  61. package/.playwright-mcp/page-2026-08-10T01-40-56-503Z.yml +443 -0
  62. package/.playwright-mcp/page-2026-08-10T01-41-32-064Z.yml +413 -0
  63. package/.playwright-mcp/page-2026-08-10T01-41-40-666Z.yml +413 -0
  64. package/.playwright-mcp/page-2026-08-10T01-41-51-325Z.yml +425 -0
  65. package/.playwright-mcp/page-2026-08-10T01-41-58-790Z.yml +368 -0
  66. package/.playwright-mcp/page-2026-08-10T01-42-26-459Z.yml +413 -0
  67. package/.playwright-mcp/page-2026-08-10T01-42-38-306Z.yml +413 -0
  68. package/.playwright-mcp/page-2026-08-10T01-42-49-073Z.yml +425 -0
  69. package/.playwright-mcp/page-2026-08-10T01-42-57-453Z.yml +443 -0
  70. package/.playwright-mcp/page-2026-08-10T01-43-32-099Z.yml +413 -0
  71. package/.playwright-mcp/page-2026-08-10T01-43-42-882Z.yml +413 -0
  72. package/.playwright-mcp/page-2026-08-10T01-43-54-853Z.yml +425 -0
  73. package/.playwright-mcp/page-2026-08-10T01-44-04-373Z.yml +399 -0
  74. package/.playwright-mcp/page-2026-08-10T01-44-30-874Z.yml +413 -0
  75. package/.playwright-mcp/page-2026-08-10T01-44-39-830Z.yml +413 -0
  76. package/.playwright-mcp/page-2026-08-10T01-44-51-515Z.yml +425 -0
  77. package/.playwright-mcp/page-2026-08-10T01-44-59-974Z.yml +503 -0
  78. package/.playwright-mcp/page-2026-08-10T01-45-26-748Z.yml +413 -0
  79. package/.playwright-mcp/page-2026-08-10T01-45-36-685Z.yml +413 -0
  80. package/.playwright-mcp/page-2026-08-10T01-45-47-715Z.yml +425 -0
  81. package/.playwright-mcp/page-2026-08-10T01-45-57-895Z.yml +469 -0
  82. package/.playwright-mcp/page-2026-08-10T01-46-36-371Z.yml +413 -0
  83. package/.playwright-mcp/page-2026-08-10T01-46-49-906Z.yml +413 -0
  84. package/.playwright-mcp/page-2026-08-10T01-47-01-554Z.yml +425 -0
  85. package/.playwright-mcp/page-2026-08-10T01-47-12-712Z.yml +581 -0
  86. package/.playwright-mcp/page-2026-08-10T01-47-39-024Z.yml +413 -0
  87. package/.playwright-mcp/page-2026-08-10T01-47-49-714Z.yml +413 -0
  88. package/.playwright-mcp/page-2026-08-10T01-48-00-608Z.yml +425 -0
  89. package/.playwright-mcp/page-2026-08-10T01-48-09-739Z.yml +604 -0
  90. package/.playwright-mcp/page-2026-08-10T01-48-51-940Z.yml +413 -0
  91. package/.playwright-mcp/page-2026-08-10T01-49-01-562Z.yml +413 -0
  92. package/.playwright-mcp/page-2026-08-10T01-49-13-751Z.yml +425 -0
  93. package/.playwright-mcp/page-2026-08-10T01-49-22-503Z.yml +400 -0
  94. package/.playwright-mcp/page-2026-08-10T01-49-49-311Z.yml +413 -0
  95. package/.playwright-mcp/page-2026-08-10T01-50-00-769Z.yml +413 -0
  96. package/.playwright-mcp/page-2026-08-10T01-50-12-083Z.yml +425 -0
  97. package/.playwright-mcp/page-2026-08-10T01-50-23-765Z.yml +458 -0
  98. package/.playwright-mcp/page-2026-08-10T01-51-02-339Z.yml +413 -0
  99. package/.playwright-mcp/page-2026-08-10T01-51-12-711Z.yml +413 -0
  100. package/.playwright-mcp/page-2026-08-10T01-51-25-370Z.yml +425 -0
  101. package/.playwright-mcp/page-2026-08-10T01-51-33-936Z.yml +368 -0
  102. package/.playwright-mcp/page-2026-08-10T01-52-09-467Z.yml +413 -0
  103. package/.playwright-mcp/page-2026-08-10T01-52-21-616Z.yml +413 -0
  104. package/.playwright-mcp/page-2026-08-10T01-52-32-806Z.yml +425 -0
  105. package/.playwright-mcp/page-2026-08-10T01-52-42-382Z.yml +407 -0
  106. package/.playwright-mcp/page-2026-08-10T01-53-11-994Z.yml +413 -0
  107. package/.playwright-mcp/page-2026-08-10T01-53-21-669Z.yml +413 -0
  108. package/.playwright-mcp/page-2026-08-10T01-53-33-141Z.yml +425 -0
  109. package/.playwright-mcp/page-2026-08-10T01-53-43-582Z.yml +443 -0
  110. package/.playwright-mcp/page-2026-08-10T01-54-19-884Z.yml +413 -0
  111. package/.playwright-mcp/page-2026-08-10T01-54-32-359Z.yml +413 -0
  112. package/.playwright-mcp/page-2026-08-10T01-54-43-530Z.yml +425 -0
  113. package/.playwright-mcp/page-2026-08-10T01-54-53-891Z.yml +474 -0
  114. package/.playwright-mcp/page-2026-08-10T01-55-24-634Z.yml +413 -0
  115. package/.playwright-mcp/page-2026-08-10T01-55-35-283Z.yml +413 -0
  116. package/.playwright-mcp/page-2026-08-10T01-55-46-649Z.yml +425 -0
  117. package/.playwright-mcp/page-2026-08-10T01-55-56-585Z.yml +431 -0
  118. package/.playwright-mcp/page-2026-08-10T01-56-31-670Z.yml +413 -0
  119. package/.playwright-mcp/page-2026-08-10T01-56-40-782Z.yml +413 -0
  120. package/.playwright-mcp/page-2026-08-10T01-56-52-065Z.yml +425 -0
  121. package/.playwright-mcp/page-2026-08-10T01-57-03-705Z.yml +445 -0
  122. package/.playwright-mcp/page-2026-08-10T01-57-31-390Z.yml +413 -0
  123. package/.playwright-mcp/page-2026-08-10T01-57-44-756Z.yml +413 -0
  124. package/.playwright-mcp/page-2026-08-10T01-57-56-802Z.yml +425 -0
  125. package/.playwright-mcp/page-2026-08-10T01-58-06-937Z.yml +468 -0
  126. package/.playwright-mcp/page-2026-08-10T01-58-40-595Z.yml +413 -0
  127. package/.playwright-mcp/page-2026-08-10T01-58-51-715Z.yml +413 -0
  128. package/.playwright-mcp/page-2026-08-10T01-59-04-402Z.yml +425 -0
  129. package/.playwright-mcp/page-2026-08-10T01-59-15-638Z.yml +472 -0
  130. package/.playwright-mcp/page-2026-08-10T01-59-58-162Z.yml +413 -0
  131. package/.playwright-mcp/page-2026-08-10T02-00-09-962Z.yml +413 -0
  132. package/.playwright-mcp/page-2026-08-10T02-00-21-468Z.yml +425 -0
  133. package/.playwright-mcp/page-2026-08-10T02-00-33-248Z.yml +451 -0
  134. package/.playwright-mcp/page-2026-08-10T02-01-15-418Z.yml +413 -0
  135. package/.playwright-mcp/page-2026-08-10T02-01-27-182Z.yml +413 -0
  136. package/.playwright-mcp/page-2026-08-10T02-01-38-250Z.yml +425 -0
  137. package/.playwright-mcp/page-2026-08-10T04-20-27-979Z.yml +513 -0
  138. package/.playwright-mcp/page-2026-08-10T04-20-41-431Z.yml +513 -0
  139. package/.playwright-mcp/page-2026-08-10T04-21-46-133Z.yml +406 -0
  140. package/.playwright-mcp/page-2026-08-10T04-22-10-938Z.yml +406 -0
  141. package/.playwright-mcp/page-2026-08-10T04-23-00-626Z.yml +406 -0
  142. package/.playwright-mcp/page-2026-08-10T04-23-19-844Z.yml +418 -0
  143. package/.playwright-mcp/page-2026-08-10T04-25-00-732Z.yml +455 -0
  144. package/.playwright-mcp/page-2026-08-10T04-25-35-125Z.yml +412 -0
  145. package/.playwright-mcp/page-2026-08-10T04-25-46-640Z.yml +412 -0
  146. package/.playwright-mcp/page-2026-08-10T04-25-55-092Z.yml +549 -0
  147. package/.playwright-mcp/page-2026-08-10T04-26-26-403Z.yml +406 -0
  148. package/.playwright-mcp/page-2026-08-10T04-26-40-673Z.yml +406 -0
  149. package/.playwright-mcp/page-2026-08-10T04-26-48-427Z.yml +604 -0
  150. package/.playwright-mcp/page-2026-08-10T04-27-23-584Z.yml +408 -0
  151. package/.playwright-mcp/page-2026-08-10T04-27-34-294Z.yml +408 -0
  152. package/.playwright-mcp/page-2026-08-10T04-27-42-299Z.yml +443 -0
  153. package/.playwright-mcp/page-2026-08-10T04-28-20-032Z.yml +406 -0
  154. package/.playwright-mcp/page-2026-08-10T04-28-32-275Z.yml +406 -0
  155. package/.playwright-mcp/page-2026-08-10T04-28-41-592Z.yml +581 -0
  156. package/.playwright-mcp/page-2026-08-10T04-29-19-972Z.yml +414 -0
  157. package/.playwright-mcp/page-2026-08-10T04-29-30-961Z.yml +414 -0
  158. package/.playwright-mcp/page-2026-08-10T04-29-39-044Z.yml +465 -0
  159. package/.playwright-mcp/page-2026-08-10T04-30-13-196Z.yml +402 -0
  160. package/.playwright-mcp/page-2026-08-10T04-30-24-867Z.yml +402 -0
  161. package/.playwright-mcp/page-2026-08-10T04-30-32-372Z.yml +409 -0
  162. package/.playwright-mcp/page-2026-08-10T04-31-06-199Z.yml +402 -0
  163. package/.playwright-mcp/page-2026-08-10T04-31-17-733Z.yml +402 -0
  164. package/.playwright-mcp/page-2026-08-10T04-31-26-296Z.yml +445 -0
  165. package/.playwright-mcp/page-2026-08-10T04-32-02-456Z.yml +402 -0
  166. package/.playwright-mcp/page-2026-08-10T04-32-14-091Z.yml +402 -0
  167. package/.playwright-mcp/page-2026-08-10T04-32-23-437Z.yml +396 -0
  168. package/.playwright-mcp/page-2026-08-10T04-32-58-401Z.yml +403 -0
  169. package/.playwright-mcp/page-2026-08-10T04-33-09-818Z.yml +403 -0
  170. package/.playwright-mcp/page-2026-08-10T04-33-20-858Z.yml +468 -0
  171. package/.playwright-mcp/page-2026-08-10T04-33-53-074Z.yml +407 -0
  172. package/.playwright-mcp/page-2026-08-10T04-34-05-806Z.yml +407 -0
  173. package/.playwright-mcp/page-2026-08-10T08-52-00-165Z.yml +0 -0
  174. package/.playwright-mcp/page-2026-08-10T08-52-17-430Z.yml +410 -0
  175. package/package.json +1 -1
  176. package/tests/step-definitions/action.steps.js +12 -5
  177. package/tests/step-definitions/drupal-layout-builder.steps.js +36 -2
  178. package/tests/step-definitions/drupal-media.steps.js +23 -6
@@ -0,0 +1,410 @@
1
+ - generic [active] [ref=f99e1]:
2
+ - generic:
3
+ - link "Skip to main content" [ref=f99e2] [cursor=pointer]:
4
+ - /url: "#content"
5
+ - link "Skip to search" [ref=f99e3] [cursor=pointer]:
6
+ - /url: "#search-block-form"
7
+ - navigation [ref=f99e5]:
8
+ - generic [ref=f99e6]:
9
+ - generic [ref=f99e7]:
10
+ - generic:
11
+ - generic:
12
+ - generic:
13
+ - list:
14
+ - listitem [ref=f99e8]:
15
+ - link "Drupal.org home" [ref=f99e9] [cursor=pointer]:
16
+ - /url: /home
17
+ - listitem [ref=f99e10]:
18
+ - link "Discover Drupal" [ref=f99e11] [cursor=pointer]:
19
+ - /url: https://www.drupal.org/about/overview/technical
20
+ - listitem [ref=f99e12]:
21
+ - link "Build with Drupal" [ref=f99e13] [cursor=pointer]:
22
+ - /url: https://www.drupal.org/docs/official_docs/local-development-guide
23
+ - listitem [ref=f99e14]:
24
+ - link "Partners & Services" [ref=f99e15] [cursor=pointer]:
25
+ - /url: https://www.drupal.org/drupal-services
26
+ - listitem [ref=f99e16]:
27
+ - link "Community" [ref=f99e17] [cursor=pointer]:
28
+ - /url: https://www.drupal.org/community
29
+ - listitem [ref=f99e18]:
30
+ - link "Support Drupal" [ref=f99e19] [cursor=pointer]:
31
+ - /url: /association
32
+ - listitem [ref=f99e20]:
33
+ - link "Get Started" [ref=f99e21] [cursor=pointer]:
34
+ - /url: /try-hosting
35
+ - generic [ref=f99e27]:
36
+ - heading "Search form" [level=2] [ref=f99e28]
37
+ - generic: Search
38
+ - button "Search" [ref=f99e31] [cursor=pointer]
39
+ - generic [ref=f99e32]:
40
+ - generic:
41
+ - generic:
42
+ - generic:
43
+ - list:
44
+ - listitem:
45
+ - link [ref=f99e33] [cursor=pointer]:
46
+ - /url: "#block-system-user-menu"
47
+ - img "Log in, view profile, and more" [ref=f99e34]
48
+ - link [ref=f99e39] [cursor=pointer]:
49
+ - /url: /
50
+ - img "Drupal.org" [ref=f99e40]
51
+ - generic [ref=f99e42]:
52
+ - generic [ref=f99e43]:
53
+ - navigation [ref=f99e45]:
54
+ - link "General projects" [ref=f99e47] [cursor=pointer]:
55
+ - /url: /project/project_general
56
+ - link "Varbase Project Template" [ref=f99e49] [cursor=pointer]:
57
+ - /url: /project/varbase_project
58
+ - link "Issues" [ref=f99e51] [cursor=pointer]:
59
+ - /url: /project/issues/varbase_project
60
+ - 'link "task: Switch the Varbase functional testing suite to Varbase E2E on 9.2.x" [ref=f99e53] [cursor=pointer]':
61
+ - /url: /project/varbase_project/issues/3615713
62
+ - heading [level=1] [ref=f99e54]:
63
+ - text: Edit
64
+ - emphasis [ref=f99e55]: "task: Switch the Varbase functional testing suite to Varbase E2E on 9.2.x"
65
+ - generic [ref=f99e56]:
66
+ - heading "Primary tabs" [level=2] [ref=f99e57]
67
+ - list [ref=f99e58]:
68
+ - listitem [ref=f99e59]:
69
+ - link "View" [ref=f99e60] [cursor=pointer]:
70
+ - /url: /project/varbase_project/issues/3615713
71
+ - listitem [ref=f99e61]:
72
+ - link "Edit (active tab)" [ref=f99e62] [cursor=pointer]:
73
+ - /url: /node/3615713/edit
74
+ - text: Edit
75
+ - generic [ref=f99e63]: (active tab)
76
+ - main [ref=f99e64]:
77
+ - generic [ref=f99e65]:
78
+ - generic [ref=f99e67]:
79
+ - text: "?"
80
+ - paragraph [ref=f99e70]:
81
+ - text: Learn
82
+ - link "how to report an issue" [ref=f99e71] [cursor=pointer]:
83
+ - /url: /community/contributor-guide/reference-information/quick-info/creating-or-updating-an-issue-report
84
+ - text: .
85
+ - generic [ref=f99e79]:
86
+ - group [ref=f99e80]:
87
+ - link "Hide Issue metadata" [ref=f99e83] [cursor=pointer]:
88
+ - /url: "#"
89
+ - generic [ref=f99e84]: Hide
90
+ - text: Issue metadata
91
+ - generic [ref=f99e85]:
92
+ - generic [ref=f99e86]:
93
+ - generic [ref=f99e87]: Title *
94
+ - textbox "Title *" [ref=f99e88]: "task: Switch the Varbase functional testing suite to Varbase E2E on 9.2.x"
95
+ - generic [ref=f99e89]:
96
+ - application [ref=f99e92]:
97
+ - generic [ref=f99e93]: Project *
98
+ - textbox "Project *" [ref=f99e94]: Varbase Project Template (3401545)
99
+ - generic [ref=f99e97]:
100
+ - generic [ref=f99e98]: Version *
101
+ - combobox "Version *" [ref=f99e99]:
102
+ - option "11.0.x-dev"
103
+ - option "11.0.5"
104
+ - option "11.0.4"
105
+ - option "11.0.3"
106
+ - option "11.0.2"
107
+ - option "11.0.1"
108
+ - option "11.0.0"
109
+ - option "11.0.0-alpha1"
110
+ - option "10.1.x-dev"
111
+ - option "10.1.3"
112
+ - option "10.1.2"
113
+ - option "10.1.1"
114
+ - option "9.2.x-dev" [selected]
115
+ - option "9.2.1"
116
+ - option "9.2.0"
117
+ - generic [ref=f99e101]:
118
+ - generic [ref=f99e102]: Component *
119
+ - combobox "Component *" [ref=f99e103]:
120
+ - option "Code" [selected]
121
+ - option "Documentation"
122
+ - option "Miscellaneous"
123
+ - option "User interface"
124
+ - generic [ref=f99e105]:
125
+ - generic [ref=f99e106]: Assigned *
126
+ - combobox "Assigned *" [ref=f99e107]:
127
+ - option "Unassigned" [selected]
128
+ - option "josebc"
129
+ - option "mohammed j. razem"
130
+ - option "omar alahmed"
131
+ - option "rajab natshah"
132
+ - generic [ref=f99e108]:
133
+ - generic [ref=f99e110]:
134
+ - generic [ref=f99e111]: Category *
135
+ - combobox "Category *" [ref=f99e112]:
136
+ - option "Bug report"
137
+ - option "Task" [selected]
138
+ - option "Feature request"
139
+ - option "Support request"
140
+ - option "Plan"
141
+ - generic [ref=f99e114]:
142
+ - generic [ref=f99e115]: Priority *
143
+ - combobox "Priority *" [ref=f99e116]:
144
+ - option "Critical"
145
+ - option "Major"
146
+ - option "Normal" [selected]
147
+ - option "Minor"
148
+ - generic [ref=f99e118]:
149
+ - generic [ref=f99e119]: Status *
150
+ - combobox "Status *" [ref=f99e120]:
151
+ - option "Active" [selected]
152
+ - option "Needs work"
153
+ - option "Needs review"
154
+ - option "Reviewed & tested by the community"
155
+ - option "Patch (to be ported)"
156
+ - option "Fixed"
157
+ - option "Postponed"
158
+ - option "Postponed (maintainer needs more info)"
159
+ - option "Closed (duplicate)"
160
+ - option "Closed (won't fix)"
161
+ - option "Closed (works as designed)"
162
+ - option "Closed (cannot reproduce)"
163
+ - option "Closed (outdated)"
164
+ - generic [ref=f99e121]:
165
+ - text: Descriptions of the
166
+ - link "Priority" [ref=f99e122] [cursor=pointer]:
167
+ - /url: /docs/develop/issues/fields-and-other-parts-of-an-issue/issue-priority-field
168
+ - text: and
169
+ - link "Status" [ref=f99e123] [cursor=pointer]:
170
+ - /url: /docs/develop/issues/fields-and-other-parts-of-an-issue/issue-status-field
171
+ - text: values can be found in the
172
+ - link "Drupal project issues" [ref=f99e124] [cursor=pointer]:
173
+ - /url: /docs/develop/issues
174
+ - text: documentation.
175
+ - application [ref=f99e127]:
176
+ - generic [ref=f99e128]: Issue tags
177
+ - textbox "Issue tags" [ref=f99e129]
178
+ - generic [ref=f99e130]:
179
+ - text: Before adding tags
180
+ - link "read the issue tag guidelines" [ref=f99e131] [cursor=pointer]:
181
+ - /url: /node/3156530
182
+ - text: . Do
183
+ - strong [ref=f99e132]: NOT
184
+ - text: use tags for adding random keywords or duplicating any other fields. Separate terms with a comma, not a space.
185
+ - generic [ref=f99e137]:
186
+ - generic [ref=f99e138]:
187
+ - generic [ref=f99e139]: Comment
188
+ - generic [ref=f99e140]:
189
+ - toolbar [ref=f99e141]:
190
+ - button "Bold(B)" [ref=f99e142] [cursor=pointer]
191
+ - button "Italic(I)" [ref=f99e143] [cursor=pointer]
192
+ - button "Strike-through" [ref=f99e144] [cursor=pointer]
193
+ - button "Heading 2" [ref=f99e145] [cursor=pointer]
194
+ - button "Heading 3" [ref=f99e146] [cursor=pointer]
195
+ - button "Heading 4" [ref=f99e147] [cursor=pointer]
196
+ - button "Quote" [ref=f99e148] [cursor=pointer]
197
+ - button "code" [ref=f99e149] [cursor=pointer]
198
+ - button "PHP" [ref=f99e150] [cursor=pointer]
199
+ - button "Insert/edit image(M)" [ref=f99e151] [cursor=pointer]
200
+ - button "Insert/edit link(L)" [ref=f99e152] [cursor=pointer]
201
+ - button "Ordered list. Converts selected lines to a numbered list.(O)" [ref=f99e153] [cursor=pointer]
202
+ - button "Unordered list. Converts selected lines to a bulleted list.(U)" [ref=f99e154] [cursor=pointer]
203
+ - button "Get help on button functionality.(H)" [ref=f99e155] [cursor=pointer]
204
+ - textbox "Comment" [ref=f99e156]
205
+ - group "Show Text format" [ref=f99e158]:
206
+ - paragraph [ref=f99e160]:
207
+ - link "More information about text formats" [ref=f99e161] [cursor=pointer]:
208
+ - /url: /filter/tips
209
+ - group [ref=f99e162]:
210
+ - link "Hide Issue summary & relationships" [ref=f99e165] [cursor=pointer]:
211
+ - /url: "#"
212
+ - generic [ref=f99e166]: Hide
213
+ - text: Issue summary & relationships
214
+ - generic [ref=f99e167]:
215
+ - generic [ref=f99e170]:
216
+ - generic [ref=f99e171]:
217
+ - generic [ref=f99e172]: Issue summary
218
+ - generic [ref=f99e173]:
219
+ - toolbar [ref=f99e174]:
220
+ - button "Bold(B)" [ref=f99e175] [cursor=pointer]
221
+ - button "Italic(I)" [ref=f99e176] [cursor=pointer]
222
+ - button "Strike-through" [ref=f99e177] [cursor=pointer]
223
+ - button "Heading 2" [ref=f99e178] [cursor=pointer]
224
+ - button "Heading 3" [ref=f99e179] [cursor=pointer]
225
+ - button "Heading 4" [ref=f99e180] [cursor=pointer]
226
+ - button "Quote" [ref=f99e181] [cursor=pointer]
227
+ - button "code" [ref=f99e182] [cursor=pointer]
228
+ - button "PHP" [ref=f99e183] [cursor=pointer]
229
+ - button "Insert/edit image(M)" [ref=f99e184] [cursor=pointer]
230
+ - button "Insert/edit link(L)" [ref=f99e185] [cursor=pointer]
231
+ - button "Ordered list. Converts selected lines to a numbered list.(O)" [ref=f99e186] [cursor=pointer]
232
+ - button "Unordered list. Converts selected lines to a bulleted list.(U)" [ref=f99e187] [cursor=pointer]
233
+ - button "Get help on button functionality.(H)" [ref=f99e188] [cursor=pointer]
234
+ - textbox "Issue summary" [ref=f99e189]: "<h3 id=\"summary-problem-motivation\">Problem/Motivation</h3> <p>The Varbase functional testing suite on this branch still depends on the previous testing package. The harness now ships as Varbase E2E (<code>@vardot/varbase-e2e</code> 2.0.0), which includes the Drupal and Varbase step packs as built-ins. Keeping local copies makes scenarios ambiguous and cuts this project off from upstream fixes.</p> <h4 id=\"summary-steps-reproduce\">Steps to reproduce</h4> <p>Run <code>grep -rn \"VARBASE_E2E\\|varbase-e2e\" package.json cucumber.js</code> on 9.2.x &mdash; it still points at the previous package.</p> <h3 id=\"summary-proposed-resolution\">Proposed resolution</h3> <ul> <li>Depend on <code>@vardot/varbase-e2e ^2.0.0</code>; update <code>cucumber.js</code> require globs and the report script path.</li> <li>Re-point custom step helper imports at the new package.</li> <li>Remove custom steps now shipped as built-ins; keep only project-specific ones.</li> <li>Rename env vars to the <code>VARBASE_E2E_*</code> family across config/CI/DDEV.</li> <li>Verify with <code>npx cucumber-js --dry-run</code> (zero ambiguous/undefined), then CI.</li> </ul> <p><em>AI-Generated: Yes</em></p> <h3 id=\"summary-remaining-tasks\">Remaining tasks</h3> <ul> <li>✅ File an issue</li> <li>❌ Addition/Change/Update/Fix</li> <li>❌ Testing to ensure no regression</li> <li>➖ Automated unit testing coverage</li> <li>❌ Automated functional testing coverage</li> <li>➖ UX/UI designer responsibilities</li> <li>❌ Readability</li> <li>➖ Accessibility</li> <li>➖ Performance</li> <li>➖ Security</li> <li>❌ Developer Documentation</li> <li>➖ User Guide Documentation</li> <li>➖ Reviewed by human</li> <li>➖ Code review by maintainers</li> <li>➖ Full testing and approval</li> <li>➖ Credit contributors</li> <li>➖ Review with the product owner</li> <li>➖ Release notes snippet</li> <li>❌ Release</li> </ul> <h3 id=\"summary-ui-changes\">User interface changes</h3> <ul> <li>N/A</li> </ul> <h3 id=\"summary-api-changes\">API changes</h3> <ul> <li>N/A</li> </ul> <h3 id=\"summary-data-model-changes\">Data model changes</h3> <ul> <li>N/A</li> </ul> <h3 id=\"summary-release-notes\">Release notes snippet</h3> <ul> <li>The Varbase functional testing suite now runs on Varbase E2E (<code>@vardot/varbase-e2e</code> 2.0.0).</li> </ul>"
235
+ - group "Show Text format" [ref=f99e191]:
236
+ - paragraph [ref=f99e193]:
237
+ - link "More information about text formats" [ref=f99e194] [cursor=pointer]:
238
+ - /url: /filter/tips
239
+ - generic [ref=f99e195]:
240
+ - text: A
241
+ - link "description of the issue summary field" [ref=f99e196] [cursor=pointer]:
242
+ - /url: /community/contributor-guide/reference-information/drupal-project-issues/fields-and-other-parts-of-9
243
+ - text: and
244
+ - link "alternative issue summary templates" [ref=f99e197] [cursor=pointer]:
245
+ - /url: /community/contributor-guide/reference-information/drupal-project-issues/fields-and-other-parts-of-11
246
+ - text: can be found in the
247
+ - link "Drupal project issues" [ref=f99e198] [cursor=pointer]:
248
+ - /url: /community/contributor-guide/reference-information/drupal-project-issues
249
+ - text: documentation.
250
+ - generic [ref=f99e201]:
251
+ - generic [ref=f99e202]: Parent issue link
252
+ - generic [ref=f99e205]:
253
+ - generic [ref=f99e206]: URL
254
+ - textbox "URL" [ref=f99e207]
255
+ - generic [ref=f99e208]: URL of the parent issue. It can be https://www.drupal.org issue or https://git.drupalcode.org issue.
256
+ - generic [ref=f99e211]:
257
+ - link "Show row weights" [ref=f99e213] [cursor=pointer]:
258
+ - /url: "#"
259
+ - table [ref=f99e214]:
260
+ - rowgroup [ref=f99e215]:
261
+ - row [ref=f99e216]:
262
+ - columnheader "Related issues links" [ref=f99e217]
263
+ - rowgroup [ref=f99e219]:
264
+ - row "Related issues links URL" [ref=f99e220]:
265
+ - cell [ref=f99e221]:
266
+ - link "Drag to re-order" [ref=f99e222]:
267
+ - /url: "#"
268
+ - cell "Related issues links URL" [ref=f99e224]:
269
+ - generic [ref=f99e225]:
270
+ - generic [ref=f99e226]: Related issues links
271
+ - generic [ref=f99e229]:
272
+ - generic [ref=f99e230]: URL
273
+ - textbox "URL" [ref=f99e231]
274
+ - generic [ref=f99e232]: URLs of related issues. They can be https://www.drupal.org issues or https://git.drupalcode.org issues.
275
+ - button "Add another item" [ref=f99e234]
276
+ - group [ref=f99e237]:
277
+ - link "Show Files" [ref=f99e240] [cursor=pointer]:
278
+ - /url: "#"
279
+ - generic [ref=f99e241]: Show
280
+ - text: Files
281
+ - heading "Vertical Tabs" [level=2] [ref=f99e242]
282
+ - paragraph [ref=f99e243]:
283
+ - text: Be sure to
284
+ - link "update the contribution record" [ref=f99e244] [cursor=pointer]:
285
+ - /url: https://new.drupal.org/contribution-record?source_link=https%3A//www.drupal.org/node/3615713
286
+ - generic [ref=f99e245]:
287
+ - button "Save" [ref=f99e246]
288
+ - button "Preview" [ref=f99e247]
289
+ - button "View changes" [ref=f99e248]
290
+ - contentinfo [ref=f99e249]:
291
+ - generic [ref=f99e250]:
292
+ - generic [ref=f99e253]:
293
+ - link [ref=f99e254] [cursor=pointer]:
294
+ - /url: https://www.tag1.com/?utm_source=DA&utm_medium=referral&utm_campaign=drupal-org-footer
295
+ - text: Infrastructure management for Drupal.org provided by
296
+ - img "Tag1 logo" [ref=f99e255]
297
+ - link "Need a Drupal 7 extended support partner? Consider Tag1." [ref=f99e257] [cursor=pointer]:
298
+ - /url: https://d7es.tag1.com/plans?utm_source=DA&utm_medium=footer&utm_campaign=EOL&utm_id=d7es&utm_term=plans&utm_content=Dec
299
+ - generic [ref=f99e258]:
300
+ - generic:
301
+ - generic:
302
+ - heading "News items" [level=4] [ref=f99e259]
303
+ - list [ref=f99e260]:
304
+ - listitem [ref=f99e261]:
305
+ - link "News" [ref=f99e262] [cursor=pointer]:
306
+ - /url: https://www.drupal.org/news
307
+ - listitem [ref=f99e263]:
308
+ - link "Planet Drupal" [ref=f99e264] [cursor=pointer]:
309
+ - /url: https://www.drupal.org/planet
310
+ - listitem [ref=f99e265]:
311
+ - link "Social media" [ref=f99e266] [cursor=pointer]:
312
+ - /url: https://www.drupal.org/about/media-kit/social-media
313
+ - listitem [ref=f99e267]:
314
+ - link "Sign up for Drupal news" [ref=f99e268] [cursor=pointer]:
315
+ - /url: https://www.drupal.org/subscribe
316
+ - listitem [ref=f99e269]:
317
+ - link "Security advisories" [ref=f99e270] [cursor=pointer]:
318
+ - /url: https://www.drupal.org/security
319
+ - listitem [ref=f99e271]:
320
+ - link "Jobs" [ref=f99e272] [cursor=pointer]:
321
+ - /url: https://jobs.drupal.org/
322
+ - heading "Our community" [level=4] [ref=f99e273]
323
+ - list [ref=f99e274]:
324
+ - listitem [ref=f99e275]:
325
+ - link "Community" [ref=f99e276] [cursor=pointer]:
326
+ - /url: https://www.drupal.org/community
327
+ - listitem [ref=f99e277]:
328
+ - generic [ref=f99e278]:
329
+ - link "Services" [ref=f99e279] [cursor=pointer]:
330
+ - /url: https://www.drupal.org/drupal-services
331
+ - text: ","
332
+ - link "Training" [ref=f99e280] [cursor=pointer]:
333
+ - /url: https://www.drupal.org/training
334
+ - text: "&"
335
+ - link "Hosting" [ref=f99e281] [cursor=pointer]:
336
+ - /url: https://www.drupal.org/hosting
337
+ - listitem [ref=f99e282]:
338
+ - link "Contributor guide" [ref=f99e283] [cursor=pointer]:
339
+ - /url: https://www.drupal.org/community/contributor-guide
340
+ - listitem [ref=f99e284]:
341
+ - link "Groups & meetups" [ref=f99e285] [cursor=pointer]:
342
+ - /url: https://groups.drupal.org/groups
343
+ - listitem [ref=f99e286]:
344
+ - link "DrupalCon" [ref=f99e287] [cursor=pointer]:
345
+ - /url: https://events.drupal.org
346
+ - listitem [ref=f99e288]:
347
+ - link "Code of conduct" [ref=f99e289] [cursor=pointer]:
348
+ - /url: https://www.drupal.org/dcoc
349
+ - heading "Documentation" [level=4] [ref=f99e290]
350
+ - list [ref=f99e291]:
351
+ - listitem [ref=f99e292]:
352
+ - link "Documentation" [ref=f99e293] [cursor=pointer]:
353
+ - /url: https://www.drupal.org/documentation
354
+ - listitem [ref=f99e294]:
355
+ - link "Drupal Guide" [ref=f99e295] [cursor=pointer]:
356
+ - /url: https://www.drupal.org/docs
357
+ - listitem [ref=f99e296]:
358
+ - link "Drupal User Guide" [ref=f99e297] [cursor=pointer]:
359
+ - /url: https://www.drupal.org/docs/user_guide/en/index.html
360
+ - listitem [ref=f99e298]:
361
+ - link "Developer docs" [ref=f99e299] [cursor=pointer]:
362
+ - /url: https://www.drupal.org/documentation/develop
363
+ - listitem [ref=f99e300]:
364
+ - link "API.Drupal.org" [ref=f99e301] [cursor=pointer]:
365
+ - /url: https://api.drupal.org/
366
+ - heading "Drupal code base" [level=4] [ref=f99e302]
367
+ - list [ref=f99e303]:
368
+ - listitem [ref=f99e304]:
369
+ - link "Download & Extend" [ref=f99e305] [cursor=pointer]:
370
+ - /url: https://www.drupal.org/download
371
+ - listitem [ref=f99e306]:
372
+ - link "Drupal core" [ref=f99e307] [cursor=pointer]:
373
+ - /url: https://www.drupal.org/project/drupal
374
+ - listitem [ref=f99e308]:
375
+ - link "Modules" [ref=f99e309] [cursor=pointer]:
376
+ - /url: https://www.drupal.org/project/project_module
377
+ - listitem [ref=f99e310]:
378
+ - link "Themes" [ref=f99e311] [cursor=pointer]:
379
+ - /url: https://www.drupal.org/project/project_theme
380
+ - listitem [ref=f99e312]:
381
+ - link "Distributions" [ref=f99e313] [cursor=pointer]:
382
+ - /url: https://www.drupal.org/project/project_distribution
383
+ - heading "Governance of community" [level=4] [ref=f99e314]
384
+ - list [ref=f99e315]:
385
+ - listitem [ref=f99e316]:
386
+ - link "About" [ref=f99e317] [cursor=pointer]:
387
+ - /url: https://www.drupal.org/about
388
+ - listitem [ref=f99e318]:
389
+ - link "Web accessibility" [ref=f99e319] [cursor=pointer]:
390
+ - /url: https://www.drupal.org/about/features/accessibility
391
+ - listitem [ref=f99e320]:
392
+ - link "Drupal Association" [ref=f99e321] [cursor=pointer]:
393
+ - /url: https://www.drupal.org/association
394
+ - listitem [ref=f99e322]:
395
+ - link "About Drupal.org" [ref=f99e323] [cursor=pointer]:
396
+ - /url: https://www.drupal.org/drupalorg
397
+ - listitem [ref=f99e324]:
398
+ - link "Terms of service" [ref=f99e325] [cursor=pointer]:
399
+ - /url: https://www.drupal.org/terms
400
+ - listitem [ref=f99e326]:
401
+ - link "Privacy policy" [ref=f99e327] [cursor=pointer]:
402
+ - /url: https://www.drupal.org/privacy
403
+ - paragraph [ref=f99e331]:
404
+ - text: Drupal is a
405
+ - link "registered trademark" [ref=f99e332] [cursor=pointer]:
406
+ - /url: /about/trademark
407
+ - text: of
408
+ - link "Dries Buytaert" [ref=f99e333] [cursor=pointer]:
409
+ - /url: https://dri.es
410
+ - text: .
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vardot/varbase-e2e",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "Varbase E2E automated functional testing.",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -44,17 +44,24 @@ When(/^(I |we )*press( the)* "([^"]*)?"( button)*$/, async function (pronounCase
44
44
  const esc = element.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
45
45
  const page = this.page;
46
46
  await actOrExplain('press button', element, async () => {
47
- const btn = page.locator('button, input[type="button"], input[type="submit"], [role="button"], a')
48
- .filter({ hasText: new RegExp('^' + esc + '$') })
49
- .first();
47
+ const all = page.locator('button, input[type="button"], input[type="submit"], [role="button"], a')
48
+ .filter({ hasText: new RegExp('^' + esc + '$') });
49
+ // Sticky action bars (Gin) clone buttons: the original stays hidden while
50
+ // the visible clone carries the same text. Prefer the visible candidate —
51
+ // clicking the hidden original starves actionability for the full timeout.
52
+ let btn = all.first();
53
+ const count = await all.count();
54
+ for (let i = 0; i < count; i++) {
55
+ if (await all.nth(i).isVisible()) { btn = all.nth(i); break; }
56
+ }
50
57
  try {
51
- await btn.click({ timeout: 15000 });
58
+ await btn.click({ timeout: 10000 });
52
59
  } catch (e) {
53
60
  // A fixed-position overlay (chat widgets, sticky action bars) can sit on
54
61
  // top of a correctly-resolved button and starve the pointer click's
55
62
  // actionability checks. The button itself is right — dispatch the click
56
63
  // in-page so its handlers (including form submit) still fire.
57
- await btn.evaluate((el) => el.click());
64
+ await btn.evaluate((el) => el.click(), { timeout: 5000 });
58
65
  }
59
66
  });
60
67
  });
@@ -51,6 +51,28 @@ When(/^(?:I |we )*add a basic(?: "([^"]*)")? section at the end of layout$/, asy
51
51
  if (!(await layoutLink.count())) throw friendly(`The "${layout}" layout option was not found in the Add section list.`);
52
52
  await layoutLink.click();
53
53
  await smartSettle(this.page, budget(this));
54
+ // On newer Bootstrap Layout Builder the layout option adds the section
55
+ // directly instead of opening its settings in the off-canvas. When the
56
+ // section settings form (container type, breakpoints, background) did not
57
+ // open, click the newly added (highest-delta) section's "Configure" link -
58
+ // a use-ajax link that opens the settings in the #drupal-off-canvas dialog,
59
+ // where the following section-settings steps run.
60
+ const hasSettingsForm = await this.page.locator('[id*="layout-container-type"]').count();
61
+ if (!hasSettingsForm) {
62
+ const links = this.page.locator('a.layout-builder__link--configure[href*="/layout_builder/configure-form/section/"]');
63
+ const count = await links.count();
64
+ let bestLink = null;
65
+ let bestDelta = -1;
66
+ for (let i = 0; i < count; i++) {
67
+ const href = await links.nth(i).getAttribute('href');
68
+ const delta = parseInt(href.split('/').pop(), 10);
69
+ if (delta > bestDelta) { bestDelta = delta; bestLink = links.nth(i); }
70
+ }
71
+ if (bestLink) {
72
+ await bestLink.click();
73
+ await smartSettle(this.page, budget(this));
74
+ }
75
+ }
54
76
  });
55
77
 
56
78
  /**
@@ -69,8 +91,20 @@ When(/^(?:I |we )*save the section$/, async function () {
69
91
  // Drupal's jQuery-bound AJAX submit handler for this button - it can leave
70
92
  // the section silently un-added. Use a real Playwright mouse click instead,
71
93
  // which dispatches the full native event sequence.
72
- const btn = this.page.locator('input[type="submit"], button').filter({ hasText: /Add section/i }).first();
73
- if (!(await btn.count())) throw friendly('The "Add section" button was not found.');
94
+ // The submit reads "Add section" on a fresh section and "Update" when the
95
+ // settings were opened through the section's Configure link. Match the
96
+ // value attribute exactly (the control is usually an <input>) or a
97
+ // button's exact text, preferring the off-canvas dialog - a loose /Update/
98
+ // match grabs invisible widget buttons ("Update widget") elsewhere.
99
+ const label = /^(Add section|Update)$/;
100
+ const pick = (scope) => this.page
101
+ .locator(`${scope} input[type="submit"][value="Add section"], ${scope} input[type="submit"][value="Update"]`)
102
+ .or(this.page.locator(`${scope} button`).filter({ hasText: label }));
103
+ let btn = pick('#drupal-off-canvas').first();
104
+ if (!(await btn.count())) {
105
+ btn = pick('body').first();
106
+ }
107
+ if (!(await btn.count())) throw friendly('The "Add section" / "Update" button was not found.');
74
108
  await btn.click();
75
109
  await smartSettle(this.page, budget(this));
76
110
  });
@@ -55,15 +55,32 @@ When(/^(?:I |we )*open the "([^"]*)" media library$/, async function (field) {
55
55
  if (!(await btn.count())) {
56
56
  throw friendly(`No media library open button for the "${field}" field was found.`);
57
57
  }
58
+ const dialog = this.page.locator('.ui-dialog .media-library-view, .media-library-widget-modal').first();
59
+ const open = async () => {
60
+ try {
61
+ await btn.click({ timeout: 8000 });
62
+ } catch (e) {
63
+ // A stale jQuery UI overlay (ui-widget-overlay) from a previous dialog can
64
+ // intercept pointer events over a correctly-resolved button. The button is
65
+ // right - dispatch the click in-page so Drupal's AJAX handler still fires.
66
+ await btn.evaluate((el) => el.click());
67
+ }
68
+ await smartSettle(this.page, budget(this));
69
+ };
70
+ await open();
71
+ // The dialog can be torn down by a previous dialog's late close animation
72
+ // (two stacked jQuery UI dialogs) - verify it is really there, and re-open
73
+ // once when it is not, before letting the next step run against nothing.
58
74
  try {
59
- await btn.click({ timeout: 8000 });
75
+ await dialog.waitFor({ state: 'visible', timeout: 10000 });
60
76
  } catch (e) {
61
- // A stale jQuery UI overlay (ui-widget-overlay) from a previous dialog can
62
- // intercept pointer events over a correctly-resolved button. The button is
63
- // right - dispatch the click in-page so Drupal's AJAX handler still fires.
64
- await btn.evaluate((el) => el.click());
77
+ await open();
78
+ try {
79
+ await dialog.waitFor({ state: 'visible', timeout: 10000 });
80
+ } catch (e2) {
81
+ throw friendly(`The media library dialog for "${field}" did not open.`);
82
+ }
65
83
  }
66
- await smartSettle(this.page, budget(this));
67
84
  });
68
85
 
69
86
  /**