@zajno/common 2.6.3 → 2.6.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"arrays.js","sourceRoot":"","sources":["../../../src/async/arrays.ts"],"names":[],"mappings":";;AAEA,8BASC;AAED,gCASC;AAED,oCAIC;AAGD,4BAOC;AApCM,KAAK,UAAU,SAAS,CAAI,MAAwB,EAAE,SAA6E;IACtI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,EAAE,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAEM,KAAK,UAAU,UAAU,CAAI,MAAwB,EAAE,SAA6E;IACvI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,YAAY,CAAI,MAAwB,EAAE,EAAmE;IAC/H,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;AACL,CAAC;AAED,wEAAwE;AACjE,KAAK,UAAU,QAAQ,CAAO,MAAwB,EAAE,EAAgE;IAC3H,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"arrays.js","sourceRoot":"","sources":["../../../src/async/arrays.ts"],"names":[],"mappings":";;AAEA,8BASC;AAED,gCASC;AAED,oCAIC;AAGD,4BAOC;AApCM,KAAK,UAAU,SAAS,CAAI,MAAwB,EAAE,SAA2E;IACpI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,EAAE,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAEM,KAAK,UAAU,UAAU,CAAI,MAAwB,EAAE,SAA2E;IACrI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,YAAY,CAAI,MAAwB,EAAE,EAAiE;IAC7H,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;AACL,CAAC;AAED,wEAAwE;AACjE,KAAK,UAAU,QAAQ,CAAO,MAAwB,EAAE,EAA8D;IACzH,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC"}
@@ -57,20 +57,20 @@ class Event {
57
57
  }
58
58
  const hh = this._handlers.slice(0);
59
59
  const errors = [];
60
- await (0, arrays_js_1.forEachAsync)(hh, async (cb) => {
60
+ await (0, arrays_js_1.forEachAsync)(hh, async (cb, index) => {
61
61
  try {
62
62
  await cb(data);
63
63
  }
64
64
  catch (err) {
65
65
  this.logError(data, cb, err);
66
66
  if (err instanceof Error) {
67
- errors.push(err);
67
+ errors[index] = err;
68
68
  }
69
69
  else if (typeof err === 'string') {
70
- errors.push(new Error(err));
70
+ errors[index] = new Error(err);
71
71
  }
72
72
  else {
73
- errors.push(new Error(`Event handler thrown an exception: ${err}`));
73
+ errors[index] = new Error(`Event handler thrown an exception: ${err}`);
74
74
  }
75
75
  }
76
76
  });
@@ -1 +1 @@
1
- {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../src/observing/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../src/observing/event.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OneTimeLateEvent = void 0;
4
4
  const safe_js_1 = require("../functions/safe.js");
5
5
  const event_js_1 = require("./event.js");
6
+ /**
7
+ * One-time event that can be triggered only once, but listeners will be notified at the time of event or subscription, if it happens later.
8
+ *
9
+ * Useful for solving race conditions, when components initialization order is undetermined.
10
+ *
11
+ * Example usage: app initialization finished event, but some async components can subscribe later and be notified;
12
+ * So subscribers can be sure that the main initialization is finished.
13
+ */
6
14
  class OneTimeLateEvent extends event_js_1.Event {
7
15
  _triggeredWith = undefined;
8
16
  _triggered = false;
@@ -1 +1 @@
1
- {"version":3,"file":"event.late.js","sourceRoot":"","sources":["../../../src/observing/event.late.ts"],"names":[],"mappings":";;;AAAA,kDAAoD;AACpD,yCAAiD;AAEjD,MAAa,gBAA0B,SAAQ,gBAAQ;IAE3C,cAAc,GAAkB,SAAS,CAAC;IAC1C,UAAU,GAAG,KAAK,CAAC;IAE3B,OAAO,CAAC,IAAQ;QACZ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,IAAQ;QACjB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAa,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,EAAE,CAAC,OAAwB;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAA,sBAAY,EACR,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAC/B,CAAC;YACF,iEAAiE;QACrE,CAAC;QAED,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,qFAAqF;IACrF,KAAK,GAAG,GAAG,EAAE;QACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IACpC,CAAC,CAAC;CACL;AA3CD,4CA2CC"}
1
+ {"version":3,"file":"event.late.js","sourceRoot":"","sources":["../../../src/observing/event.late.ts"],"names":[],"mappings":";;;AAAA,kDAAoD;AACpD,yCAAiD;AAEjD;;;;;;;GAOG;AACH,MAAa,gBAA0B,SAAQ,gBAAQ;IAE3C,cAAc,GAAkB,SAAS,CAAC;IAC1C,UAAU,GAAG,KAAK,CAAC;IAE3B,OAAO,CAAC,IAAQ;QACZ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,IAAQ;QACjB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAa,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,EAAE,CAAC,OAAwB;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAA,sBAAY,EACR,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAC/B,CAAC;YACF,iEAAiE;QACrE,CAAC;QAED,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,qFAAqF;IACrF,KAAK,GAAG,GAAG,EAAE;QACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IACpC,CAAC,CAAC;CACL;AA3CD,4CA2CC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Timeout = void 0;
4
+ const timeout_js_1 = require("../async/timeout.js");
5
+ const event_js_1 = require("./event.js");
6
+ /**
7
+ * Simple one-off `setTimeout` wrapper/abstraction.
8
+ * Handle timeout via event, callback or Promise.
9
+ */
10
+ class Timeout {
11
+ _cancelCb = null;
12
+ _event = new event_js_1.Event();
13
+ get event() { return this._event.expose(); }
14
+ get isRunning() { return this._cancelCb !== null; }
15
+ async start(delay, callback) {
16
+ this.stop();
17
+ const startTime = Date.now();
18
+ try {
19
+ await (0, timeout_js_1.setTimeoutAsync)(delay, cancelCb => {
20
+ this._cancelCb = cancelCb;
21
+ });
22
+ }
23
+ finally {
24
+ this._cancelCb = null;
25
+ }
26
+ const elapsed = Date.now() - startTime;
27
+ this._event.trigger(elapsed);
28
+ if (callback) {
29
+ try {
30
+ callback();
31
+ }
32
+ catch (_err) {
33
+ // ignore
34
+ }
35
+ }
36
+ return elapsed;
37
+ }
38
+ stop() {
39
+ if (this._cancelCb) {
40
+ this._cancelCb();
41
+ this._cancelCb = null;
42
+ }
43
+ }
44
+ dispose() {
45
+ this.stop();
46
+ }
47
+ }
48
+ exports.Timeout = Timeout;
49
+ //# sourceMappingURL=timeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.js","sourceRoot":"","sources":["../../../src/observing/timeout.ts"],"names":[],"mappings":";;;AAAA,oDAAsD;AAEtD,yCAAgD;AAchD;;;GAGG;AACH,MAAa,OAAO;IAER,SAAS,GAAwB,IAAI,CAAC;IAC7B,MAAM,GAAkB,IAAI,gBAAK,EAAU,CAAC;IAE7D,IAAW,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACnD,IAAW,SAAS,KAAK,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC;IAE1D,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,QAAqB;QAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACD,MAAM,IAAA,4BAAe,EAAC,KAAK,EAAE,QAAQ,CAAC,EAAE;gBACpC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC9B,CAAC,CAAC,CAAC;QACP,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE7B,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC;gBACD,QAAQ,EAAE,CAAC;YACf,CAAC;YAAC,OAAO,IAAI,EAAE,CAAC;gBACZ,SAAS;YACb,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,IAAI;QACA,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,OAAO;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;CACJ;AA7CD,0BA6CC"}
@@ -2,6 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Timer = void 0;
4
4
  const event_js_1 = require("./event.js");
5
+ /**
6
+ * A timer wraps `setInterval` and provides a more convenient API.
7
+ * It will fire an event every `interval` milliseconds.
8
+ * It also may have duration which means it will stop when elapsed time is greater than or equal to the duration.
9
+ */
5
10
  class Timer {
6
11
  interval;
7
12
  _event = new event_js_1.Event();
@@ -1 +1 @@
1
- {"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../src/observing/timer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../src/observing/timer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"arrays.js","sourceRoot":"","sources":["../../../src/async/arrays.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,SAAS,CAAI,MAAwB,EAAE,SAA6E;IACtI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,EAAE,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAI,MAAwB,EAAE,SAA6E;IACvI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAI,MAAwB,EAAE,EAAmE;IAC/H,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;AACL,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAO,MAAwB,EAAE,EAAgE;IAC3H,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"arrays.js","sourceRoot":"","sources":["../../../src/async/arrays.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,SAAS,CAAI,MAAwB,EAAE,SAA2E;IACpI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,EAAE,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAI,MAAwB,EAAE,SAA2E;IACrI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAI,MAAwB,EAAE,EAAiE;IAC7H,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;AACL,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAO,MAAwB,EAAE,EAA8D;IACzH,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC"}
@@ -53,20 +53,20 @@ export class Event {
53
53
  }
54
54
  const hh = this._handlers.slice(0);
55
55
  const errors = [];
56
- await forEachAsync(hh, async (cb) => {
56
+ await forEachAsync(hh, async (cb, index) => {
57
57
  try {
58
58
  await cb(data);
59
59
  }
60
60
  catch (err) {
61
61
  this.logError(data, cb, err);
62
62
  if (err instanceof Error) {
63
- errors.push(err);
63
+ errors[index] = err;
64
64
  }
65
65
  else if (typeof err === 'string') {
66
- errors.push(new Error(err));
66
+ errors[index] = new Error(err);
67
67
  }
68
68
  else {
69
- errors.push(new Error(`Event handler thrown an exception: ${err}`));
69
+ errors[index] = new Error(`Event handler thrown an exception: ${err}`);
70
70
  }
71
71
  }
72
72
  });
@@ -1 +1 @@
1
- {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../src/observing/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../src/observing/event.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,13 @@
1
1
  import { catchPromise } from '../functions/safe.js';
2
2
  import { Event } from './event.js';
3
+ /**
4
+ * One-time event that can be triggered only once, but listeners will be notified at the time of event or subscription, if it happens later.
5
+ *
6
+ * Useful for solving race conditions, when components initialization order is undetermined.
7
+ *
8
+ * Example usage: app initialization finished event, but some async components can subscribe later and be notified;
9
+ * So subscribers can be sure that the main initialization is finished.
10
+ */
3
11
  export class OneTimeLateEvent extends Event {
4
12
  _triggeredWith = undefined;
5
13
  _triggered = false;
@@ -1 +1 @@
1
- {"version":3,"file":"event.late.js","sourceRoot":"","sources":["../../../src/observing/event.late.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAgB,MAAM,YAAY,CAAC;AAEjD,MAAM,OAAO,gBAA0B,SAAQ,KAAQ;IAE3C,cAAc,GAAkB,SAAS,CAAC;IAC1C,UAAU,GAAG,KAAK,CAAC;IAE3B,OAAO,CAAC,IAAQ;QACZ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,IAAQ;QACjB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAa,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,EAAE,CAAC,OAAwB;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,YAAY,CACR,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAC/B,CAAC;YACF,iEAAiE;QACrE,CAAC;QAED,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,qFAAqF;IACrF,KAAK,GAAG,GAAG,EAAE;QACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IACpC,CAAC,CAAC;CACL"}
1
+ {"version":3,"file":"event.late.js","sourceRoot":"","sources":["../../../src/observing/event.late.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAgB,MAAM,YAAY,CAAC;AAEjD;;;;;;;GAOG;AACH,MAAM,OAAO,gBAA0B,SAAQ,KAAQ;IAE3C,cAAc,GAAkB,SAAS,CAAC;IAC1C,UAAU,GAAG,KAAK,CAAC;IAE3B,OAAO,CAAC,IAAQ;QACZ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,IAAQ;QACjB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAa,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,EAAE,CAAC,OAAwB;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,YAAY,CACR,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAC/B,CAAC;YACF,iEAAiE;QACrE,CAAC;QAED,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,qFAAqF;IACrF,KAAK,GAAG,GAAG,EAAE;QACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IACpC,CAAC,CAAC;CACL"}
@@ -0,0 +1,45 @@
1
+ import { setTimeoutAsync } from '../async/timeout.js';
2
+ import { Event } from './event.js';
3
+ /**
4
+ * Simple one-off `setTimeout` wrapper/abstraction.
5
+ * Handle timeout via event, callback or Promise.
6
+ */
7
+ export class Timeout {
8
+ _cancelCb = null;
9
+ _event = new Event();
10
+ get event() { return this._event.expose(); }
11
+ get isRunning() { return this._cancelCb !== null; }
12
+ async start(delay, callback) {
13
+ this.stop();
14
+ const startTime = Date.now();
15
+ try {
16
+ await setTimeoutAsync(delay, cancelCb => {
17
+ this._cancelCb = cancelCb;
18
+ });
19
+ }
20
+ finally {
21
+ this._cancelCb = null;
22
+ }
23
+ const elapsed = Date.now() - startTime;
24
+ this._event.trigger(elapsed);
25
+ if (callback) {
26
+ try {
27
+ callback();
28
+ }
29
+ catch (_err) {
30
+ // ignore
31
+ }
32
+ }
33
+ return elapsed;
34
+ }
35
+ stop() {
36
+ if (this._cancelCb) {
37
+ this._cancelCb();
38
+ this._cancelCb = null;
39
+ }
40
+ }
41
+ dispose() {
42
+ this.stop();
43
+ }
44
+ }
45
+ //# sourceMappingURL=timeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.js","sourceRoot":"","sources":["../../../src/observing/timeout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,KAAK,EAAe,MAAM,YAAY,CAAC;AAchD;;;GAGG;AACH,MAAM,OAAO,OAAO;IAER,SAAS,GAAwB,IAAI,CAAC;IAC7B,MAAM,GAAkB,IAAI,KAAK,EAAU,CAAC;IAE7D,IAAW,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACnD,IAAW,SAAS,KAAK,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC;IAE1D,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,QAAqB;QAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACD,MAAM,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE;gBACpC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC9B,CAAC,CAAC,CAAC;QACP,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE7B,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC;gBACD,QAAQ,EAAE,CAAC;YACf,CAAC;YAAC,OAAO,IAAI,EAAE,CAAC;gBACZ,SAAS;YACb,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,IAAI;QACA,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,OAAO;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;CACJ"}
@@ -1,4 +1,9 @@
1
1
  import { Event } from './event.js';
2
+ /**
3
+ * A timer wraps `setInterval` and provides a more convenient API.
4
+ * It will fire an event every `interval` milliseconds.
5
+ * It also may have duration which means it will stop when elapsed time is greater than or equal to the duration.
6
+ */
2
7
  export class Timer {
3
8
  interval;
4
9
  _event = new Event();
@@ -1 +1 @@
1
- {"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../src/observing/timer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../src/observing/timer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAwB,MAAM,YAAY,CAAC;AASzD;;;;GAIG;AACH,MAAM,OAAO,KAAK;IAiBO;IAhBJ,MAAM,GAAG,IAAI,KAAK,EAAc,CAAC;IACjC,WAAW,GAAG,IAAI,KAAK,EAAc,CAAC;IAE/C,IAAI,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAE1B,QAAQ,GAAW,CAAC,CAAC;IACrB,KAAK,CAAmB;IAExB,SAAS,CAAmB;IAE5B,OAAO,GAA0C,IAAI,CAAC;IAE9D;;;OAGG;IACH,YAAqB,WAAW,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI;QAApC,aAAQ,GAAR,QAAQ,CAAc;QACvC,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACL,CAAC;IAED,+CAA+C;IAC/C,IAAI,GAAG,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B,2FAA2F;IAC3F,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACpE,uDAAuD;IACvD,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvC,2FAA2F;IAC3F,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAE5D,4DAA4D;IAC5D,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAEtD,mGAAmG;IACnG,YAAY,CAAC,QAAgB;QACzB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,EAAE,CAAC,OAAiC;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,OAAiC;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,4BAA4B;IACrB,OAAO;QACV,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;QAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;QAE5B,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC;YACpB,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,EAAE,IAAI,CAAC,IAAI;SACjB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,CAAC,SAAS,GAAG,KAAK,EAAE,EAAE;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,SAAS,CAAC;YAChC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;YAEhB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS;gBACvB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC7C,CAAC,CAAC,IAAI,CAAC;YAEX,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEhC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBACtD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACf,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YACzC,CAAC;QACL,CAAC,CAAC;QAEF,+BAA+B;QAC/B,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAED,uDAAuD;IAChD,OAAO;QACV,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACxB,CAAC;CACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zajno/common",
3
- "version": "2.6.3",
3
+ "version": "2.6.4",
4
4
  "description": "Zajno's re-usable utilities for JS/TS projects",
5
5
  "private": false,
6
6
  "type": "module",
@@ -1 +1 @@
1
- {"root":["../src/api/builder.ts","../src/api/call.ts","../src/api/endpoint.ts","../src/api/endpoint.types.ts","../src/api/error.ts","../src/api/helpers.ts","../src/api/index.ts","../src/api/logging.ts","../src/api/methods.ts","../src/api/processor.ts","../src/api/register.ts","../src/api/statuscodes.ts","../src/api/extensions/contenttype.ts","../src/api/extensions/index.ts","../src/api/extensions/validation.ts","../src/async/arrays.ts","../src/async/index.ts","../src/async/manualpromise.ts","../src/async/misc.ts","../src/async/timeout.ts","../src/dates/calc.ts","../src/dates/calendarindex.ts","../src/dates/convert.ts","../src/dates/datex.ts","../src/dates/decompose.ts","../src/dates/format.ts","../src/dates/index.ts","../src/dates/parse.ts","../src/dates/period.ts","../src/dates/shift.ts","../src/dates/types.ts","../src/dates/tz.ts","../src/dates/yeardate.ts","../src/fields/filter.ts","../src/fields/index.ts","../src/fields/skip.ts","../src/fields/transfer.ts","../src/fields/update.ts","../src/functions/assert.ts","../src/functions/disposer.symbols.ts","../src/functions/disposer.ts","../src/functions/index.ts","../src/functions/safe.ts","../src/functions/throttle.ts","../src/lazy/index.ts","../src/lazy/lazy.ts","../src/lazy/light.ts","../src/lazy/promise.ts","../src/lazy/types.ts","../src/localization/localizationmanager.ts","../src/localization/localizedvalidationerrors.ts","../src/localization/abstractions.ts","../src/localization/index.ts","../src/localization/defaults/validationerrorslocalization.ts","../src/localization/defaults/defaultshape.ts","../src/logger/abstractions.ts","../src/logger/batch.ts","../src/logger/console.ts","../src/logger/file.ts","../src/logger/index.ts","../src/logger/manager.ts","../src/logger/named.ts","../src/logger/proxy.ts","../src/math/arrays.ts","../src/math/calc.ts","../src/math/distribution.ts","../src/math/index.ts","../src/math/object/helpers.ts","../src/math/object/index.ts","../src/math/object/math.composite.ts","../src/math/object/math.ts","../src/math/object/ops.composite.ts","../src/math/object/ops.ts","../src/math/object/types.ts","../src/models/entitywithstatus.ts","../src/models/file.ts","../src/models/loading.ts","../src/models/logicmodel.ts","../src/models/model.ts","../src/models/valuescollector.ts","../src/models/types.ts","../src/models/wrappers.ts","../src/observing/event.late.ts","../src/observing/event.ts","../src/observing/progresstracker.ts","../src/observing/throttledevent.ts","../src/observing/timer.ts","../src/storage/index.ts","../src/storage/types.ts","../src/storage/wrappers.ts","../src/structures/expire.ts","../src/structures/linkedlist.ts","../src/structures/nameof.ts","../src/structures/pool.ts","../src/structures/promisecache.ts","../src/structures/promiseextended.ts","../src/structures/promiseproxy.ts","../src/structures/subscribersmap.ts","../src/structures/tempocache.ts","../src/structures/helpers/enum.ts","../src/structures/helpers/name.ts","../src/structures/path/builder.ts","../src/structures/path/index.ts","../src/structures/path/types.ts","../src/structures/path/utils.ts","../src/structures/queue/parallel.ts","../src/structures/queue/tasks.ts","../src/types/arrays.ts","../src/types/comparator.ts","../src/types/deep.ts","../src/types/functions.ts","../src/types/getter.ts","../src/types/ident.ts","../src/types/index.ts","../src/types/misc.ts","../src/validation/validationerrors.ts","../src/validation/creditcard.ts","../src/validation/emails.ts","../src/validation/helpers.ts","../src/validation/index.ts","../src/validation/throwers.ts","../src/validation/types.ts","../src/validation/validators.ts","../src/validation/wrappers.ts"],"version":"5.7.3"}
1
+ {"root":["../src/api/builder.ts","../src/api/call.ts","../src/api/endpoint.ts","../src/api/endpoint.types.ts","../src/api/error.ts","../src/api/helpers.ts","../src/api/index.ts","../src/api/logging.ts","../src/api/methods.ts","../src/api/processor.ts","../src/api/register.ts","../src/api/statuscodes.ts","../src/api/extensions/contenttype.ts","../src/api/extensions/index.ts","../src/api/extensions/validation.ts","../src/async/arrays.ts","../src/async/index.ts","../src/async/manualpromise.ts","../src/async/misc.ts","../src/async/timeout.ts","../src/dates/calc.ts","../src/dates/calendarindex.ts","../src/dates/convert.ts","../src/dates/datex.ts","../src/dates/decompose.ts","../src/dates/format.ts","../src/dates/index.ts","../src/dates/parse.ts","../src/dates/period.ts","../src/dates/shift.ts","../src/dates/types.ts","../src/dates/tz.ts","../src/dates/yeardate.ts","../src/fields/filter.ts","../src/fields/index.ts","../src/fields/skip.ts","../src/fields/transfer.ts","../src/fields/update.ts","../src/functions/assert.ts","../src/functions/disposer.symbols.ts","../src/functions/disposer.ts","../src/functions/index.ts","../src/functions/safe.ts","../src/functions/throttle.ts","../src/lazy/index.ts","../src/lazy/lazy.ts","../src/lazy/light.ts","../src/lazy/promise.ts","../src/lazy/types.ts","../src/localization/localizationmanager.ts","../src/localization/localizedvalidationerrors.ts","../src/localization/abstractions.ts","../src/localization/index.ts","../src/localization/defaults/validationerrorslocalization.ts","../src/localization/defaults/defaultshape.ts","../src/logger/abstractions.ts","../src/logger/batch.ts","../src/logger/console.ts","../src/logger/file.ts","../src/logger/index.ts","../src/logger/manager.ts","../src/logger/named.ts","../src/logger/proxy.ts","../src/math/arrays.ts","../src/math/calc.ts","../src/math/distribution.ts","../src/math/index.ts","../src/math/object/helpers.ts","../src/math/object/index.ts","../src/math/object/math.composite.ts","../src/math/object/math.ts","../src/math/object/ops.composite.ts","../src/math/object/ops.ts","../src/math/object/types.ts","../src/models/entitywithstatus.ts","../src/models/file.ts","../src/models/loading.ts","../src/models/logicmodel.ts","../src/models/model.ts","../src/models/valuescollector.ts","../src/models/types.ts","../src/models/wrappers.ts","../src/observing/event.late.ts","../src/observing/event.ts","../src/observing/progresstracker.ts","../src/observing/throttledevent.ts","../src/observing/timeout.ts","../src/observing/timer.ts","../src/storage/index.ts","../src/storage/types.ts","../src/storage/wrappers.ts","../src/structures/expire.ts","../src/structures/linkedlist.ts","../src/structures/nameof.ts","../src/structures/pool.ts","../src/structures/promisecache.ts","../src/structures/promiseextended.ts","../src/structures/promiseproxy.ts","../src/structures/subscribersmap.ts","../src/structures/tempocache.ts","../src/structures/helpers/enum.ts","../src/structures/helpers/name.ts","../src/structures/path/builder.ts","../src/structures/path/index.ts","../src/structures/path/types.ts","../src/structures/path/utils.ts","../src/structures/queue/parallel.ts","../src/structures/queue/tasks.ts","../src/types/arrays.ts","../src/types/comparator.ts","../src/types/deep.ts","../src/types/functions.ts","../src/types/getter.ts","../src/types/ident.ts","../src/types/index.ts","../src/types/misc.ts","../src/validation/validationerrors.ts","../src/validation/creditcard.ts","../src/validation/emails.ts","../src/validation/helpers.ts","../src/validation/index.ts","../src/validation/throwers.ts","../src/validation/types.ts","../src/validation/validators.ts","../src/validation/wrappers.ts"],"version":"5.7.3"}
@@ -1 +1 @@
1
- {"root":["../src/api/builder.ts","../src/api/call.ts","../src/api/endpoint.ts","../src/api/endpoint.types.ts","../src/api/error.ts","../src/api/helpers.ts","../src/api/index.ts","../src/api/logging.ts","../src/api/methods.ts","../src/api/processor.ts","../src/api/register.ts","../src/api/statuscodes.ts","../src/api/extensions/contenttype.ts","../src/api/extensions/index.ts","../src/api/extensions/validation.ts","../src/async/arrays.ts","../src/async/index.ts","../src/async/manualpromise.ts","../src/async/misc.ts","../src/async/timeout.ts","../src/dates/calc.ts","../src/dates/calendarindex.ts","../src/dates/convert.ts","../src/dates/datex.ts","../src/dates/decompose.ts","../src/dates/format.ts","../src/dates/index.ts","../src/dates/parse.ts","../src/dates/period.ts","../src/dates/shift.ts","../src/dates/types.ts","../src/dates/tz.ts","../src/dates/yeardate.ts","../src/fields/filter.ts","../src/fields/index.ts","../src/fields/skip.ts","../src/fields/transfer.ts","../src/fields/update.ts","../src/functions/assert.ts","../src/functions/disposer.symbols.ts","../src/functions/disposer.ts","../src/functions/index.ts","../src/functions/safe.ts","../src/functions/throttle.ts","../src/lazy/index.ts","../src/lazy/lazy.ts","../src/lazy/light.ts","../src/lazy/promise.ts","../src/lazy/types.ts","../src/localization/localizationmanager.ts","../src/localization/localizedvalidationerrors.ts","../src/localization/abstractions.ts","../src/localization/index.ts","../src/localization/defaults/validationerrorslocalization.ts","../src/localization/defaults/defaultshape.ts","../src/logger/abstractions.ts","../src/logger/batch.ts","../src/logger/console.ts","../src/logger/file.ts","../src/logger/index.ts","../src/logger/manager.ts","../src/logger/named.ts","../src/logger/proxy.ts","../src/math/arrays.ts","../src/math/calc.ts","../src/math/distribution.ts","../src/math/index.ts","../src/math/object/helpers.ts","../src/math/object/index.ts","../src/math/object/math.composite.ts","../src/math/object/math.ts","../src/math/object/ops.composite.ts","../src/math/object/ops.ts","../src/math/object/types.ts","../src/models/entitywithstatus.ts","../src/models/file.ts","../src/models/loading.ts","../src/models/logicmodel.ts","../src/models/model.ts","../src/models/valuescollector.ts","../src/models/types.ts","../src/models/wrappers.ts","../src/observing/event.late.ts","../src/observing/event.ts","../src/observing/progresstracker.ts","../src/observing/throttledevent.ts","../src/observing/timer.ts","../src/storage/index.ts","../src/storage/types.ts","../src/storage/wrappers.ts","../src/structures/expire.ts","../src/structures/linkedlist.ts","../src/structures/nameof.ts","../src/structures/pool.ts","../src/structures/promisecache.ts","../src/structures/promiseextended.ts","../src/structures/promiseproxy.ts","../src/structures/subscribersmap.ts","../src/structures/tempocache.ts","../src/structures/helpers/enum.ts","../src/structures/helpers/name.ts","../src/structures/path/builder.ts","../src/structures/path/index.ts","../src/structures/path/types.ts","../src/structures/path/utils.ts","../src/structures/queue/parallel.ts","../src/structures/queue/tasks.ts","../src/types/arrays.ts","../src/types/comparator.ts","../src/types/deep.ts","../src/types/functions.ts","../src/types/getter.ts","../src/types/ident.ts","../src/types/index.ts","../src/types/misc.ts","../src/validation/validationerrors.ts","../src/validation/creditcard.ts","../src/validation/emails.ts","../src/validation/helpers.ts","../src/validation/index.ts","../src/validation/throwers.ts","../src/validation/types.ts","../src/validation/validators.ts","../src/validation/wrappers.ts"],"version":"5.7.3"}
1
+ {"root":["../src/api/builder.ts","../src/api/call.ts","../src/api/endpoint.ts","../src/api/endpoint.types.ts","../src/api/error.ts","../src/api/helpers.ts","../src/api/index.ts","../src/api/logging.ts","../src/api/methods.ts","../src/api/processor.ts","../src/api/register.ts","../src/api/statuscodes.ts","../src/api/extensions/contenttype.ts","../src/api/extensions/index.ts","../src/api/extensions/validation.ts","../src/async/arrays.ts","../src/async/index.ts","../src/async/manualpromise.ts","../src/async/misc.ts","../src/async/timeout.ts","../src/dates/calc.ts","../src/dates/calendarindex.ts","../src/dates/convert.ts","../src/dates/datex.ts","../src/dates/decompose.ts","../src/dates/format.ts","../src/dates/index.ts","../src/dates/parse.ts","../src/dates/period.ts","../src/dates/shift.ts","../src/dates/types.ts","../src/dates/tz.ts","../src/dates/yeardate.ts","../src/fields/filter.ts","../src/fields/index.ts","../src/fields/skip.ts","../src/fields/transfer.ts","../src/fields/update.ts","../src/functions/assert.ts","../src/functions/disposer.symbols.ts","../src/functions/disposer.ts","../src/functions/index.ts","../src/functions/safe.ts","../src/functions/throttle.ts","../src/lazy/index.ts","../src/lazy/lazy.ts","../src/lazy/light.ts","../src/lazy/promise.ts","../src/lazy/types.ts","../src/localization/localizationmanager.ts","../src/localization/localizedvalidationerrors.ts","../src/localization/abstractions.ts","../src/localization/index.ts","../src/localization/defaults/validationerrorslocalization.ts","../src/localization/defaults/defaultshape.ts","../src/logger/abstractions.ts","../src/logger/batch.ts","../src/logger/console.ts","../src/logger/file.ts","../src/logger/index.ts","../src/logger/manager.ts","../src/logger/named.ts","../src/logger/proxy.ts","../src/math/arrays.ts","../src/math/calc.ts","../src/math/distribution.ts","../src/math/index.ts","../src/math/object/helpers.ts","../src/math/object/index.ts","../src/math/object/math.composite.ts","../src/math/object/math.ts","../src/math/object/ops.composite.ts","../src/math/object/ops.ts","../src/math/object/types.ts","../src/models/entitywithstatus.ts","../src/models/file.ts","../src/models/loading.ts","../src/models/logicmodel.ts","../src/models/model.ts","../src/models/valuescollector.ts","../src/models/types.ts","../src/models/wrappers.ts","../src/observing/event.late.ts","../src/observing/event.ts","../src/observing/progresstracker.ts","../src/observing/throttledevent.ts","../src/observing/timeout.ts","../src/observing/timer.ts","../src/storage/index.ts","../src/storage/types.ts","../src/storage/wrappers.ts","../src/structures/expire.ts","../src/structures/linkedlist.ts","../src/structures/nameof.ts","../src/structures/pool.ts","../src/structures/promisecache.ts","../src/structures/promiseextended.ts","../src/structures/promiseproxy.ts","../src/structures/subscribersmap.ts","../src/structures/tempocache.ts","../src/structures/helpers/enum.ts","../src/structures/helpers/name.ts","../src/structures/path/builder.ts","../src/structures/path/index.ts","../src/structures/path/types.ts","../src/structures/path/utils.ts","../src/structures/queue/parallel.ts","../src/structures/queue/tasks.ts","../src/types/arrays.ts","../src/types/comparator.ts","../src/types/deep.ts","../src/types/functions.ts","../src/types/getter.ts","../src/types/ident.ts","../src/types/index.ts","../src/types/misc.ts","../src/validation/validationerrors.ts","../src/validation/creditcard.ts","../src/validation/emails.ts","../src/validation/helpers.ts","../src/validation/index.ts","../src/validation/throwers.ts","../src/validation/types.ts","../src/validation/validators.ts","../src/validation/wrappers.ts"],"version":"5.7.3"}
@@ -1 +1 @@
1
- {"root":["../src/api/builder.ts","../src/api/call.ts","../src/api/endpoint.ts","../src/api/endpoint.types.ts","../src/api/error.ts","../src/api/helpers.ts","../src/api/index.ts","../src/api/logging.ts","../src/api/methods.ts","../src/api/processor.ts","../src/api/register.ts","../src/api/statuscodes.ts","../src/api/extensions/contenttype.ts","../src/api/extensions/index.ts","../src/api/extensions/validation.ts","../src/async/arrays.ts","../src/async/index.ts","../src/async/manualpromise.ts","../src/async/misc.ts","../src/async/timeout.ts","../src/dates/calc.ts","../src/dates/calendarindex.ts","../src/dates/convert.ts","../src/dates/datex.ts","../src/dates/decompose.ts","../src/dates/format.ts","../src/dates/index.ts","../src/dates/parse.ts","../src/dates/period.ts","../src/dates/shift.ts","../src/dates/types.ts","../src/dates/tz.ts","../src/dates/yeardate.ts","../src/fields/filter.ts","../src/fields/index.ts","../src/fields/skip.ts","../src/fields/transfer.ts","../src/fields/update.ts","../src/functions/assert.ts","../src/functions/disposer.symbols.ts","../src/functions/disposer.ts","../src/functions/index.ts","../src/functions/safe.ts","../src/functions/throttle.ts","../src/lazy/index.ts","../src/lazy/lazy.ts","../src/lazy/light.ts","../src/lazy/promise.ts","../src/lazy/types.ts","../src/localization/localizationmanager.ts","../src/localization/localizedvalidationerrors.ts","../src/localization/abstractions.ts","../src/localization/index.ts","../src/localization/defaults/validationerrorslocalization.ts","../src/localization/defaults/defaultshape.ts","../src/logger/abstractions.ts","../src/logger/batch.ts","../src/logger/console.ts","../src/logger/file.ts","../src/logger/index.ts","../src/logger/manager.ts","../src/logger/named.ts","../src/logger/proxy.ts","../src/math/arrays.ts","../src/math/calc.ts","../src/math/distribution.ts","../src/math/index.ts","../src/math/object/helpers.ts","../src/math/object/index.ts","../src/math/object/math.composite.ts","../src/math/object/math.ts","../src/math/object/ops.composite.ts","../src/math/object/ops.ts","../src/math/object/types.ts","../src/models/entitywithstatus.ts","../src/models/file.ts","../src/models/loading.ts","../src/models/logicmodel.ts","../src/models/model.ts","../src/models/valuescollector.ts","../src/models/types.ts","../src/models/wrappers.ts","../src/observing/event.late.ts","../src/observing/event.ts","../src/observing/progresstracker.ts","../src/observing/throttledevent.ts","../src/observing/timer.ts","../src/storage/index.ts","../src/storage/types.ts","../src/storage/wrappers.ts","../src/structures/expire.ts","../src/structures/linkedlist.ts","../src/structures/nameof.ts","../src/structures/pool.ts","../src/structures/promisecache.ts","../src/structures/promiseextended.ts","../src/structures/promiseproxy.ts","../src/structures/subscribersmap.ts","../src/structures/tempocache.ts","../src/structures/helpers/enum.ts","../src/structures/helpers/name.ts","../src/structures/path/builder.ts","../src/structures/path/index.ts","../src/structures/path/types.ts","../src/structures/path/utils.ts","../src/structures/queue/parallel.ts","../src/structures/queue/tasks.ts","../src/types/arrays.ts","../src/types/comparator.ts","../src/types/deep.ts","../src/types/functions.ts","../src/types/getter.ts","../src/types/ident.ts","../src/types/index.ts","../src/types/misc.ts","../src/validation/validationerrors.ts","../src/validation/creditcard.ts","../src/validation/emails.ts","../src/validation/helpers.ts","../src/validation/index.ts","../src/validation/throwers.ts","../src/validation/types.ts","../src/validation/validators.ts","../src/validation/wrappers.ts"],"version":"5.7.3"}
1
+ {"root":["../src/api/builder.ts","../src/api/call.ts","../src/api/endpoint.ts","../src/api/endpoint.types.ts","../src/api/error.ts","../src/api/helpers.ts","../src/api/index.ts","../src/api/logging.ts","../src/api/methods.ts","../src/api/processor.ts","../src/api/register.ts","../src/api/statuscodes.ts","../src/api/extensions/contenttype.ts","../src/api/extensions/index.ts","../src/api/extensions/validation.ts","../src/async/arrays.ts","../src/async/index.ts","../src/async/manualpromise.ts","../src/async/misc.ts","../src/async/timeout.ts","../src/dates/calc.ts","../src/dates/calendarindex.ts","../src/dates/convert.ts","../src/dates/datex.ts","../src/dates/decompose.ts","../src/dates/format.ts","../src/dates/index.ts","../src/dates/parse.ts","../src/dates/period.ts","../src/dates/shift.ts","../src/dates/types.ts","../src/dates/tz.ts","../src/dates/yeardate.ts","../src/fields/filter.ts","../src/fields/index.ts","../src/fields/skip.ts","../src/fields/transfer.ts","../src/fields/update.ts","../src/functions/assert.ts","../src/functions/disposer.symbols.ts","../src/functions/disposer.ts","../src/functions/index.ts","../src/functions/safe.ts","../src/functions/throttle.ts","../src/lazy/index.ts","../src/lazy/lazy.ts","../src/lazy/light.ts","../src/lazy/promise.ts","../src/lazy/types.ts","../src/localization/localizationmanager.ts","../src/localization/localizedvalidationerrors.ts","../src/localization/abstractions.ts","../src/localization/index.ts","../src/localization/defaults/validationerrorslocalization.ts","../src/localization/defaults/defaultshape.ts","../src/logger/abstractions.ts","../src/logger/batch.ts","../src/logger/console.ts","../src/logger/file.ts","../src/logger/index.ts","../src/logger/manager.ts","../src/logger/named.ts","../src/logger/proxy.ts","../src/math/arrays.ts","../src/math/calc.ts","../src/math/distribution.ts","../src/math/index.ts","../src/math/object/helpers.ts","../src/math/object/index.ts","../src/math/object/math.composite.ts","../src/math/object/math.ts","../src/math/object/ops.composite.ts","../src/math/object/ops.ts","../src/math/object/types.ts","../src/models/entitywithstatus.ts","../src/models/file.ts","../src/models/loading.ts","../src/models/logicmodel.ts","../src/models/model.ts","../src/models/valuescollector.ts","../src/models/types.ts","../src/models/wrappers.ts","../src/observing/event.late.ts","../src/observing/event.ts","../src/observing/progresstracker.ts","../src/observing/throttledevent.ts","../src/observing/timeout.ts","../src/observing/timer.ts","../src/storage/index.ts","../src/storage/types.ts","../src/storage/wrappers.ts","../src/structures/expire.ts","../src/structures/linkedlist.ts","../src/structures/nameof.ts","../src/structures/pool.ts","../src/structures/promisecache.ts","../src/structures/promiseextended.ts","../src/structures/promiseproxy.ts","../src/structures/subscribersmap.ts","../src/structures/tempocache.ts","../src/structures/helpers/enum.ts","../src/structures/helpers/name.ts","../src/structures/path/builder.ts","../src/structures/path/index.ts","../src/structures/path/types.ts","../src/structures/path/utils.ts","../src/structures/queue/parallel.ts","../src/structures/queue/tasks.ts","../src/types/arrays.ts","../src/types/comparator.ts","../src/types/deep.ts","../src/types/functions.ts","../src/types/getter.ts","../src/types/ident.ts","../src/types/index.ts","../src/types/misc.ts","../src/validation/validationerrors.ts","../src/validation/creditcard.ts","../src/validation/emails.ts","../src/validation/helpers.ts","../src/validation/index.ts","../src/validation/throwers.ts","../src/validation/types.ts","../src/validation/validators.ts","../src/validation/wrappers.ts"],"version":"5.7.3"}
@@ -1,4 +1,4 @@
1
- export declare function someAsync<T>(target: ReadonlyArray<T>, condition: (v: T, index?: number, arr?: ReadonlyArray<T>) => Promise<boolean>): Promise<boolean>;
2
- export declare function everyAsync<T>(target: ReadonlyArray<T>, condition: (v: T, index?: number, arr?: ReadonlyArray<T>) => Promise<boolean>): Promise<boolean>;
3
- export declare function forEachAsync<T>(target: ReadonlyArray<T>, cb: (v: T, index?: number, arr?: ReadonlyArray<T>) => Promise<void>): Promise<void>;
4
- export declare function mapAsync<T, R>(target: ReadonlyArray<T>, cb: (v: T, index?: number, arr?: ReadonlyArray<T>) => Promise<R>): Promise<R[]>;
1
+ export declare function someAsync<T>(target: ReadonlyArray<T>, condition: (v: T, index: number, arr: ReadonlyArray<T>) => Promise<boolean>): Promise<boolean>;
2
+ export declare function everyAsync<T>(target: ReadonlyArray<T>, condition: (v: T, index: number, arr: ReadonlyArray<T>) => Promise<boolean>): Promise<boolean>;
3
+ export declare function forEachAsync<T>(target: ReadonlyArray<T>, cb: (v: T, index: number, arr: ReadonlyArray<T>) => Promise<void>): Promise<void>;
4
+ export declare function mapAsync<T, R>(target: ReadonlyArray<T>, cb: (v: T, index: number, arr: ReadonlyArray<T>) => Promise<R>): Promise<R[]>;
@@ -1,4 +1,12 @@
1
1
  import { Event, EventHandler } from './event.js';
2
+ /**
3
+ * One-time event that can be triggered only once, but listeners will be notified at the time of event or subscription, if it happens later.
4
+ *
5
+ * Useful for solving race conditions, when components initialization order is undetermined.
6
+ *
7
+ * Example usage: app initialization finished event, but some async components can subscribe later and be notified;
8
+ * So subscribers can be sure that the main initialization is finished.
9
+ */
2
10
  export declare class OneTimeLateEvent<T = any> extends Event<T> {
3
11
  private _triggeredWith;
4
12
  private _triggered;
@@ -0,0 +1,25 @@
1
+ import type { IDisposable } from '../functions/disposer.js';
2
+ import { type IEvent } from './event.js';
3
+ export interface ITimeout extends IDisposable {
4
+ /** Fired when the timeout has elapsed. Passes actual elapsed milliseconds. */
5
+ readonly event: IEvent<number>;
6
+ /** Whether the timeout is running */
7
+ readonly isRunning: boolean;
8
+ /** Starts the timeout */
9
+ start(delay: number, callback?: () => void): Promise<number>;
10
+ /** Stops the timeout, event will not be triggered. */
11
+ stop(): void;
12
+ }
13
+ /**
14
+ * Simple one-off `setTimeout` wrapper/abstraction.
15
+ * Handle timeout via event, callback or Promise.
16
+ */
17
+ export declare class Timeout implements ITimeout {
18
+ private _cancelCb;
19
+ private readonly _event;
20
+ get event(): IEvent<number>;
21
+ get isRunning(): boolean;
22
+ start(delay: number, callback?: () => void): Promise<number>;
23
+ stop(): void;
24
+ dispose(): void;
25
+ }
@@ -6,6 +6,11 @@ export type TimerState = {
6
6
  left: number;
7
7
  now: number;
8
8
  };
9
+ /**
10
+ * A timer wraps `setInterval` and provides a more convenient API.
11
+ * It will fire an event every `interval` milliseconds.
12
+ * It also may have duration which means it will stop when elapsed time is greater than or equal to the duration.
13
+ */
9
14
  export declare class Timer implements IDisposable, IEvent<TimerState> {
10
15
  readonly interval: number;
11
16
  private readonly _event;