@ehmpathy/uni-time 1.7.4 → 1.8.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/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/logic/checks/isUniDate.js +1 -1
- package/dist/logic/checks/isUniDate.js.map +1 -1
- package/dist/logic/checks/isUniDateTime.js +1 -1
- package/dist/logic/checks/isUniDateTime.js.map +1 -1
- package/dist/logic/checks/isUniDateTimeRange.d.ts +7 -0
- package/dist/logic/checks/isUniDateTimeRange.js +14 -0
- package/dist/logic/checks/isUniDateTimeRange.js.map +1 -0
- package/dist/logic/checks/isUniMonth.js +1 -1
- package/dist/logic/checks/isUniMonth.js.map +1 -1
- package/dist/logic/manipulate/toMilliseconds.js +6 -7
- package/dist/logic/manipulate/toMilliseconds.js.map +1 -1
- package/dist/logic/observe/stopwatch/startDurationStopwatch.js +3 -4
- package/dist/logic/observe/stopwatch/startDurationStopwatch.js.map +1 -1
- package/dist/logic/wrappers/waitFor.js +7 -17
- package/dist/logic/wrappers/waitFor.js.map +1 -1
- package/license.md +21 -0
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export * from './domain/UniDateTime';
|
|
|
2
2
|
export * from './domain/UniDuration';
|
|
3
3
|
export * from './logic/utils/sleep';
|
|
4
4
|
export * from './logic/checks/isUniDateTime';
|
|
5
|
+
export * from './logic/checks/isUniDateTimeRange';
|
|
5
6
|
export * from './logic/checks/isUniDate';
|
|
6
7
|
export * from './logic/checks/isUniMonth';
|
|
7
8
|
export * from './logic/casts/toMillisecondsSinceEpoch';
|
package/dist/index.js
CHANGED
|
@@ -18,6 +18,7 @@ __exportStar(require("./domain/UniDateTime"), exports);
|
|
|
18
18
|
__exportStar(require("./domain/UniDuration"), exports);
|
|
19
19
|
__exportStar(require("./logic/utils/sleep"), exports);
|
|
20
20
|
__exportStar(require("./logic/checks/isUniDateTime"), exports);
|
|
21
|
+
__exportStar(require("./logic/checks/isUniDateTimeRange"), exports);
|
|
21
22
|
__exportStar(require("./logic/checks/isUniDate"), exports);
|
|
22
23
|
__exportStar(require("./logic/checks/isUniMonth"), exports);
|
|
23
24
|
__exportStar(require("./logic/casts/toMillisecondsSinceEpoch"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,uDAAqC;AACrC,sDAAoC;AACpC,+DAA6C;AAC7C,2DAAyC;AACzC,4DAA0C;AAC1C,yEAAuD;AACvD,iEAA+C;AAC/C,iEAA+C;AAC/C,iEAA+C;AAC/C,oEAAkD;AAClD,2DAAyC;AACzC,mFAAiE"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,uDAAqC;AACrC,sDAAoC;AACpC,+DAA6C;AAC7C,oEAAkD;AAClD,2DAAyC;AACzC,4DAA0C;AAC1C,yEAAuD;AACvD,iEAA+C;AAC/C,iEAA+C;AAC/C,iEAA+C;AAC/C,oEAAkD;AAClD,2DAAyC;AACzC,mFAAiE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isUniDate.js","sourceRoot":"","sources":["../../../src/logic/checks/isUniDate.ts"],"names":[],"mappings":";;;AAAA,uCAA4C;AAC5C,uCAAsC;AAGtC,8DAA2D;AAE3D;;GAEG;AACI,MAAM,SAAS,GAAG,CACvB,KAA4C,EACnC,EAAE,CAAC,IAAA,iBAAM,EAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,EAAE,YAAY,CAAY,CAAC;AAFzD,QAAA,SAAS,aAEgD;AAEtE;;GAEG;AACU,QAAA,SAAS,GAAG,IAAA,qBAAU,EAAC,CAAC,KAAa,EAAoB,EAAE;IACtE,IAAI,CAAC;QACH,OAAO,IAAA,iBAAS,EAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAC9C,CAAC;IAAC,
|
|
1
|
+
{"version":3,"file":"isUniDate.js","sourceRoot":"","sources":["../../../src/logic/checks/isUniDate.ts"],"names":[],"mappings":";;;AAAA,uCAA4C;AAC5C,uCAAsC;AAGtC,8DAA2D;AAE3D;;GAEG;AACI,MAAM,SAAS,GAAG,CACvB,KAA4C,EACnC,EAAE,CAAC,IAAA,iBAAM,EAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,EAAE,YAAY,CAAY,CAAC;AAFzD,QAAA,SAAS,aAEgD;AAEtE;;GAEG;AACU,QAAA,SAAS,GAAG,IAAA,qBAAU,EAAC,CAAC,KAAa,EAAoB,EAAE;IACtE,IAAI,CAAC;QACH,OAAO,IAAA,iBAAS,EAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isUniDateTime.js","sourceRoot":"","sources":["../../../src/logic/checks/isUniDateTime.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AACpC,uCAAsC;AAGtC,8DAA2D;AAE3D;;GAEG;AACI,MAAM,aAAa,GAAG,CAC3B,KAA4C,EAC/B,EAAE,CAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,CAAC,WAAW,EAAiB,CAAC;AAFzD,QAAA,aAAa,iBAE4C;AAEtE;;GAEG;AACU,QAAA,aAAa,GAAG,IAAA,qBAAU,EACrC,CAAC,KAAa,EAAwB,EAAE;IACtC,IAAI,CAAC;QACH,OAAO,IAAA,qBAAa,EAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAClD,CAAC;IAAC,
|
|
1
|
+
{"version":3,"file":"isUniDateTime.js","sourceRoot":"","sources":["../../../src/logic/checks/isUniDateTime.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AACpC,uCAAsC;AAGtC,8DAA2D;AAE3D;;GAEG;AACI,MAAM,aAAa,GAAG,CAC3B,KAA4C,EAC/B,EAAE,CAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,CAAC,WAAW,EAAiB,CAAC;AAFzD,QAAA,aAAa,iBAE4C;AAEtE;;GAEG;AACU,QAAA,aAAa,GAAG,IAAA,qBAAU,EACrC,CAAC,KAAa,EAAwB,EAAE;IACtC,IAAI,CAAC;QACH,OAAO,IAAA,qBAAa,EAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* checks whether an input is a valid UniDateTimeRange
|
|
3
|
+
*/
|
|
4
|
+
export declare const isUniDateTimeRange: import("type-fns").AssessWithAssure<any, {
|
|
5
|
+
since: string & import("domain-glossaries").OfGlossary<"uni-time.UniDateTime">;
|
|
6
|
+
until: string & import("domain-glossaries").OfGlossary<"uni-time.UniDateTime">;
|
|
7
|
+
} & Partial<import("domain-glossaries").OfGlossary<"uni-time.UniDateTimeRange">>>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isUniDateTimeRange = void 0;
|
|
4
|
+
const type_fns_1 = require("type-fns");
|
|
5
|
+
const isUniDateTime_1 = require("./isUniDateTime");
|
|
6
|
+
/**
|
|
7
|
+
* checks whether an input is a valid UniDateTimeRange
|
|
8
|
+
*/
|
|
9
|
+
exports.isUniDateTimeRange = (0, type_fns_1.withAssure)((input) => {
|
|
10
|
+
if (!input || typeof input !== 'object')
|
|
11
|
+
return false;
|
|
12
|
+
return (0, isUniDateTime_1.isUniDateTime)(input.since) && (0, isUniDateTime_1.isUniDateTime)(input.until);
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=isUniDateTimeRange.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isUniDateTimeRange.js","sourceRoot":"","sources":["../../../src/logic/checks/isUniDateTimeRange.ts"],"names":[],"mappings":";;;AAAA,uCAAsC;AAGtC,mDAAgD;AAEhD;;GAEG;AACU,QAAA,kBAAkB,GAAG,IAAA,qBAAU,EAC1C,CAAC,KAAU,EAA6B,EAAE;IACxC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,OAAO,IAAA,6BAAa,EAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAA,6BAAa,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAClE,CAAC,CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isUniMonth.js","sourceRoot":"","sources":["../../../src/logic/checks/isUniMonth.ts"],"names":[],"mappings":";;;AAAA,uCAA4C;AAC5C,uCAAsC;AAGtC,8DAA2D;AAE3D;;GAEG;AACI,MAAM,UAAU,GAAG,CACxB,KAA4C,EAClC,EAAE,CAAC,IAAA,iBAAM,EAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,EAAE,SAAS,CAAa,CAAC;AAFxD,QAAA,UAAU,cAE8C;AAErE;;GAEG;AACU,QAAA,UAAU,GAAG,IAAA,qBAAU,EAAC,CAAC,KAAa,EAAqB,EAAE;IACxE,IAAI,CAAC;QACH,OAAO,IAAA,kBAAU,EAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAC/C,CAAC;IAAC,
|
|
1
|
+
{"version":3,"file":"isUniMonth.js","sourceRoot":"","sources":["../../../src/logic/checks/isUniMonth.ts"],"names":[],"mappings":";;;AAAA,uCAA4C;AAC5C,uCAAsC;AAGtC,8DAA2D;AAE3D;;GAEG;AACI,MAAM,UAAU,GAAG,CACxB,KAA4C,EAClC,EAAE,CAAC,IAAA,iBAAM,EAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,EAAE,SAAS,CAAa,CAAC;AAFxD,QAAA,UAAU,cAE8C;AAErE;;GAEG;AACU,QAAA,UAAU,GAAG,IAAA,qBAAU,EAAC,CAAC,KAAa,EAAqB,EAAE;IACxE,IAAI,CAAC;QACH,OAAO,IAAA,kBAAU,EAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -11,14 +11,13 @@ exports.MILLISECONDS_PER_HOUR = exports.MILLISECONDS_PER_MINUTE * exports.MINUTE
|
|
|
11
11
|
exports.MILLISECONDS_PER_DAY = exports.MILLISECONDS_PER_HOUR * exports.HOURS_PER_DAY;
|
|
12
12
|
exports.MILLISECONDS_PER_WEEK = exports.MILLISECONDS_PER_DAY * exports.DAYS_PER_WEEK;
|
|
13
13
|
const toMilliseconds = (duration) => {
|
|
14
|
-
var _a, _b, _c, _d, _e, _f;
|
|
15
14
|
const total = [
|
|
16
|
-
(
|
|
17
|
-
(
|
|
18
|
-
(
|
|
19
|
-
(
|
|
20
|
-
(
|
|
21
|
-
|
|
15
|
+
(duration.weeks ?? 0) * exports.MILLISECONDS_PER_WEEK,
|
|
16
|
+
(duration.days ?? 0) * exports.MILLISECONDS_PER_DAY,
|
|
17
|
+
(duration.hours ?? 0) * exports.MILLISECONDS_PER_HOUR,
|
|
18
|
+
(duration.minutes ?? 0) * exports.MILLISECONDS_PER_MINUTE,
|
|
19
|
+
(duration.seconds ?? 0) * exports.MILLISECONDS_PER_SECOND,
|
|
20
|
+
duration.milliseconds ?? 0,
|
|
22
21
|
].reduce((totalNow, thisMilliseconds) => totalNow + thisMilliseconds, 0);
|
|
23
22
|
return total;
|
|
24
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toMilliseconds.js","sourceRoot":"","sources":["../../../src/logic/manipulate/toMilliseconds.ts"],"names":[],"mappings":";;;AAEa,QAAA,aAAa,GAAG,CAAC,CAAC;AAClB,QAAA,aAAa,GAAG,EAAE,CAAC;AACnB,QAAA,gBAAgB,GAAG,EAAE,CAAC;AACtB,QAAA,kBAAkB,GAAG,EAAE,CAAC;AACxB,QAAA,uBAAuB,GAAG,IAAI,CAAC;AAC/B,QAAA,uBAAuB,GAClC,+BAAuB,GAAG,0BAAkB,CAAC;AAClC,QAAA,qBAAqB,GAAG,+BAAuB,GAAG,wBAAgB,CAAC;AACnE,QAAA,oBAAoB,GAAG,6BAAqB,GAAG,qBAAa,CAAC;AAC7D,QAAA,qBAAqB,GAAG,4BAAoB,GAAG,qBAAa,CAAC;AAEnE,MAAM,cAAc,GAAG,CAAC,QAAqB,EAAU,EAAE
|
|
1
|
+
{"version":3,"file":"toMilliseconds.js","sourceRoot":"","sources":["../../../src/logic/manipulate/toMilliseconds.ts"],"names":[],"mappings":";;;AAEa,QAAA,aAAa,GAAG,CAAC,CAAC;AAClB,QAAA,aAAa,GAAG,EAAE,CAAC;AACnB,QAAA,gBAAgB,GAAG,EAAE,CAAC;AACtB,QAAA,kBAAkB,GAAG,EAAE,CAAC;AACxB,QAAA,uBAAuB,GAAG,IAAI,CAAC;AAC/B,QAAA,uBAAuB,GAClC,+BAAuB,GAAG,0BAAkB,CAAC;AAClC,QAAA,qBAAqB,GAAG,+BAAuB,GAAG,wBAAgB,CAAC;AACnE,QAAA,oBAAoB,GAAG,6BAAqB,GAAG,qBAAa,CAAC;AAC7D,QAAA,qBAAqB,GAAG,4BAAoB,GAAG,qBAAa,CAAC;AAEnE,MAAM,cAAc,GAAG,CAAC,QAAqB,EAAU,EAAE;IAC9D,MAAM,KAAK,GAAG;QACZ,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,6BAAqB;QAC7C,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,4BAAoB;QAC3C,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,6BAAqB;QAC7C,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,+BAAuB;QACjD,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,+BAAuB;QACjD,QAAQ,CAAC,YAAY,IAAI,CAAC;KAC3B,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,CAAC,QAAQ,GAAG,gBAAgB,EAAE,CAAC,CAAC,CAAC;IACzE,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAVW,QAAA,cAAc,kBAUzB"}
|
|
@@ -16,8 +16,7 @@ const startDurationStopwatch = (input, context) => {
|
|
|
16
16
|
const startTimeInNanoseconds = process_1.hrtime.bigint();
|
|
17
17
|
// define how to stop the stopwatch
|
|
18
18
|
const stop = (input) => {
|
|
19
|
-
|
|
20
|
-
const logOptions = (_a = input === null || input === void 0 ? void 0 : input.log) !== null && _a !== void 0 ? _a : logOptionsDefault;
|
|
19
|
+
const logOptions = input?.log ?? logOptionsDefault;
|
|
21
20
|
// compute the duration
|
|
22
21
|
const endTimeInNanoseconds = process_1.hrtime.bigint();
|
|
23
22
|
const durationInNanoseconds = endTimeInNanoseconds - startTimeInNanoseconds;
|
|
@@ -28,14 +27,14 @@ const startDurationStopwatch = (input, context) => {
|
|
|
28
27
|
if (!canLog)
|
|
29
28
|
return output;
|
|
30
29
|
// determine if we should log, based on threshold
|
|
31
|
-
const durationThresholdInMilliseconds = (0, toMilliseconds_1.toMilliseconds)(typeof logOptions === 'boolean' || !
|
|
30
|
+
const durationThresholdInMilliseconds = (0, toMilliseconds_1.toMilliseconds)(typeof logOptions === 'boolean' || !logOptions?.threshold
|
|
32
31
|
? { seconds: 1 }
|
|
33
32
|
: logOptions.threshold);
|
|
34
33
|
const durationThresholdWasBreached = durationThresholdInMilliseconds <= durationInMilliseconds;
|
|
35
34
|
if (!durationThresholdWasBreached)
|
|
36
35
|
return output;
|
|
37
36
|
// log the duration in human words, since allowed and should
|
|
38
|
-
const logLevel = typeof logOptions === 'boolean' || !
|
|
37
|
+
const logLevel = typeof logOptions === 'boolean' || !logOptions?.level
|
|
39
38
|
? 'debug'
|
|
40
39
|
: logOptions.level;
|
|
41
40
|
const durationInSeconds = roundToHundredths(Number(durationInNanoseconds) / 1e9); // https://stackoverflow.com/a/53970656/3068233
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startDurationStopwatch.js","sourceRoot":"","sources":["../../../../src/logic/observe/stopwatch/startDurationStopwatch.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAKjC,oEAAiE;AAEjE,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,+CAA+C;AAMvH;;;;;GAKG;AACI,MAAM,sBAAsB,GAAG,CACpC,KAAoC,EACpC,OAA0B,EAC1B,EAAE;IACF,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC;IACxB,MAAM,sBAAsB,GAAG,gBAAM,CAAC,MAAM,EAAE,CAAC;IAE/C,mCAAmC;IACnC,MAAM,IAAI,GAAG,CACX,KAAmB,EACqB,EAAE
|
|
1
|
+
{"version":3,"file":"startDurationStopwatch.js","sourceRoot":"","sources":["../../../../src/logic/observe/stopwatch/startDurationStopwatch.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAKjC,oEAAiE;AAEjE,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,+CAA+C;AAMvH;;;;;GAKG;AACI,MAAM,sBAAsB,GAAG,CACpC,KAAoC,EACpC,OAA0B,EAC1B,EAAE;IACF,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC;IACxB,MAAM,sBAAsB,GAAG,gBAAM,CAAC,MAAM,EAAE,CAAC;IAE/C,mCAAmC;IACnC,MAAM,IAAI,GAAG,CACX,KAAmB,EACqB,EAAE;QAC1C,MAAM,UAAU,GAAG,KAAK,EAAE,GAAG,IAAI,iBAAiB,CAAC;QAEnD,uBAAuB;QACvB,MAAM,oBAAoB,GAAG,gBAAM,CAAC,MAAM,EAAE,CAAC;QAC7C,MAAM,qBAAqB,GAAG,oBAAoB,GAAG,sBAAsB,CAAC;QAC5E,MAAM,sBAAsB,GAAG,iBAAiB,CAC9C,MAAM,CAAC,qBAAqB,CAAC,GAAG,GAAG,CACpC,CAAC,CAAC,+CAA+C;QAClD,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,sBAAsB,EAAE,EAAE,CAAC;QAEtE,0DAA0D;QAC1D,MAAM,MAAM,GAAG,UAAU,KAAK,KAAK,CAAC;QACpC,IAAI,CAAC,MAAM;YAAE,OAAO,MAAM,CAAC;QAE3B,iDAAiD;QACjD,MAAM,+BAA+B,GAAG,IAAA,+BAAc,EACpD,OAAO,UAAU,KAAK,SAAS,IAAI,CAAC,UAAU,EAAE,SAAS;YACvD,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;YAChB,CAAC,CAAC,UAAU,CAAC,SAAS,CACzB,CAAC;QACF,MAAM,4BAA4B,GAChC,+BAA+B,IAAI,sBAAsB,CAAC;QAC5D,IAAI,CAAC,4BAA4B;YAAE,OAAO,MAAM,CAAC;QAEjD,4DAA4D;QAC5D,MAAM,QAAQ,GACZ,OAAO,UAAU,KAAK,SAAS,IAAI,CAAC,UAAU,EAAE,KAAK;YACnD,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;QACvB,MAAM,iBAAiB,GAAG,iBAAiB,CACzC,MAAM,CAAC,qBAAqB,CAAC,GAAG,GAAG,CACpC,CAAC,CAAC,+CAA+C;QAClD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CACnB,GAAG,KAAK,SAAS,iBAAiB,qBAAqB,EACvD;YACE,GAAG,EAAE,KAAK;YACV,QAAQ,EAAE;gBACR,OAAO,EAAE,iBAAiB;gBAC1B,YAAY,EAAE,sBAAsB;aACrC;SACF,CACF,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,uBAAuB;IACvB,OAAO;QACL,sCAAsC;QACtC,IAAI;KACL,CAAC;AACJ,CAAC,CAAC;AA9DW,QAAA,sBAAsB,0BA8DjC"}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.waitFor = exports.WaitForTimedOutError = void 0;
|
|
13
4
|
const error_fns_1 = require("@ehmpathy/error-fns");
|
|
@@ -27,7 +18,7 @@ exports.WaitForTimedOutError = WaitForTimedOutError;
|
|
|
27
18
|
* - ensures best practices and a pit of success contract
|
|
28
19
|
* - uses readable names for maintainability
|
|
29
20
|
*/
|
|
30
|
-
const waitFor = (
|
|
21
|
+
const waitFor = async (
|
|
31
22
|
/**
|
|
32
23
|
* the procedure which extracts some output that we are waiting for
|
|
33
24
|
*
|
|
@@ -38,26 +29,25 @@ extractor,
|
|
|
38
29
|
/**
|
|
39
30
|
* options to control the wait
|
|
40
31
|
*/
|
|
41
|
-
options) =>
|
|
42
|
-
var _a, _b;
|
|
32
|
+
options) => {
|
|
43
33
|
// define the timeout and interval
|
|
44
|
-
const timeout =
|
|
45
|
-
const interval =
|
|
34
|
+
const timeout = options?.timeout ?? DEFAULT_TIMEOUT;
|
|
35
|
+
const interval = options?.interval ?? DEFAULT_INTERVAL;
|
|
46
36
|
// track the timestamps of interest
|
|
47
37
|
const startAtMSE = new Date().getTime();
|
|
48
38
|
const timeoutAtMSE = startAtMSE + (0, toMilliseconds_1.toMilliseconds)(timeout);
|
|
49
39
|
// check each interval
|
|
50
40
|
while (new Date().getTime() < timeoutAtMSE) {
|
|
51
|
-
const output =
|
|
41
|
+
const output = await extractor();
|
|
52
42
|
if ((0, type_fns_1.isNotUndefined)(output))
|
|
53
43
|
return output;
|
|
54
|
-
|
|
44
|
+
await (0, sleep_1.sleep)(interval);
|
|
55
45
|
}
|
|
56
46
|
// throw an error if reached here, since it implies a timeout
|
|
57
47
|
throw new WaitForTimedOutError('no output returned from waitFor.extractor', {
|
|
58
48
|
interval,
|
|
59
49
|
timeout,
|
|
60
50
|
});
|
|
61
|
-
}
|
|
51
|
+
};
|
|
62
52
|
exports.waitFor = waitFor;
|
|
63
53
|
//# sourceMappingURL=waitFor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waitFor.js","sourceRoot":"","sources":["../../../src/logic/wrappers/waitFor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"waitFor.js","sourceRoot":"","sources":["../../../src/logic/wrappers/waitFor.ts"],"names":[],"mappings":";;;AAAA,mDAAmD;AACnD,uCAAwD;AAGxD,iEAA8D;AAC9D,0CAAuC;AAEvC,MAAM,eAAe,GAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AACrD,MAAM,gBAAgB,GAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AAEtD,MAAa,oBAAqB,SAAQ,wBAAY;CAAG;AAAzD,oDAAyD;AAEzD;;;;;;;GAOG;AACI,MAAM,OAAO,GAAG,KAAK;AAC1B;;;;;GAKG;AACH,SAA2B;AAE3B;;GAEG;AACH,OAUC,EACyB,EAAE;IAC5B,kCAAkC;IAClC,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,eAAe,CAAC;IACpD,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,gBAAgB,CAAC;IAEvD,mCAAmC;IACnC,MAAM,UAAU,GAAW,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IAChD,MAAM,YAAY,GAAW,UAAU,GAAG,IAAA,+BAAc,EAAC,OAAO,CAAC,CAAC;IAElE,sBAAsB;IACtB,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,YAAY,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QACjC,IAAI,IAAA,yBAAc,EAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAC1C,MAAM,IAAA,aAAK,EAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;IAED,6DAA6D;IAC7D,MAAM,IAAI,oBAAoB,CAAC,2CAA2C,EAAE;QAC1E,QAAQ;QACR,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC;AA5CW,QAAA,OAAO,WA4ClB"}
|
package/license.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2020 ehmpathy
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@ehmpathy/uni-time",
|
|
3
3
|
"author": "ehmpathy",
|
|
4
4
|
"description": "a glossary of universally intuitive time, date, and duration domain literals",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.8.1",
|
|
6
6
|
"repository": "ehmpathy/uni-time",
|
|
7
7
|
"homepage": "https://github.com/ehmpathy/uni-time",
|
|
8
8
|
"keywords": [
|
|
@@ -67,8 +67,8 @@
|
|
|
67
67
|
"@typescript-eslint/parser": "7.8.0",
|
|
68
68
|
"core-js": "3.26.1",
|
|
69
69
|
"cz-conventional-changelog": "3.3.0",
|
|
70
|
-
"declapract": "0.
|
|
71
|
-
"declapract-typescript-ehmpathy": "0.
|
|
70
|
+
"declapract": "0.12.0",
|
|
71
|
+
"declapract-typescript-ehmpathy": "0.39.7",
|
|
72
72
|
"depcheck": "1.4.3",
|
|
73
73
|
"eslint": "8.56.0",
|
|
74
74
|
"eslint-config-airbnb-typescript": "18.0.0",
|