@deslop/stash 0.1.1060 → 0.1.1061

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.
@@ -3267,6 +3267,8 @@ const SuccessImpl = function(success) {
3267
3267
  SuccessImpl.prototype = SuccessProto;
3268
3268
  /** @internal */
3269
3269
  const succeed$9 = (success) => new SuccessImpl(success);
3270
+ /** @internal */
3271
+ const fromOption$3 = /*#__PURE__*/ dual(2, (self, onNone) => isNone$1(self) ? fail$8(onNone()) : succeed$9(self.value));
3270
3272
  //#endregion
3271
3273
  //#region ../../node_modules/.pnpm/effect@4.0.2/node_modules/effect/dist/Order.js
3272
3274
  /**
@@ -4270,6 +4272,63 @@ const flatMapNullishOr = /*#__PURE__*/ dual(2, (self, f) => isNone(self) ? none(
4270
4272
  */
4271
4273
  const flatten$2 = /*#__PURE__*/ flatMap$7(identity);
4272
4274
  /**
4275
+ * Combines a structure of `Option`s (tuple, struct, or iterable) into a single
4276
+ * `Option` containing the unwrapped structure.
4277
+ *
4278
+ * **When to use**
4279
+ *
4280
+ * Use when you need to combine multiple `Option` values into one while
4281
+ * preserving the input shape, with any `None` making the result `None`.
4282
+ *
4283
+ * **Details**
4284
+ *
4285
+ * - Tuple input → `Option` of a tuple with the same length
4286
+ * - Struct input → `Option` of a struct with the same keys
4287
+ * - Iterable input → `Option` of an `Array`
4288
+ * - Any `None` in the input → entire result is `None`
4289
+ *
4290
+ * **Example** (Combining a tuple and a struct)
4291
+ *
4292
+ * ```ts import.meta.vitest
4293
+ * import { Option } from "effect"
4294
+ *
4295
+ * const maybeName: Option.Option<string> = Option.some("John")
4296
+ * const maybeAge: Option.Option<number> = Option.some(25)
4297
+ *
4298
+ * // ┌─── Option<[string, number]>
4299
+ * // ▼
4300
+ * const tuple = Option.all([maybeName, maybeAge]) // => Option.some(["John", 25])
4301
+ *
4302
+ * // ┌─── Option<{ name: string; age: number; }>
4303
+ * // ▼
4304
+ * const struct = Option.all({ name: maybeName, age: maybeAge }) // => Option.some({ name: "John", age: 25 })
4305
+ * ```
4306
+ *
4307
+ * @see {@link product} for combining exactly two
4308
+ * @see {@link productMany} for a homogeneous collection
4309
+ *
4310
+ * @stability stable
4311
+ * @category combining
4312
+ * @since 2.0.0
4313
+ */
4314
+ const all$4 = (input) => {
4315
+ if (Symbol.iterator in input) {
4316
+ const out = [];
4317
+ for (const o of input) {
4318
+ if (isNone(o)) return none();
4319
+ out.push(o.value);
4320
+ }
4321
+ return some$1(out);
4322
+ }
4323
+ const out = {};
4324
+ for (const key of Object.keys(input)) {
4325
+ const o = input[key];
4326
+ if (isNone(o)) return none();
4327
+ assignProperty$1(out, key, o.value);
4328
+ }
4329
+ return some$1(out);
4330
+ };
4331
+ /**
4273
4332
  * Converts an `Option` into an `Array`.
4274
4333
  *
4275
4334
  * **When to use**
@@ -4521,6 +4580,68 @@ const succeed$8 = succeed$9;
4521
4580
  * @since 4.0.0
4522
4581
  */
4523
4582
  const fail$7 = fail$8;
4583
+ /**
4584
+ * Provides a pre-built failed `Result` whose failure value is `undefined`.
4585
+ *
4586
+ * **When to use**
4587
+ *
4588
+ * Use when you need a failed `Result` value that acts only as a control signal
4589
+ * without failure data.
4590
+ *
4591
+ * **Details**
4592
+ *
4593
+ * This is equivalent to `Result.fail(undefined)` with type
4594
+ * `Result<never, void>`, but reuses a shared `Failure` wrapper instead of
4595
+ * allocating one each time.
4596
+ *
4597
+ * **Example** (Failing without a payload)
4598
+ *
4599
+ * ```ts import.meta.vitest
4600
+ * import { Result } from "effect"
4601
+ *
4602
+ * Result.failVoid // => Result.fail(undefined)
4603
+ * ```
4604
+ *
4605
+ * @see {@link fail} to create a Failure with a specific value
4606
+ *
4607
+ * @stability stable
4608
+ * @category constructors
4609
+ * @since 4.0.0
4610
+ */
4611
+ const failVoid = /*#__PURE__*/ fail$7(void 0);
4612
+ /**
4613
+ * Converts an `Option<A>` into a `Result<A, E>`.
4614
+ *
4615
+ * **When to use**
4616
+ *
4617
+ * Use when an existing `Option` should become a `Result`, preserving `Some` as
4618
+ * success and turning `None` into a caller-provided failure.
4619
+ *
4620
+ * **Details**
4621
+ *
4622
+ * - `Some<A>` becomes `Success<A>`
4623
+ * - `None` becomes `Failure<E>` using the provided function
4624
+ * - Supports both data-first and data-last (piped) usage
4625
+ *
4626
+ * **Example** (Converting an Option to a Result)
4627
+ *
4628
+ * ```ts import.meta.vitest
4629
+ * import { Option, Result } from "effect"
4630
+ *
4631
+ * Result.fromOption(Option.some(1), () => "missing") // => Result.succeed(1)
4632
+ *
4633
+ * Result.fromOption(Option.none(), () => "missing") // => Result.fail("missing")
4634
+ * ```
4635
+ *
4636
+ * @see {@link getSuccess} to extract the success value as an Option
4637
+ * @see {@link getFailure} to extract the failure value as an Option
4638
+ * @see {@link fromNullishOr} to build a Result from nullable values
4639
+ *
4640
+ * @stability stable
4641
+ * @category constructors
4642
+ * @since 2.0.0
4643
+ */
4644
+ const fromOption$2 = fromOption$3;
4524
4645
  const try_$2 = (evaluate) => {
4525
4646
  if (isFunction(evaluate)) try {
4526
4647
  return succeed$8(evaluate());
@@ -5121,6 +5242,25 @@ const toEntries = /*#__PURE__*/ (/* @__PURE__ */ dual(2, (self, f) => {
5121
5242
  */
5122
5243
  const has$3 = /*#__PURE__*/ dual(2, (self, key) => Object.hasOwn(self, key));
5123
5244
  /**
5245
+ * Retrieves a value at a particular key from a record safely, returning it wrapped in an `Option`.
5246
+ *
5247
+ * **Example** (Getting a value as an Option)
5248
+ *
5249
+ * ```ts import.meta.vitest
5250
+ * import { Option, Record as R } from "effect"
5251
+ *
5252
+ * const person: Record<string, unknown> = { name: "John Doe", age: 35 }
5253
+ *
5254
+ * R.get(person, "name") // => Option.some("John Doe")
5255
+ * R.get(person, "email") // => Option.none()
5256
+ * ```
5257
+ *
5258
+ * @stability stable
5259
+ * @category getters
5260
+ * @since 2.0.0
5261
+ */
5262
+ const get$6 = /*#__PURE__*/ dual(2, (self, key) => Object.hasOwn(self, key) ? some$1(self[key]) : none());
5263
+ /**
5124
5264
  * Maps a record into another record by applying a transformation function to each of its values.
5125
5265
  *
5126
5266
  * **Example** (Mapping record values)
@@ -6286,6 +6426,42 @@ const getSomes = (self) => {
6286
6426
  return out;
6287
6427
  };
6288
6428
  /**
6429
+ * Keeps transformed values for elements where a `Filter` succeeds.
6430
+ *
6431
+ * **When to use**
6432
+ *
6433
+ * Use to filter an iterable with a `Result`-returning transformation while
6434
+ * discarding failures.
6435
+ *
6436
+ * **Details**
6437
+ *
6438
+ * The filter receives `(element, index)`. Failures are discarded.
6439
+ *
6440
+ * **Example** (Filtering and transforming)
6441
+ *
6442
+ * ```ts import.meta.vitest
6443
+ * import { Array, Result } from "effect"
6444
+ *
6445
+ * Array.filterMap([1, 2, 3, 4], (n) => n % 2 === 0 ? Result.succeed(n * 10) : Result.failVoid) // => [20, 40]
6446
+ * ```
6447
+ *
6448
+ * @see {@link filter} — keep original elements matching a predicate
6449
+ * @see {@link partition} for keeping both successes and failures
6450
+ *
6451
+ * @stability stable
6452
+ * @category filtering
6453
+ * @since 2.0.0
6454
+ */
6455
+ const filterMap = /*#__PURE__*/ dual(2, (self, f) => {
6456
+ const as = fromIterable$6(self);
6457
+ const out = [];
6458
+ for (let i = 0; i < as.length; i++) {
6459
+ const result = f(as[i], i);
6460
+ if (isSuccess$1(result)) out.push(result.success);
6461
+ }
6462
+ return out;
6463
+ });
6464
+ /**
6289
6465
  * Keeps only elements satisfying a predicate (or refinement).
6290
6466
  *
6291
6467
  * **When to use**
@@ -9890,9 +10066,11 @@ const provideServiceImpl = (self, service, implementation) => updateContext$1(se
9890
10066
  /** @internal */
9891
10067
  const zipWith$1 = /*#__PURE__*/ dual((args) => isEffect$1(args[1]), (self, that, f, options) => options?.concurrent ? map$5(all$2([self, that], { concurrency: 2 }), ([a, a2]) => f(a, a2)) : flatMap$4(self, (a) => map$5(that, (a2) => f(a, a2))));
9892
10068
  /** @internal */
10069
+ const filterOrFail$1 = /*#__PURE__*/ dual((args) => isEffect$1(args[0]), (self, predicate, orFailWith) => filterOrElse(self, predicate, orFailWith ? (a) => fail$6(orFailWith(a)) : () => fail$6(new NoSuchElementError())));
10070
+ /** @internal */
9893
10071
  const when$1 = /*#__PURE__*/ dual(2, (self, condition) => flatMap$4(condition, (pass) => pass ? asSome$1(self) : succeedNone$1));
9894
10072
  /** @internal */
9895
- const forever$1 = /*#__PURE__*/ dual((args) => isEffect$1(args[0]), (self, options) => whileLoop$1({
10073
+ const forever$2 = /*#__PURE__*/ dual((args) => isEffect$1(args[0]), (self, options) => whileLoop$1({
9896
10074
  while: constTrue,
9897
10075
  body: constant(options?.disableYield ? self : flatMap$4(self, (_) => yieldNow$1)),
9898
10076
  step: constVoid
@@ -10005,6 +10183,11 @@ const ignoreCause$1 = /*#__PURE__*/ dual((args) => isEffect$1(args[0]), (self, o
10005
10183
  });
10006
10184
  });
10007
10185
  /** @internal */
10186
+ const option$2 = (self) => match$2(self, {
10187
+ onFailure: none,
10188
+ onSuccess: some$1
10189
+ });
10190
+ /** @internal */
10008
10191
  const result$1 = (self) => matchEager(self, {
10009
10192
  onFailure: fail$7,
10010
10193
  onSuccess: succeed$8
@@ -10588,6 +10771,8 @@ const forEachConcurrent = /*#__PURE__*/ iterateConcurrentImpl({
10588
10771
  }
10589
10772
  });
10590
10773
  /** @internal */
10774
+ const filterOrElse = /*#__PURE__*/ dual(3, (self, predicate, orElse) => flatMap$4(self, (a) => predicate(a) ? succeed$7(a) : orElse(a)));
10775
+ /** @internal */
10591
10776
  const forkChild$1 = /*#__PURE__*/ dual((args) => isEffect$1(args[0]), (self, options) => withFiber$1((fiber) => {
10592
10777
  interruptChildrenPatch();
10593
10778
  return succeed$7(forkUnsafe$1(fiber, self, options?.startImmediately, false, options?.uninterruptible ?? false));
@@ -14609,6 +14794,23 @@ const replace = (searchValue, replaceValue) => (self) => self.replace(searchValu
14609
14794
  */
14610
14795
  const trim = (self) => self.trim();
14611
14796
  /**
14797
+ * Removes whitespace from the end of a string.
14798
+ *
14799
+ * **Example** (Trimming trailing whitespace)
14800
+ *
14801
+ * ```ts import.meta.vitest
14802
+ * import { String } from "effect"
14803
+ *
14804
+ * String.trimEnd(" a ") // => " a"
14805
+ * String.trimEnd("hello world ") // => "hello world"
14806
+ * ```
14807
+ *
14808
+ * @stability stable
14809
+ * @category transforming
14810
+ * @since 2.0.0
14811
+ */
14812
+ const trimEnd = (self) => self.trimEnd();
14813
+ /**
14612
14814
  * Extracts a section of a string and returns it as a new string.
14613
14815
  *
14614
14816
  * **Example** (Slicing strings)
@@ -14787,6 +14989,44 @@ const match$1 = (regExp) => (self) => fromNullOr(self.match(regExp));
14787
14989
  * @since 2.0.0
14788
14990
  */
14789
14991
  const padStart = (maxLength, fillString) => (self) => self.padStart(maxLength, fillString);
14992
+ /**
14993
+ * Repeats the string the specified number of times.
14994
+ *
14995
+ * **Details**
14996
+ *
14997
+ * `count` is rounded down. `NaN` and non-positive values are treated as `0`.
14998
+ *
14999
+ * **Example** (Repeating strings)
15000
+ *
15001
+ * ```ts import.meta.vitest
15002
+ * import { pipe, String } from "effect"
15003
+ *
15004
+ * pipe("a", String.repeat(5)) // => "aaaaa"
15005
+ * pipe("hello", String.repeat(3)) // => "hellohellohello"
15006
+ * ```
15007
+ *
15008
+ * @stability stable
15009
+ * @category transforming
15010
+ * @since 2.0.0
15011
+ */
15012
+ const repeat$2 = (count) => (self) => self.repeat(normalize$1(count));
15013
+ /**
15014
+ * Replaces all occurrences of a substring or pattern in a string.
15015
+ *
15016
+ * **Example** (Replacing all matches)
15017
+ *
15018
+ * ```ts import.meta.vitest
15019
+ * import { pipe, String } from "effect"
15020
+ *
15021
+ * pipe("ababb", String.replaceAll("b", "c")) // => "acacc"
15022
+ * pipe("ababb", String.replaceAll(/ba/g, "cc")) // => "accbb"
15023
+ * ```
15024
+ *
15025
+ * @stability stable
15026
+ * @category transforming
15027
+ * @since 2.0.0
15028
+ */
15029
+ const replaceAll = (searchValue, replaceValue) => (self) => self.replaceAll(searchValue, replaceValue);
14790
15030
  //#endregion
14791
15031
  //#region ../../node_modules/.pnpm/effect@4.0.2/node_modules/effect/dist/internal/random.js
14792
15032
  /** @internal */
@@ -15025,6 +15265,28 @@ const ScheduleProto = {
15025
15265
  }
15026
15266
  };
15027
15267
  /**
15268
+ * Type guard that checks if a value is a Schedule.
15269
+ *
15270
+ * **Example** (Checking for schedules)
15271
+ *
15272
+ * ```ts import.meta.vitest
15273
+ * import { Schedule } from "effect"
15274
+ *
15275
+ * const schedule = Schedule.exponential("100 millis")
15276
+ * const notSchedule = { foo: "bar" }
15277
+ *
15278
+ * Schedule.isSchedule(schedule) // => true
15279
+ * Schedule.isSchedule(notSchedule) // => false
15280
+ * Schedule.isSchedule(null) // => false
15281
+ * Schedule.isSchedule(undefined) // => false
15282
+ * ```
15283
+ *
15284
+ * @stability stable
15285
+ * @category guards
15286
+ * @since 2.0.0
15287
+ */
15288
+ const isSchedule = (u) => hasProperty(u, TypeId$30);
15289
+ /**
15028
15290
  * Creates a Schedule from a step function that returns a Pull.
15029
15291
  *
15030
15292
  * **Example** (Creating a custom schedule from a step function)
@@ -15247,6 +15509,35 @@ const exponential = (base, factor = 2) => {
15247
15509
  }));
15248
15510
  };
15249
15511
  /**
15512
+ * Returns a new `Schedule` that outputs the inputs of the specified schedule.
15513
+ *
15514
+ * **Example** (Passing inputs through as outputs)
15515
+ *
15516
+ * ```ts import.meta.vitest
15517
+ * import { Effect, Schedule } from "effect"
15518
+ *
15519
+ * const inputSchedule = Schedule.passthrough(
15520
+ * Schedule.exponential("100 millis").pipe(Schedule.upTo({ times: 3 }))
15521
+ * )
15522
+ * const program = Effect.gen(function*() {
15523
+ * const step = yield* Schedule.toStep(inputSchedule)
15524
+ * const [output] = yield* step(0, "input")
15525
+ * return output
15526
+ * })
15527
+ *
15528
+ * await Effect.runPromise(program) // => "input"
15529
+ * ```
15530
+ *
15531
+ * @stability stable
15532
+ * @category mapping
15533
+ * @since 2.0.0
15534
+ */
15535
+ const passthrough$2 = (self) => fromStep(map$5(toStep(self), (step) => (now, input) => matchEffect$1(step(now, input), {
15536
+ onSuccess: (result) => succeed$7([input, result[1]]),
15537
+ onFailure: failCause$5,
15538
+ onDone: () => done(input)
15539
+ })));
15540
+ /**
15250
15541
  * Returns a schedule that recurs continuously, each repetition spaced the
15251
15542
  * specified duration from the last run.
15252
15543
  *
@@ -15277,6 +15568,47 @@ const spaced = (duration) => {
15277
15568
  const decoded = fromInputUnsafe$1(duration);
15278
15569
  return fromStepWithMetadata(succeed$7((meta) => succeed$7([meta.attempt - 1, decoded])));
15279
15570
  };
15571
+ const while_ = /*#__PURE__*/ dual(2, (self, predicate) => fromStep(map$5(toStep(self), (step) => {
15572
+ const meta = metadataFn();
15573
+ return (now, input) => flatMap$4(step(now, input), (result) => {
15574
+ const [output, duration] = result;
15575
+ const eff = predicate({
15576
+ ...meta(now, input),
15577
+ output,
15578
+ duration
15579
+ });
15580
+ return flatMap$4(isEffect$1(eff) ? eff : succeed$7(eff), (check) => check ? succeed$7(result) : done(output));
15581
+ });
15582
+ })));
15583
+ /**
15584
+ * Returns a new `Schedule` that will recur forever.
15585
+ *
15586
+ * **Details**
15587
+ *
15588
+ * The output of the schedule is the current count of its repetitions thus far
15589
+ * (i.e. `0, 1, 2, ...`).
15590
+ *
15591
+ * **Example** (Repeating forever)
15592
+ *
15593
+ * ```ts import.meta.vitest
15594
+ * import { Effect, Schedule } from "effect"
15595
+ * import { TestClock } from "effect/testing"
15596
+ *
15597
+ * const executions: Array<number> = []
15598
+ * const schedule = Schedule.forever.pipe(Schedule.upTo({ times: 2 }))
15599
+ * const program = Effect.sync(() => executions.push(executions.length + 1)).pipe(
15600
+ * Effect.repeat(schedule),
15601
+ * Effect.as(executions)
15602
+ * )
15603
+ *
15604
+ * await Effect.runPromise(Effect.provide(program, TestClock.layer())) // => [1, 2, 3]
15605
+ * ```
15606
+ *
15607
+ * @stability stable
15608
+ * @category constructors
15609
+ * @since 2.0.0
15610
+ */
15611
+ const forever$1 = /*#__PURE__*/ spaced(zero$2);
15280
15612
  //#endregion
15281
15613
  //#region ../../node_modules/.pnpm/effect@4.0.2/node_modules/effect/dist/internal/layer.js
15282
15614
  const provideLayer = (self, layer, options) => scopedWith$1((scope) => flatMap$4(options?.local ? buildWithMemoMap(layer, makeMemoMapUnsafe(), scope) : buildWithScope(layer, scope), (context) => provideContext$3(self, context)));
@@ -15286,6 +15618,13 @@ const provide$1 = /*#__PURE__*/ dual((args) => isEffect$1(args[0]), (self, sourc
15286
15618
  //#region ../../node_modules/.pnpm/effect@4.0.2/node_modules/effect/dist/internal/schedule.js
15287
15619
  const findErrorOnly = (cause) => cause.reasons.every(isFailReason$1) ? findError$1(cause) : fail$7(cause);
15288
15620
  /** @internal */
15621
+ const repeatOrElse = /*#__PURE__*/ dual(3, (self, schedule, orElse) => flatMap$4(toStepWithMetadata(schedule), (step) => {
15622
+ let meta = CurrentMetadata.defaultValue();
15623
+ return catchCauseFilter$1(catchDone(forever$2(tap$1(flatMap$4(suspend$3(() => provideService$1(self, CurrentMetadata, meta)), step), (meta_) => sync$2(() => {
15624
+ meta = meta_;
15625
+ })), { disableYield: true }), (out) => succeed$7(out)), findErrorOnly, (error) => orElse(error, meta.attempt === 0 ? none() : some$1(meta)));
15626
+ }));
15627
+ /** @internal */
15289
15628
  const retryOrElse$1 = /*#__PURE__*/ dual(3, (self, policy, orElse) => flatMap$4(toStepWithMetadata(policy), (step) => {
15290
15629
  let meta = CurrentMetadata.defaultValue();
15291
15630
  let lastError;
@@ -15298,6 +15637,31 @@ const retryOrElse$1 = /*#__PURE__*/ dual(3, (self, policy, orElse) => flatMap$4(
15298
15637
  });
15299
15638
  return catchDone(loop, (out) => internalCall(() => orElse(lastError, out)));
15300
15639
  }));
15640
+ /** @internal */
15641
+ const repeat$1 = /*#__PURE__*/ dual(2, (self, options) => {
15642
+ const schedule = typeof options === "function" ? options(identity) : isSchedule(options) ? options : buildFromOptions(options);
15643
+ return repeatOrElse(self, schedule, fail$6);
15644
+ });
15645
+ /** @internal */
15646
+ const retry$1 = /*#__PURE__*/ dual(2, (self, options) => {
15647
+ const schedule = typeof options === "function" ? options(identity) : isSchedule(options) ? options : buildFromOptions(options);
15648
+ return retryOrElse$1(self, schedule, fail$6);
15649
+ });
15650
+ const passthroughForever = /*#__PURE__*/ passthrough$2(forever$1);
15651
+ /** @internal */
15652
+ const buildFromOptions = (options) => {
15653
+ let schedule = options.schedule ? passthrough$2(options.schedule) : passthroughForever;
15654
+ if (options.while) schedule = while_(schedule, ({ input }) => {
15655
+ const applied = options.while(input);
15656
+ return isEffect$1(applied) ? applied : succeed$7(applied);
15657
+ });
15658
+ if (options.until) schedule = while_(schedule, ({ input }) => {
15659
+ const applied = options.until(input);
15660
+ return isEffect$1(applied) ? map$5(applied, (b) => !b) : succeed$7(!applied);
15661
+ });
15662
+ if (options.times !== void 0) schedule = while_(schedule, ({ attempt }) => succeed$7(attempt <= options.times));
15663
+ return schedule;
15664
+ };
15301
15665
  //#endregion
15302
15666
  //#region ../../node_modules/.pnpm/effect@4.0.2/node_modules/effect/dist/Effect.js
15303
15667
  /**
@@ -16498,6 +16862,49 @@ const tap = tap$1;
16498
16862
  */
16499
16863
  const result = result$1;
16500
16864
  /**
16865
+ * Converts success to `Option.some` and failure to `Option.none`.
16866
+ *
16867
+ * **When to use**
16868
+ *
16869
+ * Use when you only care whether an effect succeeds and want recoverable
16870
+ * failures represented as `Option.none`.
16871
+ *
16872
+ * **Details**
16873
+ *
16874
+ * Success values become `Option.some`, recoverable failures become
16875
+ * `Option.none`, and defects still fail the effect.
16876
+ *
16877
+ * **Gotchas**
16878
+ *
16879
+ * `option` only captures typed, recoverable failures as `Option.none`.
16880
+ * Defects and interruptions are not captured inside the `Option` and still
16881
+ * fail the effect.
16882
+ *
16883
+ * `option` also discards typed failure values. Use `result` if the failure
16884
+ * value matters.
16885
+ *
16886
+ * **Example** (Capturing success or failure as Option)
16887
+ *
16888
+ * ```ts import.meta.vitest
16889
+ * import { Effect, Option } from "effect"
16890
+ *
16891
+ * const program = Effect.all([
16892
+ * Effect.option(Effect.succeed(1)),
16893
+ * Effect.option(Effect.fail("missing"))
16894
+ * ])
16895
+ *
16896
+ * Effect.runSync(program) // => [Option.some(1), Option.none()]
16897
+ * ```
16898
+ *
16899
+ * @see {@link result} for a version that uses `Result` instead.
16900
+ * @see {@link exit} for a version that encapsulates both recoverable errors and defects in an `Exit`.
16901
+ *
16902
+ * @stability stable
16903
+ * @category error handling
16904
+ * @since 2.0.0
16905
+ */
16906
+ const option$1 = option$2;
16907
+ /**
16501
16908
  * Transforms an effect to encapsulate both failure and success using the `Exit`
16502
16909
  * data type.
16503
16910
  *
@@ -17214,6 +17621,59 @@ const tapError = tapError$1;
17214
17621
  */
17215
17622
  const tapCause = tapCause$1;
17216
17623
  /**
17624
+ * Retries typed failures from an effect according to a retry policy.
17625
+ *
17626
+ * **When to use**
17627
+ *
17628
+ * Use when you need to rerun an effect after transient typed failures, such as
17629
+ * network issues or temporary resource unavailability.
17630
+ *
17631
+ * **Details**
17632
+ *
17633
+ * The policy can be a `Schedule`, a schedule builder, or a `Retry.Options`
17634
+ * object using `schedule`, `times`, `while`, or `until`. If a retry eventually
17635
+ * succeeds, the returned effect succeeds with that value. If the policy stops
17636
+ * while the effect is still failing, the last failure is propagated.
17637
+ *
17638
+ * **Gotchas**
17639
+ *
17640
+ * The source effect is always evaluated once before any retry policy is
17641
+ * applied. For example, `Schedule.recurs(3)` allows up to three retries after
17642
+ * the initial attempt.
17643
+ *
17644
+ * Defects and interruptions are not retried.
17645
+ *
17646
+ * **Example** (Retrying with a schedule)
17647
+ *
17648
+ * ```ts import.meta.vitest
17649
+ * import { Data, Effect, Schedule } from "effect"
17650
+ *
17651
+ * class AttemptError extends Data.TaggedError("AttemptError")<{ readonly attempt: number }> {}
17652
+ *
17653
+ * let attempt = 0
17654
+ * const task = Effect.callback<string, AttemptError>((resume) => {
17655
+ * attempt++
17656
+ * if (attempt <= 2) {
17657
+ * resume(Effect.fail(new AttemptError({ attempt })))
17658
+ * } else {
17659
+ * resume(Effect.succeed("Success!"))
17660
+ * }
17661
+ * })
17662
+ *
17663
+ * const policy = Schedule.recurs(5)
17664
+ * const program = Effect.retry(task, policy)
17665
+ *
17666
+ * await Effect.runPromise(program) // => "Success!"
17667
+ * ```
17668
+ *
17669
+ * @see {@link retryOrElse} for a version that allows you to run a fallback.
17670
+ * @see {@link repeat} if your retry condition is based on successful outcomes rather than errors.
17671
+ * @stability stable
17672
+ * @category error handling
17673
+ * @since 2.0.0
17674
+ */
17675
+ const retry = retry$1;
17676
+ /**
17217
17677
  * Retries a failing effect and runs a fallback effect if retries are exhausted.
17218
17678
  *
17219
17679
  * **When to use**
@@ -17564,6 +18024,38 @@ const sleep = sleep$1;
17564
18024
  */
17565
18025
  const raceFirst = raceFirst$1;
17566
18026
  /**
18027
+ * Filters an effect, failing with a custom error if the predicate fails.
18028
+ *
18029
+ * **Details**
18030
+ *
18031
+ * This function applies a predicate to the result of an effect. If the
18032
+ * predicate evaluates to `false`, the effect fails with either a custom
18033
+ * error (if `orFailWith` is provided) or a `NoSuchElementError`.
18034
+ *
18035
+ * **Example** (Filtering with a custom failure)
18036
+ *
18037
+ * ```ts import.meta.vitest
18038
+ * import { Effect } from "effect"
18039
+ *
18040
+ * // An effect that produces a number
18041
+ * const program = Effect.succeed(5)
18042
+ *
18043
+ * // Filter for even numbers, fail for odd numbers
18044
+ * const filtered = Effect.filterOrFail(
18045
+ * program,
18046
+ * (n) => n % 2 === 0,
18047
+ * (n) => `Expected even number, got ${n}`
18048
+ * )
18049
+ *
18050
+ * Effect.runSync(Effect.flip(filtered)) // => "Expected even number, got 5"
18051
+ * ```
18052
+ *
18053
+ * @stability stable
18054
+ * @category filtering
18055
+ * @since 2.0.0
18056
+ */
18057
+ const filterOrFail = filterOrFail$1;
18058
+ /**
17567
18059
  * Runs an effect conditionally based on the result of an effectful boolean
17568
18060
  * condition.
17569
18061
  *
@@ -18697,7 +19189,89 @@ const uninterruptibleMask = uninterruptibleMask$1;
18697
19189
  * @category repetition
18698
19190
  * @since 2.0.0
18699
19191
  */
18700
- const forever = forever$1;
19192
+ const forever = forever$2;
19193
+ /**
19194
+ * Repeats an effect based on a specified schedule or until the first failure.
19195
+ *
19196
+ * **When to use**
19197
+ *
19198
+ * Use to rerun an effect after successful executions.
19199
+ *
19200
+ * **Details**
19201
+ *
19202
+ * This function executes an effect repeatedly according to the given schedule.
19203
+ * Each repetition occurs after the initial execution of the effect, meaning
19204
+ * that the schedule determines the number of additional repetitions. For
19205
+ * example, using `Schedule.once` will result in the effect being executed twice
19206
+ * (once initially and once as part of the repetition).
19207
+ *
19208
+ * If the effect succeeds, it is repeated according to the schedule. If it
19209
+ * fails, the repetition stops immediately, and the failure is returned.
19210
+ *
19211
+ * The schedule can also specify delays between repetitions, making it useful
19212
+ * for tasks like retrying operations with backoff, periodic execution, or
19213
+ * performing a series of dependent actions.
19214
+ *
19215
+ * You can combine schedules for more advanced repetition logic, such as adding
19216
+ * delays, limiting recursions, or dynamically adjusting based on the outcome of
19217
+ * each execution.
19218
+ *
19219
+ * **Gotchas**
19220
+ *
19221
+ * The source effect is always evaluated once before the schedule is stepped.
19222
+ * The schedule controls additional repetitions, not the initial execution.
19223
+ *
19224
+ * **Example** (Repeating successful effects with a schedule)
19225
+ *
19226
+ * ```ts import.meta.vitest
19227
+ * // Success Example
19228
+ * import { Effect, Schedule } from "effect"
19229
+ * const output: Array<unknown> = []
19230
+ *
19231
+ * const action = Effect.sync(() => { output.push("success") })
19232
+ * const policy = Schedule.recurs(2)
19233
+ * const program = Effect.repeat(action, policy)
19234
+ *
19235
+ * void output.push(Effect.runSync(program))
19236
+ * output // => ["success", "success", "success", 2]
19237
+ * ```
19238
+ *
19239
+ * **Example** (Stopping repetition on failure)
19240
+ *
19241
+ * ```ts import.meta.vitest
19242
+ * // Failure Example
19243
+ * import { Effect, Schedule } from "effect"
19244
+ * const output: Array<unknown> = []
19245
+ *
19246
+ * let count = 0
19247
+ *
19248
+ * // Define a callback effect that simulates an action with possible failures
19249
+ * const action = Effect.callback<string, string>((resume) => {
19250
+ * if (count > 1) {
19251
+ * void output.push("failure")
19252
+ * resume(Effect.fail("Uh oh!"))
19253
+ * } else {
19254
+ * count++
19255
+ * void output.push("success")
19256
+ * resume(Effect.succeed("yay!"))
19257
+ * }
19258
+ * })
19259
+ *
19260
+ * const policy = Schedule.recurs(2)
19261
+ * const program = Effect.repeat(action, policy)
19262
+ *
19263
+ * void output.push((await Effect.runPromiseExit(program))._tag)
19264
+ * output // => ["success", "success", "failure", "Failure"]
19265
+ * ```
19266
+ *
19267
+ * @see {@link retry} for failure-based repetition
19268
+ * @see {@link repeatOrElse} for fallback handling when repetition fails
19269
+ *
19270
+ * @stability stable
19271
+ * @category repetition
19272
+ * @since 2.0.0
19273
+ */
19274
+ const repeat = repeat$1;
18701
19275
  /**
18702
19276
  * Create a new span for tracing, and automatically close it when the Scope
18703
19277
  * finalizes.
@@ -45826,15 +46400,16 @@ const Capture = Struct({
45826
46400
  const Extraction = Struct({
45827
46401
  author: String$2,
45828
46402
  image: Option(String$2),
46403
+ slides: optionalKey(ArraySchema(String$2)),
45829
46404
  text: String$2,
45830
46405
  title: String$2,
45831
46406
  url: String$2,
45832
46407
  video: optionalKey(String$2)
45833
46408
  });
45834
46409
  const Organization = Struct({
45835
- body: pipe(String$2, check(isMaxLength(4e3))),
46410
+ body: pipe(String$2, check(isMaxLength(12e3))),
45836
46411
  screenText: pipe(String$2, check(isMaxLength(4e3))),
45837
- summary: pipe(String$2, check(isMaxLength(160))),
46412
+ summary: pipe(String$2, check(isMaxLength(300))),
45838
46413
  tags: pipe(ArraySchema(Tag), check(isMinLength(1), isMaxLength(3))),
45839
46414
  title: pipe(String$2, check(isMinLength(1), isMaxLength(80))),
45840
46415
  topics: pipe(String$2, check(isMaxLength(400)))
@@ -45864,4 +46439,4 @@ var RpcContracts = class extends make$7(make$9("notes.watch", {
45864
46439
  payload: Struct({ id: NoteId })
45865
46440
  })) {};
45866
46441
  //#endregion
45867
- export { Socket as $, match$1 as $a, fromNullishOr as $c, onExit$1 as $i, dual as $l, mkUint8Array as $n, MinimumLogLevel as $o, asSome as $r, ensure as $s, fromInput as $t, withDefault as A, uninterruptible as Aa, has$3 as Ac, fromResult as Ai, toStringUnknown as Al, toEpochMillis as An, effect as Ao, take$1 as Ar, TaggedError$1 as As, TaggedError as At, constPing as B, withSpan as Ba, isFailure$1 as Bc, logFatal as Bi, string$1 as Bl, flatMap as Bn, succeedContext as Bo, interruptAs as Br, getOrUndefined as Bs, encodeUnknownEffect as Bt, Redacted as C, tapError as Ca, reverse as Cc, fnUntraced as Ci, assignProperty$1 as Cl, toArrayBuffer as Cn, isNoSuchElementError as Co, failCause$1 as Cr, DisablePropagation as Cs, Literal as Ct, option as D, transposeOption as Da, takeRight as Dc, forkIn as Di, Class$2 as Dl, ChildProcessSpawner as Dn, squash as Do, offerUnsafe as Dr, make$34 as Ds, Record as Dt, map as E, timeoutOrElse as Ea, take$3 as Ec, forkChild as Ei, BaseProto as El, make$18 as En, prettyErrors as Eo, offerAll as Er, externalSpan as Es, NullOr as Et, layerJson as F, whileLoop as Fa, make$37 as Fc, interruptible as Fi, array as Fl, decodeText$1 as Fn, merge$3 as Fo, set$2 as Fr, Reference as Fs, decodeEffect as Ft, ClientAbort as G, catchDone as Ga, succeed$8 as Gc, mapEager as Gi, isTagged as Gl, fromQueue as Gn, close as Go, gibibytes as Gr, merge$4 as Gs, tag as Gt, ServerClient as H, exponential as Ha, isSuccess$1 as Hc, logWarning as Hi, hasProperty as Hl, fromChannel as Hn, Scope as Ho, badArgument as Hr, getUnsafe as Hs, is as Ht, layerSchemaBinary as I, withFiber as Ia, fail$7 as Ic, isEffect as Ii, combine$2 as Il, empty$4 as In, mergeAll$1 as Io, makeUnsafe$2 as Ir, Service as Is, decodeSync as It, spanAttributes as J, endsWith as Ja, exists as Jc, matchCauseEffect as Ji, constFalse$1 as Jl, limitBytes as Jn, make$33 as Jo, acquireRelease as Jr, contains as Js, toJsonSchemaDocument as Jt, getStreamSchemas as K, isDoneCause as Ka, try_$2 as Kc, mapError$2 as Ki, isUndefined as Kl, fromReadableStream as Kn, closeUnsafe as Ko, mebibytes as Kr, Prototype as Ks, toCodecJson as Kt, RequestId as L, withFiberSucceed as La, flatMap$6 as Lc, log as Li, hash as Ll, ensuring as Ln, provide$2 as Lo, getCurrent as Lr, add as Ls, decodeUnknownEffect as Lt, withRun as M, updateContext as Ma, map$7 as Mc, ignore as Mi, redact$1 as Ml, Path$1 as Mn, effectDiscard as Mo, publishUnsafe as Mr, parts as Ms, Tuple as Mt, withRunClient as N, useSpan as Na, toEntries as Nc, ignoreCause as Ni, equals$1 as Nl, FileSystem as Nn, empty$7 as No, unbounded as Nr, seconds as Ns, Union as Nt, succeed as O, tryPromise as Oa, assignProperty as Oc, forkScoped as Oi, NodeInspectSymbol as Ol, encode as On, CurrentMemoMap as Oo, shutdown as Or, nativeTracer as Os, String$2 as Ot, RpcSerialization as P, void_$1 as Pa, empty$11 as Pc, interrupt$1 as Pi, symbol$1 as Pl, concat as Pn, launch as Po, make$29 as Pr, toMillis as Ps, Unknown as Pt, CloseEvent as Q, length as Qa, flatten$2 as Qc, onError as Qi, constant as Ql, mkString as Qn, CurrentLogSpans as Qo, as as Qr, empty$9 as Qs, empty as Qt, ResponseDefectEncoded as R, withLogSpan as Ra, getOrElse as Rc, logDebug as Ri, number$1 as Rl, fail$1 as Rn, provideMerge as Ro, interrupt as Rr, empty$8 as Rs, encodeEffect as Rt, Port as S, tapCause as Sa, reduce as Sc, fn as Si, withFiber$1 as Sl, pipeThroughDuplex as Sn, interruptors as So, end as Sr, sync$2 as Ss, Finite as St, URL$1 as T, timeoutOption as Ta, sort as Tc, forever as Ti, setStackTraceLimit as Tl, fromWritable as Tn, map$4 as To, offer as Tr, Tracer as Ts, NonEmptyArray as Tt, exitSchema as U, min as Ua, map$8 as Uc, makeSpanScoped as Ui, isNotUndefined as Ul, fromIterable$5 as Un, addFinalizer$1 as Uo, fromInput$2 as Ur, make$36 as Us, optional as Ut, constPong as V, zipWith as Va, isResult as Vc, logInfo as Vi, symbol$2 as Vl, fromArray as Vn, unwrap$4 as Vo, runIn as Vr, getOrUndefinedUnsafe as Vs, fromJsonString as Vt, isWrapper as W, spaced as Wa, match$5 as Wc, map$3 as Wi, isObject as Wl, fromPubSub as Wn, addFinalizerExit as Wo, fromInputUnsafe as Wr, makeUnsafe$6 as Ws, optionalKey as Wt, Collector as X, isEmpty$1 as Xa, flatMap$7 as Xc, matchEffect as Xi, constUndefined as Xl, mapAccum as Xn, provide$3 as Xo, andThen as Xr, dedupeAdjacentWith as Xs, omit as Xt, spanName as Y, includes as Ya, filter$4 as Yc, matchCauseEffectEager as Yi, constTrue as Yl, map$1 as Yn, makeUnsafe$4 as Yo, all$1 as Yr, dedupe as Ys, isSchemaError$1 as Yt, makeCollectorUnsafe as Z, isNonEmpty as Za, flatMapNullishOr as Zc, never$1 as Zi, constVoid as Zl, mapError as Zn, CurrentLogAnnotations as Zo, annotateLogs as Zr, drop as Zs, encodeUnknownEffect$1 as Zt, QuitError as _, serviceOption as _a, last as _c, exit as _i, flip$1 as _l, fromSetCookie as _n, findError as _o, mkUint8Array$1 as _r, fiberEnterUninterruptibleUnsafe as _s, BooleanLiterals as _t, ImageType as a, provide as aa, flatMap$5 as ac, catchDefect as ai, isSome as al, CurrentRedactedNames as an, toLowerCase as ao, runHead as ar, isExit as as, layerWebSocket as at, layer$8 as b, suspend$2 as ba, match$4 as bc, flatMap$2 as bi, contA as bl, toSetCookieHeaders as bn, hasInterrupts as bo, bounded as br, onExitUnsafe as bs, Exit as bt, NotesError as c, raceFirst as ca, getSomes as cc, catchReason as ci, map$9 as cl, fromRecordUnsafe as cn, parse as co, succeed$2 as cr, succeed$6 as cs, EmptyBodyError as ct, layer as d, runFork as da, head as dc, catch_$1 as di, orElse as dl, remove$1 as dn, Done as do, toReadableStreamEffect as dr, into as ds, HttpClientErrorSchema as dt, onExitPrimitive as ea, every$1 as ec, asVoid as ei, fromUndefinedOr as el, setAll as en, padStart as eo, orDie as er, TracerTimingEnabled as es, SocketError as et, flow as eu, make as f, runForkWith as fa, headNonEmpty as fc, context as fi, some$1 as fl, set$1 as fn, StackTrace as fo, toReadableStreamWith as fr, isDeferred as fs, InvalidUrlError as ft, layer$1 as g, service as ga, join$1 as gc, ensuring$2 as gi, combine$1 as gl, empty$3 as gn, filterInterruptors as go, mapError$1 as gr, fiberEnterInterruptibleUnsafe as gs, ArraySchema as gt, errorReported as h, scoped as ha, isReadonlyArrayNonEmpty as hc, die$1 as hi, String$6 as hl, value as hn, done as ho, fromTransform$1 as hr, effectIsExit as hs, Any as ht, FileType as i, promise as ia, findLast as ic, catchCauseIf as ii, isNone as il, get as in, startsWith as io, runForEachArray as ir, interrupt$2 as is, fromWebSocket as it, Stdio as j, uninterruptibleMask as ja, keys$1 as jc, gen as ji, format$2 as jl, defaultFormatter as jn, effectContext as jo, takeAll as jr, taggedEnum as js, TrueLiterals as jt, unwrap as k, try_ as ka, filter$3 as kc, fromOption as ki, toJson as kl, now as kn, buildWithMemoMap as ko, shutdownUnsafe as kr, Error$2 as ks, Struct as kt, Organization as l, result as la, getUnsafe$1 as lc, catchTag as li, match$6 as ll, isRedactedName as ln, round as lo, suspend as lr, _await as ls, EncodeError as lt, errorExitCode as m, scope as ma, isReadonlyArrayEmpty as mc, delay as mi, Number$5 as ml, make$16 as mn, die$2 as mo, fromPull$1 as mr, ConsoleRef as ms, TransportError as mt, Capture as n, orDie$2 as na, findFirst as nc, callback$1 as ni, getOrNull as nl, has as nn, slice as no, run$1 as nr, fail$5 as ns, SocketOpenError as nt, pipe as nu, Note as o, provideContext$2 as oa, fromIterable$6 as oc, catchFilter as oi, liftPredicate as ol, empty$2 as on, trim as oo, runLast as or, isFailure as os, layerWebSocketConstructorGlobal as ot, runMain as p, runSync$1 as pa, isArray as pc, contextWith as pi, toArray as pl, setAll$1 as pn, combine as po, unwrap$1 as pr, makeUnsafe$5 as ps, StatusCodeError as pt, isStreamSchema as q, Random as qa, contains$1 as qc, match as qi, compose as ql, groupedWithin as qn, forkUnsafe as qo, zero$1 as qr, allocate as qs, toCodecStringTree as qt, Extraction as r, orElseSucceed as ra, findFirstIndex as rc, catchCause$1 as ri, getOrUndefined$1 as rl, fromIterable$2 as rn, split as ro, runForEach as rr, failCause$3 as rs, SocketReadError as rt, pipeArguments as ru, NoteId as s, provideService as sa, get$5 as sc, catchIf as si, liftThrowable as sl, fromInput$1 as sn, max as so, scan as sr, isSuccess as ss, DecodeError as st, RpcContracts as t, onInterrupt as ta, filter$2 as tc, cached as ti, getOrElse$1 as tl, fromIterable as tn, replace as to, pipeThroughChannel as tr, die$3 as ts, SocketErrorReason as tt, identity as tu, LogToStderr as u, retryOrElse as ua, groupBy as uc, catchTags as ui, none as ul, merge as un, Clock as uo, takeUntil as ur, doneUnsafe as us, HttpClientError as ut, Terminal as v, succeed$4 as va, lastNonEmpty as vc, fail$3 as vi, mapInput as vl, isEmpty as vn, fromReasons as vo, make$25 as vr, forkUnsafe$1 as vs, Defect as vt, String$1 as w, timeout as wa, some as wc, forEach$1 as wi, getStackTraceLimit as wl, toUint8Array as wn, makeDieReason as wo, make$26 as wr, ParentSpan as ws, Never as wt, Crypto as x, sync as xa, prepend$1 as xc, flatMapEager as xi, contE as xl, fromReadable as xn, hasInterruptsOnly as xo, collect as xr, reportCauseUnsafe as xs, FalseLiterals as xt, isQuitError as y, succeedNone as ya, map$6 as yc, failCause$2 as yi, PipeInspectableProto as yl, parseHeader as yn, hasDies as yo, makeUnsafe$1 as yr, makeSpanUnsafe as ys, Error$1 as yt, constEof as z, withParentSpan as za, getOrThrow as zc, logError as zi, optimize as zl, filter as zn, succeed$5 as zo, interruptAll as zr, get$4 as zs, encodeSync as zt };
46442
+ export { Socket as $, isNonEmpty as $a, match$5 as $c, onExitPrimitive as $i, isNotUndefined as $l, mkUint8Array as $n, make$33 as $o, cached as $r, contains as $s, fromInput as $t, withDefault as A, tryPromise as Aa, some as Ac, gen as Ai, contA as Al, toEpochMillis as An, map$4 as Ao, take$1 as Ar, Tracer as As, TaggedError as At, constPing as B, withLogSpan as Ba, toEntries as Bc, logInfo as Bi, toStringUnknown as Bl, flatMap as Bn, merge$3 as Bo, badArgument as Br, Reference as Bs, encodeUnknownEffect as Bt, Redacted as C, sync as Ca, last as Cc, forEach$1 as Ci, toArray as Cl, toArrayBuffer as Cn, fromReasons as Co, failCause$1 as Cr, forkUnsafe$1 as Cs, Literal as Ct, option as D, timeoutOption as Da, prepend$1 as Dc, forkScoped as Di, flip$1 as Dl, ChildProcessSpawner as Dn, interruptors as Do, offerUnsafe as Dr, sync$2 as Ds, Record as Dt, map as E, timeout as Ea, match$4 as Ec, forkIn as Ei, combine$1 as El, make$18 as En, hasInterruptsOnly as Eo, offerAll as Er, reportCauseUnsafe as Es, NullOr as Et, layerJson as F, useSpan as Fa, filter$3 as Fc, isEffect as Fi, setStackTraceLimit as Fl, decodeText$1 as Fn, effect as Fo, getCurrent as Fr, TaggedError$1 as Fs, decodeEffect as Ft, ClientAbort as G, min as Ga, flatMap$6 as Gc, mapError$2 as Gi, array as Gl, fromQueue as Gn, succeedContext as Go, zero$1 as Gr, getOrUndefined as Gs, tag as Gt, ServerClient as H, withSpan as Ha, make$37 as Hc, makeSpanScoped as Hi, redact$1 as Hl, fromChannel as Hn, provide$2 as Ho, fromInputUnsafe as Hr, add as Hs, is as Ht, layerSchemaBinary as I, void_$1 as Ia, get$6 as Ic, log as Ii, BaseProto as Il, empty$4 as In, effectContext as Io, interrupt as Ir, taggedEnum as Is, decodeSync as It, spanAttributes as J, isDoneCause as Ja, getOrThrow as Jc, matchCauseEffectEager as Ji, number$1 as Jl, limitBytes as Jn, addFinalizer$1 as Jo, andThen as Jr, make$36 as Js, toJsonSchemaDocument as Jt, getStreamSchemas as K, spaced as Ka, fromOption$2 as Kc, match as Ki, combine$2 as Kl, fromReadableStream as Kn, unwrap$4 as Ko, acquireRelease as Kr, getOrUndefinedUnsafe as Ks, toCodecJson as Kt, RequestId as L, whileLoop as La, has$3 as Lc, logDebug as Li, Class$2 as Ll, ensuring as Ln, effectDiscard as Lo, interruptAll as Lr, parts as Ls, decodeUnknownEffect as Lt, withRun as M, uninterruptible as Ma, take$3 as Mc, ignoreCause as Mi, withFiber$1 as Ml, Path$1 as Mn, squash as Mo, publishUnsafe as Mr, make$34 as Ms, Tuple as Mt, withRunClient as N, uninterruptibleMask as Na, takeRight as Nc, interrupt$1 as Ni, assignProperty$1 as Nl, FileSystem as Nn, CurrentMemoMap as No, unbounded as Nr, nativeTracer as Ns, Union as Nt, succeed as O, timeoutOrElse as Oa, reduce as Oc, fromOption as Oi, mapInput as Ol, encode as On, isNoSuchElementError as Oo, shutdown as Or, DisablePropagation as Os, String$2 as Ot, RpcSerialization as P, updateContext as Pa, assignProperty as Pc, interruptible as Pi, getStackTraceLimit as Pl, concat as Pn, buildWithMemoMap as Po, makeUnsafe$2 as Pr, Error$2 as Ps, Unknown as Pt, CloseEvent as Q, isEmpty$1 as Qa, map$8 as Qc, onExit$1 as Qi, hasProperty as Ql, mkString as Qn, forkUnsafe as Qo, asVoid as Qr, allocate as Qs, empty as Qt, ResponseDefectEncoded as R, withFiber as Ra, keys$1 as Rc, logError as Ri, NodeInspectSymbol as Rl, fail$1 as Rn, empty$7 as Ro, interruptAs as Rr, seconds as Rs, encodeEffect as Rt, Port as S, suspend$2 as Sa, join$1 as Sc, fnUntraced as Si, some$1 as Sl, pipeThroughDuplex as Sn, findError as So, end as Sr, fiberEnterUninterruptibleUnsafe as Ss, Finite as St, URL$1 as T, tapError as Ta, map$6 as Tc, forkChild as Ti, String$6 as Tl, fromWritable as Tn, hasInterrupts as To, offer as Tr, onExitUnsafe as Ts, NonEmptyArray as Tt, exitSchema as U, zipWith as Ua, fail$7 as Uc, map$3 as Ui, equals$1 as Ul, fromIterable$5 as Un, provideMerge as Uo, gibibytes as Ur, empty$8 as Us, optional as Ut, constPong as V, withParentSpan as Va, empty$11 as Vc, logWarning as Vi, format$2 as Vl, fromArray as Vn, mergeAll$1 as Vo, fromInput$2 as Vr, Service as Vs, fromJsonString as Vt, isWrapper as W, exponential as Wa, failVoid as Wc, mapEager as Wi, symbol$1 as Wl, fromPubSub as Wn, succeed$5 as Wo, mebibytes as Wr, get$4 as Ws, optionalKey as Wt, Collector as X, endsWith as Xa, isResult as Xc, never$1 as Xi, string$1 as Xl, mapAccum as Xn, close as Xo, as as Xr, merge$4 as Xs, omit as Xt, spanName as Y, Random as Ya, isFailure$1 as Yc, matchEffect as Yi, optimize as Yl, map$1 as Yn, addFinalizerExit as Yo, annotateLogs as Yr, makeUnsafe$6 as Ys, isSchemaError$1 as Yt, makeCollectorUnsafe as Z, includes as Za, isSuccess$1 as Zc, onError as Zi, symbol$2 as Zl, mapError as Zn, closeUnsafe as Zo, asSome as Zr, Prototype as Zs, encodeUnknownEffect$1 as Zt, QuitError as _, scoped as _a, head as _c, failCause$2 as _i, liftThrowable as _l, fromSetCookie as _n, StackTrace as _o, mkUint8Array$1 as _r, isDeferred as _s, BooleanLiterals as _t, ImageType as a, provide as aa, every$1 as ac, catchIf as ai, filter$4 as al, CurrentRedactedNames as an, replaceAll as ao, runHead as ar, TracerTimingEnabled as as, layerWebSocket as at, constTrue as au, layer$8 as b, succeed$4 as ba, isReadonlyArrayEmpty as bc, flatMapEager as bi, none as bl, toSetCookieHeaders as bn, done as bo, bounded as br, effectIsExit as bs, Exit as bt, NotesError as c, raceFirst as ca, findFirst as cc, catchTags as ci, flatten$2 as cl, fromRecordUnsafe as cn, startsWith as co, succeed$2 as cr, failCause$3 as cs, EmptyBodyError as ct, constant as cu, layer as d, retry as da, flatMap$5 as dc, contextWith as di, getOrElse$1 as dl, remove$1 as dn, trimEnd as do, toReadableStreamEffect as dr, isFailure as ds, HttpClientErrorSchema as dt, identity as du, onInterrupt as ea, dedupe as ec, callback$1 as ei, succeed$8 as el, setAll as en, length as eo, orDie as er, makeUnsafe$4 as es, SocketError as et, isObject as eu, make as f, retryOrElse as fa, fromIterable$6 as fc, delay as fi, getOrNull as fl, set$1 as fn, max as fo, toReadableStreamWith as fr, isSuccess as fs, InvalidUrlError as ft, pipe as fu, layer$1 as g, scope as ga, groupBy as gc, fail$3 as gi, liftPredicate as gl, empty$3 as gn, Done as go, mapError$1 as gr, into as gs, ArraySchema as gt, errorReported as h, runSync$1 as ha, getUnsafe$1 as hc, exit as hi, isSome as hl, value as hn, Clock as ho, fromTransform$1 as hr, doneUnsafe as hs, Any as ht, FileType as i, promise as ia, ensure as ic, catchFilter as ii, exists as il, get as in, replace as io, runForEachArray as ir, MinimumLogLevel as is, fromWebSocket as it, constFalse$1 as iu, Stdio as j, try_ as ja, sort as jc, ignore as ji, contE as jl, defaultFormatter as jn, prettyErrors as jo, takeAll as jr, externalSpan as js, TrueLiterals as jt, unwrap as k, transposeOption as ka, reverse as kc, fromResult as ki, PipeInspectableProto as kl, now as kn, makeDieReason as ko, shutdownUnsafe as kr, ParentSpan as ks, Struct as kt, Organization as l, repeat as la, findFirstIndex as lc, catch_$1 as li, fromNullishOr as ll, isRedactedName as ln, toLowerCase as lo, suspend as lr, interrupt$2 as ls, EncodeError as lt, dual as lu, errorExitCode as m, runForkWith as ma, getSomes as mc, ensuring$2 as mi, isNone as ml, make$16 as mn, round as mo, fromPull$1 as mr, _await as ms, TransportError as mt, Capture as n, orDie$2 as na, drop as nc, catchCauseIf as ni, all$4 as nl, has as nn, padStart as no, run$1 as nr, CurrentLogAnnotations as ns, SocketOpenError as nt, isUndefined as nu, Note as o, provideContext$2 as oa, filter$2 as oc, catchReason as oi, flatMap$7 as ol, empty$2 as on, slice as oo, runLast as or, die$3 as os, layerWebSocketConstructorGlobal as ot, constUndefined as ou, runMain as p, runFork as pa, get$5 as pc, die$1 as pi, getOrUndefined$1 as pl, setAll$1 as pn, parse as po, unwrap$1 as pr, succeed$6 as ps, StatusCodeError as pt, pipeArguments as pu, isStreamSchema as q, catchDone as qa, getOrElse as qc, matchCauseEffect as qi, hash as ql, groupedWithin as qn, Scope as qo, all$1 as qr, getUnsafe as qs, toCodecStringTree as qt, Extraction as r, orElseSucceed as ra, empty$9 as rc, catchDefect as ri, contains$1 as rl, fromIterable$2 as rn, repeat$2 as ro, runForEach as rr, CurrentLogSpans as rs, SocketReadError as rt, compose as ru, NoteId as s, provideService as sa, filterMap as sc, catchTag as si, flatMapNullishOr as sl, fromInput$1 as sn, split as so, scan as sr, fail$5 as ss, DecodeError as st, constVoid as su, RpcContracts as t, option$1 as ta, dedupeAdjacentWith as tc, catchCause$1 as ti, try_$2 as tl, fromIterable as tn, match$1 as to, pipeThroughChannel as tr, provide$3 as ts, SocketErrorReason as tt, isTagged as tu, LogToStderr as u, result as ua, findLast as uc, context as ui, fromUndefinedOr as ul, merge as un, trim as uo, takeUntil as ur, isExit as us, HttpClientError as ut, flow as uu, Terminal as v, service as va, headNonEmpty as vc, filterOrFail as vi, map$9 as vl, isEmpty as vn, combine as vo, make$25 as vr, makeUnsafe$5 as vs, Defect as vt, String$1 as w, tapCause as wa, lastNonEmpty as wc, forever as wi, Number$5 as wl, toUint8Array as wn, hasDies as wo, make$26 as wr, makeSpanUnsafe as ws, Never as wt, Crypto as x, succeedNone as xa, isReadonlyArrayNonEmpty as xc, fn as xi, orElse as xl, fromReadable as xn, filterInterruptors as xo, collect as xr, fiberEnterInterruptibleUnsafe as xs, FalseLiterals as xt, isQuitError as y, serviceOption as ya, isArray as yc, flatMap$2 as yi, match$6 as yl, parseHeader as yn, die$2 as yo, makeUnsafe$1 as yr, ConsoleRef as ys, Error$1 as yt, constEof as z, withFiberSucceed as za, map$7 as zc, logFatal as zi, toJson as zl, filter as zn, launch as zo, runIn as zr, toMillis as zs, encodeSync as zt };