@serenity-js/core 3.0.0-rc.32 → 3.0.0-rc.34

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 (75) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/lib/config/ClassDescription.d.ts +1 -1
  3. package/lib/config/SerenityConfig.d.ts +1 -1
  4. package/lib/config/SerenityConfig.js +1 -1
  5. package/lib/errors/ListItemNotFoundError.d.ts +20 -0
  6. package/lib/errors/ListItemNotFoundError.d.ts.map +1 -0
  7. package/lib/errors/ListItemNotFoundError.js +30 -0
  8. package/lib/errors/ListItemNotFoundError.js.map +1 -0
  9. package/lib/errors/index.d.ts +1 -0
  10. package/lib/errors/index.d.ts.map +1 -1
  11. package/lib/errors/index.js +3 -1
  12. package/lib/errors/index.js.map +1 -1
  13. package/lib/io/format.d.ts +3 -3
  14. package/lib/io/format.d.ts.map +1 -1
  15. package/lib/io/format.js +3 -3
  16. package/lib/io/format.js.map +1 -1
  17. package/lib/screenplay/Ability.d.ts +1 -1
  18. package/lib/screenplay/Activity.d.ts +2 -3
  19. package/lib/screenplay/Activity.d.ts.map +1 -1
  20. package/lib/screenplay/Activity.js +20 -5
  21. package/lib/screenplay/Activity.js.map +1 -1
  22. package/lib/screenplay/Answerable.d.ts +1 -1
  23. package/lib/screenplay/Answered.d.ts +1 -1
  24. package/lib/screenplay/Interaction.d.ts +1 -1
  25. package/lib/screenplay/Interaction.js +1 -1
  26. package/lib/screenplay/Optional.d.ts +1 -1
  27. package/lib/screenplay/Question.d.ts +3 -3
  28. package/lib/screenplay/Question.d.ts.map +1 -1
  29. package/lib/screenplay/Question.js +13 -2
  30. package/lib/screenplay/Question.js.map +1 -1
  31. package/lib/screenplay/RecursivelyAnswered.d.ts +1 -1
  32. package/lib/screenplay/Task.d.ts +1 -1
  33. package/lib/screenplay/Task.js +1 -1
  34. package/lib/screenplay/WithAnswerableProperties.d.ts +1 -1
  35. package/lib/screenplay/actor/Actor.d.ts +1 -1
  36. package/lib/screenplay/actor/Actor.js +1 -1
  37. package/lib/screenplay/interactions/Wait.js +12 -5
  38. package/lib/screenplay/interactions/Wait.js.map +1 -1
  39. package/lib/screenplay/questions/List.js +3 -3
  40. package/lib/screenplay/questions/List.js.map +1 -1
  41. package/lib/screenplay/questions/MetaQuestion.d.ts +1 -1
  42. package/lib/screenplay/questions/q.d.ts +1 -1
  43. package/lib/screenplay/questions/q.js +1 -1
  44. package/lib/stage/crew/artifact-archiver/ArtifactArchiver.d.ts +3 -2
  45. package/lib/stage/crew/artifact-archiver/ArtifactArchiver.d.ts.map +1 -1
  46. package/lib/stage/crew/artifact-archiver/ArtifactArchiver.js +3 -2
  47. package/lib/stage/crew/artifact-archiver/ArtifactArchiver.js.map +1 -1
  48. package/lib/stage/queues/DomainEventQueue.d.ts +1 -1
  49. package/lib/stage/queues/DomainEventQueue.js +1 -1
  50. package/lib/stage/queues/DomainEventQueues.d.ts +1 -1
  51. package/lib/stage/queues/DomainEventQueues.js +1 -1
  52. package/package.json +6 -6
  53. package/src/config/ClassDescription.ts +1 -1
  54. package/src/config/SerenityConfig.ts +1 -1
  55. package/src/errors/ListItemNotFoundError.ts +35 -0
  56. package/src/errors/index.ts +1 -0
  57. package/src/io/format.ts +3 -3
  58. package/src/screenplay/Ability.ts +1 -1
  59. package/src/screenplay/Activity.ts +9 -5
  60. package/src/screenplay/Answerable.ts +1 -1
  61. package/src/screenplay/Answered.ts +1 -1
  62. package/src/screenplay/Interaction.ts +1 -1
  63. package/src/screenplay/Optional.ts +1 -1
  64. package/src/screenplay/Question.ts +19 -4
  65. package/src/screenplay/RecursivelyAnswered.ts +1 -1
  66. package/src/screenplay/Task.ts +1 -1
  67. package/src/screenplay/WithAnswerableProperties.ts +1 -1
  68. package/src/screenplay/actor/Actor.ts +1 -1
  69. package/src/screenplay/interactions/Wait.ts +21 -13
  70. package/src/screenplay/questions/List.ts +4 -4
  71. package/src/screenplay/questions/MetaQuestion.ts +1 -1
  72. package/src/screenplay/questions/q.ts +1 -1
  73. package/src/stage/crew/artifact-archiver/ArtifactArchiver.ts +3 -2
  74. package/src/stage/queues/DomainEventQueue.ts +1 -1
  75. package/src/stage/queues/DomainEventQueues.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,29 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.0.0-rc.34](https://github.com/serenity-js/serenity-js/compare/v3.0.0-rc.33...v3.0.0-rc.34) (2022-11-21)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **core:** interaction to Wait should fail after the timeout ([5403394](https://github.com/serenity-js/serenity-js/commit/54033946873e20a18ad1076c77f841b3856f2478)), closes [#1339](https://github.com/serenity-js/serenity-js/issues/1339)
12
+
13
+
14
+
15
+
16
+
17
+ # [3.0.0-rc.33](https://github.com/serenity-js/serenity-js/compare/v3.0.0-rc.32...v3.0.0-rc.33) (2022-11-07)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **core:** allow proxying `location` and `description` fields by `QuestionAdapter` ([6761685](https://github.com/serenity-js/serenity-js/commit/6761685d0cd0f775088d514c3eefbaff4431faa1)), closes [#1344](https://github.com/serenity-js/serenity-js/issues/1344)
23
+ * **deps:** update dependency fast-glob to ^3.2.12 ([94854a1](https://github.com/serenity-js/serenity-js/commit/94854a13881b46e11c908f7ff77a5940ac877f26))
24
+
25
+
26
+
27
+
28
+
6
29
  # [3.0.0-rc.32](https://github.com/serenity-js/serenity-js/compare/v3.0.0-rc.31...v3.0.0-rc.32) (2022-10-12)
7
30
 
8
31
 
@@ -47,7 +47,7 @@
47
47
  * For example, `./my-reporter:MyReporter` would be interpreted as a request to load the `MyReporter` type from `./my-reporter` file, located
48
48
  * relative to the [working directory](https://nodejs.org/api/process.html#processcwd) of the current Node.js process.
49
49
  *
50
- * @group Configuration
50
+ * @group Serenity
51
51
  */
52
52
  export declare type ClassDescription = string | // e.g. '@serenity-js/core:StreamReporter'
53
53
  [
@@ -13,7 +13,7 @@ import { ClassDescription } from './ClassDescription';
13
13
  * - {@apilink ClassDescription}
14
14
  * - {@apilink Stage.waitForNextCue}
15
15
  *
16
- * @group Configuration
16
+ * @group Serenity
17
17
  */
18
18
  export declare abstract class SerenityConfig {
19
19
  /**
@@ -12,7 +12,7 @@ exports.SerenityConfig = void 0;
12
12
  * - {@apilink ClassDescription}
13
13
  * - {@apilink Stage.waitForNextCue}
14
14
  *
15
- * @group Configuration
15
+ * @group Serenity
16
16
  */
17
17
  class SerenityConfig {
18
18
  }
@@ -0,0 +1,20 @@
1
+ import { JSONObject } from 'tiny-types';
2
+ import { RuntimeError } from './RuntimeError';
3
+ /**
4
+ * Thrown to indicate that an {@apilink Interaction}, a {@apilink Task} or a test scenario
5
+ * can't be executed due to no items are found in a list.
6
+ *
7
+ * For example, it's not possible to get the first() or the last() item of a list
8
+ * if the list is empty.
9
+ *
10
+ * @group Errors
11
+ */
12
+ export declare class ListItemNotFoundError extends RuntimeError {
13
+ static fromJSON(serialised: JSONObject): ListItemNotFoundError;
14
+ /**
15
+ * @param message - Human-readable description of the error
16
+ * @param [cause] - The root cause of this {@apilink ListItemNotFoundError}, if any
17
+ */
18
+ constructor(message: string, cause?: Error);
19
+ }
20
+ //# sourceMappingURL=ListItemNotFoundError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListItemNotFoundError.d.ts","sourceRoot":"","sources":["../../src/errors/ListItemNotFoundError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;;GAQG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IAEnD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,qBAAqB;IAW9D;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAG7C"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ListItemNotFoundError = void 0;
4
+ const ErrorSerialiser_1 = require("./ErrorSerialiser");
5
+ const RuntimeError_1 = require("./RuntimeError");
6
+ /**
7
+ * Thrown to indicate that an {@apilink Interaction}, a {@apilink Task} or a test scenario
8
+ * can't be executed due to no items are found in a list.
9
+ *
10
+ * For example, it's not possible to get the first() or the last() item of a list
11
+ * if the list is empty.
12
+ *
13
+ * @group Errors
14
+ */
15
+ class ListItemNotFoundError extends RuntimeError_1.RuntimeError {
16
+ static fromJSON(serialised) {
17
+ const error = new ListItemNotFoundError(serialised.message, ErrorSerialiser_1.ErrorSerialiser.deserialise(serialised.cause));
18
+ error.stack = serialised.stack;
19
+ return error;
20
+ }
21
+ /**
22
+ * @param message - Human-readable description of the error
23
+ * @param [cause] - The root cause of this {@apilink ListItemNotFoundError}, if any
24
+ */
25
+ constructor(message, cause) {
26
+ super(ListItemNotFoundError, message, cause);
27
+ }
28
+ }
29
+ exports.ListItemNotFoundError = ListItemNotFoundError;
30
+ //# sourceMappingURL=ListItemNotFoundError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListItemNotFoundError.js","sourceRoot":"","sources":["../../src/errors/ListItemNotFoundError.ts"],"names":[],"mappings":";;;AAEA,uDAAoD;AACpD,iDAA8C;AAE9C;;;;;;;;GAQG;AACH,MAAa,qBAAsB,SAAQ,2BAAY;IAEnD,MAAM,CAAC,QAAQ,CAAC,UAAsB;QAClC,MAAM,KAAK,GAAG,IAAI,qBAAqB,CACnC,UAAU,CAAC,OAAiB,EAC5B,iCAAe,CAAC,WAAW,CAAC,UAAU,CAAC,KAA2B,CAAC,CACtE,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,KAAe,CAAC;QAEzC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,YAAY,OAAe,EAAE,KAAa;QACtC,KAAK,CAAC,qBAAqB,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;CACJ;AApBD,sDAoBC"}
@@ -3,6 +3,7 @@ export { ConfigurationError } from './ConfigurationError';
3
3
  export { ErrorSerialiser } from './ErrorSerialiser';
4
4
  export { ErrorStackParser } from './ErrorStackParser';
5
5
  export { ImplementationPendingError } from './ImplementationPendingError';
6
+ export { ListItemNotFoundError } from './ListItemNotFoundError';
6
7
  export { LogicError } from './LogicError';
7
8
  export { RuntimeError } from './RuntimeError';
8
9
  export { TestCompromisedError } from './TestCompromisedError';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UnknownError = exports.TimeoutExpiredError = exports.TestCompromisedError = exports.RuntimeError = exports.LogicError = exports.ImplementationPendingError = exports.ErrorStackParser = exports.ErrorSerialiser = exports.ConfigurationError = exports.AssertionError = void 0;
3
+ exports.UnknownError = exports.TimeoutExpiredError = exports.TestCompromisedError = exports.RuntimeError = exports.LogicError = exports.ListItemNotFoundError = exports.ImplementationPendingError = exports.ErrorStackParser = exports.ErrorSerialiser = exports.ConfigurationError = exports.AssertionError = void 0;
4
4
  const AssertionError_1 = require("./AssertionError");
5
5
  const ConfigurationError_1 = require("./ConfigurationError");
6
6
  const ErrorSerialiser_1 = require("./ErrorSerialiser");
@@ -20,6 +20,8 @@ var ErrorStackParser_1 = require("./ErrorStackParser");
20
20
  Object.defineProperty(exports, "ErrorStackParser", { enumerable: true, get: function () { return ErrorStackParser_1.ErrorStackParser; } });
21
21
  var ImplementationPendingError_2 = require("./ImplementationPendingError");
22
22
  Object.defineProperty(exports, "ImplementationPendingError", { enumerable: true, get: function () { return ImplementationPendingError_2.ImplementationPendingError; } });
23
+ var ListItemNotFoundError_1 = require("./ListItemNotFoundError");
24
+ Object.defineProperty(exports, "ListItemNotFoundError", { enumerable: true, get: function () { return ListItemNotFoundError_1.ListItemNotFoundError; } });
23
25
  var LogicError_2 = require("./LogicError");
24
26
  Object.defineProperty(exports, "LogicError", { enumerable: true, get: function () { return LogicError_2.LogicError; } });
25
27
  var RuntimeError_1 = require("./RuntimeError");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAClD,6DAA0D;AAC1D,uDAAoD;AACpD,6EAA0E;AAC1E,6CAA0C;AAC1C,iEAA8D;AAC9D,+DAA4D;AAC5D,iDAA8C;AAE9C,iCAAe,CAAC,kBAAkB,CAC9B,+BAAc,EACd,uCAAkB,EAClB,uDAA0B,EAC1B,uBAAU,EACV,2CAAoB,EACpB,yCAAmB,EACnB,2BAAY,CACf,CAAC;AAEF,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAC3B,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,2EAA0E;AAAjE,wIAAA,0BAA0B,OAAA;AACnC,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,6DAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAC5B,+CAA8C;AAArC,4GAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAClD,6DAA0D;AAC1D,uDAAoD;AACpD,6EAA0E;AAC1E,6CAA0C;AAC1C,iEAA8D;AAC9D,+DAA4D;AAC5D,iDAA8C;AAE9C,iCAAe,CAAC,kBAAkB,CAC9B,+BAAc,EACd,uCAAkB,EAClB,uDAA0B,EAC1B,uBAAU,EACV,2CAAoB,EACpB,yCAAmB,EACnB,2BAAY,CACf,CAAC;AAEF,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAC3B,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,2EAA0E;AAAjE,wIAAA,0BAA0B,OAAA;AACnC,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAC9B,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,6DAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAC5B,+CAA8C;AAArC,4GAAA,YAAY,OAAA"}
@@ -54,13 +54,13 @@ import { Answerable } from '../screenplay';
54
54
  * @param config
55
55
  * `markQuestions`: boolean - if set to true, descriptions of questions passed in as arguments will be surrounded with double angled brackets, i.e. `<<description>>`
56
56
  *
57
- * @group Answerables
57
+ * @group Questions
58
58
  */
59
59
  export declare function format(config: {
60
60
  markQuestions: boolean;
61
61
  }): (templates: TemplateStringsArray, ...placeholders: Array<Answerable<any>>) => string;
62
- /** @group Answerables */
62
+ /** @group Questions */
63
63
  export declare const f: (templates: TemplateStringsArray, ...placeholders: Array<Answerable<any>>) => string;
64
- /** @group Answerables */
64
+ /** @group Questions */
65
65
  export declare const d: (templates: TemplateStringsArray, ...placeholders: Array<Answerable<any>>) => string;
66
66
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/io/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE;IAAE,aAAa,EAAE,OAAO,CAAA;CAAE,GAAG,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAS/I;AAED,yBAAyB;AACzB,eAAO,MAAM,CAAC,cAZ0D,oBAAoB,mBAAmB,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,MAY1F,CAAC;AAEjD,yBAAyB;AACzB,eAAO,MAAM,CAAC,cAf0D,oBAAoB,mBAAmB,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,MAezF,CAAC"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/io/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE;IAAE,aAAa,EAAE,OAAO,CAAA;CAAE,GAAG,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAS/I;AAED,uBAAuB;AACvB,eAAO,MAAM,CAAC,cAZ0D,oBAAoB,mBAAmB,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,MAY1F,CAAC;AAEjD,uBAAuB;AACvB,eAAO,MAAM,CAAC,cAf0D,oBAAoB,mBAAmB,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,MAezF,CAAC"}
package/lib/io/format.js CHANGED
@@ -57,7 +57,7 @@ const inspected_1 = require("./inspected");
57
57
  * @param config
58
58
  * `markQuestions`: boolean - if set to true, descriptions of questions passed in as arguments will be surrounded with double angled brackets, i.e. `<<description>>`
59
59
  *
60
- * @group Answerables
60
+ * @group Questions
61
61
  */
62
62
  function format(config) {
63
63
  return (templates, ...placeholders) => {
@@ -70,8 +70,8 @@ function format(config) {
70
70
  };
71
71
  }
72
72
  exports.format = format;
73
- /** @group Answerables */
73
+ /** @group Questions */
74
74
  exports.f = format({ markQuestions: true });
75
- /** @group Answerables */
75
+ /** @group Questions */
76
76
  exports.d = format({ markQuestions: false });
77
77
  //# sourceMappingURL=format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/io/format.ts"],"names":[],"mappings":";;;AACA,2CAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,SAAgB,MAAM,CAAC,MAAkC;IACrD,OAAO,CAAC,SAA+B,EAAE,GAAG,YAAoC,EAAU,EAAE;QACxF,OAAO,SAAS;aACX,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM;YACzC,CAAC,CAAC,CAAE,QAAQ,EAAE,IAAA,qBAAS,EAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAE;YACjG,CAAC,CAAC,CAAE,QAAQ,CAAE,CAAC;aAClB,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACzC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAA;AACL,CAAC;AATD,wBASC;AAED,yBAAyB;AACZ,QAAA,CAAC,GAAG,MAAM,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AAEjD,yBAAyB;AACZ,QAAA,CAAC,GAAG,MAAM,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/io/format.ts"],"names":[],"mappings":";;;AACA,2CAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,SAAgB,MAAM,CAAC,MAAkC;IACrD,OAAO,CAAC,SAA+B,EAAE,GAAG,YAAoC,EAAU,EAAE;QACxF,OAAO,SAAS;aACX,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM;YACzC,CAAC,CAAC,CAAE,QAAQ,EAAE,IAAA,qBAAS,EAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAE;YACjG,CAAC,CAAC,CAAE,QAAQ,CAAE,CAAC;aAClB,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACzC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAA;AACL,CAAC;AATD,wBASC;AAED,uBAAuB;AACV,QAAA,CAAC,GAAG,MAAM,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AAEjD,uBAAuB;AACV,QAAA,CAAC,GAAG,MAAM,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC"}
@@ -157,7 +157,7 @@
157
157
  * - {@apilink CallAnApi}
158
158
  * - {@apilink TakeNotes}
159
159
  *
160
- * @group Screenplay Pattern
160
+ * @group Abilities
161
161
  */
162
162
  export interface Ability {
163
163
  }
@@ -9,11 +9,10 @@ import { AnswersQuestions, PerformsActivities, UsesAbilities } from './actor';
9
9
  * - {@apilink PerformsActivities}
10
10
  * - [Command design pattern on Wikipedia](https://en.wikipedia.org/wiki/Command_pattern)
11
11
  *
12
- * @group Screenplay Pattern
12
+ * @group Activities
13
13
  */
14
14
  export declare abstract class Activity {
15
- protected readonly description: string;
16
- private readonly location;
15
+ #private;
17
16
  private static errorStackParser;
18
17
  constructor(description: string, location?: FileSystemLocation);
19
18
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Activity.d.ts","sourceRoot":"","sources":["../../src/screenplay/Activity.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAQ,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE9E;;;;;;;;;;GAUG;AACH,8BAAsB,QAAQ;IAKtB,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAJ7B,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAA0B;gBAGlC,WAAW,EAAE,MAAM,EACrB,QAAQ,GAAE,kBAA+C;IAI9E;;OAEG;IACH,qBAAqB,IAAI,kBAAkB;IAI3C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,GAAG,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAE9F;;;;;;;OAOG;IACH,QAAQ,IAAI,MAAM;IAIlB,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB;CAwB3E"}
1
+ {"version":3,"file":"Activity.d.ts","sourceRoot":"","sources":["../../src/screenplay/Activity.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAQ,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE9E;;;;;;;;;;GAUG;AACH,8BAAsB,QAAQ;;IAE1B,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAA0B;gBAKrD,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,kBAA+C;IAM7D;;OAEG;IACH,qBAAqB,IAAI,kBAAkB;IAI3C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,GAAG,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAE9F;;;;;;;OAOG;IACH,QAAQ,IAAI,MAAM;IAIlB,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB;CAwB3E"}
@@ -1,7 +1,19 @@
1
1
  "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
+ };
2
13
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
14
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
15
  };
16
+ var _Activity_description, _Activity_location;
5
17
  Object.defineProperty(exports, "__esModule", { value: true });
6
18
  exports.Activity = void 0;
7
19
  const path_1 = __importDefault(require("path"));
@@ -16,18 +28,20 @@ const io_1 = require("../io");
16
28
  * - {@apilink PerformsActivities}
17
29
  * - [Command design pattern on Wikipedia](https://en.wikipedia.org/wiki/Command_pattern)
18
30
  *
19
- * @group Screenplay Pattern
31
+ * @group Activities
20
32
  */
21
33
  class Activity {
22
34
  constructor(description, location = Activity.callerLocation(5)) {
23
- this.description = description;
24
- this.location = location;
35
+ _Activity_description.set(this, void 0);
36
+ _Activity_location.set(this, void 0);
37
+ __classPrivateFieldSet(this, _Activity_description, description, "f");
38
+ __classPrivateFieldSet(this, _Activity_location, location, "f");
25
39
  }
26
40
  /**
27
41
  * Returns the location where this {@apilink Activity} was instantiated.
28
42
  */
29
43
  instantiationLocation() {
30
- return this.location;
44
+ return __classPrivateFieldGet(this, _Activity_location, "f");
31
45
  }
32
46
  /**
33
47
  * Generates a human-friendly description to be used when reporting this Activity.
@@ -38,7 +52,7 @@ class Activity {
38
52
  * For example, `#actor clicks on a button` becomes `Wendy clicks on a button`.
39
53
  */
40
54
  toString() {
41
- return this.description;
55
+ return __classPrivateFieldGet(this, _Activity_description, "f");
42
56
  }
43
57
  static callerLocation(frameOffset) {
44
58
  try {
@@ -59,5 +73,6 @@ class Activity {
59
73
  }
60
74
  }
61
75
  exports.Activity = Activity;
76
+ _Activity_description = new WeakMap(), _Activity_location = new WeakMap();
62
77
  Activity.errorStackParser = new errors_1.ErrorStackParser();
63
78
  //# sourceMappingURL=Activity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Activity.js","sourceRoot":"","sources":["../../src/screenplay/Activity.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,sCAA6C;AAC7C,8BAAiD;AAGjD;;;;;;;;;;GAUG;AACH,MAAsB,QAAQ;IAI1B,YACuB,WAAmB,EACrB,WAA+B,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;QADvD,gBAAW,GAAX,WAAW,CAAQ;QACrB,aAAQ,GAAR,QAAQ,CAAiD;IAE9E,CAAC;IAED;;OAEG;IACH,qBAAqB;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAeD;;;;;;;OAOG;IACH,QAAQ;QACJ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAES,MAAM,CAAC,cAAc,CAAC,WAAmB;QAC/C,IAAI;YACA,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;SAC/B;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,4BAA4B,GAAG,IAAI,MAAM,CAAC,cAAc,GAAG,IAAI,GAAG,cAAI,CAAC,GAAG,GAAG,iBAAiB,GAAE,IAAI,GAAG,cAAI,CAAC,GAAG,GAAE,GAAG,CAAC,CAAC;YAE5H,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAE,CAC5C,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAa,iBAAiB;iBACjE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA,IAAU,UAAU;gBAC1D,4BAA4B,CAAC,IAAI,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,CAAI,iDAAiD;aAC1G,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC5E,iGAAiG;YACjG,MAAM,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAE3E,OAAO,IAAI,uBAAkB,CACzB,SAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EACnC,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,YAAY,CAC/B,CAAC;SACL;IACL,CAAC;;AAjEL,4BAkEC;AAhEkB,yBAAgB,GAAG,IAAI,yBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"Activity.js","sourceRoot":"","sources":["../../src/screenplay/Activity.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAExB,sCAA6C;AAC7C,8BAAiD;AAGjD;;;;;;;;;;GAUG;AACH,MAAsB,QAAQ;IAM1B,YACI,WAAmB,EACnB,WAA+B,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;QAL7D,wCAA8B;QAC9B,qCAAuC;QAMnC,uBAAA,IAAI,yBAAgB,WAAW,MAAA,CAAC;QAChC,uBAAA,IAAI,sBAAa,QAAQ,MAAA,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,qBAAqB;QACjB,OAAO,uBAAA,IAAI,0BAAU,CAAC;IAC1B,CAAC;IAeD;;;;;;;OAOG;IACH,QAAQ;QACJ,OAAO,uBAAA,IAAI,6BAAa,CAAC;IAC7B,CAAC;IAES,MAAM,CAAC,cAAc,CAAC,WAAmB;QAC/C,IAAI;YACA,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;SAC/B;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,4BAA4B,GAAG,IAAI,MAAM,CAAC,cAAc,GAAG,IAAI,GAAG,cAAI,CAAC,GAAG,GAAG,iBAAiB,GAAE,IAAI,GAAG,cAAI,CAAC,GAAG,GAAE,GAAG,CAAC,CAAC;YAE5H,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAE,CAC5C,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAa,iBAAiB;iBACjE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA,IAAU,UAAU;gBAC1D,4BAA4B,CAAC,IAAI,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,CAAI,iDAAiD;aAC1G,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC5E,iGAAiG;YACjG,MAAM,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAE3E,OAAO,IAAI,uBAAkB,CACzB,SAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EACnC,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,YAAY,CAC/B,CAAC;SACL;IACL,CAAC;;AArEL,4BAsEC;;AApEkB,yBAAgB,GAAG,IAAI,yBAAgB,EAAE,CAAC"}
@@ -3,7 +3,7 @@ import { Question } from './Question';
3
3
  * A union type that provides a convenient way to represent any value
4
4
  * that can be resolved by {@apilink Actor.answer}.
5
5
  *
6
- * @group Answerables
6
+ * @group Questions
7
7
  */
8
8
  export declare type Answerable<T> = Question<Promise<T>> | Question<T> | Promise<T> | T;
9
9
  //# sourceMappingURL=Answerable.d.ts.map
@@ -7,7 +7,7 @@ import { Question } from './Question';
7
7
  * Answered<Answerable<T>> === T
8
8
  * ```
9
9
  *
10
- * @group Answerables
10
+ * @group Questions
11
11
  */
12
12
  export declare type Answered<T> = T extends null | undefined ? T : T extends Question<Promise<infer A>> | Question<infer A> | Promise<infer A> ? Awaited<A> : T;
13
13
  //# sourceMappingURL=Answered.d.ts.map
@@ -40,7 +40,7 @@ import { AnswersQuestions, CollectsArtifacts, UsesAbilities } from './actor';
40
40
  * )
41
41
  * ```
42
42
  *
43
- * @group Screenplay Pattern
43
+ * @group Activities
44
44
  */
45
45
  export declare abstract class Interaction extends Activity {
46
46
  /**
@@ -42,7 +42,7 @@ const Activity_1 = require("./Activity");
42
42
  * )
43
43
  * ```
44
44
  *
45
- * @group Screenplay Pattern
45
+ * @group Activities
46
46
  */
47
47
  class Interaction extends Activity_1.Activity {
48
48
  /**
@@ -14,7 +14,7 @@ import { Answerable } from './Answerable';
14
14
  * and if all the links of the property chain leading to the entry of interest exist too
15
15
  * (so `books` is present, and so is `books[0]`, `books[0].author`, `books[0].author.name`).
16
16
  *
17
- * @group Answerables
17
+ * @group Questions
18
18
  */
19
19
  export interface Optional {
20
20
  /**
@@ -94,7 +94,7 @@ import { WithAnswerableProperties } from './WithAnswerableProperties';
94
94
  * - {@apilink Ability}
95
95
  * - {@apilink QuestionAdapter}
96
96
  *
97
- * @group Screenplay Pattern
97
+ * @group Questions
98
98
  */
99
99
  export declare abstract class Question<T> {
100
100
  /**
@@ -223,7 +223,7 @@ declare global {
223
223
  * - both methods and fields of the wrapped object can be used as {@apilink Question|questions} or {@apilink Interactions|interactions}
224
224
  * - method parameters of the wrapped object will accept {@apilink Answerable|Answerable<T>}
225
225
  *
226
- * @group Answerables
226
+ * @group Questions
227
227
  */
228
228
  export declare type QuestionAdapterFieldDecorator<Original_Type> = {
229
229
  [Field in keyof Omit<Original_Type, keyof QuestionStatement<Original_Type>>]: Original_Type[Field] extends (...args: infer OriginalParameters) => infer OriginalMethodResult ? (...args: {
@@ -236,7 +236,7 @@ export declare type QuestionAdapterFieldDecorator<Original_Type> = {
236
236
  * {@apilink QuestionAdapter} proxies the methods and fields of the wrapped object recursively,
237
237
  * allowing them to be used as either a {@apilink Question} or an {@apilink Interaction}.
238
238
  *
239
- * @group Answerables
239
+ * @group Questions
240
240
  */
241
241
  export declare type QuestionAdapter<T> = Question<Promise<T>> & Interaction & {
242
242
  isPresent(): Question<Promise<boolean>>;
@@ -1 +1 @@
1
- {"version":3,"file":"Question.d.ts","sourceRoot":"","sources":["../../src/screenplay/Question.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Question.d.ts","sourceRoot":"","sources":["../../src/screenplay/Question.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2FG;AACH,8BAAsB,QAAQ,CAAC,CAAC;IAE5B;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAI5K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6DG;IACH,MAAM,CAAC,UAAU,CAAC,WAAW,SAAS,MAAM,EACxC,MAAM,EAAE,UAAU,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,EACzD,GAAG,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAChF,eAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAkBpD;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,GAAG,aAAa,IAAI,QAAQ,CAAC,CAAC,CAAC;IAK3E,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAiFzF,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAgB/B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAgBhC;;OAEG;IACH,QAAQ,CAAC,QAAQ,IAAI,MAAM;IAE3B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAE3C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,GAAG,CAAC;IAE/D;;;;;;;;;OASG;IACI,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;CAMpF;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,gBAAgB;QACtB,KAAI,WAAW,SAAS,MAAM,EAAE,WAAW,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;KACrI;CACJ;AAID;;;;;;GAMG;AACH,oBAAY,6BAA6B,CAAC,aAAa,IAAI;KACtD,KAAK,IAAI,MAAM,IAAI,CAAC,aAAa,EAAE,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC,GAE3E,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,kBAAkB,KAAK,MAAM,oBAAoB,GAExF,CAAC,GAAG,IAAI,EAAE;SAAG,CAAC,IAAI,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,KACvF,eAAe,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,GAEhD,aAAa,CAAC,KAAK,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAC7E,eAAe,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,GAC9C,GAAG;CAChB,CAAC;AAGF;;;;;;;GAOG;AACH,oBAAY,eAAe,CAAC,CAAC,IACvB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GACpB,WAAW,GACX;IAAE,SAAS,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;CAAE,GAC5C,6BAA6B,CAAC,CAAC,CAAC,CAAC;AAEvC,eAAe;AACf,cAAM,iBAAiB,CAAC,WAAW,CAAE,SAAQ,WAAY,YAAW,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,QAAQ;IAGpG,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADb,OAAO,EAAE,MAAM,EACN,IAAI,EAAE,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,EAAE,GAAG,UAAU,OAAA,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW;IAKzH;;;OAGG;IACH,SAAS,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAIjC,UAAU,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAIzE,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKzB,QAAQ,IAAI,MAAM;IAI3B,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;CAWzF"}
@@ -95,7 +95,7 @@ const Interaction_1 = require("./Interaction");
95
95
  * - {@apilink Ability}
96
96
  * - {@apilink QuestionAdapter}
97
97
  *
98
- * @group Screenplay Pattern
98
+ * @group Questions
99
99
  */
100
100
  class Question {
101
101
  /**
@@ -210,7 +210,18 @@ class Question {
210
210
  };
211
211
  }
212
212
  if (key in target) {
213
- return Reflect.get(target, key);
213
+ const field = Reflect.get(target, key);
214
+ const isFunction = typeof field == 'function';
215
+ const mustAllowProxyChaining = isFunction
216
+ && target instanceof QuestionStatement
217
+ && key === 'describedAs'; // `describedAs` returns `this`, which must be bound to proxy itself to allow proxy chaining
218
+ if (mustAllowProxyChaining) {
219
+ // see https://javascript.info/proxy#proxy-limitations
220
+ return field.bind(receiver);
221
+ }
222
+ return isFunction
223
+ ? field.bind(target)
224
+ : field;
214
225
  }
215
226
  if (key === 'then') {
216
227
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"Question.js","sourceRoot":"","sources":["../../src/screenplay/Question.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Question.js","sourceRoot":"","sources":["../../src/screenplay/Question.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ import { Question } from './Question';
32
32
  * // RequestConfiguration === RecursivelyAnswered<WithAnswerableProperties<RequestConfiguration>>
33
33
  * ```
34
34
  *
35
- * @group Answerables
35
+ * @group Questions
36
36
  */
37
37
  export declare type RecursivelyAnswered<T> = T extends null | undefined ? T : T extends Question<Promise<infer A>> | Question<infer A> | Promise<infer A> ? RecursivelyAnswered<Awaited<A>> : T extends object ? {
38
38
  [K in keyof T]: RecursivelyAnswered<T[K]>;
@@ -51,7 +51,7 @@ import { PerformsActivities } from './actor';
51
51
  * - {@apilink Activity}
52
52
  * - {@apilink Actor}
53
53
  *
54
- * @group Screenplay Pattern
54
+ * @group Activities
55
55
  */
56
56
  export declare abstract class Task extends Activity {
57
57
  /**
@@ -54,7 +54,7 @@ const Activity_1 = require("./Activity");
54
54
  * - {@apilink Activity}
55
55
  * - {@apilink Actor}
56
56
  *
57
- * @group Screenplay Pattern
57
+ * @group Activities
58
58
  */
59
59
  class Task extends Activity_1.Activity {
60
60
  /**
@@ -25,7 +25,7 @@ import { Question } from './Question';
25
25
  * const answer: RequestConfiguration = await actorCalled('Annie').answer(question);
26
26
  * ```
27
27
  *
28
- * @group Answerables
28
+ * @group Questions
29
29
  */
30
30
  export declare type WithAnswerableProperties<T> = T extends null | undefined ? T : T extends Question<Promise<infer A>> | Question<infer A> | Promise<infer A> ? Answerable<A> : T extends object ? {
31
31
  [K in keyof T]: WithAnswerableProperties<T[K]>;
@@ -16,7 +16,7 @@ import { UsesAbilities } from './UsesAbilities';
16
16
  * - {@apilink Cast}
17
17
  * - {@apilink Stage}
18
18
  *
19
- * @group Screenplay Pattern
19
+ * @group Actors
20
20
  */
21
21
  export declare class Actor implements PerformsActivities, UsesAbilities, CanHaveAbilities<Actor>, AnswersQuestions, CollectsArtifacts {
22
22
  readonly name: string;
@@ -15,7 +15,7 @@ const Question_1 = require("../Question");
15
15
  * - {@apilink Cast}
16
16
  * - {@apilink Stage}
17
17
  *
18
- * @group Screenplay Pattern
18
+ * @group Actors
19
19
  */
20
20
  class Actor {
21
21
  // todo: Actor should have execution strategies
@@ -278,20 +278,27 @@ function waitUntil(expectation, pollingInterval) {
278
278
  let delay;
279
279
  let pollingActive = false;
280
280
  async function poll() {
281
+ async function nextPollingInterval() {
282
+ if (pollingActive) {
283
+ delay = waitFor(pollingInterval);
284
+ await delay.start();
285
+ await poll();
286
+ }
287
+ }
281
288
  try {
282
289
  const expectationIsMet = await expectation();
283
290
  if (expectationIsMet) {
284
291
  delay === null || delay === void 0 ? void 0 : delay.stop();
285
292
  return;
286
293
  }
287
- if (pollingActive) {
288
- delay = waitFor(pollingInterval);
289
- await delay.start();
290
- await poll();
291
- }
294
+ await nextPollingInterval();
292
295
  }
293
296
  catch (error) {
294
297
  delay === null || delay === void 0 ? void 0 : delay.stop();
298
+ if (error instanceof errors_1.ListItemNotFoundError) {
299
+ await nextPollingInterval();
300
+ return;
301
+ }
295
302
  throw error;
296
303
  }
297
304
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Wait.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/Wait.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Wait.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/Wait.ts"],"names":[],"mappings":"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"}