@serenity-js/core 3.0.1 → 3.1.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
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.1.1](https://github.com/serenity-js/serenity-js/compare/v3.1.0...v3.1.1) (2023-04-05)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **core:** ensure Wait.for(..) is not terminated prematurely by interactionTimeout ([f1a94e2](https://github.com/serenity-js/serenity-js/commit/f1a94e259942725f2603cc33cd9772478e825dde)), closes [#1604](https://github.com/serenity-js/serenity-js/issues/1604)
12
+
13
+
14
+
15
+
16
+
17
+ # [3.1.0](https://github.com/serenity-js/serenity-js/compare/v3.0.1...v3.1.0) (2023-04-02)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **core:** replaced dependency on depracated cuid with cuid2 ([0417f1c](https://github.com/serenity-js/serenity-js/commit/0417f1c2c673dce7eaabe0ffae76311757e3b3ee))
23
+
24
+
25
+
26
+
27
+
6
28
  ## [3.0.1](https://github.com/serenity-js/serenity-js/compare/v3.0.0...v3.0.1) (2023-03-25)
7
29
 
8
30
  **Note:** Version bump only for package @serenity-js/core
@@ -22,12 +22,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  exports.FileSystem = void 0;
30
- const cuid_1 = __importDefault(require("cuid"));
27
+ const cuid2_1 = require("@paralleldrive/cuid2");
31
28
  const gracefulFS = __importStar(require("graceful-fs"));
32
29
  const nodeOS = __importStar(require("os"));
33
30
  const util_1 = require("util");
@@ -100,7 +97,7 @@ class FileSystem {
100
97
  return rename(source.value, destination.value);
101
98
  }
102
99
  tempFilePath(prefix = '', suffix = '.tmp') {
103
- return Path_1.Path.from(this.fs.realpathSync(this.os.tmpdir()), `${prefix}${(0, cuid_1.default)()}${suffix}`);
100
+ return Path_1.Path.from(this.fs.realpathSync(this.os.tmpdir()), `${prefix}${(0, cuid2_1.createId)()}${suffix}`);
104
101
  }
105
102
  write(path, data, encoding) {
106
103
  return new Promise((resolve, reject) => {
@@ -1 +1 @@
1
- {"version":3,"file":"FileSystem.js","sourceRoot":"","sources":["../../src/io/FileSystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileSystem.js","sourceRoot":"","sources":["../../src/io/FileSystem.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
- declare const CorrelationId_base: new (_: string) => {
2
- value: string;
3
- } & import("tiny-types").TinyType;
4
- export declare class CorrelationId extends CorrelationId_base {
1
+ import { TinyType } from 'tiny-types';
2
+ export declare class CorrelationId extends TinyType {
3
+ readonly value: string;
5
4
  static fromJSON(v: string): CorrelationId;
6
5
  static create(): CorrelationId;
6
+ constructor(value: string);
7
7
  }
8
- export {};
9
8
  //# sourceMappingURL=CorrelationId.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CorrelationId.d.ts","sourceRoot":"","sources":["../../src/model/CorrelationId.ts"],"names":[],"mappings":";;;AAGA,qBAAa,aAAc,SAAQ,kBAAoB;IACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,aAAa;IAIzC,MAAM,CAAC,MAAM,IAAI,aAAa;CAGjC"}
1
+ {"version":3,"file":"CorrelationId.d.ts","sourceRoot":"","sources":["../../src/model/CorrelationId.ts"],"names":[],"mappings":"AACA,OAAO,EAAkC,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtE,qBAAa,aAAc,SAAQ,QAAQ;aASX,KAAK,EAAE,MAAM;IARzC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,aAAa;IAIzC,MAAM,CAAC,MAAM,IAAI,aAAa;gBAIF,KAAK,EAAE,MAAM;CAI5C"}
@@ -1,18 +1,23 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.CorrelationId = void 0;
7
- const cuid_1 = __importDefault(require("cuid"));
4
+ const cuid2_1 = require("@paralleldrive/cuid2");
8
5
  const tiny_types_1 = require("tiny-types");
9
- class CorrelationId extends (0, tiny_types_1.TinyTypeOf)() {
6
+ class CorrelationId extends tiny_types_1.TinyType {
10
7
  static fromJSON(v) {
11
8
  return new CorrelationId(v);
12
9
  }
13
10
  static create() {
14
- return new CorrelationId((0, cuid_1.default)());
11
+ return new CorrelationId((0, cuid2_1.createId)());
12
+ }
13
+ constructor(value) {
14
+ super();
15
+ this.value = value;
16
+ (0, tiny_types_1.ensure)(this.constructor.name, value, (0, tiny_types_1.or)(isACuid(), (0, tiny_types_1.matches)(/^[\dA-Za-z-]+$/)));
15
17
  }
16
18
  }
17
19
  exports.CorrelationId = CorrelationId;
20
+ function isACuid() {
21
+ return tiny_types_1.Predicate.to(`be a Cuid`, (value) => (0, cuid2_1.isCuid)(value));
22
+ }
18
23
  //# sourceMappingURL=CorrelationId.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CorrelationId.js","sourceRoot":"","sources":["../../src/model/CorrelationId.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,2CAAwC;AAExC,MAAa,aAAc,SAAQ,IAAA,uBAAU,GAAU;IACnD,MAAM,CAAC,QAAQ,CAAC,CAAS;QACrB,OAAO,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,MAAM;QACT,OAAO,IAAI,aAAa,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;IACrC,CAAC;CACJ;AARD,sCAQC"}
1
+ {"version":3,"file":"CorrelationId.js","sourceRoot":"","sources":["../../src/model/CorrelationId.ts"],"names":[],"mappings":";;;AAAA,gDAAwD;AACxD,2CAAsE;AAEtE,MAAa,aAAc,SAAQ,qBAAQ;IACvC,MAAM,CAAC,QAAQ,CAAC,CAAS;QACrB,OAAO,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,MAAM;QACT,OAAO,IAAI,aAAa,CAAC,IAAA,gBAAQ,GAAE,CAAC,CAAC;IACzC,CAAC;IAED,YAA4B,KAAa;QACrC,KAAK,EAAE,CAAC;QADgB,UAAK,GAAL,KAAK,CAAQ;QAErC,IAAA,mBAAM,EAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,IAAA,eAAE,EAAC,OAAO,EAAE,EAAE,IAAA,oBAAO,EAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;CACJ;AAbD,sCAaC;AAED,SAAS,OAAO;IACZ,OAAO,sBAAS,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC,CAAC;AACvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduleWork.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/time/abilities/ScheduleWork.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,iBAAiB,EAAa,MAAM,WAAW,CAAC;AAE3F;;;;;;;;;GASG;AACH,qBAAa,YAAa,SAAQ,OAAQ,YAAW,aAAa,EAAE,WAAW;IAE3E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;gBAE1B,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ;IAKtD,UAAU,IAAI,IAAI;IAIlB,aAAa,IAAI,OAAO;IAIxB;;;OAGG;IACH,WAAW,CAAC,MAAM,EACd,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,EACjC,MAAM,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,GACnC,OAAO,CAAC,MAAM,CAAC;IAIlB,OAAO,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvC,OAAO,IAAI,IAAI;CAGlB"}
1
+ {"version":3,"file":"ScheduleWork.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/time/abilities/ScheduleWork.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,iBAAiB,EAAa,MAAM,WAAW,CAAC;AAE3F;;;;;;;;;GASG;AACH,qBAAa,YAAa,SAAQ,OAAQ,YAAW,aAAa,EAAE,WAAW;IAE3E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;gBAE1B,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ;IAKtD,UAAU,IAAI,IAAI;IAIlB,aAAa,IAAI,OAAO;IAIxB;;;OAGG;IACH,WAAW,CAAC,MAAM,EACd,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,EACjC,MAAM,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,GACnC,OAAO,CAAC,MAAM,CAAC;IAIlB,OAAO,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC,OAAO,IAAI,IAAI;CAGlB"}
@@ -32,10 +32,7 @@ class ScheduleWork extends abilities_1.Ability {
32
32
  return this.scheduler.repeatUntil(callback, limits);
33
33
  }
34
34
  waitFor(delay) {
35
- this.scheduler.start();
36
- return this.scheduler.after(delay, () => {
37
- // do nothing
38
- });
35
+ return this.scheduler.waitFor(delay);
39
36
  }
40
37
  discard() {
41
38
  this.scheduler.stop();
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduleWork.js","sourceRoot":"","sources":["../../../../src/screenplay/time/abilities/ScheduleWork.ts"],"names":[],"mappings":";;;AAAA,+CAAsE;AACtE,sCAA2F;AAE3F;;;;;;;;;GASG;AACH,MAAa,YAAa,SAAQ,mBAAO;IAIrC,YAAY,KAAY,EAAE,kBAA4B;QAClD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,GAAG,IAAI,kBAAS,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAC9D,CAAC;IAED,UAAU;QACN,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,WAAW,CACP,QAAiC,EACjC,MAAkC;QAElC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,KAAe;QACnB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE;YACpC,aAAa;QACjB,CAAC,CAAC,CAAA;IACN,CAAC;IAED,OAAO;QACH,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;CACJ;AAtCD,oCAsCC"}
1
+ {"version":3,"file":"ScheduleWork.js","sourceRoot":"","sources":["../../../../src/screenplay/time/abilities/ScheduleWork.ts"],"names":[],"mappings":";;;AAAA,+CAAsE;AACtE,sCAA2F;AAE3F;;;;;;;;;GASG;AACH,MAAa,YAAa,SAAQ,mBAAO;IAIrC,YAAY,KAAY,EAAE,kBAA4B;QAClD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,GAAG,IAAI,kBAAS,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAC9D,CAAC;IAED,UAAU;QACN,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,WAAW,CACP,QAAiC,EACjC,MAAkC;QAElC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,KAAe;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,OAAO;QACH,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;CACJ;AAnCD,oCAmCC"}
@@ -25,6 +25,12 @@ export declare class Scheduler {
25
25
  * @param callback
26
26
  */
27
27
  after<Result>(delay: Duration, callback: DelayedCallback<Result>): Promise<Result>;
28
+ /**
29
+ * Returns a `Promise` to be resolved after a `delay`
30
+ *
31
+ * @param delay
32
+ */
33
+ waitFor(delay: Duration): Promise<void>;
28
34
  /**
29
35
  * Schedules a callback function to be repeated, according to configured limits.
30
36
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Scheduler.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/time/models/Scheduler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;GAEG;AACH,qBAAa,SAAS;IAcd,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAbvC,OAAO,CAAC,kBAAkB,CAAmE;IAC7F,OAAO,CAAC,kBAAkB,CAAmE;IAC7F,OAAO,CAAC,eAAe,CAAsE;IAE7F,OAAO,CAAC,KAAK,CAAe;IAE5B;;;;OAIG;gBAEkB,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,QAAQ;IAIjD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAWlF;;;;;OAKG;IACG,WAAW,CAAC,MAAM,EACpB,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,EACjC,MAAM,GAAE,iBAAiB,CAAC,MAAM,CAAM,GACvC,OAAO,CAAC,MAAM,CAAC;IAwBlB,KAAK,IAAI,IAAI;IASb,SAAS,IAAI,OAAO;IAIpB,IAAI,IAAI,IAAI;IAeZ,+BAA+B,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAMzD,OAAO,CAAC,6BAA6B;IAWrC,OAAO,CAAC,MAAM;IA6Dd,OAAO,CAAC,UAAU;CAgBrB"}
1
+ {"version":3,"file":"Scheduler.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/time/models/Scheduler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;GAEG;AACH,qBAAa,SAAS;IAcd,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAbvC,OAAO,CAAC,kBAAkB,CAAmE;IAC7F,OAAO,CAAC,kBAAkB,CAAmE;IAC7F,OAAO,CAAC,eAAe,CAAsE;IAE7F,OAAO,CAAC,KAAK,CAAe;IAE5B;;;;OAIG;gBAEkB,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,QAAQ;IAIjD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAWlF;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAavC;;;;;OAKG;IACG,WAAW,CAAC,MAAM,EACpB,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,EACjC,MAAM,GAAE,iBAAiB,CAAC,MAAM,CAAM,GACvC,OAAO,CAAC,MAAM,CAAC;IAwBlB,KAAK,IAAI,IAAI;IASb,SAAS,IAAI,OAAO;IAIpB,IAAI,IAAI,IAAI;IAeZ,+BAA+B,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAMzD,OAAO,CAAC,6BAA6B;IAWrC,OAAO,CAAC,MAAM;IA6Dd,OAAO,CAAC,UAAU;CAgBrB"}
@@ -32,6 +32,19 @@ class Scheduler {
32
32
  timeout: this.interactionTimeout,
33
33
  });
34
34
  }
35
+ /**
36
+ * Returns a `Promise` to be resolved after a `delay`
37
+ *
38
+ * @param delay
39
+ */
40
+ waitFor(delay) {
41
+ return this.repeatUntil(() => void 0, {
42
+ maxInvocations: 1,
43
+ delayBetweenInvocations: () => delay,
44
+ // make sure waitFor doesn't get terminated before it's resolved
45
+ timeout: this.interactionTimeout.plus(delay),
46
+ });
47
+ }
35
48
  /**
36
49
  * Schedules a callback function to be repeated, according to configured limits.
37
50
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Scheduler.js","sourceRoot":"","sources":["../../../../src/screenplay/time/models/Scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Scheduler.js","sourceRoot":"","sources":["../../../../src/screenplay/time/models/Scheduler.ts"],"names":[],"mappings":";;;AAAA,4CAAiF;AAGjF,yCAAsC;AAItC;;GAEG;AACH,MAAa,SAAS;IAQlB;;;;OAIG;IACH,YACqB,KAAY,EACZ,kBAA4B;QAD5B,UAAK,GAAL,KAAK,CAAO;QACZ,uBAAkB,GAAlB,kBAAkB,CAAU;QAbzC,uBAAkB,GAAyD,IAAI,GAAG,EAAE,CAAC;QACrF,uBAAkB,GAAyD,IAAI,GAAG,EAAE,CAAC;QACrF,oBAAe,GAA4D,IAAI,GAAG,EAAE,CAAC;IAa7F,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAS,KAAe,EAAE,QAAiC;QAC5D,OAAO,IAAI,CAAC,WAAW,CACnB,QAAQ,EACR;YACI,cAAc,EAAE,CAAC;YACjB,uBAAuB,EAAE,GAAG,EAAE,CAAC,KAAK;YACpC,OAAO,EAAE,IAAI,CAAC,kBAAkB;SACnC,CACJ,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,KAAe;QACnB,OAAO,IAAI,CAAC,WAAW,CACnB,GAAG,EAAE,CAAC,KAAK,CAAC,EACZ;YACI,cAAc,EAAE,CAAC;YACjB,uBAAuB,EAAE,GAAG,EAAE,CAAC,KAAK;YAEpC,gEAAgE;YAChE,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;SAC/C,CACJ,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACb,QAAiC,EACjC,SAAoC,EAAE;QAGtC,MAAM,EACF,cAAc,GAAY,MAAM,CAAC,iBAAiB,EAClD,uBAAuB,GAAG,OAAO,EACjC,OAAO,GAAmB,IAAI,CAAC,kBAAkB,EACjD,aAAa,GAAa,WAAW,EACrC,YAAY,GAAc,aAAa,GAC1C,GAAG,MAAM,CAAC;QAEX,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE;YAClC,aAAa,EAAE,aAAa;YAC5B,iBAAiB,EAAE,CAAC;YACpB,eAAe,EAAE,cAAc;YAC/B,uBAAuB;YACvB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;YAC3B,OAAO;YACP,YAAY;YACZ,MAAM,EAAE,SAAS;SACpB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,UAAU,CAAS,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK;QACD,IAAI,CAAE,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,KAAK,GAAG,WAAW,CACpB,GAAG,EAAE,CAAE,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAC3D,GAAG,CACN,CAAA;SACJ;IACL,CAAC;IAED,SAAS;QACL,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI;QACA,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YAEvB,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBACpD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE;oBAC/B,GAAG,IAAI;oBACP,KAAK,EAAE,IAAI,kCAAyB,CAAC,+CAAgD,QAAS,EAAE,CAAC;iBACpG,CAAC,CAAC;aACN;SACJ;IACL,CAAC;IAED,+BAA+B,CAAC,QAAkB;QAC9C,IAAI,CAAC,6BAA6B,CAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAClC,CAAC;IACN,CAAC;IAEO,6BAA6B,CAAC,SAAoB;QACtD,KAAK,MAAM,CAAE,QAAQ,EAAE,IAAI,CAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE;YACtD,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAC;YACvE,MAAM,sBAAsB,GAAG,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAE1F,IAAI,sBAAsB,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;gBACnD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;aACzB;SACJ;IACL,CAAC;IAEO,MAAM,CAAS,QAAiC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEnD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEzC,OAAO,CAAC,OAAO,EAAE;aACZ,IAAI,CAAC,KAAK,IAAI,EAAE;YACb,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACpF,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,KAAK,CAAC,CAAC;YAEpD,IAAI,IAAI,CAAC,eAAe,KAAK,CAAC,EAAE;gBAC5B,OAAO;oBACH,YAAY,EAAE,IAAI;iBACrB,CAAC;aACL;YAED,IAAI;gBACA,IAAI,cAAc,EAAE;oBAChB,MAAM,IAAI,4BAAmB,CAAC,cAAe,IAAI,CAAC,OAAQ,cAAc,CAAC,CAAC;iBAC7E;gBAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;gBAE5F,OAAO;oBACH,MAAM;oBACN,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,gBAAgB;iBAC/D,CAAA;aACJ;YACD,OAAM,KAAK,EAAE;gBACT,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEtC,6DAA6D;gBAC7D,OAAO;oBACH,KAAK;oBACL,YAAY,EAAE,gBAAgB;iBACjC,CAAA;aACJ;QACL,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE;YACtC,IAAI,YAAY,EAAE;gBACd,IAAI,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;oBACrC,GAAG,IAAI;oBACP,MAAM,EAAE,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,CAAC,MAAM;oBAC7B,KAAK;iBACR,CAAC,CAAC;aACN;iBACI;gBACD,IAAI,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;oBACrC,GAAG,IAAI;oBACP,iBAAiB,EAAG,IAAI,CAAC,iBAAiB,GAAG,CAAC;oBAC9C,eAAe,EAAK,IAAI,CAAC,eAAe,GAAG,CAAC;oBAC5C,MAAM,EAAE,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,CAAC,MAAM;oBAC7B,KAAK;iBACR,CAAC,CAAC;aACN;QACL,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACX,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACX,CAAC;IAEO,UAAU,CAAS,QAAkC;QACzD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAEnC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC3B,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBACpC,aAAa,CAAC,KAAK,CAAC,CAAC;oBACrB,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;iBAC3D;gBAED,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBACvC,aAAa,CAAC,KAAK,CAAC,CAAC;oBACrB,OAAO,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAgB,CAAC,CAAC;iBAC1E;YACL,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC,CAAC,CAAA;IACN,CAAC;CACJ;AAjND,8BAiNC;AAcD,SAAS,OAAO;IACZ,OAAO,mBAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,WAAW;IAChB,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CAAC,KAAY;IAC/B,MAAM,KAAK,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@serenity-js/core",
3
- "version": "3.0.1",
3
+ "version": "3.1.1",
4
4
  "description": "Serenity/JS Screenplay, reporting engine and core interfaces.",
5
5
  "author": {
6
6
  "name": "Jan Molak",
@@ -31,8 +31,8 @@
31
31
  "compile": "rimraf lib && tsc --project tsconfig.build.json"
32
32
  },
33
33
  "dependencies": {
34
+ "@paralleldrive/cuid2": "^2.2.0",
34
35
  "chalk": "^4.1.2",
35
- "cuid": "^2.1.8",
36
36
  "diff": "^5.1.0",
37
37
  "error-stack-parser": "2.1.4",
38
38
  "fast-glob": "^3.2.12",
@@ -46,7 +46,6 @@
46
46
  },
47
47
  "devDependencies": {
48
48
  "@types/chai": "^4.3.4",
49
- "@types/cuid": "^2.0.1",
50
49
  "@types/diff": "^5.0.3",
51
50
  "@types/filenamify": "^2.0.2",
52
51
  "@types/mocha": "^10.0.1",
@@ -72,5 +71,5 @@
72
71
  "node": "^14 || ^16 || ^18",
73
72
  "npm": "^6 || ^7 || ^8 || ^9"
74
73
  },
75
- "gitHead": "349fca9fd7c9bb6467f615761344ac91c08a35db"
74
+ "gitHead": "f11d5ecf323507cab2e14319de9f189b91208924"
76
75
  }
@@ -1,4 +1,4 @@
1
- import cuid from 'cuid';
1
+ import { createId } from '@paralleldrive/cuid2';
2
2
  import * as nodeFS from 'fs';
3
3
  import { WriteFileOptions } from 'fs';
4
4
  import * as gracefulFS from 'graceful-fs';
@@ -106,7 +106,7 @@ export class FileSystem {
106
106
  }
107
107
 
108
108
  public tempFilePath(prefix = '', suffix = '.tmp'): Path {
109
- return Path.from(this.fs.realpathSync(this.os.tmpdir()), `${ prefix }${ cuid() }${ suffix }`);
109
+ return Path.from(this.fs.realpathSync(this.os.tmpdir()), `${ prefix }${ createId() }${ suffix }`);
110
110
  }
111
111
 
112
112
  private write(path: Path, data: string | NodeJS.ArrayBufferView, encoding?: WriteFileOptions): Promise<Path> {
@@ -1,12 +1,21 @@
1
- import cuid from 'cuid';
2
- import { TinyTypeOf } from 'tiny-types';
1
+ import { createId, isCuid } from '@paralleldrive/cuid2';
2
+ import { ensure, matches, or, Predicate, TinyType } from 'tiny-types';
3
3
 
4
- export class CorrelationId extends TinyTypeOf<string>() {
4
+ export class CorrelationId extends TinyType {
5
5
  static fromJSON(v: string): CorrelationId {
6
6
  return new CorrelationId(v);
7
7
  }
8
8
 
9
9
  static create(): CorrelationId {
10
- return new CorrelationId(cuid());
10
+ return new CorrelationId(createId());
11
11
  }
12
+
13
+ constructor(public readonly value: string) {
14
+ super();
15
+ ensure(this.constructor.name, value, or(isACuid(), matches(/^[\dA-Za-z-]+$/)));
16
+ }
17
+ }
18
+
19
+ function isACuid(): Predicate<string> {
20
+ return Predicate.to(`be a Cuid`, (value: string) => isCuid(value));
12
21
  }
@@ -40,10 +40,7 @@ export class ScheduleWork extends Ability implements Initialisable, Discardable
40
40
  }
41
41
 
42
42
  waitFor(delay: Duration): Promise<void> {
43
- this.scheduler.start();
44
- return this.scheduler.after(delay, () => {
45
- // do nothing
46
- })
43
+ return this.scheduler.waitFor(delay);
47
44
  }
48
45
 
49
46
  discard(): void {
@@ -44,6 +44,24 @@ export class Scheduler {
44
44
  );
45
45
  }
46
46
 
47
+ /**
48
+ * Returns a `Promise` to be resolved after a `delay`
49
+ *
50
+ * @param delay
51
+ */
52
+ waitFor(delay: Duration): Promise<void> {
53
+ return this.repeatUntil<void>(
54
+ () => void 0,
55
+ {
56
+ maxInvocations: 1,
57
+ delayBetweenInvocations: () => delay,
58
+
59
+ // make sure waitFor doesn't get terminated before it's resolved
60
+ timeout: this.interactionTimeout.plus(delay),
61
+ },
62
+ );
63
+ }
64
+
47
65
  /**
48
66
  * Schedules a callback function to be repeated, according to configured limits.
49
67
  *