@zelgadis87/utils-core 4.2.3 → 4.3.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.
@@ -1,10 +1,12 @@
1
- export interface ICancelablePromise<T> extends Promise<T> {
1
+ export interface ICancelable {
2
2
  cancel(): void;
3
3
  }
4
+ export interface ICancelablePromise<T> extends Promise<T>, ICancelable {
5
+ }
4
6
  export declare class DeferredCanceledError extends Error {
5
7
  constructor();
6
8
  }
7
- export declare class Deferred<T = void> implements Promise<T>, ICancelablePromise<T> {
9
+ export declare class Deferred<T = void> implements ICancelablePromise<T> {
8
10
  private _pending;
9
11
  private readonly _internals;
10
12
  get pending(): boolean;
@@ -20,8 +22,8 @@ export declare class Deferred<T = void> implements Promise<T>, ICancelablePromis
20
22
  then<R = T, S = T>(onFulfilled: ((value: T) => R | PromiseLike<R>) | null | undefined, onRejected?: ((reason: Error) => S | PromiseLike<S>) | null | undefined): Promise<R | S>;
21
23
  catch<R = T>(onRejected: ((reason: Error) => R | PromiseLike<R>) | null | undefined): Promise<T | R>;
22
24
  finally(onfinally: (() => void) | null | undefined): Promise<T>;
23
- get asPromise(): Promise<T>;
24
- get asCancelablePromise(): ICancelablePromise<T>;
25
+ asPromise(): Promise<T>;
26
+ asCancelablePromise(): ICancelablePromise<T>;
25
27
  protected createInternals(): {
26
28
  promise: Promise<T>;
27
29
  resolve: (value: T) => void;
@@ -1,6 +1,6 @@
1
- import { ICancelablePromise } from "../async/Deferred.js";
1
+ import { ICancelable, ICancelablePromise } from "../async/Deferred.js";
2
2
  import { TComparisonResult } from "../sorting/index.js";
3
- import { TIntervalHandle, TTimeoutHandle, TVoidFunction } from "../types";
3
+ import { TIntervalHandle, TTimeoutHandle } from "../types";
4
4
  import TimeBase from "./TimeBase";
5
5
  import TimeInstant from "./TimeInstant";
6
6
  import TimeUnit from "./TimeUnit";
@@ -20,18 +20,16 @@ export declare class TimeDuration extends TimeBase<TimeDuration> {
20
20
  * @todo[2023-06] By default should show the secondary unit only when actually needed (eg, 1h 20m & 3h, instead of 1h 20m & 3h 28m)
21
21
  * @todo[2023-06] Should not allow negative durations, as this is a duration and not an instant.
22
22
  * @returns the duration, with only the most significant units displayed as a human readable string, eg: 1d 20h, 10m 30s.
23
- */
23
+ */
24
24
  get formatted(): string;
25
25
  /**
26
- * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
27
- */
26
+ * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
27
+ */
28
28
  absolute(): TimeDuration;
29
29
  interval(cb: () => unknown): TIntervalHandle;
30
30
  timeout(cb: () => unknown): TTimeoutHandle;
31
31
  promise(): ICancelablePromise<void>;
32
- delay(cb: () => unknown): {
33
- cancel: TVoidFunction;
34
- };
32
+ delay(cb: () => unknown): ICancelable;
35
33
  debounce<T>(fn: (t: T) => void): (t: T) => void;
36
34
  toDigitalClock(): string;
37
35
  get asSeconds(): string;
@@ -47,8 +45,8 @@ export declare class TimeDuration extends TimeBase<TimeDuration> {
47
45
  isEmpty(): boolean;
48
46
  isNotEmpty(): boolean;
49
47
  /**
50
- * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
51
- */
48
+ * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
49
+ */
52
50
  protected get _duration(): string;
53
51
  toString(): string;
54
52
  static parseHumanTime(humanTime: string): TimeDuration;
@@ -1,6 +1,5 @@
1
- import { ICancelablePromise } from "../async/Deferred.js";
1
+ import { ICancelable, ICancelablePromise } from "../async/Deferred.js";
2
2
  import { TComparisonResult } from "../sorting/index.js";
3
- import { TVoidFunction } from "../types";
4
3
  import TimeBase from "./TimeBase";
5
4
  import TimeDuration from "./TimeDuration";
6
5
  import { TTimeInstantBuilder, TTimeInstantCreationParameters } from "./TimeInstantBuilder.js";
@@ -18,9 +17,7 @@ export declare class TimeInstant extends TimeBase<TimeInstant> {
18
17
  distanceFromEndOfDay(): TimeDuration;
19
18
  atEndOfDay(): TimeInstant;
20
19
  promise(): ICancelablePromise<void>;
21
- delay(cb: () => unknown): {
22
- cancel: TVoidFunction;
23
- };
20
+ delay(cb: () => unknown): ICancelable;
24
21
  ensureInTheFuture(): void;
25
22
  ensureInThePast(): void;
26
23
  isToday(): boolean;
@@ -126,7 +123,7 @@ export declare class TimeInstant extends TimeBase<TimeInstant> {
126
123
  static fromUnixTimestamp(unixTimestamp: number): TimeInstant;
127
124
  static fromUnixSeconds(unixSeconds: number): TimeInstant;
128
125
  static fromParameters(parameters: Partial<TTimeInstantCreationParameters>, referenceDate?: Date | TimeInstant): TimeInstant;
129
- static greatest(instant1: TimeInstant, instant2: TimeInstant): TimeInstant;
126
+ static highest(instant1: TimeInstant, instant2: TimeInstant): TimeInstant;
130
127
  static lowest(instant1: TimeInstant, instant2: TimeInstant): TimeInstant;
131
128
  static builder(): TTimeInstantBuilder;
132
129
  /**
@@ -0,0 +1,11 @@
1
+ import { TimeDuration } from "./index.ts";
2
+ import TimeInstant from "./TimeInstant.ts";
3
+ export declare class TimeRange {
4
+ readonly start: TimeInstant;
5
+ readonly duration: TimeDuration;
6
+ readonly end: TimeInstant;
7
+ protected constructor(start: TimeInstant, duration: TimeDuration);
8
+ static fromInstants(a: TimeInstant, b: TimeInstant): TimeRange;
9
+ static fromInstantWithDuration(a: TimeInstant, d: TimeDuration): TimeRange;
10
+ static fromNowWithDuration(d: TimeDuration): TimeRange;
11
+ }
@@ -2,5 +2,6 @@ export { default as RandomTimeDuration } from './RandomTimeDuration';
2
2
  export { TPredefinedTimeDuration, TValidTimeDuration, TimeDuration, isAllowedTimeDuration } from './TimeDuration';
3
3
  export { default as TimeFrequency } from './TimeFrequency';
4
4
  export * from './TimeInstant';
5
+ export * from './TimeRange.js';
5
6
  export { default as TimeUnit } from './TimeUnit';
6
7
  export * from './types';
@@ -1 +1 @@
1
- {"fileNames":["../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/types/functions.ts","../src/sorting/types.ts","../src/utils/constant.ts","../src/sorting/comparisonchain.ts","../src/sorting/sorter.ts","../src/sorting/index.ts","../src/types/nulls.ts","../src/types/arrays.ts","../src/types/booleans.ts","../src/types/empties.ts","../src/types/errors.ts","../src/types/json.ts","../src/types/numbers.ts","../src/async/deferred.ts","../src/random/randominterval.ts","../src/random/randompercentage.ts","../src/random/index.ts","../src/utils/bindthis.ts","../src/utils/entries.ts","../src/utils/groupby.ts","../src/utils/iff.ts","../src/utils/indexby.ts","../src/utils/jsonclonedeep.ts","../src/utils/math.ts","../src/utils/noop.ts","../src/utils/omit.ts","../src/types/strings.ts","../src/utils/pad.ts","../src/utils/pluralize.ts","../src/utils/round.ts","../src/utils/sortby.ts","../src/async/cancelabledeferred.ts","../src/lazyasync.ts","../../../node_modules/.pnpm/small-date@2.0.1/node_modules/small-date/index.d.ts","../src/time/timeunit.ts","../src/time/timebase.ts","../src/time/types.ts","../src/time/timeinstantbuilder.ts","../src/time/timeinstant.ts","../src/logger.ts","../src/optional.ts","../src/time/randomtimeduration.ts","../src/time/timefrequency.ts","../src/time/index.ts","../src/upgrade/errors.ts","../src/upgrade/types.ts","../src/upgrade/gettransitionspath.ts","../src/upgrade/dataupgrader.ts","../src/upgrade/index.ts","../src/index.ts","../src/async/ratethrottler.ts","../src/async/semaphore.ts","../src/async/index.ts","../src/utils/throttle.ts","../src/utils/uniqby.ts","../src/utils/uniq.ts","../src/utils/uniqbykey.ts","../src/utils/withtrycatch.ts","../src/utils/withtrycatchasync.ts","../src/utils/wrap.ts","../src/utils/index.ts","../src/time/timeduration.ts","../src/types/promises.ts","../src/types/records.ts","../src/types/index.ts","../src/lazy.ts","../src/utils/upsert.ts"],"fileIdsList":[[72],[59],[72,90,109,110],[72,101,108],[72,108],[64,75,91,98,99,102,107,111,119,123,124],[123],[65],[83,97],[59,65],[73,74],[73],[60,61,123],[60,62,63],[93,95,97,100,101,120],[73,93,120],[93],[64,72,75,93,94,97,119,123],[120,123],[64,72,92,93,94,95,96,120,123],[59,65,95,97],[59,64,65],[59,65,66,67,68,69,70,71,85,121,122],[69],[59,120],[65,66],[103,104,105,119,123],[104,123],[104,106],[61,76,77,78,79,80,81,82,83,84,86,87,88,89,112,113,114,115,116,117,118],[66],[65,85],[101,111,123],[61,113],[113]],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"9e8ca8ed051c2697578c023d9c29d6df689a083561feba5c14aedee895853999","affectsGlobalScope":true,"impliedFormat":1},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"45d8ccb3dfd57355eb29749919142d4321a0aa4df6acdfc54e30433d7176600a","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a94697425a99354df73d9c8291e2ecd4dddd370aed4023c2d6dee6cccb32666","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3f9fc0ec0b96a9e642f11eda09c0be83a61c7b336977f8b9fdb1e9788e925fe","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true,"impliedFormat":1},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true,"impliedFormat":1},{"version":"15c1c3d7b2e46e0025417ed6d5f03f419e57e6751f87925ca19dc88297053fe6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"710972dab6016ae9e74c1513276811dbf00f345c85efe27740f9f0977a374a5d","signature":"d6a90ccda7da792c44876fd0970a64091edb80a12a6cc4180b711359a16b6ad7"},{"version":"f7f78db9933db871fef76a88b2b3e9e4a55cfc8a1d10a57d094089eee4916112","signature":"2d0ac519b493abc8d75b554343855f640bebe392026a85c8011f2f7b55e0cde0"},{"version":"41a70337edbaebfb0fdd366ddf0816fefea5989c75bdffdbb9ff698256951c74","signature":"14ec40ede4588be7502237d1e7e701f90a6507417b6b98401f550bb12e2fbf55"},{"version":"3368ada33db31e713d715d379245783f2f83807f8bf451e8984d6cb9798006b8","signature":"3f9a02628d3942552af0db48dd1aec763a73f64e23b51b4c90b8698bb9e28a3e"},{"version":"6e81a5902f4aa66d5f23b7e5e0719142b460030946365085f20678cb22ba78d2","signature":"ab7ae87ac3f478b45407c86f5279125a3d7cc2b254a8695527d7cbfd13f1d4ce"},{"version":"1ab20f387ef7fa5cf94272900952596792f583f45bbd58d9adf2d623349d060e","signature":"ec49ec1ca3ddc1fbcdb45f1740ccd72d20fbf450036286c4373d9d13ddf2c4a2"},{"version":"0d578fa07b7e41030f7ad5176898a0a70a092fc45a264ce67498f63e544344e1","signature":"eb96292ecf52597cf826715047ec8411375f0ac8a43d0bd12f87dd3190838a04"},{"version":"3f547ac405acecda43d7c1f91b9a11fddb39af7e629e7303c18eef50f1da28a7","signature":"9633a8d205be88be6c282f5d1d20e7ec8e1c493ac27471d1d66fca65d3c2be7d"},{"version":"56571c3f44c6312462e8395ed75d05887dcbcb1581a0ad47dd72bcdbb898ea84","signature":"853de26cb0c4a51d7b511bf303ff4d6680bc18d36b3f2f6d7b8008c8927b58a1"},{"version":"80cfb7f027e1ed06149023ea32ba3d176db0325b675ade827d4cdf2b8cd715fc","signature":"9fc3664a9a2be65e8bf0ca4475f184a16c7a0b03e78c77cabe45e47d78bcd3db"},{"version":"1f21eecb15abc3e5a80f5da077d28867200550954f682591cab49942f818a7da","signature":"0fe0ea76c20ca9ee0577bacb7ffabec72f138baa6f605009f241f9a2db6984d4"},{"version":"3970cf2d617a468ab86d9d226008602d95fbc082b4a9c8996ccd33a31f1fb704","signature":"1ba06dd7ca78b404471b0b4d2aa39807d9b439df1b04054037358b10d5a330a8"},{"version":"7b64ad79eab8b8f6f7ba60ae55d44ef817385165ae3588c09fab650efcdc35da","signature":"33e73f88f0bd53d987b909847e6e5656c535a52b4e1062c867ea7f00fa681bf9"},{"version":"5ea4a45f8af547253f0a1c8c13605f62d5adb531f65f23fffa101cc34f7212ad","signature":"8a1ed3f9ebec63260bc9f33c781b2f1d60ba61d8221e1360e04206d8079ccc3c"},{"version":"2d8a26fb3b5b1815c7073e91d1e6b98488dd92617ca04f5c70a26426bba59264","signature":"92cfe3b0878714459d8f4c46d1870cc0c1ced7f3726b5831560ee90bb52e6948"},{"version":"830cc95dc9e66f24fa3fb16e9eb1ccc2b6a082f8fb6479e523f24e8b4835061d","signature":"b52d36a910abd362550396a7ae3e970cc6360fb6599e08d0445290c6a0aadb90"},{"version":"20714847850a2d8390184047b6150784221d19ecf514a07c01fe7b40db0e62ab","signature":"46dcacf4f84ed7578dd5d15147953ffd6f17832c7a99d5bb66f9f7dc63784a6c"},{"version":"c9be16daf6b334ccff7002c844eff5a6f5f8f406dd8ef9ae4059308b70f0c90b","signature":"d464231cd26c11d9ae98811b64266bbff099ba26f467e8ac8833cc2af2614ced"},{"version":"d2218597f31f96afc7b29b386697c93a94395fd616d905b863c3685c7547abd7","signature":"5907986ed181648bd0dbe28ab20ed531b6a8ba080199d9beab0a5973e3d25753"},{"version":"d1dc9203a262a1a20848a5c3b37e3929536a96aee6f128658ebd399a676ee88e","signature":"dfc54c72097f1526237c6f148d959587f6c3a6309db8c454fbb68bac92233e20"},{"version":"818fd4b3a3f948731d148152a80b5ae5e42cf5597a0c339830a0bb05d70ff686","signature":"a552668dda1fd06d526afb31afd8624c2fd2f0ecb65e4ffd8d27fbbf36f68468"},{"version":"bff44eee0154de48dd5202be47dd0d4c1cac773ef58296c89d312a4112a33772","signature":"42c9d1fa4c702692045f9d20d0fbea589a5255ec239d1a5f331902d9f9912a59"},{"version":"e04775f0e7743ace633a34fb715d42a80c85b5f92aa3eac8e83aff236c9020c3","signature":"a6952f6b1acfebcbc9d07e3d00e474531f0e98bed4e1c5e760dabe4d98f3d89d"},{"version":"115bd1440e08ba1115368f8e99e5371f837ed5dd4dfe5c11a0dabad03ede355c","signature":"a6632950be386e363cd24bc5f52f38bae67dd4ba0cb38a430d0ebf6c225d38b7"},{"version":"b862cbefe08dc2ac3b6806e7cf34230c9ace74fef0f6238aaf9528e1ef71827d","signature":"4bbaa921f498157fb3f9363c817ff16c414926f74bb935aab976e2bb56c1b84d"},{"version":"aec72d1243ed24d05cc8c1399b6ca2d709f478dc93fa2411c9373f422195610c","signature":"ceb685f7feca8029035f2028a681bfb25a33a81cb870f235c77bd1f1e48af2e5"},{"version":"68deaf2f260cd5857b1f45c1dc25a03b77c093ee08e3d1f587c6919927bbc990","signature":"8b33421a86e308df04613596fcb083a760872e0745c277011f4ad9672e3f227b"},{"version":"b36c59ff9135b3af0b65147146881dbc6d21dbb4b5857fc3ff0db4ae4d404d06","signature":"99ba7f0dfda819667065b7cd4323a5b4c82a05fb63922de358458cd368fb88b2"},{"version":"d41b2a6d9a8e1ee09e7953f93c261f3942d800f433023fc80668d447a6017a9f","signature":"e0a0f81b2fdf45f1211811255afafc322b7cc9e784ee465ac31f4abdde07e5a9"},{"version":"1b72e1f3724b04b5b19a7514ecfdb59445816ccde3d016cb77d70bd6fbaff6f8","signature":"a29a11ea1f06a29ebc9d88a8439d78598d2d4977115a70705902c117d2a19e76"},{"version":"dd16e4f177955dda7ff4d566808a315dcfd18cd0906da204d7efb47277286530","signature":"a3578bc3b767f260c900afed6813bd0f56c98a1216379749dd76202a4f2e4b14"},{"version":"963e90bd6a94bd500329447e92ecb2be1efaab48d53d81e6f143dc63cb2aa76f","signature":"c6eff6bde8066f2980b221de77dc801f3a2a27525a9c3879d37426941b7a413c"},{"version":"4c14e4a188a74583fea33c58b17fcd44b0536b9a09f9938a7fa0a4411cdf5722","signature":"d08bdc2df3b64a80c3870fcc3f1a802c1bbd88d9efaefe46bf5a7aeeb749b5ad"},{"version":"c77f0c58173b1b3364632db5ee4455bac69cbf0c494b5a777bf80ca4aa8c9560","impliedFormat":1},{"version":"cb6e4d47248ad5cbeed78f4164cf996fb276d54a580ac52e3a7feb92c4336d77","signature":"86463269677354ddc223e39011b4b5f231cdc5d072d08fb0e4b431a915e1f6eb"},{"version":"fe78af98b38dddb04bbf42a17e0ff5d3509ad062a97cd04d08cadbea7425627c","signature":"58686fcfd1c2f6e21d3dd7f52d347e73a9879aa634acd1baafe5f2c2e4c09e9a"},{"version":"67b4645f4fc756789696814e6e3c192a57a7e89b138d890442547b047417f148","signature":"13339d499ac59712315f756a08c00109fa86ddbdf0579d573a8526bcaf5e3700"},{"version":"d9dc12145ae08b9e0375ce85977134b6c98b6b3428812ffa2321d96d55b8cc5c","signature":"626afa709798521c427847bb617e1379d22b90d6098118ce08e137383dab2965"},{"version":"e34acc83fcebf6dde757f23e8e78b94484c3b8889d7bb121edf8404e60746845","signature":"32e4ed0ab95b7627f3e99464cb140c16bf78288bff60d832654cba08f1e40919"},{"version":"aafa6811259f5f175367f3f482898789514aae6434e9ac911d0a9cd21b6b6269","signature":"d79d663e6b621d15b39aca1d448793fc2acee759e6e7c10f3432023972ddf007"},{"version":"140b8538a2c0cd54e0f007caf1f90c33a58594116fbf56a1f27f426afae5b36d","signature":"7daad2dae15c28accd363a5f69cad8ae2fa0ad110eadc6f319c4715a8bbb29aa"},{"version":"cc0e85ac3c026b4c42d865beaf4e4b6144fe9ff826657a844838879fda3dde6f","signature":"975d013c31f48ecb26867d0f98f13d2eaebb4af2bfbe6b5fd9a4d38fdccd5656"},{"version":"4cbaf1a0c6ef2813e50255154c26b68481478ec170c8999bfc1d4292d2e671da","signature":"11c308cc51acb6c9d4f5fcc77fba289bcaa0647477092fbbbd777cc0fd95d8cb"},{"version":"c3ab2d3bcd3acda91736013f2338127ecae65463a900647b522726454785b24d","signature":"c0d7f918c226764cc6a345557ebb59bfa4d72dd93b23dd3399b454474ce056f6"},{"version":"5b2927131599d55e0ee730c7a2afc764ff39199a5d186b510fc3eca82f4ef1ff","signature":"d6fc507f1c2ecd14c0882a0e00a1ba2a580c6e45550a3a5e868d7bee4b1922b6"},{"version":"9ef6e64d9f81af5e6e0a06b056fa74638a5e48ba3e5bdedc9d262148609dec43","signature":"ec5154c62fc54d4c9c9aac0d79c1a2e57cef6dddfe9f6ff9ae9933ce93350516"},{"version":"279b25dd44e5e11771ebc653f95380fdb60d0d0caf3df6cd4b6510700d25e1ce","signature":"deb20c0cf80a8512b23dacaaccff1a96f13056a57b4b329d8106e70987639f3e"},{"version":"685c56fb04c565cca70a3e9660c1db15b56125f0929e9e1c8651071b1625ca4a","signature":"9ba1e380251d5b6c73fc0ef3c153f691e963c36cca9e2ba61864b24246791a0c"},{"version":"22577c900676846354224462f8a6b3e0e5033cd14a501ea46107e67a4ab7863f","signature":"70fd81e903686acf6e994565edb1588cc619b816646ea1a89ac9a47b45d25737"},{"version":"4e92eb4d4fa5bd21987ba473e0054d0393184ec9a33b351ffa4dbcef5fb9ecc3","signature":"ab815d46f9952bd31fc7602ab41ef6fdfcaef4b7dd3cd4c7557a75c52fd9001c"},{"version":"de9892afb7f873f59777bccfb79600799e79399d3f5000a9c36e428b8d6f9e3c","signature":"c25a63b006ce54b05918dc5df4650a4b72580eef3ef3e889fdaba83925dfb367"},{"version":"c2b7ff845ca1327e703b39693d824b9a34003419c1bd9879b831134f93d77fdb","signature":"3f2b9bd0340a9cbcdbbfdbd7bf828a49c477dddd3473ed7816310700becf5961"},{"version":"1d0ec7969ec2b4b1bec65e7924b5f64d3dd0c39dba60a6c65d6a301589bf6e76","signature":"86122f878833e22a38a54656b9fe61736ba6c103b6a2fa01dae70458aec4353d"},{"version":"60f9a401c5109b96a9d833d5676a78afef722f974119b6a353dafb2d260c0fb3","signature":"a83bb6c06a593ff08f3f92127360478f9088d84473f12d971fe69595d0ac237d"},{"version":"68c2ad396b93b1c5d39c3d2fc221fac5db3a79687d000ab8a3595b92eb28927c","signature":"217bd1741b991da9879e53c23ad81eeca2c7316d13ae177727e531704c13dce3"},{"version":"33d51bd6a2bdc9a2fc5c80e1c459c3c597ee98ab02fb52d8dd1acd89161ed6e6","signature":"a335f0f94e1c439bfe040fa754d093ecf6beb6357a4da1db70ffa188dc4415dd"},{"version":"4632c48d8d0bbb103a5594c6ea37eb345e884e7c11da3f7c341a4e944ef2d3dc","signature":"4ffb82aa0d7f0e2079d4c08f3fbb390bc6ee370f289216dab37a31ea748ee18d"},{"version":"2d89647698d15852528c3efcafd97aba15bef14cc98391792723c35ac628807a","signature":"2d7b8c35d9f482db0f39d60ce9ff6717149e22acbdfa87b30def9cecb2e66b5d"},{"version":"fc1cf2de5e836c1061c3d90d6d3e3e6083643bd8cd6e523aaf085ce760b5918c","signature":"afbee399954c8db6614dddb0e0a16b02e72a0a44995f8e69d82c34f4215cc06a"},{"version":"cbc0f868094b3915e03e854f3ecdd83a8b8bdc4a2b4a4952ab3fcaa05227a9c4","signature":"ac7c8f5bf90bc90b3d5a938a0d83f118f17a53cd68d48f17a61ef0e1054c4bae"},{"version":"c482b9dc3260ee480bd85622832539a991d855ec6fe5576194ceea2ee7b49992","signature":"b81d918a2ec75aa4223800b1a563fdca1a5db2e889794e93206c58590e898408"},{"version":"d04f21d06f41650136f60a22f697de62b39baf030f438d744db83a90ba769fd7","signature":"d5672aad98abdd649fe984de0676032bccb9baf697c1714987b2647a818ae897"},{"version":"d3816328a097970f46726b8e2f34f1e66fab2d95a2463fe0a3a3460308fc06aa","signature":"0cce1783c4c412541b1118f66a401ee1076d2b45f6de005ffa10d7a3138bdbc3"},{"version":"09e009ea94ab39fe84d0b700f7bb906e15df9cd0a85fc7e5cda8ce365b77b611","signature":"022c0b4906500b8719a3e8022f58c7b86130f48e069c9a69a95c7e78a52b89e5"},{"version":"d94711e31023aba6110e56d2e73c0de779546ccb240025170e2fa0d681831c4f","signature":"4b74050ede7a2e03d093321fe17ea261959660b7cd784913562b339162370ddb"},{"version":"9d436df13ce6e1aeb2fd98bf9ec67aebd51e6e59bc14392c83f449c952527295","signature":"c5c9b67f95b65ea2c92336169a4f48b1033a9c4ac73c3acbc5d691a73dc688e8"},{"version":"dba5166ad9db9ba648c1032ebbd34dcd0d085b50023b839ef5c68ca1db93a563","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}],"root":[[59,91],[93,125]],"options":{"allowImportingTsExtensions":true,"composite":true,"declaration":true,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":7,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":false,"noUnusedParameters":false,"outDir":"./","rootDir":"../src","skipLibCheck":true,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":9,"tsBuildInfoFile":"./tsconfig.tsbuildinfo"},"referencedMap":[[90,1],[72,2],[111,3],[109,4],[110,5],[108,6],[124,7],[91,8],[98,9],[99,10],[75,11],[74,12],[62,13],[64,14],[63,13],[60,2],[102,15],[100,16],[94,17],[120,18],[101,19],[97,20],[96,21],[95,7],[66,22],[123,23],[70,24],[65,2],[71,2],[121,25],[85,26],[106,27],[105,28],[107,29],[104,7],[77,7],[78,7],[79,7],[119,30],[80,7],[81,7],[82,31],[84,7],[86,32],[89,7],[112,33],[114,34],[113,7],[115,35],[116,7],[117,7]],"latestChangedDtsFile":"./time/TimeInstant.d.ts","version":"5.6.3"}
1
+ {"fileNames":["../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/types/functions.ts","../src/sorting/types.ts","../src/utils/constant.ts","../src/sorting/comparisonchain.ts","../src/sorting/sorter.ts","../src/sorting/index.ts","../src/types/nulls.ts","../src/types/arrays.ts","../src/types/booleans.ts","../src/types/empties.ts","../src/types/errors.ts","../src/types/json.ts","../src/types/numbers.ts","../src/async/deferred.ts","../src/random/randominterval.ts","../src/random/randompercentage.ts","../src/random/index.ts","../src/utils/bindthis.ts","../src/utils/entries.ts","../src/utils/groupby.ts","../src/utils/iff.ts","../src/utils/indexby.ts","../src/utils/jsonclonedeep.ts","../src/utils/math.ts","../src/utils/noop.ts","../src/utils/omit.ts","../src/types/strings.ts","../src/utils/pad.ts","../src/utils/pluralize.ts","../src/utils/round.ts","../src/utils/sortby.ts","../src/async/cancelabledeferred.ts","../src/lazyasync.ts","../../../node_modules/.pnpm/small-date@2.0.1/node_modules/small-date/index.d.ts","../src/time/timeunit.ts","../src/time/timebase.ts","../src/time/types.ts","../src/time/timeinstantbuilder.ts","../src/time/timeinstant.ts","../src/logger.ts","../src/optional.ts","../src/time/randomtimeduration.ts","../src/time/timefrequency.ts","../src/time/timerange.ts","../src/time/index.ts","../src/upgrade/errors.ts","../src/upgrade/types.ts","../src/upgrade/gettransitionspath.ts","../src/upgrade/dataupgrader.ts","../src/upgrade/index.ts","../src/index.ts","../src/async/ratethrottler.ts","../src/async/semaphore.ts","../src/async/index.ts","../src/utils/throttle.ts","../src/utils/uniqby.ts","../src/utils/uniq.ts","../src/utils/uniqbykey.ts","../src/utils/withtrycatch.ts","../src/utils/withtrycatchasync.ts","../src/utils/wrap.ts","../src/utils/index.ts","../src/time/timeduration.ts","../src/types/promises.ts","../src/types/records.ts","../src/types/index.ts","../src/lazy.ts","../src/utils/upsert.ts"],"fileIdsList":[[72],[59],[72,90,110,111],[72,101,109],[72,109],[64,75,91,98,99,103,108,112,120,124,125],[124],[65],[83,97],[59,65],[73,74],[73],[60,61,124],[60,62,63],[93,95,97,100,101,102,121],[73,93,121],[93],[64,72,75,93,94,97,120,124],[121,124],[64,72,92,93,94,95,96,121],[59,65,95,97],[97,103],[59,64,65],[59,65,66,67,68,69,70,71,85,122,123],[69],[59,121],[65,66],[104,105,106,120,124],[105,124],[105,107],[61,76,77,78,79,80,81,82,83,84,86,87,88,89,113,114,115,116,117,118,119],[66],[65,85],[101,112,124],[61,114],[114]],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"9e8ca8ed051c2697578c023d9c29d6df689a083561feba5c14aedee895853999","affectsGlobalScope":true,"impliedFormat":1},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"45d8ccb3dfd57355eb29749919142d4321a0aa4df6acdfc54e30433d7176600a","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a94697425a99354df73d9c8291e2ecd4dddd370aed4023c2d6dee6cccb32666","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3f9fc0ec0b96a9e642f11eda09c0be83a61c7b336977f8b9fdb1e9788e925fe","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true,"impliedFormat":1},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true,"impliedFormat":1},{"version":"15c1c3d7b2e46e0025417ed6d5f03f419e57e6751f87925ca19dc88297053fe6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"710972dab6016ae9e74c1513276811dbf00f345c85efe27740f9f0977a374a5d","signature":"d6a90ccda7da792c44876fd0970a64091edb80a12a6cc4180b711359a16b6ad7"},{"version":"f7f78db9933db871fef76a88b2b3e9e4a55cfc8a1d10a57d094089eee4916112","signature":"2d0ac519b493abc8d75b554343855f640bebe392026a85c8011f2f7b55e0cde0"},{"version":"41a70337edbaebfb0fdd366ddf0816fefea5989c75bdffdbb9ff698256951c74","signature":"14ec40ede4588be7502237d1e7e701f90a6507417b6b98401f550bb12e2fbf55"},{"version":"3368ada33db31e713d715d379245783f2f83807f8bf451e8984d6cb9798006b8","signature":"3f9a02628d3942552af0db48dd1aec763a73f64e23b51b4c90b8698bb9e28a3e"},{"version":"6e81a5902f4aa66d5f23b7e5e0719142b460030946365085f20678cb22ba78d2","signature":"ab7ae87ac3f478b45407c86f5279125a3d7cc2b254a8695527d7cbfd13f1d4ce"},{"version":"1ab20f387ef7fa5cf94272900952596792f583f45bbd58d9adf2d623349d060e","signature":"ec49ec1ca3ddc1fbcdb45f1740ccd72d20fbf450036286c4373d9d13ddf2c4a2"},{"version":"0d578fa07b7e41030f7ad5176898a0a70a092fc45a264ce67498f63e544344e1","signature":"eb96292ecf52597cf826715047ec8411375f0ac8a43d0bd12f87dd3190838a04"},{"version":"3f547ac405acecda43d7c1f91b9a11fddb39af7e629e7303c18eef50f1da28a7","signature":"9633a8d205be88be6c282f5d1d20e7ec8e1c493ac27471d1d66fca65d3c2be7d"},{"version":"56571c3f44c6312462e8395ed75d05887dcbcb1581a0ad47dd72bcdbb898ea84","signature":"853de26cb0c4a51d7b511bf303ff4d6680bc18d36b3f2f6d7b8008c8927b58a1"},{"version":"80cfb7f027e1ed06149023ea32ba3d176db0325b675ade827d4cdf2b8cd715fc","signature":"9fc3664a9a2be65e8bf0ca4475f184a16c7a0b03e78c77cabe45e47d78bcd3db"},{"version":"1f21eecb15abc3e5a80f5da077d28867200550954f682591cab49942f818a7da","signature":"0fe0ea76c20ca9ee0577bacb7ffabec72f138baa6f605009f241f9a2db6984d4"},{"version":"3970cf2d617a468ab86d9d226008602d95fbc082b4a9c8996ccd33a31f1fb704","signature":"1ba06dd7ca78b404471b0b4d2aa39807d9b439df1b04054037358b10d5a330a8"},{"version":"7b64ad79eab8b8f6f7ba60ae55d44ef817385165ae3588c09fab650efcdc35da","signature":"33e73f88f0bd53d987b909847e6e5656c535a52b4e1062c867ea7f00fa681bf9"},{"version":"4ef514cb6a5576012d26f78fb337571f1ddfc1f5b6871911259f3af6db4019a0","signature":"1f0e09320cb86d4f4f26386d828d9b66da11620d331f79073615026f5dbf6978"},{"version":"2d8a26fb3b5b1815c7073e91d1e6b98488dd92617ca04f5c70a26426bba59264","signature":"92cfe3b0878714459d8f4c46d1870cc0c1ced7f3726b5831560ee90bb52e6948"},{"version":"830cc95dc9e66f24fa3fb16e9eb1ccc2b6a082f8fb6479e523f24e8b4835061d","signature":"b52d36a910abd362550396a7ae3e970cc6360fb6599e08d0445290c6a0aadb90"},{"version":"20714847850a2d8390184047b6150784221d19ecf514a07c01fe7b40db0e62ab","signature":"46dcacf4f84ed7578dd5d15147953ffd6f17832c7a99d5bb66f9f7dc63784a6c"},{"version":"c9be16daf6b334ccff7002c844eff5a6f5f8f406dd8ef9ae4059308b70f0c90b","signature":"d464231cd26c11d9ae98811b64266bbff099ba26f467e8ac8833cc2af2614ced"},{"version":"d2218597f31f96afc7b29b386697c93a94395fd616d905b863c3685c7547abd7","signature":"5907986ed181648bd0dbe28ab20ed531b6a8ba080199d9beab0a5973e3d25753"},{"version":"d1dc9203a262a1a20848a5c3b37e3929536a96aee6f128658ebd399a676ee88e","signature":"dfc54c72097f1526237c6f148d959587f6c3a6309db8c454fbb68bac92233e20"},{"version":"818fd4b3a3f948731d148152a80b5ae5e42cf5597a0c339830a0bb05d70ff686","signature":"a552668dda1fd06d526afb31afd8624c2fd2f0ecb65e4ffd8d27fbbf36f68468"},{"version":"bff44eee0154de48dd5202be47dd0d4c1cac773ef58296c89d312a4112a33772","signature":"42c9d1fa4c702692045f9d20d0fbea589a5255ec239d1a5f331902d9f9912a59"},{"version":"e04775f0e7743ace633a34fb715d42a80c85b5f92aa3eac8e83aff236c9020c3","signature":"a6952f6b1acfebcbc9d07e3d00e474531f0e98bed4e1c5e760dabe4d98f3d89d"},{"version":"115bd1440e08ba1115368f8e99e5371f837ed5dd4dfe5c11a0dabad03ede355c","signature":"a6632950be386e363cd24bc5f52f38bae67dd4ba0cb38a430d0ebf6c225d38b7"},{"version":"b862cbefe08dc2ac3b6806e7cf34230c9ace74fef0f6238aaf9528e1ef71827d","signature":"4bbaa921f498157fb3f9363c817ff16c414926f74bb935aab976e2bb56c1b84d"},{"version":"aec72d1243ed24d05cc8c1399b6ca2d709f478dc93fa2411c9373f422195610c","signature":"ceb685f7feca8029035f2028a681bfb25a33a81cb870f235c77bd1f1e48af2e5"},{"version":"68deaf2f260cd5857b1f45c1dc25a03b77c093ee08e3d1f587c6919927bbc990","signature":"8b33421a86e308df04613596fcb083a760872e0745c277011f4ad9672e3f227b"},{"version":"b36c59ff9135b3af0b65147146881dbc6d21dbb4b5857fc3ff0db4ae4d404d06","signature":"99ba7f0dfda819667065b7cd4323a5b4c82a05fb63922de358458cd368fb88b2"},{"version":"d41b2a6d9a8e1ee09e7953f93c261f3942d800f433023fc80668d447a6017a9f","signature":"e0a0f81b2fdf45f1211811255afafc322b7cc9e784ee465ac31f4abdde07e5a9"},{"version":"1b72e1f3724b04b5b19a7514ecfdb59445816ccde3d016cb77d70bd6fbaff6f8","signature":"a29a11ea1f06a29ebc9d88a8439d78598d2d4977115a70705902c117d2a19e76"},{"version":"dd16e4f177955dda7ff4d566808a315dcfd18cd0906da204d7efb47277286530","signature":"a3578bc3b767f260c900afed6813bd0f56c98a1216379749dd76202a4f2e4b14"},{"version":"963e90bd6a94bd500329447e92ecb2be1efaab48d53d81e6f143dc63cb2aa76f","signature":"c6eff6bde8066f2980b221de77dc801f3a2a27525a9c3879d37426941b7a413c"},{"version":"4c14e4a188a74583fea33c58b17fcd44b0536b9a09f9938a7fa0a4411cdf5722","signature":"d08bdc2df3b64a80c3870fcc3f1a802c1bbd88d9efaefe46bf5a7aeeb749b5ad"},{"version":"c77f0c58173b1b3364632db5ee4455bac69cbf0c494b5a777bf80ca4aa8c9560","impliedFormat":1},{"version":"cb6e4d47248ad5cbeed78f4164cf996fb276d54a580ac52e3a7feb92c4336d77","signature":"86463269677354ddc223e39011b4b5f231cdc5d072d08fb0e4b431a915e1f6eb"},{"version":"fe78af98b38dddb04bbf42a17e0ff5d3509ad062a97cd04d08cadbea7425627c","signature":"58686fcfd1c2f6e21d3dd7f52d347e73a9879aa634acd1baafe5f2c2e4c09e9a"},{"version":"67b4645f4fc756789696814e6e3c192a57a7e89b138d890442547b047417f148","signature":"13339d499ac59712315f756a08c00109fa86ddbdf0579d573a8526bcaf5e3700"},{"version":"d9dc12145ae08b9e0375ce85977134b6c98b6b3428812ffa2321d96d55b8cc5c","signature":"626afa709798521c427847bb617e1379d22b90d6098118ce08e137383dab2965"},{"version":"8a36f4d8f34cebcde784d513a5bc6b6a020cb5f5a78297b2ea92ff5f7f59b183","signature":"9ce8acadf39f2eff3011fb1241b111299e9a3ac144202b12fee6200e6d781027"},{"version":"aafa6811259f5f175367f3f482898789514aae6434e9ac911d0a9cd21b6b6269","signature":"d79d663e6b621d15b39aca1d448793fc2acee759e6e7c10f3432023972ddf007"},{"version":"140b8538a2c0cd54e0f007caf1f90c33a58594116fbf56a1f27f426afae5b36d","signature":"7daad2dae15c28accd363a5f69cad8ae2fa0ad110eadc6f319c4715a8bbb29aa"},{"version":"cc0e85ac3c026b4c42d865beaf4e4b6144fe9ff826657a844838879fda3dde6f","signature":"975d013c31f48ecb26867d0f98f13d2eaebb4af2bfbe6b5fd9a4d38fdccd5656"},{"version":"4cbaf1a0c6ef2813e50255154c26b68481478ec170c8999bfc1d4292d2e671da","signature":"11c308cc51acb6c9d4f5fcc77fba289bcaa0647477092fbbbd777cc0fd95d8cb"},{"version":"1f0368d9de82f106d45088aa021c347e427da150063e3f1fe410d81b62bd039c","signature":"1d8cd6b68cdb76b28d1aa89652bdde0ebfb07caf883bab345802ffb202eba65d"},{"version":"6f4a74e34595aa6420c4a1df1ff788d1686f7bdfc7259de90d0102f4cf83555f","signature":"12cf7f6e0e2bf8d8e9b8a79d1adae5f8706736dee1e5d25279785ce45c7b0b27"},{"version":"5b2927131599d55e0ee730c7a2afc764ff39199a5d186b510fc3eca82f4ef1ff","signature":"d6fc507f1c2ecd14c0882a0e00a1ba2a580c6e45550a3a5e868d7bee4b1922b6"},{"version":"9ef6e64d9f81af5e6e0a06b056fa74638a5e48ba3e5bdedc9d262148609dec43","signature":"ec5154c62fc54d4c9c9aac0d79c1a2e57cef6dddfe9f6ff9ae9933ce93350516"},{"version":"279b25dd44e5e11771ebc653f95380fdb60d0d0caf3df6cd4b6510700d25e1ce","signature":"deb20c0cf80a8512b23dacaaccff1a96f13056a57b4b329d8106e70987639f3e"},{"version":"685c56fb04c565cca70a3e9660c1db15b56125f0929e9e1c8651071b1625ca4a","signature":"9ba1e380251d5b6c73fc0ef3c153f691e963c36cca9e2ba61864b24246791a0c"},{"version":"22577c900676846354224462f8a6b3e0e5033cd14a501ea46107e67a4ab7863f","signature":"70fd81e903686acf6e994565edb1588cc619b816646ea1a89ac9a47b45d25737"},{"version":"4e92eb4d4fa5bd21987ba473e0054d0393184ec9a33b351ffa4dbcef5fb9ecc3","signature":"ab815d46f9952bd31fc7602ab41ef6fdfcaef4b7dd3cd4c7557a75c52fd9001c"},{"version":"de9892afb7f873f59777bccfb79600799e79399d3f5000a9c36e428b8d6f9e3c","signature":"c25a63b006ce54b05918dc5df4650a4b72580eef3ef3e889fdaba83925dfb367"},{"version":"462708b3fc0067a69af6f9df70229485d8ebccbac2a472314a8306a4ef56779f","signature":"3f2b9bd0340a9cbcdbbfdbd7bf828a49c477dddd3473ed7816310700becf5961"},{"version":"1d0ec7969ec2b4b1bec65e7924b5f64d3dd0c39dba60a6c65d6a301589bf6e76","signature":"86122f878833e22a38a54656b9fe61736ba6c103b6a2fa01dae70458aec4353d"},{"version":"60f9a401c5109b96a9d833d5676a78afef722f974119b6a353dafb2d260c0fb3","signature":"a83bb6c06a593ff08f3f92127360478f9088d84473f12d971fe69595d0ac237d"},{"version":"68c2ad396b93b1c5d39c3d2fc221fac5db3a79687d000ab8a3595b92eb28927c","signature":"217bd1741b991da9879e53c23ad81eeca2c7316d13ae177727e531704c13dce3"},{"version":"33d51bd6a2bdc9a2fc5c80e1c459c3c597ee98ab02fb52d8dd1acd89161ed6e6","signature":"a335f0f94e1c439bfe040fa754d093ecf6beb6357a4da1db70ffa188dc4415dd"},{"version":"4632c48d8d0bbb103a5594c6ea37eb345e884e7c11da3f7c341a4e944ef2d3dc","signature":"4ffb82aa0d7f0e2079d4c08f3fbb390bc6ee370f289216dab37a31ea748ee18d"},{"version":"2d89647698d15852528c3efcafd97aba15bef14cc98391792723c35ac628807a","signature":"2d7b8c35d9f482db0f39d60ce9ff6717149e22acbdfa87b30def9cecb2e66b5d"},{"version":"fc1cf2de5e836c1061c3d90d6d3e3e6083643bd8cd6e523aaf085ce760b5918c","signature":"afbee399954c8db6614dddb0e0a16b02e72a0a44995f8e69d82c34f4215cc06a"},{"version":"cbc0f868094b3915e03e854f3ecdd83a8b8bdc4a2b4a4952ab3fcaa05227a9c4","signature":"ac7c8f5bf90bc90b3d5a938a0d83f118f17a53cd68d48f17a61ef0e1054c4bae"},{"version":"c482b9dc3260ee480bd85622832539a991d855ec6fe5576194ceea2ee7b49992","signature":"b81d918a2ec75aa4223800b1a563fdca1a5db2e889794e93206c58590e898408"},{"version":"4ebd006db8f0fcfd0a772df47b8e0102dc8bfbdeebba4027923037eca4e278f3","signature":"dd53359cadad6182ee66a258993388de529808d0866b701b46e3369621496e6a"},{"version":"d3816328a097970f46726b8e2f34f1e66fab2d95a2463fe0a3a3460308fc06aa","signature":"0cce1783c4c412541b1118f66a401ee1076d2b45f6de005ffa10d7a3138bdbc3"},{"version":"09e009ea94ab39fe84d0b700f7bb906e15df9cd0a85fc7e5cda8ce365b77b611","signature":"022c0b4906500b8719a3e8022f58c7b86130f48e069c9a69a95c7e78a52b89e5"},{"version":"d94711e31023aba6110e56d2e73c0de779546ccb240025170e2fa0d681831c4f","signature":"4b74050ede7a2e03d093321fe17ea261959660b7cd784913562b339162370ddb"},{"version":"9d436df13ce6e1aeb2fd98bf9ec67aebd51e6e59bc14392c83f449c952527295","signature":"c5c9b67f95b65ea2c92336169a4f48b1033a9c4ac73c3acbc5d691a73dc688e8"},{"version":"dba5166ad9db9ba648c1032ebbd34dcd0d085b50023b839ef5c68ca1db93a563","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}],"root":[[59,91],[93,126]],"options":{"allowImportingTsExtensions":true,"composite":true,"declaration":true,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":7,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":false,"noUnusedParameters":false,"outDir":"./","rootDir":"../src","skipLibCheck":true,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":9,"tsBuildInfoFile":"./tsconfig.tsbuildinfo"},"referencedMap":[[90,1],[72,2],[112,3],[110,4],[111,5],[109,6],[125,7],[91,8],[98,9],[99,10],[75,11],[74,12],[62,13],[64,14],[63,13],[60,2],[103,15],[100,16],[94,17],[121,18],[101,19],[97,20],[96,21],[102,22],[95,7],[66,23],[124,24],[70,25],[65,2],[71,2],[122,26],[85,27],[107,28],[106,29],[108,30],[105,7],[77,7],[78,7],[79,7],[120,31],[80,7],[81,7],[82,32],[84,7],[86,33],[89,7],[113,34],[115,35],[114,7],[116,36],[117,7],[118,7]],"latestChangedDtsFile":"./time/TimeRange.d.ts","version":"5.6.3"}
package/esbuild/index.cjs CHANGED
@@ -191,6 +191,7 @@ __export(src_exports, {
191
191
  TimeDuration: () => TimeDuration,
192
192
  TimeFrequency: () => TimeFrequency,
193
193
  TimeInstant: () => TimeInstant,
194
+ TimeRange: () => TimeRange,
194
195
  TimeUnit: () => TimeUnit,
195
196
  asError: () => asError,
196
197
  asPromise: () => asPromise,
@@ -926,10 +927,10 @@ var Deferred = class {
926
927
  finally(onfinally) {
927
928
  return this._internals.promise.finally(onfinally);
928
929
  }
929
- get asPromise() {
930
+ asPromise() {
930
931
  return this;
931
932
  }
932
- get asCancelablePromise() {
933
+ asCancelablePromise() {
933
934
  return this;
934
935
  }
935
936
  createInternals() {
@@ -1252,7 +1253,7 @@ var Semaphore = class {
1252
1253
  } else {
1253
1254
  const deferred = new Deferred_default();
1254
1255
  this._queuedRequests.push(deferred);
1255
- return deferred.asPromise;
1256
+ return deferred.asPromise();
1256
1257
  }
1257
1258
  }
1258
1259
  _releaseSlot() {
@@ -1370,7 +1371,7 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1370
1371
  * @todo[2023-06] By default should show the secondary unit only when actually needed (eg, 1h 20m & 3h, instead of 1h 20m & 3h 28m)
1371
1372
  * @todo[2023-06] Should not allow negative durations, as this is a duration and not an instant.
1372
1373
  * @returns the duration, with only the most significant units displayed as a human readable string, eg: 1d 20h, 10m 30s.
1373
- */
1374
+ */
1374
1375
  get formatted() {
1375
1376
  const format2 = (x, u1, y, u2) => `${x}${u1} ${pad(y.toString(), 2, "0")}${u2}`;
1376
1377
  const units = this.toUnits();
@@ -1388,8 +1389,8 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1388
1389
  return "Some time ago";
1389
1390
  }
1390
1391
  /**
1391
- * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
1392
- */
1392
+ * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
1393
+ */
1393
1394
  absolute() {
1394
1395
  return this.ms < 0 ? new _TimeDuration(-this.ms, TimeUnit.MILLISECONDS) : this;
1395
1396
  }
@@ -1401,12 +1402,12 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1401
1402
  }
1402
1403
  promise() {
1403
1404
  const deferred = new Deferred_default();
1404
- if (this.isEmpty()) {
1405
- deferred.resolve();
1406
- } else {
1405
+ if (this.ms > 0) {
1407
1406
  this.timeout(() => deferred.resolve());
1407
+ } else {
1408
+ deferred.resolve();
1408
1409
  }
1409
- return deferred.asCancelablePromise;
1410
+ return deferred.asCancelablePromise();
1410
1411
  }
1411
1412
  delay(cb) {
1412
1413
  const deferred = this.promise();
@@ -1487,8 +1488,8 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1487
1488
  return this.ms > 0;
1488
1489
  }
1489
1490
  /**
1490
- * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
1491
- */
1491
+ * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
1492
+ */
1492
1493
  get _duration() {
1493
1494
  return this.formatted;
1494
1495
  }
@@ -1730,12 +1731,14 @@ var TimeInstant = class _TimeInstant extends TimeBase {
1730
1731
  return this.atTime({ hours: 23, minutes: 59, seconds: 59, milliseconds: 999 });
1731
1732
  }
1732
1733
  promise() {
1733
- this.ensureInTheFuture();
1734
- return this.distanceFromNow().promise();
1734
+ const ms = this.ms - Date.now();
1735
+ const duration = TimeDuration_default.fromMs(Math.max(ms, 0));
1736
+ return duration.promise();
1735
1737
  }
1736
1738
  delay(cb) {
1737
- this.ensureInTheFuture();
1738
- return this.distanceFromNow().delay(cb);
1739
+ const ms = this.ms - Date.now();
1740
+ const duration = TimeDuration_default.fromMs(Math.max(ms, 0));
1741
+ return duration.delay(cb);
1739
1742
  }
1740
1743
  ensureInTheFuture() {
1741
1744
  if (!this.isInTheFuture)
@@ -1894,7 +1897,7 @@ var TimeInstant = class _TimeInstant extends TimeBase {
1894
1897
  static fromParameters(parameters, referenceDate) {
1895
1898
  return createTimeInstantFromParameters(parameters, referenceDate);
1896
1899
  }
1897
- static greatest(instant1, instant2) {
1900
+ static highest(instant1, instant2) {
1898
1901
  return instant1.isAfter(instant2) ? instant1 : instant2;
1899
1902
  }
1900
1903
  static lowest(instant1, instant2) {
@@ -2572,6 +2575,27 @@ var TimeFrequency = class _TimeFrequency {
2572
2575
  }
2573
2576
  };
2574
2577
 
2578
+ // src/time/TimeRange.ts
2579
+ var TimeRange = class _TimeRange {
2580
+ constructor(start, duration) {
2581
+ this.start = start;
2582
+ this.duration = duration;
2583
+ this.end = start.addDuration(duration);
2584
+ }
2585
+ end;
2586
+ static fromInstants(a, b) {
2587
+ const lowest = TimeInstant_default.lowest(a, b);
2588
+ const highest = TimeInstant_default.highest(a, b);
2589
+ return new _TimeRange(lowest, lowest.distanceFrom(highest));
2590
+ }
2591
+ static fromInstantWithDuration(a, d) {
2592
+ return new _TimeRange(a, d);
2593
+ }
2594
+ static fromNowWithDuration(d) {
2595
+ return new _TimeRange(TimeInstant_default.now(), d);
2596
+ }
2597
+ };
2598
+
2575
2599
  // src/upgrade/errors.ts
2576
2600
  var UnavailableUpgradeError = class extends Error {
2577
2601
  constructor(data, from, to) {
@@ -2721,6 +2745,7 @@ function isUpgradable(obj) {
2721
2745
  TimeDuration,
2722
2746
  TimeFrequency,
2723
2747
  TimeInstant,
2748
+ TimeRange,
2724
2749
  TimeUnit,
2725
2750
  asError,
2726
2751
  asPromise,
package/esbuild/index.mjs CHANGED
@@ -787,10 +787,10 @@ var Deferred = class {
787
787
  finally(onfinally) {
788
788
  return this._internals.promise.finally(onfinally);
789
789
  }
790
- get asPromise() {
790
+ asPromise() {
791
791
  return this;
792
792
  }
793
- get asCancelablePromise() {
793
+ asCancelablePromise() {
794
794
  return this;
795
795
  }
796
796
  createInternals() {
@@ -1113,7 +1113,7 @@ var Semaphore = class {
1113
1113
  } else {
1114
1114
  const deferred = new Deferred_default();
1115
1115
  this._queuedRequests.push(deferred);
1116
- return deferred.asPromise;
1116
+ return deferred.asPromise();
1117
1117
  }
1118
1118
  }
1119
1119
  _releaseSlot() {
@@ -1231,7 +1231,7 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1231
1231
  * @todo[2023-06] By default should show the secondary unit only when actually needed (eg, 1h 20m & 3h, instead of 1h 20m & 3h 28m)
1232
1232
  * @todo[2023-06] Should not allow negative durations, as this is a duration and not an instant.
1233
1233
  * @returns the duration, with only the most significant units displayed as a human readable string, eg: 1d 20h, 10m 30s.
1234
- */
1234
+ */
1235
1235
  get formatted() {
1236
1236
  const format2 = (x, u1, y, u2) => `${x}${u1} ${pad(y.toString(), 2, "0")}${u2}`;
1237
1237
  const units = this.toUnits();
@@ -1249,8 +1249,8 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1249
1249
  return "Some time ago";
1250
1250
  }
1251
1251
  /**
1252
- * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
1253
- */
1252
+ * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
1253
+ */
1254
1254
  absolute() {
1255
1255
  return this.ms < 0 ? new _TimeDuration(-this.ms, TimeUnit.MILLISECONDS) : this;
1256
1256
  }
@@ -1262,12 +1262,12 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1262
1262
  }
1263
1263
  promise() {
1264
1264
  const deferred = new Deferred_default();
1265
- if (this.isEmpty()) {
1266
- deferred.resolve();
1267
- } else {
1265
+ if (this.ms > 0) {
1268
1266
  this.timeout(() => deferred.resolve());
1267
+ } else {
1268
+ deferred.resolve();
1269
1269
  }
1270
- return deferred.asCancelablePromise;
1270
+ return deferred.asCancelablePromise();
1271
1271
  }
1272
1272
  delay(cb) {
1273
1273
  const deferred = this.promise();
@@ -1348,8 +1348,8 @@ var TimeDuration = class _TimeDuration extends TimeBase {
1348
1348
  return this.ms > 0;
1349
1349
  }
1350
1350
  /**
1351
- * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
1352
- */
1351
+ * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
1352
+ */
1353
1353
  get _duration() {
1354
1354
  return this.formatted;
1355
1355
  }
@@ -1591,12 +1591,14 @@ var TimeInstant = class _TimeInstant extends TimeBase {
1591
1591
  return this.atTime({ hours: 23, minutes: 59, seconds: 59, milliseconds: 999 });
1592
1592
  }
1593
1593
  promise() {
1594
- this.ensureInTheFuture();
1595
- return this.distanceFromNow().promise();
1594
+ const ms = this.ms - Date.now();
1595
+ const duration = TimeDuration_default.fromMs(Math.max(ms, 0));
1596
+ return duration.promise();
1596
1597
  }
1597
1598
  delay(cb) {
1598
- this.ensureInTheFuture();
1599
- return this.distanceFromNow().delay(cb);
1599
+ const ms = this.ms - Date.now();
1600
+ const duration = TimeDuration_default.fromMs(Math.max(ms, 0));
1601
+ return duration.delay(cb);
1600
1602
  }
1601
1603
  ensureInTheFuture() {
1602
1604
  if (!this.isInTheFuture)
@@ -1755,7 +1757,7 @@ var TimeInstant = class _TimeInstant extends TimeBase {
1755
1757
  static fromParameters(parameters, referenceDate) {
1756
1758
  return createTimeInstantFromParameters(parameters, referenceDate);
1757
1759
  }
1758
- static greatest(instant1, instant2) {
1760
+ static highest(instant1, instant2) {
1759
1761
  return instant1.isAfter(instant2) ? instant1 : instant2;
1760
1762
  }
1761
1763
  static lowest(instant1, instant2) {
@@ -2433,6 +2435,27 @@ var TimeFrequency = class _TimeFrequency {
2433
2435
  }
2434
2436
  };
2435
2437
 
2438
+ // src/time/TimeRange.ts
2439
+ var TimeRange = class _TimeRange {
2440
+ constructor(start, duration) {
2441
+ this.start = start;
2442
+ this.duration = duration;
2443
+ this.end = start.addDuration(duration);
2444
+ }
2445
+ end;
2446
+ static fromInstants(a, b) {
2447
+ const lowest = TimeInstant_default.lowest(a, b);
2448
+ const highest = TimeInstant_default.highest(a, b);
2449
+ return new _TimeRange(lowest, lowest.distanceFrom(highest));
2450
+ }
2451
+ static fromInstantWithDuration(a, d) {
2452
+ return new _TimeRange(a, d);
2453
+ }
2454
+ static fromNowWithDuration(d) {
2455
+ return new _TimeRange(TimeInstant_default.now(), d);
2456
+ }
2457
+ };
2458
+
2436
2459
  // src/upgrade/errors.ts
2437
2460
  var UnavailableUpgradeError = class extends Error {
2438
2461
  constructor(data, from, to) {
@@ -2581,6 +2604,7 @@ export {
2581
2604
  TimeDuration,
2582
2605
  TimeFrequency,
2583
2606
  TimeInstant,
2607
+ TimeRange,
2584
2608
  TimeUnit,
2585
2609
  asError,
2586
2610
  asPromise,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package",
3
3
  "name": "@zelgadis87/utils-core",
4
- "version": "4.2.3",
4
+ "version": "4.3.1",
5
5
  "author": "Zelgadis87",
6
6
  "license": "ISC",
7
7
  "private": false,
@@ -6,9 +6,10 @@ type DeferredInternals<T> = {
6
6
  reject: TFunction<Error, void>;
7
7
  }
8
8
 
9
- export interface ICancelablePromise<T> extends Promise<T> {
9
+ export interface ICancelable {
10
10
  cancel(): void;
11
11
  }
12
+ export interface ICancelablePromise<T> extends Promise<T>, ICancelable { }
12
13
 
13
14
  export class DeferredCanceledError extends Error {
14
15
  constructor() {
@@ -16,13 +17,13 @@ export class DeferredCanceledError extends Error {
16
17
  }
17
18
  }
18
19
 
19
- export class Deferred<T = void> implements Promise<T>, ICancelablePromise<T> {
20
+ export class Deferred<T = void> implements ICancelablePromise<T> {
20
21
 
21
22
  private _pending: boolean;
22
23
  private readonly _internals: DeferredInternals<T>;
23
24
 
24
25
  public get pending(): boolean { return this._pending; }
25
-
26
+
26
27
  /** @deprecated: Use resolve, then and catch directly; use asPromise to return a promise type. */
27
28
  public get promise(): Promise<T> { return this._internals.promise; }
28
29
 
@@ -62,7 +63,7 @@ export class Deferred<T = void> implements Promise<T>, ICancelablePromise<T> {
62
63
  this._pending = false;
63
64
  this._internals.reject( reason );
64
65
  }
65
-
66
+
66
67
  public cancelIfPending(): void {
67
68
  if ( !this._pending )
68
69
  return;
@@ -82,11 +83,11 @@ export class Deferred<T = void> implements Promise<T>, ICancelablePromise<T> {
82
83
  return this._internals.promise.finally( onfinally );
83
84
  }
84
85
 
85
- public get asPromise(): Promise<T> {
86
+ public asPromise(): Promise<T> {
86
87
  return this;
87
88
  }
88
89
 
89
- public get asCancelablePromise(): ICancelablePromise<T> {
90
+ public asCancelablePromise(): ICancelablePromise<T> {
90
91
  return this;
91
92
  }
92
93
 
@@ -21,7 +21,7 @@ export class Semaphore {
21
21
  // Semaphore implementation using promises.
22
22
  const deferred = new Deferred();
23
23
  this._queuedRequests.push( deferred );
24
- return deferred.asPromise;
24
+ return deferred.asPromise();
25
25
  }
26
26
  }
27
27
 
@@ -1,7 +1,7 @@
1
- import Deferred, { DeferredCanceledError, ICancelablePromise } from "../async/Deferred.js";
1
+ import Deferred, { DeferredCanceledError, ICancelable, ICancelablePromise } from "../async/Deferred.js";
2
2
  import { randomInterval } from "../random";
3
3
  import { TComparisonResult } from "../sorting/index.js";
4
- import { TIntervalHandle, TMaybe, TTimeoutHandle, TVoidFunction, ensureNonNegativeNumber, ensurePositiveNumber } from "../types";
4
+ import { TIntervalHandle, TMaybe, TTimeoutHandle, ensureNonNegativeNumber, ensurePositiveNumber } from "../types";
5
5
  import { pad } from "../utils";
6
6
  import TimeBase from "./TimeBase";
7
7
  import TimeInstant from "./TimeInstant";
@@ -53,7 +53,7 @@ export class TimeDuration extends TimeBase<TimeDuration> {
53
53
  * @todo[2023-06] By default should show the secondary unit only when actually needed (eg, 1h 20m & 3h, instead of 1h 20m & 3h 28m)
54
54
  * @todo[2023-06] Should not allow negative durations, as this is a duration and not an instant.
55
55
  * @returns the duration, with only the most significant units displayed as a human readable string, eg: 1d 20h, 10m 30s.
56
- */
56
+ */
57
57
  public get formatted(): string {
58
58
  const format = ( x: number, u1: string, y: number, u2: string ): string => `${x}${u1} ${pad( y.toString(), 2, '0' )}${u2}`;
59
59
  const units = this.toUnits();
@@ -73,8 +73,8 @@ export class TimeDuration extends TimeBase<TimeDuration> {
73
73
  }
74
74
 
75
75
  /**
76
- * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
77
- */
76
+ * @deprecated[2023-06] this method makes no sense, as durations are positive by default.
77
+ */
78
78
  public absolute(): TimeDuration {
79
79
  return this.ms < 0 ? new TimeDuration( -this.ms, TimeUnit.MILLISECONDS ) : this;
80
80
  }
@@ -87,18 +87,18 @@ export class TimeDuration extends TimeBase<TimeDuration> {
87
87
  return setTimeout( cb, this.ms );
88
88
  }
89
89
 
90
-
90
+
91
91
  public promise(): ICancelablePromise<void> {
92
92
  const deferred = new Deferred<void>;
93
- if ( this.isEmpty() ) {
94
- deferred.resolve();
95
- } else {
93
+ if ( this.ms > 0 ) {
96
94
  this.timeout( () => deferred.resolve() );
95
+ } else {
96
+ deferred.resolve();
97
97
  }
98
- return deferred.asCancelablePromise;
98
+ return deferred.asCancelablePromise();
99
99
  }
100
100
 
101
- public delay( cb: () => unknown ): { cancel: TVoidFunction } {
101
+ public delay( cb: () => unknown ): ICancelable {
102
102
  const deferred = this.promise();
103
103
  void deferred.then( () => {
104
104
  cb();
@@ -192,8 +192,8 @@ export class TimeDuration extends TimeBase<TimeDuration> {
192
192
  }
193
193
 
194
194
  /**
195
- * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
196
- */
195
+ * This method is used to provide a better DX when inspecting a TimeInstant object in DevTools.
196
+ */
197
197
  protected get _duration() {
198
198
  return this.formatted;
199
199
  }
@@ -1,7 +1,6 @@
1
1
  import { format } from "small-date";
2
- import { ICancelablePromise } from "../async/Deferred.js";
2
+ import { ICancelable, ICancelablePromise } from "../async/Deferred.js";
3
3
  import { TComparisonResult } from "../sorting/index.js";
4
- import { TVoidFunction } from "../types";
5
4
  import TimeBase from "./TimeBase";
6
5
  import TimeDuration from "./TimeDuration";
7
6
  import { TTimeInstantBuilder, TTimeInstantCreationParameters, createTimeInstantFromParameters, timeInstantBuilder } from "./TimeInstantBuilder.js";
@@ -51,13 +50,15 @@ export class TimeInstant extends TimeBase<TimeInstant> {
51
50
  }
52
51
 
53
52
  public promise(): ICancelablePromise<void> {
54
- this.ensureInTheFuture();
55
- return this.distanceFromNow().promise()
53
+ const ms = this.ms - Date.now();
54
+ const duration = TimeDuration.fromMs( Math.max( ms, 0 ) );
55
+ return duration.promise();
56
56
  }
57
57
 
58
- public delay( cb: () => unknown ): { cancel: TVoidFunction } {
59
- this.ensureInTheFuture();
60
- return this.distanceFromNow().delay( cb )
58
+ public delay( cb: () => unknown ): ICancelable {
59
+ const ms = this.ms - Date.now();
60
+ const duration = TimeDuration.fromMs( Math.max( ms, 0 ) );
61
+ return duration.delay( cb );
61
62
  }
62
63
 
63
64
  public ensureInTheFuture() {
@@ -246,7 +247,7 @@ export class TimeInstant extends TimeBase<TimeInstant> {
246
247
  return createTimeInstantFromParameters( parameters, referenceDate );
247
248
  }
248
249
 
249
- public static greatest( instant1: TimeInstant, instant2: TimeInstant ): TimeInstant {
250
+ public static highest( instant1: TimeInstant, instant2: TimeInstant ): TimeInstant {
250
251
  return instant1.isAfter( instant2 ) ? instant1 : instant2;
251
252
  }
252
253
 
@@ -0,0 +1,29 @@
1
+ import { TimeDuration } from "./index.ts";
2
+ import TimeInstant from "./TimeInstant.ts";
3
+
4
+ export class TimeRange {
5
+
6
+ public readonly end: TimeInstant;
7
+
8
+ protected constructor(
9
+ public readonly start: TimeInstant,
10
+ public readonly duration: TimeDuration
11
+ ) {
12
+ this.end = start.addDuration( duration );
13
+ }
14
+
15
+ public static fromInstants( a: TimeInstant, b: TimeInstant ) {
16
+ const lowest = TimeInstant.lowest( a, b );
17
+ const highest = TimeInstant.highest( a, b );
18
+ return new TimeRange( lowest, lowest.distanceFrom( highest ) );
19
+ }
20
+
21
+ public static fromInstantWithDuration( a: TimeInstant, d: TimeDuration ) {
22
+ return new TimeRange( a, d );
23
+ }
24
+
25
+ public static fromNowWithDuration( d: TimeDuration ) {
26
+ return new TimeRange( TimeInstant.now(), d );
27
+ }
28
+
29
+ }
package/src/time/index.ts CHANGED
@@ -3,6 +3,7 @@ export { default as RandomTimeDuration } from './RandomTimeDuration';
3
3
  export { TPredefinedTimeDuration, TValidTimeDuration, TimeDuration, isAllowedTimeDuration } from './TimeDuration';
4
4
  export { default as TimeFrequency } from './TimeFrequency';
5
5
  export * from './TimeInstant';
6
+ export * from './TimeRange.js';
6
7
  export { default as TimeUnit } from './TimeUnit';
7
8
  export * from './types';
8
9