@serenity-js/core 3.25.0 → 3.25.1

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 (268) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +1 -1
  3. package/lib/Serenity.d.ts +22 -22
  4. package/lib/Serenity.js +22 -22
  5. package/lib/adapter/OutputStream.d.ts +5 -4
  6. package/lib/adapter/OutputStream.d.ts.map +1 -1
  7. package/lib/adapter/TestRunnerAdapter.d.ts +2 -2
  8. package/lib/config/ClassDescription.d.ts +1 -1
  9. package/lib/config/SerenityConfig.d.ts +22 -20
  10. package/lib/config/SerenityConfig.d.ts.map +1 -1
  11. package/lib/config/SerenityConfig.js +22 -20
  12. package/lib/config/SerenityConfig.js.map +1 -1
  13. package/lib/errors/ErrorFactory.d.ts +2 -1
  14. package/lib/errors/ErrorFactory.d.ts.map +1 -1
  15. package/lib/errors/ErrorFactory.js +2 -1
  16. package/lib/errors/ErrorFactory.js.map +1 -1
  17. package/lib/errors/RaiseErrors.d.ts +9 -9
  18. package/lib/errors/RaiseErrors.js +9 -9
  19. package/lib/errors/diff/AnsiDiffFormatter.d.ts +1 -1
  20. package/lib/errors/diff/AnsiDiffFormatter.js +1 -1
  21. package/lib/errors/diff/DiffFormatter.d.ts +1 -1
  22. package/lib/errors/diff/NoOpDiffFormatter.d.ts +1 -1
  23. package/lib/errors/diff/NoOpDiffFormatter.js +1 -1
  24. package/lib/errors/model/AssertionError.d.ts +1 -1
  25. package/lib/errors/model/AssertionError.js +1 -1
  26. package/lib/errors/model/ConfigurationError.d.ts +1 -1
  27. package/lib/errors/model/ConfigurationError.js +1 -1
  28. package/lib/errors/model/ImplementationPendingError.d.ts +3 -3
  29. package/lib/errors/model/ImplementationPendingError.js +3 -3
  30. package/lib/errors/model/ListItemNotFoundError.d.ts +2 -2
  31. package/lib/errors/model/ListItemNotFoundError.js +2 -2
  32. package/lib/errors/model/LogicError.d.ts +2 -2
  33. package/lib/errors/model/LogicError.js +2 -2
  34. package/lib/errors/model/OperationInterruptedError.d.ts +2 -2
  35. package/lib/errors/model/OperationInterruptedError.js +2 -2
  36. package/lib/errors/model/RuntimeError.d.ts +2 -2
  37. package/lib/errors/model/RuntimeError.js +2 -2
  38. package/lib/errors/model/TestCompromisedError.d.ts +1 -1
  39. package/lib/errors/model/TestCompromisedError.js +1 -1
  40. package/lib/errors/model/TimeoutExpiredError.d.ts +2 -2
  41. package/lib/errors/model/TimeoutExpiredError.js +2 -2
  42. package/lib/errors/model/UnknownError.d.ts +1 -1
  43. package/lib/errors/model/UnknownError.js +1 -1
  44. package/lib/events/ActivityFinished.d.ts +1 -1
  45. package/lib/events/ActivityFinished.js +1 -1
  46. package/lib/events/ActivityStarts.d.ts +1 -1
  47. package/lib/events/ActivityStarts.js +1 -1
  48. package/lib/events/BusinessRuleDetected.d.ts +1 -1
  49. package/lib/events/BusinessRuleDetected.js +1 -1
  50. package/lib/events/SceneFinishes.d.ts +2 -1
  51. package/lib/events/SceneFinishes.d.ts.map +1 -1
  52. package/lib/events/SceneFinishes.js +2 -1
  53. package/lib/events/SceneFinishes.js.map +1 -1
  54. package/lib/instance.d.ts +30 -30
  55. package/lib/instance.js +30 -30
  56. package/lib/io/format.d.ts +15 -6
  57. package/lib/io/format.d.ts.map +1 -1
  58. package/lib/io/format.js +15 -6
  59. package/lib/io/format.js.map +1 -1
  60. package/lib/io/loader/ModuleLoader.d.ts +1 -1
  61. package/lib/io/loader/ModuleLoader.js +1 -1
  62. package/lib/io/reflection/ValueInspector.d.ts +1 -1
  63. package/lib/io/reflection/ValueInspector.js +2 -2
  64. package/lib/io/reflection/ValueInspector.js.map +1 -1
  65. package/lib/io/stringified.d.ts +1 -1
  66. package/lib/io/stringified.js +1 -1
  67. package/lib/io/trimmed.d.ts +1 -1
  68. package/lib/io/trimmed.js +1 -1
  69. package/lib/model/artifacts/HTTPRequestResponse.d.ts +2 -2
  70. package/lib/model/artifacts/HTTPRequestResponse.js +1 -1
  71. package/lib/screenplay/Activity.d.ts +10 -10
  72. package/lib/screenplay/Activity.js +5 -5
  73. package/lib/screenplay/Actor.d.ts +28 -28
  74. package/lib/screenplay/Actor.js +28 -28
  75. package/lib/screenplay/Answerable.d.ts +1 -1
  76. package/lib/screenplay/Answered.d.ts +2 -2
  77. package/lib/screenplay/Interaction.d.ts +17 -17
  78. package/lib/screenplay/Interaction.js +12 -12
  79. package/lib/screenplay/Optional.d.ts +1 -1
  80. package/lib/screenplay/Question.d.ts +48 -45
  81. package/lib/screenplay/Question.d.ts.map +1 -1
  82. package/lib/screenplay/Question.js +39 -36
  83. package/lib/screenplay/Question.js.map +1 -1
  84. package/lib/screenplay/RecursivelyAnswered.d.ts +2 -2
  85. package/lib/screenplay/Task.d.ts +19 -19
  86. package/lib/screenplay/Task.js +15 -15
  87. package/lib/screenplay/WithAnswerableProperties.d.ts +2 -2
  88. package/lib/screenplay/abilities/Ability.d.ts +48 -46
  89. package/lib/screenplay/abilities/Ability.d.ts.map +1 -1
  90. package/lib/screenplay/abilities/Ability.js +48 -46
  91. package/lib/screenplay/abilities/Ability.js.map +1 -1
  92. package/lib/screenplay/abilities/AbilityType.d.ts +5 -5
  93. package/lib/screenplay/abilities/AnswerQuestions.d.ts +3 -3
  94. package/lib/screenplay/abilities/AnswerQuestions.js +3 -3
  95. package/lib/screenplay/abilities/CanHaveAbilities.d.ts +4 -4
  96. package/lib/screenplay/abilities/Discardable.d.ts +8 -8
  97. package/lib/screenplay/abilities/Initialisable.d.ts +11 -11
  98. package/lib/screenplay/abilities/PerformActivities.d.ts +3 -3
  99. package/lib/screenplay/abilities/PerformActivities.js +3 -3
  100. package/lib/screenplay/abilities/UsesAbilities.d.ts +6 -6
  101. package/lib/screenplay/activities/PerformsActivities.d.ts +7 -7
  102. package/lib/screenplay/artifacts/CollectsArtifacts.d.ts +4 -5
  103. package/lib/screenplay/artifacts/CollectsArtifacts.d.ts.map +1 -1
  104. package/lib/screenplay/debugging/Debug.d.ts +7 -6
  105. package/lib/screenplay/debugging/Debug.d.ts.map +1 -1
  106. package/lib/screenplay/debugging/Debug.js +7 -6
  107. package/lib/screenplay/debugging/Debug.js.map +1 -1
  108. package/lib/screenplay/debugging/DebuggingResult.d.ts +1 -1
  109. package/lib/screenplay/debugging/Log.d.ts +7 -5
  110. package/lib/screenplay/debugging/Log.d.ts.map +1 -1
  111. package/lib/screenplay/debugging/Log.js +7 -5
  112. package/lib/screenplay/debugging/Log.js.map +1 -1
  113. package/lib/screenplay/notes/Notepad.d.ts +13 -13
  114. package/lib/screenplay/notes/Notepad.js +13 -13
  115. package/lib/screenplay/notes/NotepadAdapter.d.ts +16 -16
  116. package/lib/screenplay/notes/NotepadAdapter.js +16 -16
  117. package/lib/screenplay/notes/TakeNotes.d.ts +9 -9
  118. package/lib/screenplay/notes/TakeNotes.js +9 -9
  119. package/lib/screenplay/notes/notes.d.ts +6 -6
  120. package/lib/screenplay/notes/notes.js +6 -6
  121. package/lib/screenplay/questions/AnswersQuestions.d.ts +4 -4
  122. package/lib/screenplay/questions/ChainableMetaQuestion.d.ts +6 -6
  123. package/lib/screenplay/questions/Check.d.ts +2 -2
  124. package/lib/screenplay/questions/Check.js +2 -2
  125. package/lib/screenplay/questions/DescriptionFormattingOptions.d.ts +2 -2
  126. package/lib/screenplay/questions/Expectation.d.ts +17 -14
  127. package/lib/screenplay/questions/Expectation.d.ts.map +1 -1
  128. package/lib/screenplay/questions/Expectation.js +17 -14
  129. package/lib/screenplay/questions/Expectation.js.map +1 -1
  130. package/lib/screenplay/questions/List.d.ts +5 -5
  131. package/lib/screenplay/questions/List.js +5 -5
  132. package/lib/screenplay/questions/Masked.d.ts +4 -2
  133. package/lib/screenplay/questions/Masked.d.ts.map +1 -1
  134. package/lib/screenplay/questions/Masked.js +4 -2
  135. package/lib/screenplay/questions/Masked.js.map +1 -1
  136. package/lib/screenplay/questions/MetaQuestion.d.ts +9 -9
  137. package/lib/screenplay/questions/Unanswered.d.ts +2 -2
  138. package/lib/screenplay/questions/Unanswered.js +2 -2
  139. package/lib/screenplay/questions/expectations/ExpectationDetails.d.ts +1 -1
  140. package/lib/screenplay/questions/expectations/ExpectationDetails.js +1 -1
  141. package/lib/screenplay/questions/expectations/ExpectationMet.d.ts +1 -1
  142. package/lib/screenplay/questions/expectations/ExpectationMet.js +1 -1
  143. package/lib/screenplay/questions/expectations/ExpectationNotMet.d.ts +1 -1
  144. package/lib/screenplay/questions/expectations/ExpectationNotMet.js +1 -1
  145. package/lib/screenplay/questions/expectations/ExpectationOutcome.d.ts +2 -2
  146. package/lib/screenplay/questions/expectations/ExpectationOutcome.js +2 -2
  147. package/lib/screenplay/questions/tag-functions.d.ts +23 -21
  148. package/lib/screenplay/questions/tag-functions.d.ts.map +1 -1
  149. package/lib/screenplay/questions/tag-functions.js +5 -5
  150. package/lib/screenplay/questions/tag-functions.js.map +1 -1
  151. package/lib/screenplay/time/TellsTime.d.ts +4 -4
  152. package/lib/screenplay/time/abilities/ScheduleWork.d.ts +2 -2
  153. package/lib/screenplay/time/abilities/ScheduleWork.js +2 -2
  154. package/lib/screenplay/time/activities/Wait.d.ts +29 -27
  155. package/lib/screenplay/time/activities/Wait.d.ts.map +1 -1
  156. package/lib/screenplay/time/activities/Wait.js +29 -27
  157. package/lib/screenplay/time/activities/Wait.js.map +1 -1
  158. package/lib/screenplay/time/models/Clock.d.ts +4 -4
  159. package/lib/screenplay/time/models/Clock.js +4 -4
  160. package/lib/screenplay/time/models/Duration.d.ts +1 -1
  161. package/lib/screenplay/time/models/Duration.js +1 -1
  162. package/lib/screenplay/time/models/Timestamp.d.ts +2 -2
  163. package/lib/screenplay/time/models/Timestamp.js +2 -2
  164. package/lib/stage/Cast.d.ts +21 -21
  165. package/lib/stage/Cast.js +19 -19
  166. package/lib/stage/Extras.d.ts +1 -1
  167. package/lib/stage/Extras.js +1 -1
  168. package/lib/stage/ListensToDomainEvents.d.ts +7 -7
  169. package/lib/stage/Stage.d.ts +29 -30
  170. package/lib/stage/Stage.d.ts.map +1 -1
  171. package/lib/stage/Stage.js +29 -30
  172. package/lib/stage/Stage.js.map +1 -1
  173. package/lib/stage/StageCrewMember.d.ts +11 -11
  174. package/lib/stage/StageCrewMemberBuilder.d.ts +7 -7
  175. package/lib/stage/StageCrewMemberBuilderDependencies.d.ts +2 -2
  176. package/lib/stage/crew/artifact-archiver/ArtifactArchiver.d.ts +4 -4
  177. package/lib/stage/crew/artifact-archiver/ArtifactArchiver.js +4 -4
  178. package/lib/stage/crew/stream-reporter/StreamReporter.d.ts +7 -7
  179. package/lib/stage/crew/stream-reporter/StreamReporter.js +7 -7
  180. package/package.json +2 -2
  181. package/src/Serenity.ts +22 -22
  182. package/src/adapter/OutputStream.ts +5 -4
  183. package/src/adapter/TestRunnerAdapter.ts +2 -2
  184. package/src/config/ClassDescription.ts +1 -1
  185. package/src/config/SerenityConfig.ts +22 -20
  186. package/src/errors/ErrorFactory.ts +2 -1
  187. package/src/errors/ErrorSerialiser.ts +3 -3
  188. package/src/errors/RaiseErrors.ts +9 -9
  189. package/src/errors/diff/AnsiDiffFormatter.ts +1 -1
  190. package/src/errors/diff/DiffFormatter.ts +1 -1
  191. package/src/errors/diff/NoOpDiffFormatter.ts +1 -1
  192. package/src/errors/model/AssertionError.ts +1 -1
  193. package/src/errors/model/ConfigurationError.ts +1 -1
  194. package/src/errors/model/ImplementationPendingError.ts +3 -3
  195. package/src/errors/model/ListItemNotFoundError.ts +2 -2
  196. package/src/errors/model/LogicError.ts +2 -2
  197. package/src/errors/model/OperationInterruptedError.ts +2 -2
  198. package/src/errors/model/RuntimeError.ts +2 -2
  199. package/src/errors/model/TestCompromisedError.ts +1 -1
  200. package/src/errors/model/TimeoutExpiredError.ts +2 -2
  201. package/src/errors/model/UnknownError.ts +1 -1
  202. package/src/events/ActivityFinished.ts +1 -1
  203. package/src/events/ActivityStarts.ts +1 -1
  204. package/src/events/BusinessRuleDetected.ts +1 -1
  205. package/src/events/SceneFinishes.ts +2 -1
  206. package/src/instance.ts +30 -30
  207. package/src/io/format.ts +15 -6
  208. package/src/io/loader/ModuleLoader.ts +1 -1
  209. package/src/io/reflection/ValueInspector.ts +3 -3
  210. package/src/io/stringified.ts +1 -1
  211. package/src/io/trimmed.ts +1 -1
  212. package/src/model/artifacts/HTTPRequestResponse.ts +2 -2
  213. package/src/screenplay/Activity.ts +10 -10
  214. package/src/screenplay/Actor.ts +28 -28
  215. package/src/screenplay/Answerable.ts +1 -1
  216. package/src/screenplay/Answered.ts +2 -2
  217. package/src/screenplay/Interaction.ts +17 -17
  218. package/src/screenplay/Optional.ts +1 -1
  219. package/src/screenplay/Question.ts +48 -45
  220. package/src/screenplay/RecursivelyAnswered.ts +2 -2
  221. package/src/screenplay/Task.ts +19 -19
  222. package/src/screenplay/WithAnswerableProperties.ts +2 -2
  223. package/src/screenplay/abilities/Ability.ts +48 -46
  224. package/src/screenplay/abilities/AbilityType.ts +5 -5
  225. package/src/screenplay/abilities/AnswerQuestions.ts +3 -3
  226. package/src/screenplay/abilities/CanHaveAbilities.ts +4 -4
  227. package/src/screenplay/abilities/Discardable.ts +8 -8
  228. package/src/screenplay/abilities/Initialisable.ts +11 -11
  229. package/src/screenplay/abilities/PerformActivities.ts +3 -3
  230. package/src/screenplay/abilities/UsesAbilities.ts +6 -6
  231. package/src/screenplay/activities/PerformsActivities.ts +7 -7
  232. package/src/screenplay/artifacts/CollectsArtifacts.ts +4 -5
  233. package/src/screenplay/debugging/Debug.ts +7 -6
  234. package/src/screenplay/debugging/DebuggingResult.ts +1 -1
  235. package/src/screenplay/debugging/Log.ts +7 -5
  236. package/src/screenplay/notes/Notepad.ts +13 -13
  237. package/src/screenplay/notes/NotepadAdapter.ts +16 -16
  238. package/src/screenplay/notes/TakeNotes.ts +9 -9
  239. package/src/screenplay/notes/notes.ts +6 -6
  240. package/src/screenplay/questions/AnswersQuestions.ts +4 -4
  241. package/src/screenplay/questions/ChainableMetaQuestion.ts +6 -6
  242. package/src/screenplay/questions/Check.ts +2 -2
  243. package/src/screenplay/questions/DescriptionFormattingOptions.ts +2 -2
  244. package/src/screenplay/questions/Expectation.ts +17 -14
  245. package/src/screenplay/questions/List.ts +5 -5
  246. package/src/screenplay/questions/Masked.ts +4 -2
  247. package/src/screenplay/questions/MetaQuestion.ts +9 -9
  248. package/src/screenplay/questions/Unanswered.ts +2 -2
  249. package/src/screenplay/questions/expectations/ExpectationDetails.ts +1 -1
  250. package/src/screenplay/questions/expectations/ExpectationMet.ts +1 -1
  251. package/src/screenplay/questions/expectations/ExpectationNotMet.ts +1 -1
  252. package/src/screenplay/questions/expectations/ExpectationOutcome.ts +2 -2
  253. package/src/screenplay/questions/tag-functions.ts +23 -21
  254. package/src/screenplay/time/TellsTime.ts +4 -4
  255. package/src/screenplay/time/abilities/ScheduleWork.ts +2 -2
  256. package/src/screenplay/time/activities/Wait.ts +29 -27
  257. package/src/screenplay/time/models/Clock.ts +4 -4
  258. package/src/screenplay/time/models/Duration.ts +1 -1
  259. package/src/screenplay/time/models/Timestamp.ts +2 -2
  260. package/src/stage/Cast.ts +21 -21
  261. package/src/stage/Extras.ts +1 -1
  262. package/src/stage/ListensToDomainEvents.ts +7 -7
  263. package/src/stage/Stage.ts +29 -30
  264. package/src/stage/StageCrewMember.ts +11 -11
  265. package/src/stage/StageCrewMemberBuilder.ts +7 -7
  266. package/src/stage/StageCrewMemberBuilderDependencies.ts +2 -2
  267. package/src/stage/crew/artifact-archiver/ArtifactArchiver.ts +4 -4
  268. package/src/stage/crew/stream-reporter/StreamReporter.ts +7 -7
@@ -22,17 +22,17 @@ import type { Cast } from './Cast';
22
22
  import type { StageManager } from './StageManager';
23
23
 
24
24
  /**
25
- * Stage is the place where {@apilink Actor|actors} perform.
25
+ * Stage is the place where [actors](https://serenity-js.org/api/core/class/Actor/) perform.
26
26
  *
27
- * In more technical terms, the Stage is the main event bus propagating {@apilink DomainEvent|DomainEvents}
28
- * to {@apilink Actor|Actors} it instantiates and {@apilink StageCrewMember|StageCrewMembers} that have been registered with it.
27
+ * In more technical terms, the Stage is the main event bus propagating [Serenity/JS domain events](https://serenity-js.org/api/core-events/class/DomainEvent/)
28
+ * to [actors](https://serenity-js.org/api/core/class/Actor/) it instantiates and [stage crew members](https://serenity-js.org/api/core/interface/StageCrewMember/) that have been registered with it.
29
29
  *
30
30
  * It is unlikely that you'll ever need to interact with the `Stage` directly in your tests. Instead, you'll use functions like
31
- * {@apilink actorCalled} and {@apilink actorInTheSpotlight}.
31
+ * [`actorCalled`](https://serenity-js.org/api/core/function/actorCalled/) and [`actorInTheSpotlight`](https://serenity-js.org/api/core/function/actorInTheSpotlight/).
32
32
  *
33
33
  * ## Learn more
34
- * - {@apilink configure}
35
- * - {@apilink engage}
34
+ * - [`configure`](https://serenity-js.org/api/core/function/configure/)
35
+ * - [`engage`](https://serenity-js.org/api/core/function/engage/)
36
36
  *
37
37
  * @group Stage
38
38
  */
@@ -55,7 +55,7 @@ export class Stage implements EmitsDomainEvents {
55
55
  private actorsOnStage: Map<string, Actor> = this.actorsOnBackstage;
56
56
 
57
57
  /**
58
- * The most recent actor referenced via the {@apilink actor} method
58
+ * The most recent actor referenced via the [`Actor`](https://serenity-js.org/api/core/class/Actor/) method
59
59
  */
60
60
  private actorInTheSpotlight: Actor = undefined;
61
61
 
@@ -85,7 +85,7 @@ export class Stage implements EmitsDomainEvents {
85
85
  }
86
86
 
87
87
  /**
88
- * An alias for {@apilink Stage.actor}
88
+ * An alias for [`Stage.actor`](https://serenity-js.org/api/core/class/Stage/#actor)
89
89
  *
90
90
  * @param name
91
91
  */
@@ -94,7 +94,7 @@ export class Stage implements EmitsDomainEvents {
94
94
  }
95
95
 
96
96
  /**
97
- * Instantiates a new {@apilink Actor} or fetches an existing one
97
+ * Instantiates a new [`Actor`](https://serenity-js.org/api/core/class/Actor/) or fetches an existing one
98
98
  * identified by their name if they've already been instantiated.
99
99
  *
100
100
  * @param name
@@ -131,11 +131,11 @@ export class Stage implements EmitsDomainEvents {
131
131
  }
132
132
 
133
133
  /**
134
- * Returns the last {@apilink Actor} instantiated via {@apilink Stage.actor}.
134
+ * Returns the last [`Actor`](https://serenity-js.org/api/core/class/Actor/) instantiated via [`Stage.actor`](https://serenity-js.org/api/core/class/Stage/#actor).
135
135
  * Useful when you don't can't or choose not to reference the actor by their name.
136
136
  *
137
- * @throws {LogicError}
138
- * If no {@apilink Actor} has been activated yet
137
+ * @throws [`LogicError`](https://serenity-js.org/api/core/class/LogicError/)
138
+ * If no [`Actor`](https://serenity-js.org/api/core/class/Actor/) has been activated yet
139
139
  */
140
140
  theActorInTheSpotlight(): Actor {
141
141
  if (! this.actorInTheSpotlight) {
@@ -146,15 +146,15 @@ export class Stage implements EmitsDomainEvents {
146
146
  }
147
147
 
148
148
  /**
149
- * Returns `true` if there is an {@apilink Actor} in the spotlight, `false` otherwise.
149
+ * Returns `true` if there is an [`Actor`](https://serenity-js.org/api/core/class/Actor/) in the spotlight, `false` otherwise.
150
150
  */
151
151
  theShowHasStarted(): boolean {
152
152
  return !! this.actorInTheSpotlight;
153
153
  }
154
154
 
155
155
  /**
156
- * Configures the Stage to prepare {@apilink Actor|Actors}
157
- * instantiated via {@apilink Stage.actor} using the provided {@apilink Cast}.
156
+ * Configures the Stage to prepare [actors](https://serenity-js.org/api/core/class/Actor/)
157
+ * instantiated via [`Stage.actor`](https://serenity-js.org/api/core/class/Stage/#actor) using the provided [cast](https://serenity-js.org/api/core/class/Cast/).
158
158
  *
159
159
  * @param actors
160
160
  */
@@ -165,8 +165,8 @@ export class Stage implements EmitsDomainEvents {
165
165
  }
166
166
 
167
167
  /**
168
- * Assigns listeners to be notified of {@apilink DomainEvent|DomainEvents}
169
- * emitted via {@apilink Stage.announce}.s
168
+ * Assigns listeners to be notified of [Serenity/JS domain events](https://serenity-js.org/api/core-events/class/DomainEvent/)
169
+ * emitted via [`Stage.announce`](https://serenity-js.org/api/core/class/Stage/#announce).s
170
170
  *
171
171
  * @param listeners
172
172
  */
@@ -206,22 +206,21 @@ export class Stage implements EmitsDomainEvents {
206
206
 
207
207
  /**
208
208
  * Returns current time. This method should be used whenever
209
- * {@apilink DomainEvent} objects are instantiated by you programmatically.
209
+ * [`DomainEvent`](https://serenity-js.org/api/core-events/class/DomainEvent/) objects are instantiated by you programmatically.
210
210
  */
211
211
  currentTime(): Timestamp {
212
212
  return this.manager.currentTime();
213
213
  }
214
214
 
215
215
  /**
216
- * Generates and remembers a {@apilink CorrelationId}
216
+ * Generates and remembers a `CorrelationId`
217
217
  * for the current scene.
218
218
  *
219
219
  * This method should be used in custom test runner adapters
220
- * when instantiating a {@apilink SceneStarts} event.
220
+ * when instantiating a [SceneStarts](https://serenity-js.org/api/core-events/class/SceneStarts/) event.
221
221
  *
222
222
  * #### Learn more
223
- * - {@apilink Stage.currentSceneId}
224
- * - {@apilink CorrelationId}
223
+ * - [`Stage.currentSceneId`](https://serenity-js.org/api/core/class/Stage/#currentSceneId)
225
224
  */
226
225
  assignNewSceneId(): CorrelationId {
227
226
  // todo: inject an id factory to make it easier to test
@@ -231,24 +230,24 @@ export class Stage implements EmitsDomainEvents {
231
230
  }
232
231
 
233
232
  /**
234
- * Returns the {@apilink CorrelationId} for the current scene.
233
+ * Returns the `CorrelationId` for the current scene.
235
234
  *
236
235
  * #### Learn more
237
- * - {@apilink Stage.assignNewSceneId}
236
+ * - [`Stage.assignNewSceneId`](https://serenity-js.org/api/core/class/Stage/#assignNewSceneId)
238
237
  */
239
238
  currentSceneId(): CorrelationId {
240
239
  return this.currentScene;
241
240
  }
242
241
 
243
242
  /**
244
- * Generates and remembers a {@apilink CorrelationId}
245
- * for the current {@apilink Activity}.
243
+ * Generates and remembers a `CorrelationId`
244
+ * for the current [`Activity`](https://serenity-js.org/api/core/class/Activity/).
246
245
  *
247
246
  * This method should be used in custom test runner adapters
248
- * when instantiating the {@apilink ActivityStarts} event.
247
+ * when instantiating the [ActivityStarts](https://serenity-js.org/api/core-events/class/ActivityStarts/) event.
249
248
  *
250
249
  * #### Learn more
251
- * - {@apilink Stage.currentActivityId}
250
+ * - [`Stage.currentActivityId`](https://serenity-js.org/api/core/class/Stage/#currentActivityId)
252
251
  */
253
252
  assignNewActivityId(activityDetails: ActivityDetails): CorrelationId {
254
253
  this.currentActivity = {
@@ -260,10 +259,10 @@ export class Stage implements EmitsDomainEvents {
260
259
  }
261
260
 
262
261
  /**
263
- * Returns the {@apilink CorrelationId} for the current {@apilink Activity}.
262
+ * Returns the `CorrelationId` for the current [`Activity`](https://serenity-js.org/api/core/class/Activity/).
264
263
  *
265
264
  * #### Learn more
266
- * - {@apilink Stage.assignNewSceneId}
265
+ * - [`Stage.assignNewSceneId`](https://serenity-js.org/api/core/class/Stage/#assignNewSceneId)
267
266
  */
268
267
  currentActivityId(): CorrelationId {
269
268
  if (! this.currentActivity) {
@@ -2,12 +2,12 @@ import type { ListensToDomainEvents } from './ListensToDomainEvents';
2
2
  import type { Stage } from './Stage';
3
3
 
4
4
  /**
5
- * You can think of the {@apilink StageCrewMember} as an in-memory microservice that reacts to {@apilink DomainEvent|domain events},
6
- * published by the {@apilink StageManager}, and originally emitted by {@apilink Actor|actors} performing activities and Serenity/JS
7
- * test runner adapters notifying the framework about test scenario-specific events like {@apilink SceneStarts} or {@apilink SceneFinishes}.
5
+ * You can think of the [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/) as an in-memory microservice that reacts to [Serenity/JS domain events](https://serenity-js.org/api/core-events/class/DomainEvent/),
6
+ * published by the [`StageManager`](https://serenity-js.org/api/core/class/StageManager/), and originally emitted by [actors](https://serenity-js.org/api/core/class/Actor/) performing activities and Serenity/JS
7
+ * test runner adapters notifying the framework about test scenario-specific events like [SceneStarts](https://serenity-js.org/api/core-events/class/SceneStarts/) or [SceneFinishes](https://serenity-js.org/api/core-events/class/SceneFinishes/).
8
8
  *
9
- * Every {@apilink StageCrewMember} receives a reference to the {@apilink Stage},
10
- * and therefore {@apilink StageManager} as well, which enables them to emit {@apilink DomainEvent}s back.
9
+ * Every [stage crew member](https://serenity-js.org/api/core/interface/StageCrewMember/) receives a reference to the [stage](https://serenity-js.org/api/core/class/Stage/),
10
+ * and therefore the [stage manager](https://serenity-js.org/api/core/class/StageManager/), which enables them to emit [domain events](https://serenity-js.org/api/core-events/class/DomainEvent/) back.
11
11
  *
12
12
  * This interface is useful when you're interested in implementing custom Serenity/JS reporters or supporting services.
13
13
  *
@@ -62,18 +62,18 @@ import type { Stage } from './Stage';
62
62
  * ```
63
63
  *
64
64
  * ## Learn more
65
- * - {@apilink SerenityConfig.crew}
66
- * - {@apilink configure}
67
- * - {@apilink StageCrewMemberBuilder}
68
- * - {@apilink ListensToDomainEvents}
69
- * - {@apilink DomainEvent}
65
+ * - [`SerenityConfig.crew`](https://serenity-js.org/api/core/class/SerenityConfig/#crew)
66
+ * - [`configure`](https://serenity-js.org/api/core/function/configure/)
67
+ * - [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMemberBuilder/)
68
+ * - [`ListensToDomainEvents`](https://serenity-js.org/api/core/interface/ListensToDomainEvents/)
69
+ * - [`DomainEvent`](https://serenity-js.org/api/core-events/class/DomainEvent/)
70
70
  *
71
71
  * @group Stage
72
72
  */
73
73
  export interface StageCrewMember extends ListensToDomainEvents {
74
74
 
75
75
  /**
76
- * Assigns a {@apilink Stage} to this {@apilink StageCrewMember}
76
+ * Assigns a [`Stage`](https://serenity-js.org/api/core/class/Stage/) to this [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/)
77
77
  */
78
78
  assignedTo(stage: Stage): StageCrewMember;
79
79
  }
@@ -2,23 +2,23 @@ import type { ListensToDomainEvents } from './ListensToDomainEvents';
2
2
  import type { StageCrewMemberBuilderDependencies } from './StageCrewMemberBuilderDependencies';
3
3
 
4
4
  /**
5
- * Use a {@apilink StageCrewMemberBuilder} to configure complex {@apilink StageCrewMember} objects.
5
+ * Use a [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMemberBuilder/) to configure complex [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/) objects.
6
6
  *
7
7
  * Useful when you're interested in implementing custom reporters with multiple configuration options.
8
- * See {@apilink ConsoleReporter} for an example.
8
+ * See [`ConsoleReporter`](https://serenity-js.org/api/console-reporter/class/ConsoleReporter/) for an example.
9
9
  *
10
10
  * ## Learn more
11
- * - {@apilink StageCrewMember}
12
- * - {@apilink StageCrewMemberBuilderDependencies}
13
- * - {@apilink SerenityConfig.crew}
11
+ * - [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/)
12
+ * - [`StageCrewMemberBuilderDependencies`](https://serenity-js.org/api/core/interface/StageCrewMemberBuilderDependencies/)
13
+ * - [`SerenityConfig.crew`](https://serenity-js.org/api/core/class/SerenityConfig/#crew)
14
14
  *
15
15
  * @group Stage
16
16
  */
17
17
  export interface StageCrewMemberBuilder<T extends ListensToDomainEvents = ListensToDomainEvents> {
18
18
 
19
19
  /**
20
- * Instantiates a {@apilink StageCrewMember}, giving it access to shared dependencies
21
- * such as {@apilink Stage} or {@apilink OutputStream}
20
+ * Instantiates a [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/), giving it access to shared dependencies
21
+ * such as [`Stage`](https://serenity-js.org/api/core/class/Stage/) or [`OutputStream`](https://serenity-js.org/api/core-adapter/interface/OutputStream/)
22
22
  */
23
23
  build(dependencies: StageCrewMemberBuilderDependencies): T;
24
24
  }
@@ -3,10 +3,10 @@ import type { FileSystem } from '../io';
3
3
  import type { Stage } from './Stage';
4
4
 
5
5
  /**
6
- * Dependencies injected by {@apilink Serenity.configure} into {@apilink StageCrewMemberBuilder.build}
6
+ * Dependencies injected by [`Serenity.configure`](https://serenity-js.org/api/core/class/Serenity/#configure) into [`StageCrewMemberBuilder.build`](https://serenity-js.org/api/core/interface/StageCrewMemberBuilder/#build)
7
7
  *
8
8
  * ## Learn more
9
- * - {@apilink StageCrewMemberBuilder}
9
+ * - [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMemberBuilder/)
10
10
  *
11
11
  * @group Stage
12
12
  */
@@ -20,7 +20,7 @@ import type { StageCrewMember } from '../../StageCrewMember';
20
20
  import { Hash } from './Hash';
21
21
 
22
22
  /**
23
- * Stores any {@apilink Artifact|artifacts} emitted via {@apilink ArtifactGenerated} events on the {@apilink FileSystem}.
23
+ * Stores any artifacts emitted via [`ArtifactGenerated`](https://serenity-js.org/api/core-events/class/ArtifactGenerated/) events on the file system.
24
24
  *
25
25
  * ## Registering Artifact Archiver programmatically
26
26
  *
@@ -130,7 +130,7 @@ export class ArtifactArchiver implements StageCrewMember {
130
130
  /**
131
131
  * @param {FileSystem} fileSystem
132
132
  * @param {Stage} [stage]
133
- * The stage this {@apilink StageCrewMember} should be assigned to
133
+ * The stage this [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/) should be assigned to
134
134
  */
135
135
  constructor(
136
136
  private readonly fileSystem: FileSystem,
@@ -144,9 +144,9 @@ export class ArtifactArchiver implements StageCrewMember {
144
144
  }
145
145
 
146
146
  /**
147
- * Handles {@apilink DomainEvent} objects emitted by the {@apilink StageManager}.
147
+ * Handles [`DomainEvent`](https://serenity-js.org/api/core-events/class/DomainEvent/) objects emitted by the [`StageManager`](https://serenity-js.org/api/core/class/StageManager/).
148
148
  *
149
- * @see {@apilink StageCrewMember}
149
+ * @see [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/)
150
150
  *
151
151
  * @listens {ArtifactGenerated}
152
152
  * @emits {ArtifactArchived}
@@ -7,7 +7,7 @@ import type { Stage } from '../../Stage';
7
7
  import type { StageCrewMember } from '../../StageCrewMember';
8
8
 
9
9
  /**
10
- * Serialises all the {@apilink DomainEvent} objects it receives and streams
10
+ * Serialises all the [`DomainEvent`](https://serenity-js.org/api/core-events/class/DomainEvent/) objects it receives and streams
11
11
  * them as [ndjson](http://ndjson.org/) to the output stream or file.
12
12
  *
13
13
  * Useful when debugging issues related to custom Serenity/JS test runner adapters.
@@ -101,7 +101,7 @@ import type { StageCrewMember } from '../../StageCrewMember';
101
101
  export class StreamReporter implements StageCrewMember {
102
102
 
103
103
  /**
104
- * Instantiates a `StreamReporter` outputting a stream of {@apilink DomainEvent|domain events}
104
+ * Instantiates a `StreamReporter` outputting a stream of [Serenity/JS domain events](https://serenity-js.org/api/core-events/class/DomainEvent/)
105
105
  * to an `outputFile` at the given location.
106
106
  *
107
107
  * @param config
@@ -120,7 +120,7 @@ export class StreamReporter implements StageCrewMember {
120
120
  * A Writable stream that should receive the output
121
121
  *
122
122
  * @param {Stage} [stage]
123
- * The stage this {@apilink StageCrewMember} should be assigned to
123
+ * The stage this [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/) should be assigned to
124
124
  */
125
125
  constructor(
126
126
  private readonly output: Writable = process.stdout,
@@ -129,20 +129,20 @@ export class StreamReporter implements StageCrewMember {
129
129
  }
130
130
 
131
131
  /**
132
- * Creates a new instance of this {@apilink StageCrewMember} and assigns it to a given {@apilink Stage}.
132
+ * Creates a new instance of this [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/) and assigns it to a given [`Stage`](https://serenity-js.org/api/core/class/Stage/).
133
133
  *
134
134
  * @param stage
135
- * An instance of a {@apilink Stage} this {@apilink StageCrewMember} will be assigned to
135
+ * An instance of a [`Stage`](https://serenity-js.org/api/core/class/Stage/) this [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/) will be assigned to
136
136
  *
137
137
  * @returns {StageCrewMember}
138
- * A new instance of this {@apilink StageCrewMember}
138
+ * A new instance of this [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/)
139
139
  */
140
140
  assignedTo(stage: Stage): StageCrewMember {
141
141
  return new StreamReporter(this.output, stage);
142
142
  }
143
143
 
144
144
  /**
145
- * Handles {@apilink DomainEvent} objects emitted by the {@apilink StageManager}.
145
+ * Handles [`DomainEvent`](https://serenity-js.org/api/core-events/class/DomainEvent/) objects emitted by the [`StageManager`](https://serenity-js.org/api/core/class/StageManager/).
146
146
  *
147
147
  * @listens {DomainEvent}
148
148
  *