effect 2.3.0 → 2.3.2
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/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +4 -1
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Option.js +4 -1
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Scheduler.js +3 -4
- package/dist/cjs/Scheduler.js.map +1 -1
- package/dist/cjs/internal/clock.js +2 -3
- package/dist/cjs/internal/clock.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +12 -2
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Effect.d.ts +1 -1
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +4 -0
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +4 -4
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +4 -0
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +28 -28
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/Scheduler.d.ts.map +1 -1
- package/dist/dts/internal/version.d.ts +1 -1
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +4 -1
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Option.js +4 -1
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Scheduler.js +3 -4
- package/dist/esm/Scheduler.js.map +1 -1
- package/dist/esm/internal/clock.js +2 -3
- package/dist/esm/internal/clock.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +12 -2
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Effect.ts +1 -1
- package/src/Either.ts +8 -1
- package/src/FiberSet.ts +4 -4
- package/src/Option.ts +8 -1
- package/src/Schedule.ts +28 -28
- package/src/Scheduler.ts +3 -4
- package/src/internal/clock.ts +2 -3
- package/src/internal/fiberRuntime.ts +13 -3
- package/src/internal/version.ts +1 -1
- package/dist/cjs/internal/timeout.js +0 -24
- package/dist/cjs/internal/timeout.js.map +0 -1
- package/dist/dts/internal/timeout.d.ts +0 -7
- package/dist/dts/internal/timeout.d.ts.map +0 -1
- package/dist/esm/internal/timeout.js +0 -18
- package/dist/esm/internal/timeout.js.map +0 -1
- package/src/internal/timeout.ts +0 -23
package/src/Schedule.ts
CHANGED
|
@@ -160,11 +160,11 @@ export const addDelay: {
|
|
|
160
160
|
*/
|
|
161
161
|
export const addDelayEffect: {
|
|
162
162
|
<Out, Env2>(
|
|
163
|
-
f: (out: Out) => Effect.Effect<
|
|
163
|
+
f: (out: Out) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
164
164
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
165
165
|
<Env, In, Out, Env2>(
|
|
166
166
|
self: Schedule<Env, In, Out>,
|
|
167
|
-
f: (out: Out) => Effect.Effect<
|
|
167
|
+
f: (out: Out) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
168
168
|
): Schedule<Env | Env2, In, Out>
|
|
169
169
|
} = internal.addDelayEffect
|
|
170
170
|
|
|
@@ -268,11 +268,11 @@ export const check: {
|
|
|
268
268
|
*/
|
|
269
269
|
export const checkEffect: {
|
|
270
270
|
<In, Out, Env2>(
|
|
271
|
-
test: (input: In, output: Out) => Effect.Effect<
|
|
271
|
+
test: (input: In, output: Out) => Effect.Effect<boolean, never, Env2>
|
|
272
272
|
): <Env>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
273
273
|
<Env, In, Out, Env2>(
|
|
274
274
|
self: Schedule<Env, In, Out>,
|
|
275
|
-
test: (input: In, output: Out) => Effect.Effect<
|
|
275
|
+
test: (input: In, output: Out) => Effect.Effect<boolean, never, Env2>
|
|
276
276
|
): Schedule<Env | Env2, In, Out>
|
|
277
277
|
} = internal.checkEffect
|
|
278
278
|
|
|
@@ -390,11 +390,11 @@ export const mapInputContext: {
|
|
|
390
390
|
*/
|
|
391
391
|
export const mapInputEffect: {
|
|
392
392
|
<In, Env2, In2>(
|
|
393
|
-
f: (in2: In2) => Effect.Effect<
|
|
393
|
+
f: (in2: In2) => Effect.Effect<In, never, Env2>
|
|
394
394
|
): <Env, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In2, Out>
|
|
395
395
|
<Env, In, Out, Env2, In2>(
|
|
396
396
|
self: Schedule<Env, In, Out>,
|
|
397
|
-
f: (in2: In2) => Effect.Effect<
|
|
397
|
+
f: (in2: In2) => Effect.Effect<In, never, Env2>
|
|
398
398
|
): Schedule<Env | Env2, In2, Out>
|
|
399
399
|
} = internal.mapInputEffect
|
|
400
400
|
|
|
@@ -469,11 +469,11 @@ export const delayed: {
|
|
|
469
469
|
*/
|
|
470
470
|
export const delayedEffect: {
|
|
471
471
|
<Env2>(
|
|
472
|
-
f: (duration: Duration.Duration) => Effect.Effect<
|
|
472
|
+
f: (duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
473
473
|
): <Env, In, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
474
474
|
<Env, In, Out, Env2>(
|
|
475
475
|
self: Schedule<Env, In, Out>,
|
|
476
|
-
f: (duration: Duration.Duration) => Effect.Effect<
|
|
476
|
+
f: (duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
477
477
|
): Schedule<Env | Env2, In, Out>
|
|
478
478
|
} = internal.delayedEffect
|
|
479
479
|
|
|
@@ -528,15 +528,15 @@ export const mapBoth: {
|
|
|
528
528
|
export const mapBothEffect: {
|
|
529
529
|
<In2, Env2, In, Out, Env3, Out2>(
|
|
530
530
|
options: {
|
|
531
|
-
readonly onInput: (input: In2) => Effect.Effect<
|
|
532
|
-
readonly onOutput: (out: Out) => Effect.Effect<
|
|
531
|
+
readonly onInput: (input: In2) => Effect.Effect<In, never, Env2>
|
|
532
|
+
readonly onOutput: (out: Out) => Effect.Effect<Out2, never, Env3>
|
|
533
533
|
}
|
|
534
534
|
): <Env>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env3 | Env, In2, Out2>
|
|
535
535
|
<Env, In, Out, In2, Env2, Env3, Out2>(
|
|
536
536
|
self: Schedule<Env, In, Out>,
|
|
537
537
|
options: {
|
|
538
|
-
readonly onInput: (input: In2) => Effect.Effect<
|
|
539
|
-
readonly onOutput: (out: Out) => Effect.Effect<
|
|
538
|
+
readonly onInput: (input: In2) => Effect.Effect<In, never, Env2>
|
|
539
|
+
readonly onOutput: (out: Out) => Effect.Effect<Out2, never, Env3>
|
|
540
540
|
}
|
|
541
541
|
): Schedule<Env | Env2 | Env3, In2, Out2>
|
|
542
542
|
} = internal.mapBothEffect
|
|
@@ -822,11 +822,11 @@ export const map: {
|
|
|
822
822
|
*/
|
|
823
823
|
export const mapEffect: {
|
|
824
824
|
<Out, Env2, Out2>(
|
|
825
|
-
f: (out: Out) => Effect.Effect<
|
|
825
|
+
f: (out: Out) => Effect.Effect<Out2, never, Env2>
|
|
826
826
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out2>
|
|
827
827
|
<Env, In, Out, Env2, Out2>(
|
|
828
828
|
self: Schedule<Env, In, Out>,
|
|
829
|
-
f: (out: Out) => Effect.Effect<
|
|
829
|
+
f: (out: Out) => Effect.Effect<Out2, never, Env2>
|
|
830
830
|
): Schedule<Env | Env2, In, Out2>
|
|
831
831
|
} = internal.mapEffect
|
|
832
832
|
|
|
@@ -1026,12 +1026,12 @@ export const reduce: {
|
|
|
1026
1026
|
export const reduceEffect: {
|
|
1027
1027
|
<Out, Env1, Z>(
|
|
1028
1028
|
zero: Z,
|
|
1029
|
-
f: (z: Z, out: Out) => Effect.Effect<
|
|
1029
|
+
f: (z: Z, out: Out) => Effect.Effect<Z, never, Env1>
|
|
1030
1030
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env1 | Env, In, Z>
|
|
1031
1031
|
<Env, In, Out, Env1, Z>(
|
|
1032
1032
|
self: Schedule<Env, In, Out>,
|
|
1033
1033
|
zero: Z,
|
|
1034
|
-
f: (z: Z, out: Out) => Effect.Effect<
|
|
1034
|
+
f: (z: Z, out: Out) => Effect.Effect<Z, never, Env1>
|
|
1035
1035
|
): Schedule<Env | Env1, In, Z>
|
|
1036
1036
|
} = internal.reduceEffect
|
|
1037
1037
|
|
|
@@ -1151,11 +1151,11 @@ export const sync: <A>(evaluate: LazyArg<A>) => Schedule<never, unknown, A> = in
|
|
|
1151
1151
|
*/
|
|
1152
1152
|
export const tapInput: {
|
|
1153
1153
|
<Env2, In2, X>(
|
|
1154
|
-
f: (input: In2) => Effect.Effect<
|
|
1154
|
+
f: (input: In2) => Effect.Effect<X, never, Env2>
|
|
1155
1155
|
): <Env, In, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In & In2, Out>
|
|
1156
1156
|
<Env, In, Out, Env2, In2, X>(
|
|
1157
1157
|
self: Schedule<Env, In, Out>,
|
|
1158
|
-
f: (input: In2) => Effect.Effect<
|
|
1158
|
+
f: (input: In2) => Effect.Effect<X, never, Env2>
|
|
1159
1159
|
): Schedule<Env | Env2, In & In2, Out>
|
|
1160
1160
|
} = internal.tapInput
|
|
1161
1161
|
|
|
@@ -1168,11 +1168,11 @@ export const tapInput: {
|
|
|
1168
1168
|
*/
|
|
1169
1169
|
export const tapOutput: {
|
|
1170
1170
|
<Out, XO extends Out, Env2, X>(
|
|
1171
|
-
f: (out: XO) => Effect.Effect<
|
|
1171
|
+
f: (out: XO) => Effect.Effect<X, never, Env2>
|
|
1172
1172
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1173
1173
|
<Env, In, Out, XO extends Out, Env2, X>(
|
|
1174
1174
|
self: Schedule<Env, In, Out>,
|
|
1175
|
-
f: (out: XO) => Effect.Effect<
|
|
1175
|
+
f: (out: XO) => Effect.Effect<X, never, Env2>
|
|
1176
1176
|
): Schedule<Env | Env2, In, Out>
|
|
1177
1177
|
} = internal.tapOutput
|
|
1178
1178
|
|
|
@@ -1243,11 +1243,11 @@ export const untilInput: {
|
|
|
1243
1243
|
*/
|
|
1244
1244
|
export const untilInputEffect: {
|
|
1245
1245
|
<In, Env2>(
|
|
1246
|
-
f: (input: In) => Effect.Effect<
|
|
1246
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1247
1247
|
): <Env, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1248
1248
|
<Env, In, Out, Env2>(
|
|
1249
1249
|
self: Schedule<Env, In, Out>,
|
|
1250
|
-
f: (input: In) => Effect.Effect<
|
|
1250
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1251
1251
|
): Schedule<Env | Env2, In, Out>
|
|
1252
1252
|
} = internal.untilInputEffect
|
|
1253
1253
|
|
|
@@ -1272,11 +1272,11 @@ export const untilOutput: {
|
|
|
1272
1272
|
*/
|
|
1273
1273
|
export const untilOutputEffect: {
|
|
1274
1274
|
<Out, Env2>(
|
|
1275
|
-
f: (out: Out) => Effect.Effect<
|
|
1275
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env2>
|
|
1276
1276
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1277
1277
|
<Env, In, Out, Env2>(
|
|
1278
1278
|
self: Schedule<Env, In, Out>,
|
|
1279
|
-
f: (out: Out) => Effect.Effect<
|
|
1279
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env2>
|
|
1280
1280
|
): Schedule<Env | Env2, In, Out>
|
|
1281
1281
|
} = internal.untilOutputEffect
|
|
1282
1282
|
|
|
@@ -1312,11 +1312,11 @@ export const whileInput: {
|
|
|
1312
1312
|
*/
|
|
1313
1313
|
export const whileInputEffect: {
|
|
1314
1314
|
<In, Env2>(
|
|
1315
|
-
f: (input: In) => Effect.Effect<
|
|
1315
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1316
1316
|
): <Env, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1317
1317
|
<Env, In, Out, Env2>(
|
|
1318
1318
|
self: Schedule<Env, In, Out>,
|
|
1319
|
-
f: (input: In) => Effect.Effect<
|
|
1319
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1320
1320
|
): Schedule<Env | Env2, In, Out>
|
|
1321
1321
|
} = internal.whileInputEffect
|
|
1322
1322
|
|
|
@@ -1341,11 +1341,11 @@ export const whileOutput: {
|
|
|
1341
1341
|
*/
|
|
1342
1342
|
export const whileOutputEffect: {
|
|
1343
1343
|
<Out, Env1>(
|
|
1344
|
-
f: (out: Out) => Effect.Effect<
|
|
1344
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env1>
|
|
1345
1345
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env1 | Env, In, Out>
|
|
1346
1346
|
<Env, In, Out, Env1>(
|
|
1347
1347
|
self: Schedule<Env, In, Out>,
|
|
1348
|
-
f: (out: Out) => Effect.Effect<
|
|
1348
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env1>
|
|
1349
1349
|
): Schedule<Env | Env1, In, Out>
|
|
1350
1350
|
} = internal.whileOutputEffect
|
|
1351
1351
|
|
package/src/Scheduler.ts
CHANGED
|
@@ -8,7 +8,6 @@ import type { FiberRef } from "./FiberRef.js"
|
|
|
8
8
|
import { dual } from "./Function.js"
|
|
9
9
|
import { globalValue } from "./GlobalValue.js"
|
|
10
10
|
import * as core from "./internal/core.js"
|
|
11
|
-
import * as timeout from "./internal/timeout.js"
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* @since 2.0.0
|
|
@@ -107,7 +106,7 @@ export class MixedScheduler implements Scheduler {
|
|
|
107
106
|
*/
|
|
108
107
|
private starve(depth = 0) {
|
|
109
108
|
if (depth >= this.maxNextTickBeforeTimer) {
|
|
110
|
-
|
|
109
|
+
setTimeout(() => this.starveInternal(0), 0)
|
|
111
110
|
} else {
|
|
112
111
|
Promise.resolve(void 0).then(() => this.starveInternal(depth + 1))
|
|
113
112
|
}
|
|
@@ -337,14 +336,14 @@ export const makeBatched = (
|
|
|
337
336
|
* @category constructors
|
|
338
337
|
*/
|
|
339
338
|
export const timer = (ms: number, shouldYield: Scheduler["shouldYield"] = defaultShouldYield) =>
|
|
340
|
-
make((task) =>
|
|
339
|
+
make((task) => setTimeout(task, ms), shouldYield)
|
|
341
340
|
|
|
342
341
|
/**
|
|
343
342
|
* @since 2.0.0
|
|
344
343
|
* @category constructors
|
|
345
344
|
*/
|
|
346
345
|
export const timerBatched = (ms: number, shouldYield: Scheduler["shouldYield"] = defaultShouldYield) =>
|
|
347
|
-
makeBatched((task) =>
|
|
346
|
+
makeBatched((task) => setTimeout(task, ms), shouldYield)
|
|
348
347
|
|
|
349
348
|
/** @internal */
|
|
350
349
|
export const currentScheduler: FiberRef<Scheduler> = globalValue(
|
package/src/internal/clock.ts
CHANGED
|
@@ -5,7 +5,6 @@ import type * as Effect from "../Effect.js"
|
|
|
5
5
|
import * as Either from "../Either.js"
|
|
6
6
|
import { constFalse } from "../Function.js"
|
|
7
7
|
import * as core from "./core.js"
|
|
8
|
-
import * as timeout from "./timeout.js"
|
|
9
8
|
|
|
10
9
|
/** @internal */
|
|
11
10
|
const ClockSymbolKey = "effect/Clock"
|
|
@@ -29,12 +28,12 @@ export const globalClockScheduler: Clock.ClockScheduler = {
|
|
|
29
28
|
return constFalse
|
|
30
29
|
}
|
|
31
30
|
let completed = false
|
|
32
|
-
const handle =
|
|
31
|
+
const handle = setTimeout(() => {
|
|
33
32
|
completed = true
|
|
34
33
|
task()
|
|
35
34
|
}, millis)
|
|
36
35
|
return () => {
|
|
37
|
-
|
|
36
|
+
clearTimeout(handle)
|
|
38
37
|
return !completed
|
|
39
38
|
}
|
|
40
39
|
}
|
|
@@ -2771,7 +2771,12 @@ export const zipLeftOptions = dual<
|
|
|
2771
2771
|
) => Effect.Effect<A, E | E2, R | R2>
|
|
2772
2772
|
>(
|
|
2773
2773
|
(args) => core.isEffect(args[1]),
|
|
2774
|
-
(self, that, options) =>
|
|
2774
|
+
(self, that, options) => {
|
|
2775
|
+
if (options?.concurrent !== true && (options?.batching === undefined || options.batching === false)) {
|
|
2776
|
+
return core.zipLeft(self, that)
|
|
2777
|
+
}
|
|
2778
|
+
return zipWithOptions(self, that, (a, _) => a, options)
|
|
2779
|
+
}
|
|
2775
2780
|
)
|
|
2776
2781
|
|
|
2777
2782
|
/** @internal */
|
|
@@ -2794,11 +2799,16 @@ export const zipRightOptions: {
|
|
|
2794
2799
|
} = dual((args) => core.isEffect(args[1]), <A, E, R, A2, E2, R2>(
|
|
2795
2800
|
self: Effect.Effect<A, E, R>,
|
|
2796
2801
|
that: Effect.Effect<A2, E2, R2>,
|
|
2797
|
-
options
|
|
2802
|
+
options?: {
|
|
2798
2803
|
readonly concurrent?: boolean | undefined
|
|
2799
2804
|
readonly batching?: boolean | "inherit" | undefined
|
|
2800
2805
|
}
|
|
2801
|
-
): Effect.Effect<A2, E2 | E, R2 | R> =>
|
|
2806
|
+
): Effect.Effect<A2, E2 | E, R2 | R> => {
|
|
2807
|
+
if (options?.concurrent !== true && (options?.batching === undefined || options.batching === false)) {
|
|
2808
|
+
return core.zipRight(self, that)
|
|
2809
|
+
}
|
|
2810
|
+
return zipWithOptions(self, that, (_, b) => b, options)
|
|
2811
|
+
})
|
|
2802
2812
|
|
|
2803
2813
|
/** @internal */
|
|
2804
2814
|
export const zipWithOptions: {
|
package/src/internal/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const moduleVersion = "2.3.
|
|
1
|
+
export const moduleVersion = "2.3.2"
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.set = exports.clear = void 0;
|
|
7
|
-
/**
|
|
8
|
-
* Bun currently has a bug where `setTimeout` doesn't behave correctly with a 0ms delay.
|
|
9
|
-
*
|
|
10
|
-
* @see https://github.com/oven-sh/bun/issues/3333
|
|
11
|
-
*/
|
|
12
|
-
/** @internal */
|
|
13
|
-
const isBun = typeof process === "undefined" ? false : !!process?.isBun;
|
|
14
|
-
/** @internal */
|
|
15
|
-
const clear = exports.clear = isBun ? id => clearInterval(id) : id => clearTimeout(id);
|
|
16
|
-
/** @internal */
|
|
17
|
-
const set = exports.set = isBun ? (fn, ms) => {
|
|
18
|
-
const id = setInterval(() => {
|
|
19
|
-
fn();
|
|
20
|
-
clearInterval(id);
|
|
21
|
-
}, ms);
|
|
22
|
-
return id;
|
|
23
|
-
} : (fn, ms) => setTimeout(fn, ms);
|
|
24
|
-
//# sourceMappingURL=timeout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"timeout.js","names":["isBun","process","clear","exports","id","clearInterval","clearTimeout","set","fn","ms","setInterval","setTimeout"],"sources":["../../../src/internal/timeout.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA;;;;;AAMA;AACA,MAAMA,KAAK,GAAG,OAAOC,OAAO,KAAK,WAAW,GAAG,KAAK,GAAG,CAAC,CAAGA,OAAe,EAAED,KAAM;AAElF;AACO,MAAME,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAiCF,KAAK,GAAII,EAAE,IAAKC,aAAa,CAACD,EAAE,CAAC,GAAIA,EAAE,IAAKE,YAAY,CAACF,EAAE,CAAC;AAE/G;AACO,MAAMG,GAAG,GAAAJ,OAAA,CAAAI,GAAA,GAAmDP,KAAK,GACtE,CAACQ,EAAc,EAAEC,EAAU,KAAI;EAC7B,MAAML,EAAE,GAAGM,WAAW,CAAC,MAAK;IAC1BF,EAAE,EAAE;IACJH,aAAa,CAACD,EAAE,CAAC;EACnB,CAAC,EAAEK,EAAE,CAAC;EAEN,OAAOL,EAAE;AACX,CAAC,GACD,CAACI,EAAc,EAAEC,EAAU,KAAKE,UAAU,CAACH,EAAE,EAAEC,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"timeout.d.ts","sourceRoot":"","sources":["../../../src/internal/timeout.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bun currently has a bug where `setTimeout` doesn't behave correctly with a 0ms delay.
|
|
3
|
-
*
|
|
4
|
-
* @see https://github.com/oven-sh/bun/issues/3333
|
|
5
|
-
*/
|
|
6
|
-
/** @internal */
|
|
7
|
-
const isBun = typeof process === "undefined" ? false : !!process?.isBun;
|
|
8
|
-
/** @internal */
|
|
9
|
-
export const clear = isBun ? id => clearInterval(id) : id => clearTimeout(id);
|
|
10
|
-
/** @internal */
|
|
11
|
-
export const set = isBun ? (fn, ms) => {
|
|
12
|
-
const id = setInterval(() => {
|
|
13
|
-
fn();
|
|
14
|
-
clearInterval(id);
|
|
15
|
-
}, ms);
|
|
16
|
-
return id;
|
|
17
|
-
} : (fn, ms) => setTimeout(fn, ms);
|
|
18
|
-
//# sourceMappingURL=timeout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"timeout.js","names":["isBun","process","clear","id","clearInterval","clearTimeout","set","fn","ms","setInterval","setTimeout"],"sources":["../../../src/internal/timeout.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAMA;AACA,MAAMA,KAAK,GAAG,OAAOC,OAAO,KAAK,WAAW,GAAG,KAAK,GAAG,CAAC,CAAGA,OAAe,EAAED,KAAM;AAElF;AACA,OAAO,MAAME,KAAK,GAAiCF,KAAK,GAAIG,EAAE,IAAKC,aAAa,CAACD,EAAE,CAAC,GAAIA,EAAE,IAAKE,YAAY,CAACF,EAAE,CAAC;AAE/G;AACA,OAAO,MAAMG,GAAG,GAAmDN,KAAK,GACtE,CAACO,EAAc,EAAEC,EAAU,KAAI;EAC7B,MAAML,EAAE,GAAGM,WAAW,CAAC,MAAK;IAC1BF,EAAE,EAAE;IACJH,aAAa,CAACD,EAAE,CAAC;EACnB,CAAC,EAAEK,EAAE,CAAC;EAEN,OAAOL,EAAE;AACX,CAAC,GACD,CAACI,EAAc,EAAEC,EAAU,KAAKE,UAAU,CAACH,EAAE,EAAEC,EAAE,CAAC"}
|
package/src/internal/timeout.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bun currently has a bug where `setTimeout` doesn't behave correctly with a 0ms delay.
|
|
3
|
-
*
|
|
4
|
-
* @see https://github.com/oven-sh/bun/issues/3333
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
/** @internal */
|
|
8
|
-
const isBun = typeof process === "undefined" ? false : !!((process as any)?.isBun)
|
|
9
|
-
|
|
10
|
-
/** @internal */
|
|
11
|
-
export const clear: (id: NodeJS.Timeout) => void = isBun ? (id) => clearInterval(id) : (id) => clearTimeout(id)
|
|
12
|
-
|
|
13
|
-
/** @internal */
|
|
14
|
-
export const set: (fn: () => void, ms: number) => NodeJS.Timeout = isBun ?
|
|
15
|
-
(fn: () => void, ms: number) => {
|
|
16
|
-
const id = setInterval(() => {
|
|
17
|
-
fn()
|
|
18
|
-
clearInterval(id)
|
|
19
|
-
}, ms)
|
|
20
|
-
|
|
21
|
-
return id
|
|
22
|
-
} :
|
|
23
|
-
(fn: () => void, ms: number) => setTimeout(fn, ms)
|