@serenity-js/core 3.25.0 → 3.25.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 (268) hide show
  1. package/CHANGELOG.md +19 -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 +30 -30
  170. package/lib/stage/Stage.d.ts.map +1 -1
  171. package/lib/stage/Stage.js +30 -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 +4 -4
  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 +30 -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,18 @@ 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
+ * - [`StageCrewMember`](https://serenity-js.org/api/core/interface/StageCrewMember/)
36
37
  *
37
38
  * @group Stage
38
39
  */
@@ -55,7 +56,7 @@ export class Stage implements EmitsDomainEvents {
55
56
  private actorsOnStage: Map<string, Actor> = this.actorsOnBackstage;
56
57
 
57
58
  /**
58
- * The most recent actor referenced via the {@apilink actor} method
59
+ * The most recent actor referenced via the [`Actor`](https://serenity-js.org/api/core/class/Actor/) method
59
60
  */
60
61
  private actorInTheSpotlight: Actor = undefined;
61
62
 
@@ -85,7 +86,7 @@ export class Stage implements EmitsDomainEvents {
85
86
  }
86
87
 
87
88
  /**
88
- * An alias for {@apilink Stage.actor}
89
+ * An alias for [`Stage.actor`](https://serenity-js.org/api/core/class/Stage/#actor)
89
90
  *
90
91
  * @param name
91
92
  */
@@ -94,7 +95,7 @@ export class Stage implements EmitsDomainEvents {
94
95
  }
95
96
 
96
97
  /**
97
- * Instantiates a new {@apilink Actor} or fetches an existing one
98
+ * Instantiates a new [`Actor`](https://serenity-js.org/api/core/class/Actor/) or fetches an existing one
98
99
  * identified by their name if they've already been instantiated.
99
100
  *
100
101
  * @param name
@@ -131,11 +132,11 @@ export class Stage implements EmitsDomainEvents {
131
132
  }
132
133
 
133
134
  /**
134
- * Returns the last {@apilink Actor} instantiated via {@apilink Stage.actor}.
135
+ * 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
136
  * Useful when you don't can't or choose not to reference the actor by their name.
136
137
  *
137
- * @throws {LogicError}
138
- * If no {@apilink Actor} has been activated yet
138
+ * @throws [`LogicError`](https://serenity-js.org/api/core/class/LogicError/)
139
+ * If no [`Actor`](https://serenity-js.org/api/core/class/Actor/) has been activated yet
139
140
  */
140
141
  theActorInTheSpotlight(): Actor {
141
142
  if (! this.actorInTheSpotlight) {
@@ -146,15 +147,15 @@ export class Stage implements EmitsDomainEvents {
146
147
  }
147
148
 
148
149
  /**
149
- * Returns `true` if there is an {@apilink Actor} in the spotlight, `false` otherwise.
150
+ * Returns `true` if there is an [`Actor`](https://serenity-js.org/api/core/class/Actor/) in the spotlight, `false` otherwise.
150
151
  */
151
152
  theShowHasStarted(): boolean {
152
153
  return !! this.actorInTheSpotlight;
153
154
  }
154
155
 
155
156
  /**
156
- * Configures the Stage to prepare {@apilink Actor|Actors}
157
- * instantiated via {@apilink Stage.actor} using the provided {@apilink Cast}.
157
+ * Configures the Stage to prepare [actors](https://serenity-js.org/api/core/class/Actor/)
158
+ * 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
159
  *
159
160
  * @param actors
160
161
  */
@@ -165,8 +166,8 @@ export class Stage implements EmitsDomainEvents {
165
166
  }
166
167
 
167
168
  /**
168
- * Assigns listeners to be notified of {@apilink DomainEvent|DomainEvents}
169
- * emitted via {@apilink Stage.announce}.s
169
+ * Assigns listeners to be notified of [Serenity/JS domain events](https://serenity-js.org/api/core-events/class/DomainEvent/)
170
+ * emitted via [`Stage.announce`](https://serenity-js.org/api/core/class/Stage/#announce).s
170
171
  *
171
172
  * @param listeners
172
173
  */
@@ -206,22 +207,21 @@ export class Stage implements EmitsDomainEvents {
206
207
 
207
208
  /**
208
209
  * Returns current time. This method should be used whenever
209
- * {@apilink DomainEvent} objects are instantiated by you programmatically.
210
+ * [`DomainEvent`](https://serenity-js.org/api/core-events/class/DomainEvent/) objects are instantiated by you programmatically.
210
211
  */
211
212
  currentTime(): Timestamp {
212
213
  return this.manager.currentTime();
213
214
  }
214
215
 
215
216
  /**
216
- * Generates and remembers a {@apilink CorrelationId}
217
+ * Generates and remembers a `CorrelationId`
217
218
  * for the current scene.
218
219
  *
219
220
  * This method should be used in custom test runner adapters
220
- * when instantiating a {@apilink SceneStarts} event.
221
+ * when instantiating a [SceneStarts](https://serenity-js.org/api/core-events/class/SceneStarts/) event.
221
222
  *
222
223
  * #### Learn more
223
- * - {@apilink Stage.currentSceneId}
224
- * - {@apilink CorrelationId}
224
+ * - [`Stage.currentSceneId`](https://serenity-js.org/api/core/class/Stage/#currentSceneId)
225
225
  */
226
226
  assignNewSceneId(): CorrelationId {
227
227
  // todo: inject an id factory to make it easier to test
@@ -231,24 +231,24 @@ export class Stage implements EmitsDomainEvents {
231
231
  }
232
232
 
233
233
  /**
234
- * Returns the {@apilink CorrelationId} for the current scene.
234
+ * Returns the `CorrelationId` for the current scene.
235
235
  *
236
236
  * #### Learn more
237
- * - {@apilink Stage.assignNewSceneId}
237
+ * - [`Stage.assignNewSceneId`](https://serenity-js.org/api/core/class/Stage/#assignNewSceneId)
238
238
  */
239
239
  currentSceneId(): CorrelationId {
240
240
  return this.currentScene;
241
241
  }
242
242
 
243
243
  /**
244
- * Generates and remembers a {@apilink CorrelationId}
245
- * for the current {@apilink Activity}.
244
+ * Generates and remembers a `CorrelationId`
245
+ * for the current [`Activity`](https://serenity-js.org/api/core/class/Activity/).
246
246
  *
247
247
  * This method should be used in custom test runner adapters
248
- * when instantiating the {@apilink ActivityStarts} event.
248
+ * when instantiating the [ActivityStarts](https://serenity-js.org/api/core-events/class/ActivityStarts/) event.
249
249
  *
250
250
  * #### Learn more
251
- * - {@apilink Stage.currentActivityId}
251
+ * - [`Stage.currentActivityId`](https://serenity-js.org/api/core/class/Stage/#currentActivityId)
252
252
  */
253
253
  assignNewActivityId(activityDetails: ActivityDetails): CorrelationId {
254
254
  this.currentActivity = {
@@ -260,10 +260,10 @@ export class Stage implements EmitsDomainEvents {
260
260
  }
261
261
 
262
262
  /**
263
- * Returns the {@apilink CorrelationId} for the current {@apilink Activity}.
263
+ * Returns the `CorrelationId` for the current [`Activity`](https://serenity-js.org/api/core/class/Activity/).
264
264
  *
265
265
  * #### Learn more
266
- * - {@apilink Stage.assignNewSceneId}
266
+ * - [`Stage.assignNewSceneId`](https://serenity-js.org/api/core/class/Stage/#assignNewSceneId)
267
267
  */
268
268
  currentActivityId(): CorrelationId {
269
269
  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
  *