@serenity-js/protractor 2.33.1 → 3.0.0-rc.11

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 (343) hide show
  1. package/CHANGELOG.md +481 -0
  2. package/lib/adapter/ProtractorFrameworkAdapter.js +5 -0
  3. package/lib/adapter/ProtractorFrameworkAdapter.js.map +1 -1
  4. package/lib/index.d.ts +0 -2
  5. package/lib/index.js +0 -2
  6. package/lib/index.js.map +1 -1
  7. package/lib/screenplay/abilities/{BrowseTheWeb.d.ts → BrowseTheWebWithProtractor.d.ts} +38 -191
  8. package/lib/screenplay/abilities/{BrowseTheWeb.js → BrowseTheWebWithProtractor.js} +129 -251
  9. package/lib/screenplay/abilities/BrowseTheWebWithProtractor.js.map +1 -0
  10. package/lib/screenplay/abilities/index.d.ts +1 -1
  11. package/lib/screenplay/abilities/index.js +1 -1
  12. package/lib/screenplay/abilities/index.js.map +1 -1
  13. package/lib/screenplay/index.d.ts +1 -0
  14. package/lib/screenplay/index.js +1 -0
  15. package/lib/screenplay/index.js.map +1 -1
  16. package/lib/screenplay/interactions/UseAngular.js +2 -2
  17. package/lib/screenplay/interactions/UseAngular.js.map +1 -1
  18. package/lib/screenplay/interactions/index.d.ts +0 -19
  19. package/lib/screenplay/interactions/index.js +0 -19
  20. package/lib/screenplay/interactions/index.js.map +1 -1
  21. package/lib/screenplay/models/ProtractorCookie.d.ts +11 -0
  22. package/lib/screenplay/models/ProtractorCookie.js +39 -0
  23. package/lib/screenplay/models/ProtractorCookie.js.map +1 -0
  24. package/lib/screenplay/models/ProtractorFrame.d.ts +10 -0
  25. package/lib/screenplay/models/ProtractorFrame.js +39 -0
  26. package/lib/screenplay/models/ProtractorFrame.js.map +1 -0
  27. package/lib/screenplay/models/ProtractorModalDialog.d.ts +11 -0
  28. package/lib/screenplay/models/ProtractorModalDialog.js +43 -0
  29. package/lib/screenplay/models/ProtractorModalDialog.js.map +1 -0
  30. package/lib/screenplay/models/ProtractorPage.d.ts +26 -0
  31. package/lib/screenplay/models/ProtractorPage.js +98 -0
  32. package/lib/screenplay/models/ProtractorPage.js.map +1 -0
  33. package/lib/screenplay/models/ProtractorPageElement.d.ts +21 -0
  34. package/lib/screenplay/models/ProtractorPageElement.js +230 -0
  35. package/lib/screenplay/models/ProtractorPageElement.js.map +1 -0
  36. package/lib/screenplay/models/index.d.ts +5 -0
  37. package/lib/screenplay/{questions/lists → models}/index.js +5 -1
  38. package/lib/screenplay/models/index.js.map +1 -0
  39. package/lib/screenplay/models/locators/ProtractorLocator.d.ts +9 -0
  40. package/lib/screenplay/models/locators/ProtractorLocator.js +28 -0
  41. package/lib/screenplay/models/locators/ProtractorLocator.js.map +1 -0
  42. package/lib/screenplay/models/locators/ProtractorNativeElementRoot.d.ts +5 -0
  43. package/lib/screenplay/{interactions/EnterBuilder.js → models/locators/ProtractorNativeElementRoot.js} +1 -1
  44. package/lib/screenplay/models/locators/ProtractorNativeElementRoot.js.map +1 -0
  45. package/lib/screenplay/models/locators/index.d.ts +2 -0
  46. package/lib/{stage/crew → screenplay/models/locators}/index.js +2 -1
  47. package/lib/screenplay/models/locators/index.js.map +1 -0
  48. package/lib/{promiseOf.d.ts → screenplay/promised.d.ts} +1 -1
  49. package/lib/{promiseOf.js → screenplay/promised.js} +4 -4
  50. package/lib/screenplay/promised.js.map +1 -0
  51. package/lib/screenplay/questions/ProtractorParam.d.ts +24 -29
  52. package/lib/screenplay/questions/ProtractorParam.js +26 -33
  53. package/lib/screenplay/questions/ProtractorParam.js.map +1 -1
  54. package/lib/screenplay/questions/index.d.ts +0 -13
  55. package/lib/screenplay/questions/index.js +0 -16
  56. package/lib/screenplay/questions/index.js.map +1 -1
  57. package/lib/screenplay/unpromisedWebElement.d.ts +11 -0
  58. package/lib/screenplay/unpromisedWebElement.js +24 -0
  59. package/lib/screenplay/unpromisedWebElement.js.map +1 -0
  60. package/package.json +19 -20
  61. package/src/adapter/ProtractorFrameworkAdapter.ts +5 -0
  62. package/src/index.ts +0 -2
  63. package/src/screenplay/abilities/{BrowseTheWeb.ts → BrowseTheWebWithProtractor.ts} +148 -263
  64. package/src/screenplay/abilities/index.ts +1 -1
  65. package/src/screenplay/index.ts +1 -0
  66. package/src/screenplay/interactions/UseAngular.ts +3 -3
  67. package/src/screenplay/interactions/index.ts +0 -19
  68. package/src/screenplay/models/ProtractorCookie.ts +41 -0
  69. package/src/screenplay/models/ProtractorFrame.ts +44 -0
  70. package/src/screenplay/models/ProtractorModalDialog.ts +49 -0
  71. package/src/screenplay/models/ProtractorPage.ts +124 -0
  72. package/src/screenplay/models/ProtractorPageElement.ts +285 -0
  73. package/src/screenplay/models/index.ts +6 -0
  74. package/src/screenplay/models/locators/ProtractorLocator.ts +50 -0
  75. package/src/screenplay/models/locators/ProtractorNativeElementRoot.ts +6 -0
  76. package/src/screenplay/models/locators/index.ts +2 -0
  77. package/src/{promiseOf.ts → screenplay/promised.ts} +1 -1
  78. package/src/screenplay/questions/ProtractorParam.ts +29 -38
  79. package/src/screenplay/questions/index.ts +0 -13
  80. package/src/screenplay/unpromisedWebElement.ts +25 -0
  81. package/lib/expectations/ElementFinderExpectation.d.ts +0 -11
  82. package/lib/expectations/ElementFinderExpectation.js +0 -24
  83. package/lib/expectations/ElementFinderExpectation.js.map +0 -1
  84. package/lib/expectations/index.d.ts +0 -6
  85. package/lib/expectations/index.js +0 -19
  86. package/lib/expectations/index.js.map +0 -1
  87. package/lib/expectations/isActive.d.ts +0 -13
  88. package/lib/expectations/isActive.js +0 -19
  89. package/lib/expectations/isActive.js.map +0 -1
  90. package/lib/expectations/isClickable.d.ts +0 -13
  91. package/lib/expectations/isClickable.js +0 -22
  92. package/lib/expectations/isClickable.js.map +0 -1
  93. package/lib/expectations/isEnabled.d.ts +0 -13
  94. package/lib/expectations/isEnabled.js +0 -19
  95. package/lib/expectations/isEnabled.js.map +0 -1
  96. package/lib/expectations/isPresent.d.ts +0 -14
  97. package/lib/expectations/isPresent.js +0 -20
  98. package/lib/expectations/isPresent.js.map +0 -1
  99. package/lib/expectations/isSelected.d.ts +0 -13
  100. package/lib/expectations/isSelected.js +0 -22
  101. package/lib/expectations/isSelected.js.map +0 -1
  102. package/lib/expectations/isVisible.d.ts +0 -13
  103. package/lib/expectations/isVisible.js +0 -25
  104. package/lib/expectations/isVisible.js.map +0 -1
  105. package/lib/promiseOf.js.map +0 -1
  106. package/lib/screenplay/abilities/BrowseTheWeb.js.map +0 -1
  107. package/lib/screenplay/interactions/Accept.d.ts +0 -81
  108. package/lib/screenplay/interactions/Accept.js +0 -95
  109. package/lib/screenplay/interactions/Accept.js.map +0 -1
  110. package/lib/screenplay/interactions/Clear.d.ts +0 -88
  111. package/lib/screenplay/interactions/Clear.js +0 -121
  112. package/lib/screenplay/interactions/Clear.js.map +0 -1
  113. package/lib/screenplay/interactions/Click.d.ts +0 -81
  114. package/lib/screenplay/interactions/Click.js +0 -95
  115. package/lib/screenplay/interactions/Click.js.map +0 -1
  116. package/lib/screenplay/interactions/Close.d.ts +0 -89
  117. package/lib/screenplay/interactions/Close.js +0 -169
  118. package/lib/screenplay/interactions/Close.js.map +0 -1
  119. package/lib/screenplay/interactions/DeleteCookies.d.ts +0 -72
  120. package/lib/screenplay/interactions/DeleteCookies.js +0 -149
  121. package/lib/screenplay/interactions/DeleteCookies.js.map +0 -1
  122. package/lib/screenplay/interactions/Dismiss.d.ts +0 -85
  123. package/lib/screenplay/interactions/Dismiss.js +0 -99
  124. package/lib/screenplay/interactions/Dismiss.js.map +0 -1
  125. package/lib/screenplay/interactions/DoubleClick.d.ts +0 -99
  126. package/lib/screenplay/interactions/DoubleClick.js +0 -121
  127. package/lib/screenplay/interactions/DoubleClick.js.map +0 -1
  128. package/lib/screenplay/interactions/Enter.d.ts +0 -81
  129. package/lib/screenplay/interactions/Enter.js +0 -96
  130. package/lib/screenplay/interactions/Enter.js.map +0 -1
  131. package/lib/screenplay/interactions/EnterBuilder.d.ts +0 -27
  132. package/lib/screenplay/interactions/EnterBuilder.js.map +0 -1
  133. package/lib/screenplay/interactions/ExecuteScript.d.ts +0 -171
  134. package/lib/screenplay/interactions/ExecuteScript.js +0 -291
  135. package/lib/screenplay/interactions/ExecuteScript.js.map +0 -1
  136. package/lib/screenplay/interactions/Hover.d.ts +0 -86
  137. package/lib/screenplay/interactions/Hover.js +0 -103
  138. package/lib/screenplay/interactions/Hover.js.map +0 -1
  139. package/lib/screenplay/interactions/Navigate.d.ts +0 -149
  140. package/lib/screenplay/interactions/Navigate.js +0 -345
  141. package/lib/screenplay/interactions/Navigate.js.map +0 -1
  142. package/lib/screenplay/interactions/Press.d.ts +0 -90
  143. package/lib/screenplay/interactions/Press.js +0 -127
  144. package/lib/screenplay/interactions/Press.js.map +0 -1
  145. package/lib/screenplay/interactions/PressBuilder.d.ts +0 -27
  146. package/lib/screenplay/interactions/PressBuilder.js +0 -3
  147. package/lib/screenplay/interactions/PressBuilder.js.map +0 -1
  148. package/lib/screenplay/interactions/ResizeBrowserWindow.d.ts +0 -69
  149. package/lib/screenplay/interactions/ResizeBrowserWindow.js +0 -144
  150. package/lib/screenplay/interactions/ResizeBrowserWindow.js.map +0 -1
  151. package/lib/screenplay/interactions/RightClick.d.ts +0 -97
  152. package/lib/screenplay/interactions/RightClick.js +0 -113
  153. package/lib/screenplay/interactions/RightClick.js.map +0 -1
  154. package/lib/screenplay/interactions/Scroll.d.ts +0 -83
  155. package/lib/screenplay/interactions/Scroll.js +0 -98
  156. package/lib/screenplay/interactions/Scroll.js.map +0 -1
  157. package/lib/screenplay/interactions/Select.d.ts +0 -212
  158. package/lib/screenplay/interactions/Select.js +0 -342
  159. package/lib/screenplay/interactions/Select.js.map +0 -1
  160. package/lib/screenplay/interactions/SelectBuilder.d.ts +0 -33
  161. package/lib/screenplay/interactions/SelectBuilder.js +0 -3
  162. package/lib/screenplay/interactions/SelectBuilder.js.map +0 -1
  163. package/lib/screenplay/interactions/Switch.d.ts +0 -210
  164. package/lib/screenplay/interactions/Switch.js +0 -345
  165. package/lib/screenplay/interactions/Switch.js.map +0 -1
  166. package/lib/screenplay/interactions/TakeScreenshot.d.ts +0 -67
  167. package/lib/screenplay/interactions/TakeScreenshot.js +0 -86
  168. package/lib/screenplay/interactions/TakeScreenshot.js.map +0 -1
  169. package/lib/screenplay/interactions/Wait.d.ts +0 -147
  170. package/lib/screenplay/interactions/Wait.js +0 -247
  171. package/lib/screenplay/interactions/Wait.js.map +0 -1
  172. package/lib/screenplay/interactions/WaitBuilder.d.ts +0 -33
  173. package/lib/screenplay/interactions/WaitBuilder.js +0 -3
  174. package/lib/screenplay/interactions/WaitBuilder.js.map +0 -1
  175. package/lib/screenplay/questions/Attribute.d.ts +0 -29
  176. package/lib/screenplay/questions/Attribute.js +0 -56
  177. package/lib/screenplay/questions/Attribute.js.map +0 -1
  178. package/lib/screenplay/questions/Browser.d.ts +0 -47
  179. package/lib/screenplay/questions/Browser.js +0 -55
  180. package/lib/screenplay/questions/Browser.js.map +0 -1
  181. package/lib/screenplay/questions/CSSClasses.d.ts +0 -94
  182. package/lib/screenplay/questions/CSSClasses.js +0 -118
  183. package/lib/screenplay/questions/CSSClasses.js.map +0 -1
  184. package/lib/screenplay/questions/Cookie.d.ts +0 -9
  185. package/lib/screenplay/questions/Cookie.js +0 -65
  186. package/lib/screenplay/questions/Cookie.js.map +0 -1
  187. package/lib/screenplay/questions/LastScriptExecution.d.ts +0 -14
  188. package/lib/screenplay/questions/LastScriptExecution.js +0 -22
  189. package/lib/screenplay/questions/LastScriptExecution.js.map +0 -1
  190. package/lib/screenplay/questions/ModalDialog.d.ts +0 -120
  191. package/lib/screenplay/questions/ModalDialog.js +0 -142
  192. package/lib/screenplay/questions/ModalDialog.js.map +0 -1
  193. package/lib/screenplay/questions/Pick.d.ts +0 -72
  194. package/lib/screenplay/questions/Pick.js +0 -254
  195. package/lib/screenplay/questions/Pick.js.map +0 -1
  196. package/lib/screenplay/questions/Selected.d.ts +0 -185
  197. package/lib/screenplay/questions/Selected.js +0 -254
  198. package/lib/screenplay/questions/Selected.js.map +0 -1
  199. package/lib/screenplay/questions/Value.d.ts +0 -47
  200. package/lib/screenplay/questions/Value.js +0 -67
  201. package/lib/screenplay/questions/Value.js.map +0 -1
  202. package/lib/screenplay/questions/Website.d.ts +0 -15
  203. package/lib/screenplay/questions/Website.js +0 -25
  204. package/lib/screenplay/questions/Website.js.map +0 -1
  205. package/lib/screenplay/questions/Window.d.ts +0 -23
  206. package/lib/screenplay/questions/Window.js +0 -28
  207. package/lib/screenplay/questions/Window.js.map +0 -1
  208. package/lib/screenplay/questions/lists/ElementArrayFinderListAdapter.d.ts +0 -89
  209. package/lib/screenplay/questions/lists/ElementArrayFinderListAdapter.js +0 -138
  210. package/lib/screenplay/questions/lists/ElementArrayFinderListAdapter.js.map +0 -1
  211. package/lib/screenplay/questions/lists/index.d.ts +0 -1
  212. package/lib/screenplay/questions/lists/index.js.map +0 -1
  213. package/lib/screenplay/questions/targets/Target.d.ts +0 -168
  214. package/lib/screenplay/questions/targets/Target.js +0 -190
  215. package/lib/screenplay/questions/targets/Target.js.map +0 -1
  216. package/lib/screenplay/questions/targets/TargetElement.d.ts +0 -50
  217. package/lib/screenplay/questions/targets/TargetElement.js +0 -62
  218. package/lib/screenplay/questions/targets/TargetElement.js.map +0 -1
  219. package/lib/screenplay/questions/targets/TargetElements.d.ts +0 -102
  220. package/lib/screenplay/questions/targets/TargetElements.js +0 -124
  221. package/lib/screenplay/questions/targets/TargetElements.js.map +0 -1
  222. package/lib/screenplay/questions/targets/TargetNestedElement.d.ts +0 -49
  223. package/lib/screenplay/questions/targets/TargetNestedElement.js +0 -61
  224. package/lib/screenplay/questions/targets/TargetNestedElement.js.map +0 -1
  225. package/lib/screenplay/questions/targets/TargetNestedElements.d.ts +0 -101
  226. package/lib/screenplay/questions/targets/TargetNestedElements.js +0 -123
  227. package/lib/screenplay/questions/targets/TargetNestedElements.js.map +0 -1
  228. package/lib/screenplay/questions/targets/builders.d.ts +0 -8
  229. package/lib/screenplay/questions/targets/builders.js +0 -3
  230. package/lib/screenplay/questions/targets/builders.js.map +0 -1
  231. package/lib/screenplay/questions/targets/index.d.ts +0 -5
  232. package/lib/screenplay/questions/targets/index.js +0 -18
  233. package/lib/screenplay/questions/targets/index.js.map +0 -1
  234. package/lib/screenplay/questions/targets/override.d.ts +0 -7
  235. package/lib/screenplay/questions/targets/override.js +0 -21
  236. package/lib/screenplay/questions/targets/override.js.map +0 -1
  237. package/lib/screenplay/questions/text/Text.d.ts +0 -41
  238. package/lib/screenplay/questions/text/Text.js +0 -50
  239. package/lib/screenplay/questions/text/Text.js.map +0 -1
  240. package/lib/screenplay/questions/text/TextOfMultipleElements.d.ts +0 -23
  241. package/lib/screenplay/questions/text/TextOfMultipleElements.js +0 -37
  242. package/lib/screenplay/questions/text/TextOfMultipleElements.js.map +0 -1
  243. package/lib/screenplay/questions/text/TextOfSingleElement.d.ts +0 -23
  244. package/lib/screenplay/questions/text/TextOfSingleElement.js +0 -35
  245. package/lib/screenplay/questions/text/TextOfSingleElement.js.map +0 -1
  246. package/lib/screenplay/questions/text/index.d.ts +0 -1
  247. package/lib/screenplay/questions/text/index.js +0 -14
  248. package/lib/screenplay/questions/text/index.js.map +0 -1
  249. package/lib/screenplay/withAnswerOf.d.ts +0 -8
  250. package/lib/screenplay/withAnswerOf.js +0 -18
  251. package/lib/screenplay/withAnswerOf.js.map +0 -1
  252. package/lib/stage/crew/index.d.ts +0 -1
  253. package/lib/stage/crew/index.js.map +0 -1
  254. package/lib/stage/crew/photographer/Photographer.d.ts +0 -83
  255. package/lib/stage/crew/photographer/Photographer.js +0 -102
  256. package/lib/stage/crew/photographer/Photographer.js.map +0 -1
  257. package/lib/stage/crew/photographer/index.d.ts +0 -2
  258. package/lib/stage/crew/photographer/index.js +0 -15
  259. package/lib/stage/crew/photographer/index.js.map +0 -1
  260. package/lib/stage/crew/photographer/strategies/PhotoTakingStrategy.d.ts +0 -28
  261. package/lib/stage/crew/photographer/strategies/PhotoTakingStrategy.js +0 -65
  262. package/lib/stage/crew/photographer/strategies/PhotoTakingStrategy.js.map +0 -1
  263. package/lib/stage/crew/photographer/strategies/TakePhotosBeforeAndAfterInteractions.d.ts +0 -18
  264. package/lib/stage/crew/photographer/strategies/TakePhotosBeforeAndAfterInteractions.js +0 -30
  265. package/lib/stage/crew/photographer/strategies/TakePhotosBeforeAndAfterInteractions.js.map +0 -1
  266. package/lib/stage/crew/photographer/strategies/TakePhotosOfFailures.d.ts +0 -17
  267. package/lib/stage/crew/photographer/strategies/TakePhotosOfFailures.js +0 -28
  268. package/lib/stage/crew/photographer/strategies/TakePhotosOfFailures.js.map +0 -1
  269. package/lib/stage/crew/photographer/strategies/TakePhotosOfInteractions.d.ts +0 -19
  270. package/lib/stage/crew/photographer/strategies/TakePhotosOfInteractions.js +0 -28
  271. package/lib/stage/crew/photographer/strategies/TakePhotosOfInteractions.js.map +0 -1
  272. package/lib/stage/crew/photographer/strategies/index.d.ts +0 -4
  273. package/lib/stage/crew/photographer/strategies/index.js +0 -17
  274. package/lib/stage/crew/photographer/strategies/index.js.map +0 -1
  275. package/lib/stage/index.d.ts +0 -1
  276. package/lib/stage/index.js +0 -14
  277. package/lib/stage/index.js.map +0 -1
  278. package/src/expectations/ElementFinderExpectation.ts +0 -29
  279. package/src/expectations/index.ts +0 -6
  280. package/src/expectations/isActive.ts +0 -24
  281. package/src/expectations/isClickable.ts +0 -20
  282. package/src/expectations/isEnabled.ts +0 -18
  283. package/src/expectations/isPresent.ts +0 -19
  284. package/src/expectations/isSelected.ts +0 -23
  285. package/src/expectations/isVisible.ts +0 -27
  286. package/src/screenplay/interactions/Accept.ts +0 -95
  287. package/src/screenplay/interactions/Clear.ts +0 -130
  288. package/src/screenplay/interactions/Click.ts +0 -96
  289. package/src/screenplay/interactions/Close.ts +0 -184
  290. package/src/screenplay/interactions/DeleteCookies.ts +0 -154
  291. package/src/screenplay/interactions/Dismiss.ts +0 -99
  292. package/src/screenplay/interactions/DoubleClick.ts +0 -124
  293. package/src/screenplay/interactions/Enter.ts +0 -104
  294. package/src/screenplay/interactions/EnterBuilder.ts +0 -29
  295. package/src/screenplay/interactions/ExecuteScript.ts +0 -325
  296. package/src/screenplay/interactions/Hover.ts +0 -106
  297. package/src/screenplay/interactions/Navigate.ts +0 -363
  298. package/src/screenplay/interactions/Press.ts +0 -137
  299. package/src/screenplay/interactions/PressBuilder.ts +0 -29
  300. package/src/screenplay/interactions/ResizeBrowserWindow.ts +0 -148
  301. package/src/screenplay/interactions/RightClick.ts +0 -114
  302. package/src/screenplay/interactions/Scroll.ts +0 -99
  303. package/src/screenplay/interactions/Select.ts +0 -402
  304. package/src/screenplay/interactions/SelectBuilder.ts +0 -35
  305. package/src/screenplay/interactions/Switch.ts +0 -393
  306. package/src/screenplay/interactions/TakeScreenshot.ts +0 -89
  307. package/src/screenplay/interactions/Wait.ts +0 -267
  308. package/src/screenplay/interactions/WaitBuilder.ts +0 -35
  309. package/src/screenplay/questions/Attribute.ts +0 -67
  310. package/src/screenplay/questions/Browser.ts +0 -55
  311. package/src/screenplay/questions/CSSClasses.ts +0 -121
  312. package/src/screenplay/questions/Cookie.ts +0 -70
  313. package/src/screenplay/questions/LastScriptExecution.ts +0 -21
  314. package/src/screenplay/questions/ModalDialog.ts +0 -149
  315. package/src/screenplay/questions/Pick.ts +0 -334
  316. package/src/screenplay/questions/Selected.ts +0 -268
  317. package/src/screenplay/questions/Value.ts +0 -73
  318. package/src/screenplay/questions/Website.ts +0 -27
  319. package/src/screenplay/questions/Window.ts +0 -29
  320. package/src/screenplay/questions/lists/ElementArrayFinderListAdapter.ts +0 -158
  321. package/src/screenplay/questions/lists/index.ts +0 -1
  322. package/src/screenplay/questions/targets/Target.ts +0 -198
  323. package/src/screenplay/questions/targets/TargetElement.ts +0 -70
  324. package/src/screenplay/questions/targets/TargetElements.ts +0 -142
  325. package/src/screenplay/questions/targets/TargetNestedElement.ts +0 -71
  326. package/src/screenplay/questions/targets/TargetNestedElements.ts +0 -142
  327. package/src/screenplay/questions/targets/builders.ts +0 -10
  328. package/src/screenplay/questions/targets/index.ts +0 -5
  329. package/src/screenplay/questions/targets/override.ts +0 -17
  330. package/src/screenplay/questions/text/Text.ts +0 -55
  331. package/src/screenplay/questions/text/TextOfMultipleElements.ts +0 -40
  332. package/src/screenplay/questions/text/TextOfSingleElement.ts +0 -37
  333. package/src/screenplay/questions/text/index.ts +0 -1
  334. package/src/screenplay/withAnswerOf.ts +0 -19
  335. package/src/stage/crew/index.ts +0 -1
  336. package/src/stage/crew/photographer/Photographer.ts +0 -108
  337. package/src/stage/crew/photographer/index.ts +0 -2
  338. package/src/stage/crew/photographer/strategies/PhotoTakingStrategy.ts +0 -102
  339. package/src/stage/crew/photographer/strategies/TakePhotosBeforeAndAfterInteractions.ts +0 -28
  340. package/src/stage/crew/photographer/strategies/TakePhotosOfFailures.ts +0 -26
  341. package/src/stage/crew/photographer/strategies/TakePhotosOfInteractions.ts +0 -26
  342. package/src/stage/crew/photographer/strategies/index.ts +0 -4
  343. package/src/stage/index.ts +0 -1
@@ -1,95 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Accept = void 0;
4
- const core_1 = require("@serenity-js/core");
5
- const io_1 = require("@serenity-js/core/lib/io");
6
- /**
7
- * @desc
8
- * Instructs the {@link @serenity-js/core/lib/screenplay/actor~Actor} to accept
9
- * a {@link ModalDialog}.
10
- *
11
- * @example <caption>Example widget</caption>
12
- * <button
13
- * data-test="trigger"
14
- * onclick="alert('hello!')">Trigger Alert</button>
15
- *
16
- * @example <caption>Lean Page Object</caption>
17
- * import { Target } from '@serenity-js/protractor';
18
- * import { by } from 'protractor';
19
- *
20
- * class Widget {
21
- * static trigger = Target.the('trigger button')
22
- * .located(by.css('[data-test="trigger"]'));
23
- * }
24
- *
25
- * @example <caption>Accepting a modal dialog window</caption>
26
- * import { actorCalled } from '@serenity-js/core';
27
- * import { Accept, BrowseTheWeb, Click, ModalDialog } from '@serenity-js/protractor';
28
- * import { protractor } from 'protractor';
29
- *
30
- * actorCalled('Nick')
31
- * .whoCan(BrowseTheWeb.using(protractor.browser))
32
- * .attemptsTo(
33
- * Click.on(Widget.trigger),
34
- * Accept.the(ModalDialog.window()),
35
- * );
36
- *
37
- * @extends {@serenity-js/core/lib/screenplay~Interaction}
38
- *
39
- * @see {@link BrowseTheWeb}
40
- * @see {@link Click}
41
- * @see {@link Dismiss}
42
- * @see {@link ModalDialog}
43
- */
44
- class Accept extends core_1.Interaction {
45
- /**
46
- * @param {@serenity-js/core/lib/screenplay~Question<AlertPromise> | AlertPromise} modalDialogWindow
47
- */
48
- constructor(modalDialogWindow) {
49
- super();
50
- this.modalDialogWindow = modalDialogWindow;
51
- }
52
- /**
53
- * @desc
54
- * Instantiates this {@link @serenity-js/core/lib/screenplay~Interaction}
55
- * with a {@link ModalDialog.window} the {@link @serenity-js/core/lib/screenplay/actor~Actor}
56
- * will accept.
57
- *
58
- * @param {@serenity-js/core/lib/screenplay~Question<AlertPromise> | AlertPromise} modalDialogWindow
59
- * @returns {@serenity-js/core/lib/screenplay~Interaction}
60
- *
61
- * @see {@link @serenity-js/core/lib/screenplay~Question}
62
- */
63
- static the(modalDialogWindow) {
64
- return new Accept(modalDialogWindow);
65
- }
66
- /**
67
- * @desc
68
- * Makes the provided {@link @serenity-js/core/lib/screenplay/actor~Actor}
69
- * perform this {@link @serenity-js/core/lib/screenplay~Interaction}.
70
- *
71
- * @param {UsesAbilities & AnswersQuestions} actor
72
- * An {@link @serenity-js/core/lib/screenplay/actor~Actor} to perform this {@link @serenity-js/core/lib/screenplay~Interaction}
73
- *
74
- * @returns {PromiseLike<void>}
75
- *
76
- * @see {@link @serenity-js/core/lib/screenplay/actor~Actor}
77
- * @see {@link @serenity-js/core/lib/screenplay/actor~UsesAbilities}
78
- * @see {@link @serenity-js/core/lib/screenplay/actor~AnswersQuestions}
79
- */
80
- performAs(actor) {
81
- return actor.answer(this.modalDialogWindow)
82
- .then(alert => alert.accept());
83
- }
84
- /**
85
- * @desc
86
- * Generates a description to be used when reporting this {@link @serenity-js/core/lib/screenplay~Activity}.
87
- *
88
- * @returns {string}
89
- */
90
- toString() {
91
- return (0, io_1.formatted) `#actor accepts ${this.modalDialogWindow}`;
92
- }
93
- }
94
- exports.Accept = Accept;
95
- //# sourceMappingURL=Accept.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Accept.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/Accept.ts"],"names":[],"mappings":";;;AAAA,4CAA2F;AAC3F,iDAAqD;AAGrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAa,MAAO,SAAQ,kBAAW;IAiBnC;;OAEG;IACH,YAA6B,iBAAwD;QACjF,KAAK,EAAE,CAAC;QADiB,sBAAiB,GAAjB,iBAAiB,CAAuC;IAErF,CAAC;IApBD;;;;;;;;;;OAUG;IACH,MAAM,CAAC,GAAG,CAAC,iBAAwD;QAC/D,OAAO,IAAI,MAAM,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IASD;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,KAAuC;QAC7C,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC;aACtC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACJ,OAAO,IAAA,cAAS,EAAC,kBAAmB,IAAI,CAAC,iBAAkB,EAAE,CAAC;IAClE,CAAC;CACJ;AApDD,wBAoDC"}
@@ -1,88 +0,0 @@
1
- import { AnswersQuestions, Interaction, Question, UsesAbilities } from '@serenity-js/core';
2
- import { ElementFinder } from 'protractor';
3
- /**
4
- * @desc
5
- * Instructs the {@link @serenity-js/core/lib/screenplay/actor~Actor} to
6
- * clear the `value` of a [form `input`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input).
7
- *
8
- * @example <caption>Example widget</caption>
9
- * <form>
10
- * <input type="text" name="example" id="example" />
11
- * </form>
12
- *
13
- * @example <caption>Lean Page Object describing the widget</caption>
14
- * import { Target } from '@serenity-js/protractor';
15
- * import { by } from 'protractor';
16
- *
17
- * class Form {
18
- * static exampleInput = Target.the('example input')
19
- * .located(by.id('example'));
20
- * }
21
- *
22
- * @example <caption>Clearing the value of an input field</caption>
23
- * import { actorCalled } from '@serenity-js/core';
24
- * import { BrowseTheWeb, Clear, Enter, Value } from '@serenity-js/protractor';
25
- * import { Ensure, equals } from '@serenity-js/assertions';
26
- * import { protractor } from 'protractor';
27
- *
28
- * actorCalled('Inés')
29
- * .whoCan(BrowseTheWeb.using(protractor.browser))
30
- * .attemptsTo(
31
- * Enter.theValue('Hello world!').into(Form.exampleInput),
32
- * Ensure.that(Value.of(Form.exampleInput), equals('Hello world!')),
33
- *
34
- * Clear.theValueOf(Form.exampleInput),
35
- * Ensure.that(Value.of(Form.exampleInput), equals('')),
36
- * );
37
- *
38
- * @see {@link BrowseTheWeb}
39
- * @see {@link Enter}
40
- * @see {@link Value}
41
- * @see {@link Target}
42
- * @see {@link @serenity-js/assertions~Ensure}
43
- * @see {@link @serenity-js/assertions/lib/expectations~equals}
44
- *
45
- * @extends {@serenity-js/core/lib/screenplay~Interaction}
46
- */
47
- export declare class Clear extends Interaction {
48
- private readonly field;
49
- /**
50
- * @desc
51
- * Instantiates this {@link @serenity-js/core/lib/screenplay~Interaction}.
52
- *
53
- * @param {Question<ElementFinder> | ElementFinder} field
54
- * The field to be cleared
55
- * @returns {@serenity-js/core/lib/screenplay~Interaction}
56
- */
57
- static theValueOf(field: Question<ElementFinder> | ElementFinder): Interaction;
58
- /**
59
- * @param {Question<ElementFinder> | ElementFinder} field
60
- * The field to be cleared
61
- */
62
- constructor(field: Question<ElementFinder> | ElementFinder);
63
- /**
64
- * @desc
65
- * Makes the provided {@link @serenity-js/core/lib/screenplay/actor~Actor}
66
- * perform this {@link @serenity-js/core/lib/screenplay~Interaction}.
67
- *
68
- * @param {UsesAbilities & AnswersQuestions} actor
69
- * An {@link @serenity-js/core/lib/screenplay/actor~Actor} to perform this {@link @serenity-js/core/lib/screenplay~Interaction}
70
- *
71
- * @returns {PromiseLike<void>}
72
- *
73
- * @see {@link @serenity-js/core/lib/screenplay/actor~Actor}
74
- * @see {@link @serenity-js/core/lib/screenplay/actor~UsesAbilities}
75
- * @see {@link @serenity-js/core/lib/screenplay/actor~AnswersQuestions}
76
- */
77
- performAs(actor: UsesAbilities & AnswersQuestions): PromiseLike<void>;
78
- /**
79
- * @desc
80
- * Generates a description to be used when reporting this {@link @serenity-js/core/lib/screenplay~Activity}.
81
- *
82
- * @returns {string}
83
- */
84
- toString(): string;
85
- private capitaliseFirstLetter;
86
- private removeCharactersFrom;
87
- private times;
88
- }
@@ -1,121 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Clear = void 0;
4
- const core_1 = require("@serenity-js/core");
5
- const io_1 = require("@serenity-js/core/lib/io");
6
- const protractor_1 = require("protractor");
7
- const questions_1 = require("../questions");
8
- const withAnswerOf_1 = require("../withAnswerOf");
9
- /**
10
- * @desc
11
- * Instructs the {@link @serenity-js/core/lib/screenplay/actor~Actor} to
12
- * clear the `value` of a [form `input`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input).
13
- *
14
- * @example <caption>Example widget</caption>
15
- * <form>
16
- * <input type="text" name="example" id="example" />
17
- * </form>
18
- *
19
- * @example <caption>Lean Page Object describing the widget</caption>
20
- * import { Target } from '@serenity-js/protractor';
21
- * import { by } from 'protractor';
22
- *
23
- * class Form {
24
- * static exampleInput = Target.the('example input')
25
- * .located(by.id('example'));
26
- * }
27
- *
28
- * @example <caption>Clearing the value of an input field</caption>
29
- * import { actorCalled } from '@serenity-js/core';
30
- * import { BrowseTheWeb, Clear, Enter, Value } from '@serenity-js/protractor';
31
- * import { Ensure, equals } from '@serenity-js/assertions';
32
- * import { protractor } from 'protractor';
33
- *
34
- * actorCalled('Inés')
35
- * .whoCan(BrowseTheWeb.using(protractor.browser))
36
- * .attemptsTo(
37
- * Enter.theValue('Hello world!').into(Form.exampleInput),
38
- * Ensure.that(Value.of(Form.exampleInput), equals('Hello world!')),
39
- *
40
- * Clear.theValueOf(Form.exampleInput),
41
- * Ensure.that(Value.of(Form.exampleInput), equals('')),
42
- * );
43
- *
44
- * @see {@link BrowseTheWeb}
45
- * @see {@link Enter}
46
- * @see {@link Value}
47
- * @see {@link Target}
48
- * @see {@link @serenity-js/assertions~Ensure}
49
- * @see {@link @serenity-js/assertions/lib/expectations~equals}
50
- *
51
- * @extends {@serenity-js/core/lib/screenplay~Interaction}
52
- */
53
- class Clear extends core_1.Interaction {
54
- /**
55
- * @param {Question<ElementFinder> | ElementFinder} field
56
- * The field to be cleared
57
- */
58
- constructor(field) {
59
- super();
60
- this.field = field;
61
- }
62
- /**
63
- * @desc
64
- * Instantiates this {@link @serenity-js/core/lib/screenplay~Interaction}.
65
- *
66
- * @param {Question<ElementFinder> | ElementFinder} field
67
- * The field to be cleared
68
- * @returns {@serenity-js/core/lib/screenplay~Interaction}
69
- */
70
- static theValueOf(field) {
71
- return new Clear(field);
72
- }
73
- /**
74
- * @desc
75
- * Makes the provided {@link @serenity-js/core/lib/screenplay/actor~Actor}
76
- * perform this {@link @serenity-js/core/lib/screenplay~Interaction}.
77
- *
78
- * @param {UsesAbilities & AnswersQuestions} actor
79
- * An {@link @serenity-js/core/lib/screenplay/actor~Actor} to perform this {@link @serenity-js/core/lib/screenplay~Interaction}
80
- *
81
- * @returns {PromiseLike<void>}
82
- *
83
- * @see {@link @serenity-js/core/lib/screenplay/actor~Actor}
84
- * @see {@link @serenity-js/core/lib/screenplay/actor~UsesAbilities}
85
- * @see {@link @serenity-js/core/lib/screenplay/actor~AnswersQuestions}
86
- */
87
- performAs(actor) {
88
- return new questions_1.Value(this.field).answeredBy(actor).then(value => {
89
- if (value === null) {
90
- throw new core_1.LogicError(`${this.capitaliseFirstLetter(this.field.toString())} doesn't seem to have a 'value' attribute that could be cleared.`);
91
- }
92
- if (value !== undefined) {
93
- return (0, withAnswerOf_1.withAnswerOf)(actor, this.field, (elf) => {
94
- return this.removeCharactersFrom(elf, value.length);
95
- });
96
- }
97
- });
98
- }
99
- /**
100
- * @desc
101
- * Generates a description to be used when reporting this {@link @serenity-js/core/lib/screenplay~Activity}.
102
- *
103
- * @returns {string}
104
- */
105
- toString() {
106
- return (0, io_1.formatted) `#actor clears the value of ${this.field}`;
107
- }
108
- capitaliseFirstLetter(text) {
109
- return text.charAt(0).toUpperCase() + text.slice(1);
110
- }
111
- removeCharactersFrom(elf, numberOfCharacters) {
112
- return numberOfCharacters === 0
113
- ? Promise.resolve(void 0)
114
- : elf.sendKeys(protractor_1.protractor.Key.END, ...this.times(numberOfCharacters, protractor_1.protractor.Key.BACK_SPACE));
115
- }
116
- times(length, key) {
117
- return Array.from({ length }).map(() => key);
118
- }
119
- }
120
- exports.Clear = Clear;
121
- //# sourceMappingURL=Clear.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Clear.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/Clear.ts"],"names":[],"mappings":";;;AAAA,4CAAuG;AACvG,iDAAqD;AACrD,2CAAuD;AAEvD,4CAAqC;AACrC,kDAA+C;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAa,KAAM,SAAQ,kBAAW;IAclC;;;OAGG;IACH,YAA6B,KAA8C;QACvE,KAAK,EAAE,CAAC;QADiB,UAAK,GAAL,KAAK,CAAyC;IAE3E,CAAC;IAlBD;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAC,KAA8C;QAC5D,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAUD;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,KAAuC;QAC7C,OAAO,IAAI,iBAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACxD,IAAI,KAAK,KAAK,IAAI,EAAE;gBAChB,MAAM,IAAI,iBAAU,CAChB,GAAI,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAE,kEAAkE,CAC3H,CAAC;aACL;YAED,IAAI,KAAK,KAAK,SAAS,EAAE;gBACrB,OAAO,IAAA,2BAAY,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,GAAkB,EAAE,EAAE;oBAC1D,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;aACN;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACJ,OAAO,IAAA,cAAS,EAAC,8BAA+B,IAAI,CAAC,KAAM,EAAE,CAAC;IAClE,CAAC;IAEO,qBAAqB,CAAC,IAAY;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAEO,oBAAoB,CAAC,GAAkB,EAAE,kBAA0B;QACvE,OAAO,kBAAkB,KAAK,CAAC;YAC3B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC,CAAC,GAAG,CAAC,QAAQ,CACV,uBAAU,CAAC,GAAG,CAAC,GAAG,EAClB,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,uBAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAC/D,CAAC;IACV,CAAC;IAEO,KAAK,CAAC,MAAc,EAAE,GAAW;QACrC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;CACJ;AA9ED,sBA8EC"}
@@ -1,81 +0,0 @@
1
- import { AnswersQuestions, Interaction, Question, UsesAbilities } from '@serenity-js/core';
2
- import { ElementFinder } from 'protractor';
3
- /**
4
- * @desc
5
- * Instructs the {@link @serenity-js/core/lib/screenplay/actor~Actor} to
6
- * [click](https://developer.mozilla.org/en-US/docs/Web/API/Element/click_event) on a given Web element.
7
- *
8
- * @example <caption>Example widget</caption>
9
- * <form>
10
- * <input type="text" name="example" id="example" />
11
- * </form>
12
- *
13
- * @example <caption>Lean Page Object describing the widget</caption>
14
- * import { Target } from '@serenity-js/protractor';
15
- * import { by } from 'protractor';
16
- *
17
- * class Form {
18
- * static exampleInput = Target.the('example input')
19
- * .located(by.id('example'));
20
- * }
21
- *
22
- * @example <caption>Clicking on an element</caption>
23
- * import { actorCalled } from '@serenity-js/core';
24
- * import { BrowseTheWeb, Click, isSelected } from '@serenity-js/protractor';
25
- * import { Ensure } from '@serenity-js/assertions';
26
- * import { protractor } from 'protractor';
27
- *
28
- * actorCalled('Chloé')
29
- * .whoCan(BrowseTheWeb.using(protractor.browser))
30
- * .attemptsTo(
31
- * Click.on(Form.exampleInput),
32
- * Ensure.that(Form.exampleInput, isSelected()),
33
- * );
34
- *
35
- * @see {@link BrowseTheWeb}
36
- * @see {@link Target}
37
- * @see {@link @serenity-js/assertions~Ensure}
38
- * @see {@link isSelected}
39
- *
40
- * @extends {@serenity-js/core/lib/screenplay~Interaction}
41
- */
42
- export declare class Click extends Interaction {
43
- private readonly target;
44
- /**
45
- * @desc
46
- * Instantiates this {@link @serenity-js/core/lib/screenplay~Interaction}.
47
- *
48
- * @param {Question<ElementFinder> | ElementFinder} target
49
- * The element to be clicked on
50
- *
51
- * @returns {@serenity-js/core/lib/screenplay~Interaction}
52
- */
53
- static on(target: Question<ElementFinder> | ElementFinder): Interaction;
54
- /**
55
- * @param {Question<ElementFinder> | ElementFinder} target
56
- * The element to be clicked on
57
- */
58
- constructor(target: Question<ElementFinder> | ElementFinder);
59
- /**
60
- * @desc
61
- * Makes the provided {@link @serenity-js/core/lib/screenplay/actor~Actor}
62
- * perform this {@link @serenity-js/core/lib/screenplay~Interaction}.
63
- *
64
- * @param {UsesAbilities & AnswersQuestions} actor
65
- * An {@link @serenity-js/core/lib/screenplay/actor~Actor} to perform this {@link @serenity-js/core/lib/screenplay~Interaction}
66
- *
67
- * @returns {PromiseLike<void>}
68
- *
69
- * @see {@link @serenity-js/core/lib/screenplay/actor~Actor}
70
- * @see {@link @serenity-js/core/lib/screenplay/actor~UsesAbilities}
71
- * @see {@link @serenity-js/core/lib/screenplay/actor~AnswersQuestions}
72
- */
73
- performAs(actor: UsesAbilities & AnswersQuestions): PromiseLike<void>;
74
- /**
75
- * @desc
76
- * Generates a description to be used when reporting this {@link @serenity-js/core/lib/screenplay~Activity}.
77
- *
78
- * @returns {string}
79
- */
80
- toString(): string;
81
- }
@@ -1,95 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Click = void 0;
4
- const core_1 = require("@serenity-js/core");
5
- const io_1 = require("@serenity-js/core/lib/io");
6
- const withAnswerOf_1 = require("../withAnswerOf");
7
- /**
8
- * @desc
9
- * Instructs the {@link @serenity-js/core/lib/screenplay/actor~Actor} to
10
- * [click](https://developer.mozilla.org/en-US/docs/Web/API/Element/click_event) on a given Web element.
11
- *
12
- * @example <caption>Example widget</caption>
13
- * <form>
14
- * <input type="text" name="example" id="example" />
15
- * </form>
16
- *
17
- * @example <caption>Lean Page Object describing the widget</caption>
18
- * import { Target } from '@serenity-js/protractor';
19
- * import { by } from 'protractor';
20
- *
21
- * class Form {
22
- * static exampleInput = Target.the('example input')
23
- * .located(by.id('example'));
24
- * }
25
- *
26
- * @example <caption>Clicking on an element</caption>
27
- * import { actorCalled } from '@serenity-js/core';
28
- * import { BrowseTheWeb, Click, isSelected } from '@serenity-js/protractor';
29
- * import { Ensure } from '@serenity-js/assertions';
30
- * import { protractor } from 'protractor';
31
- *
32
- * actorCalled('Chloé')
33
- * .whoCan(BrowseTheWeb.using(protractor.browser))
34
- * .attemptsTo(
35
- * Click.on(Form.exampleInput),
36
- * Ensure.that(Form.exampleInput, isSelected()),
37
- * );
38
- *
39
- * @see {@link BrowseTheWeb}
40
- * @see {@link Target}
41
- * @see {@link @serenity-js/assertions~Ensure}
42
- * @see {@link isSelected}
43
- *
44
- * @extends {@serenity-js/core/lib/screenplay~Interaction}
45
- */
46
- class Click extends core_1.Interaction {
47
- /**
48
- * @param {Question<ElementFinder> | ElementFinder} target
49
- * The element to be clicked on
50
- */
51
- constructor(target) {
52
- super();
53
- this.target = target;
54
- }
55
- /**
56
- * @desc
57
- * Instantiates this {@link @serenity-js/core/lib/screenplay~Interaction}.
58
- *
59
- * @param {Question<ElementFinder> | ElementFinder} target
60
- * The element to be clicked on
61
- *
62
- * @returns {@serenity-js/core/lib/screenplay~Interaction}
63
- */
64
- static on(target) {
65
- return new Click(target);
66
- }
67
- /**
68
- * @desc
69
- * Makes the provided {@link @serenity-js/core/lib/screenplay/actor~Actor}
70
- * perform this {@link @serenity-js/core/lib/screenplay~Interaction}.
71
- *
72
- * @param {UsesAbilities & AnswersQuestions} actor
73
- * An {@link @serenity-js/core/lib/screenplay/actor~Actor} to perform this {@link @serenity-js/core/lib/screenplay~Interaction}
74
- *
75
- * @returns {PromiseLike<void>}
76
- *
77
- * @see {@link @serenity-js/core/lib/screenplay/actor~Actor}
78
- * @see {@link @serenity-js/core/lib/screenplay/actor~UsesAbilities}
79
- * @see {@link @serenity-js/core/lib/screenplay/actor~AnswersQuestions}
80
- */
81
- performAs(actor) {
82
- return (0, withAnswerOf_1.withAnswerOf)(actor, this.target, (elf) => elf.click());
83
- }
84
- /**
85
- * @desc
86
- * Generates a description to be used when reporting this {@link @serenity-js/core/lib/screenplay~Activity}.
87
- *
88
- * @returns {string}
89
- */
90
- toString() {
91
- return (0, io_1.formatted) `#actor clicks on ${this.target}`;
92
- }
93
- }
94
- exports.Click = Click;
95
- //# sourceMappingURL=Click.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Click.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/Click.ts"],"names":[],"mappings":";;;AAAA,4CAA2F;AAC3F,iDAAqD;AAGrD,kDAA+C;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAa,KAAM,SAAQ,kBAAW;IAelC;;;OAGG;IACH,YAA6B,MAA+C;QACxE,KAAK,EAAE,CAAC;QADiB,WAAM,GAAN,MAAM,CAAyC;IAE5E,CAAC;IAnBD;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,CAAC,MAA+C;QACrD,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAUD;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,KAAuC;QAC7C,OAAO,IAAA,2BAAY,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACJ,OAAO,IAAA,cAAS,EAAC,oBAAqB,IAAI,CAAC,MAAO,EAAE,CAAC;IACzD,CAAC;CACJ;AAlDD,sBAkDC"}
@@ -1,89 +0,0 @@
1
- import { Interaction } from '@serenity-js/core';
2
- /**
3
- * @desc
4
- * Instructs the {@link @serenity-js/core/lib/screenplay/actor~Actor} to
5
- * close browser tabs or windows.
6
- *
7
- * @example <caption>Closing a browser tab or window</caption>
8
- * import { actorCalled } from '@serenity-js/core';
9
- * import { BrowseTheWeb, Click, Close, Switch } from '@serenity-js/protractor';
10
- * import { protractor } from 'protractor';
11
- *
12
- * actorCalled('Caleb')
13
- * .whoCan(BrowseTheWeb.using(protractor.browser))
14
- * .attemptsTo(
15
- * Click.on(someLinkThatOpensANewWindow),
16
- *
17
- * Switch.toNewWindow().and(
18
- * // perform activities in the context of the new window
19
- * Close.currentWindow(),
20
- * ),
21
- * );
22
- *
23
- * @example <caption>Closing any new windows after a Jasmine test</caption>
24
- * import 'jasmine';
25
- *
26
- * import { actorInTheSpotlight } from '@serenity-js/core';
27
- * import { Close } from '@serenity-js/protractor';
28
- *
29
- * after(() =>
30
- * actorInTheSpotlight().attemptsTo(
31
- * Close.anyNewWindows(),
32
- * ));
33
- *
34
- * @example <caption>Closing any new windows after a Mocha test</caption>
35
- * import 'mocha';
36
- *
37
- * import { actorInTheSpotlight } from '@serenity-js/core';
38
- * import { Close } from '@serenity-js/protractor';
39
- *
40
- * after(() =>
41
- * actorInTheSpotlight().attemptsTo(
42
- * Close.anyNewWindows(),
43
- * ));
44
- *
45
- * @example <caption>Closing any new windows after a Cucumber scenario</caption>
46
- * import { actorInTheSpotlight } from '@serenity-js/core';
47
- * import { Close } from '@serenity-js/protractor';
48
- * import { After } from 'cucumber';
49
- *
50
- * After(() =>
51
- * actorInTheSpotlight().attemptsTo(
52
- * Close.anyNewWindows(),
53
- * ));
54
- *
55
- * @see {@link Switch}
56
- */
57
- export declare class Close {
58
- /**
59
- * @desc
60
- * Closes any windows other than the original one that
61
- * the {@link @serenity-js/core/lib/screenplay/actor~Actor}
62
- * has {@link Navigate}d to.
63
- *
64
- * When the windows are closed, it switches the context
65
- * back to the original window.
66
- *
67
- * @static
68
- * @returns {@link @serenity-js/core/lib/screenplay~Interaction}
69
- *
70
- * @see {@link Switch}
71
- */
72
- static anyNewWindows(): Interaction;
73
- /**
74
- * @desc
75
- * Closes the currently focused browser window.
76
- *
77
- * **Please note** that this interaction should be used to close
78
- * pop-up windows or any new windows/tabs opened during the test
79
- * rather than the _main_ window, which is managed by Protractor.
80
- *
81
- * See tests for usage examples.
82
- *
83
- * @static
84
- * @returns {@link @serenity-js/core/lib/screenplay~Interaction}
85
- *
86
- * @see {@link Switch}
87
- */
88
- static currentWindow(): Interaction;
89
- }