lalph 0.1.78 → 0.1.80

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/cli.mjs CHANGED
@@ -1762,7 +1762,7 @@ const emptyServiceMap$1 = {
1762
1762
  *
1763
1763
  * @since 4.0.0
1764
1764
  */
1765
- function format$2(input, options) {
1765
+ function format$3(input, options) {
1766
1766
  const space = options?.space ?? 0;
1767
1767
  const seen = /* @__PURE__ */ new WeakSet();
1768
1768
  const gap = !space ? "" : typeof space === "number" ? " ".repeat(space) : space;
@@ -1798,7 +1798,7 @@ function format$2(input, options) {
1798
1798
  if (isObject$1(v)) {
1799
1799
  if (seen.has(v)) return CIRCULAR;
1800
1800
  seen.add(v);
1801
- if (symbolRedactable in v) return format$2(getRedacted(v));
1801
+ if (symbolRedactable in v) return format$3(getRedacted(v));
1802
1802
  if (Symbol.iterator in v) return `${v.constructor.name}(${recur$2(Array.from(v), d)})`;
1803
1803
  const keys$1 = ownKeys(v);
1804
1804
  if (!gap || keys$1.length <= 1) return wrap(v, `{${keys$1.map((k) => `${formatPropertyKey(k)}:${recur$2(v[k], d)}`).join(",")}}`);
@@ -1884,7 +1884,7 @@ function safeToString(input) {
1884
1884
  *
1885
1885
  * @since 4.0.0
1886
1886
  */
1887
- function formatJson(input, options) {
1887
+ function formatJson$1(input, options) {
1888
1888
  let cache = [];
1889
1889
  const out = JSON.stringify(input, (_key, value) => typeof value === "object" && value !== null ? cache.includes(value) ? void 0 : cache.push(value) && redact$1(value) : value, options?.space);
1890
1890
  cache = void 0;
@@ -2035,7 +2035,7 @@ const BaseProto = {
2035
2035
  return this.toJSON();
2036
2036
  },
2037
2037
  toString() {
2038
- return format$2(this.toJSON());
2038
+ return format$3(this.toJSON());
2039
2039
  }
2040
2040
  };
2041
2041
  /**
@@ -2091,7 +2091,7 @@ var Class$2 = class {
2091
2091
  * @since 2.0.0
2092
2092
  */
2093
2093
  toString() {
2094
- return format$2(this.toJSON());
2094
+ return format$3(this.toJSON());
2095
2095
  }
2096
2096
  };
2097
2097
 
@@ -2207,7 +2207,7 @@ const PipeInspectableProto = {
2207
2207
  return { ...this };
2208
2208
  },
2209
2209
  toString() {
2210
- return format$2(this, { ignoreToString: true });
2210
+ return format$3(this, { ignoreToString: true });
2211
2211
  },
2212
2212
  [NodeInspectSymbol]() {
2213
2213
  return this.toJSON();
@@ -2278,7 +2278,7 @@ var CauseImpl = class {
2278
2278
  };
2279
2279
  }
2280
2280
  toString() {
2281
- return `Cause(${format$2(this.failures)})`;
2281
+ return `Cause(${format$3(this.failures)})`;
2282
2282
  }
2283
2283
  [NodeInspectSymbol]() {
2284
2284
  return this.toJSON();
@@ -2321,7 +2321,7 @@ var FailureBase = class {
2321
2321
  return pipeArguments(this, arguments);
2322
2322
  }
2323
2323
  toString() {
2324
- return format$2(this);
2324
+ return format$3(this);
2325
2325
  }
2326
2326
  [NodeInspectSymbol]() {
2327
2327
  return this.toString();
@@ -2337,7 +2337,7 @@ var Fail = class extends FailureBase {
2337
2337
  this.error = error$1;
2338
2338
  }
2339
2339
  toString() {
2340
- return `Fail(${format$2(this.error)})`;
2340
+ return `Fail(${format$3(this.error)})`;
2341
2341
  }
2342
2342
  toJSON() {
2343
2343
  return {
@@ -2366,7 +2366,7 @@ var Die = class extends FailureBase {
2366
2366
  this.defect = defect;
2367
2367
  }
2368
2368
  toString() {
2369
- return `Die(${format$2(this.defect)})`;
2369
+ return `Die(${format$3(this.defect)})`;
2370
2370
  }
2371
2371
  toJSON() {
2372
2372
  return {
@@ -2425,7 +2425,7 @@ const makeExit = (options) => {
2425
2425
  return this[args];
2426
2426
  },
2427
2427
  toString() {
2428
- return `${options.op}(${format$2(this[args])})`;
2428
+ return `${options.op}(${format$3(this[args])})`;
2429
2429
  },
2430
2430
  toJSON() {
2431
2431
  return {
@@ -2806,7 +2806,7 @@ const TaggedError = TaggedError$1;
2806
2806
  * @category constructors
2807
2807
  * @since 2.0.0
2808
2808
  */
2809
- function make$52(compare) {
2809
+ function make$53(compare) {
2810
2810
  return (self$1, that) => self$1 === that ? 0 : compare(self$1, that);
2811
2811
  }
2812
2812
  /**
@@ -2840,7 +2840,7 @@ function make$52(compare) {
2840
2840
  * @category instances
2841
2841
  * @since 4.0.0
2842
2842
  */
2843
- const String$5 = /* @__PURE__ */ make$52((self$1, that) => self$1 < that ? -1 : 1);
2843
+ const String$5 = /* @__PURE__ */ make$53((self$1, that) => self$1 < that ? -1 : 1);
2844
2844
  /**
2845
2845
  * An `Order` instance for numbers that compares them numerically.
2846
2846
  *
@@ -2876,7 +2876,7 @@ const String$5 = /* @__PURE__ */ make$52((self$1, that) => self$1 < that ? -1 :
2876
2876
  * @category instances
2877
2877
  * @since 4.0.0
2878
2878
  */
2879
- const Number$4 = /* @__PURE__ */ make$52((self$1, that) => {
2879
+ const Number$4 = /* @__PURE__ */ make$53((self$1, that) => {
2880
2880
  if (globalThis.Number.isNaN(self$1) && globalThis.Number.isNaN(that)) return 0;
2881
2881
  if (globalThis.Number.isNaN(self$1)) return -1;
2882
2882
  if (globalThis.Number.isNaN(that)) return 1;
@@ -2912,7 +2912,7 @@ const Number$4 = /* @__PURE__ */ make$52((self$1, that) => {
2912
2912
  * @category instances
2913
2913
  * @since 4.0.0
2914
2914
  */
2915
- const BigInt$3 = /* @__PURE__ */ make$52((self$1, that) => self$1 < that ? -1 : 1);
2915
+ const BigInt$3 = /* @__PURE__ */ make$53((self$1, that) => self$1 < that ? -1 : 1);
2916
2916
  /**
2917
2917
  * Transforms an `Order` on type `A` into an `Order` on type `B` by providing a function that
2918
2918
  * maps values of type `B` to values of type `A`.
@@ -2947,7 +2947,7 @@ const BigInt$3 = /* @__PURE__ */ make$52((self$1, that) => self$1 < that ? -1 :
2947
2947
  * @category mapping
2948
2948
  * @since 2.0.0
2949
2949
  */
2950
- const mapInput = /* @__PURE__ */ dual(2, (self$1, f) => make$52((b1, b2) => self$1(f(b1), f(b2))));
2950
+ const mapInput = /* @__PURE__ */ dual(2, (self$1, f) => make$53((b1, b2) => self$1(f(b1), f(b2))));
2951
2951
  /**
2952
2952
  * An `Order` instance for `Date` objects that compares them chronologically by their timestamp.
2953
2953
  *
@@ -3016,7 +3016,7 @@ const Date$2 = /* @__PURE__ */ mapInput(Number$4, (date$2) => date$2.getTime());
3016
3016
  * @since 4.0.0
3017
3017
  */
3018
3018
  function Tuple$2(elements) {
3019
- return make$52((self$1, that) => {
3019
+ return make$53((self$1, that) => {
3020
3020
  const len = elements.length;
3021
3021
  for (let i = 0; i < len; i++) {
3022
3022
  const o = elements[i](self$1[i], that[i]);
@@ -3060,7 +3060,7 @@ function Tuple$2(elements) {
3060
3060
  * @since 4.0.0
3061
3061
  */
3062
3062
  function Array$4(O) {
3063
- return make$52((self$1, that) => {
3063
+ return make$53((self$1, that) => {
3064
3064
  const aLen = self$1.length;
3065
3065
  const bLen = that.length;
3066
3066
  const len = Math.min(aLen, bLen);
@@ -3114,7 +3114,7 @@ function Array$4(O) {
3114
3114
  */
3115
3115
  function Struct$2(fields) {
3116
3116
  const keys$1 = Object.keys(fields);
3117
- return make$52((self$1, that) => {
3117
+ return make$53((self$1, that) => {
3118
3118
  for (const key of keys$1) {
3119
3119
  const o = fields[key](self$1[key], that[key]);
3120
3120
  if (o !== 0) return o;
@@ -3155,7 +3155,7 @@ function Struct$2(fields) {
3155
3155
  * @category predicates
3156
3156
  * @since 2.0.0
3157
3157
  */
3158
- const isLessThan$3 = (O) => dual(2, (self$1, that) => O(self$1, that) === -1);
3158
+ const isLessThan$4 = (O) => dual(2, (self$1, that) => O(self$1, that) === -1);
3159
3159
  /**
3160
3160
  * Tests whether one value is strictly greater than another according to the given order.
3161
3161
  *
@@ -3400,14 +3400,14 @@ const clamp$2 = (O) => dual(2, (self$1, options) => min$2(O)(options.maximum, ma
3400
3400
  * @category predicates
3401
3401
  * @since 4.0.0
3402
3402
  */
3403
- const isBetween$1 = (O) => dual(2, (self$1, options) => !isLessThan$3(O)(self$1, options.minimum) && !isGreaterThan$4(O)(self$1, options.maximum));
3403
+ const isBetween$1 = (O) => dual(2, (self$1, options) => !isLessThan$4(O)(self$1, options.minimum) && !isGreaterThan$4(O)(self$1, options.maximum));
3404
3404
 
3405
3405
  //#endregion
3406
3406
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/UndefinedOr.js
3407
3407
  /**
3408
3408
  * @since 4.0.0
3409
3409
  */
3410
- const map$12 = /* @__PURE__ */ dual(2, (self$1, f) => self$1 === void 0 ? void 0 : f(self$1));
3410
+ const map$13 = /* @__PURE__ */ dual(2, (self$1, f) => self$1 === void 0 ? void 0 : f(self$1));
3411
3411
  /**
3412
3412
  * @since 4.0.0
3413
3413
  */
@@ -3427,7 +3427,10 @@ const liftThrowable = (f) => (...a) => {
3427
3427
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/Duration.js
3428
3428
  const TypeId$56 = "~effect/time/Duration";
3429
3429
  const bigint0$1 = /* @__PURE__ */ BigInt(0);
3430
+ const bigint24 = /* @__PURE__ */ BigInt(24);
3431
+ const bigint60 = /* @__PURE__ */ BigInt(60);
3430
3432
  const bigint1e3 = /* @__PURE__ */ BigInt(1e3);
3433
+ const bigint1e6 = /* @__PURE__ */ BigInt(1e6);
3431
3434
  const DURATION_REGEXP = /^(-?\d+(?:\.\d+)?)\s+(nanos?|micros?|millis?|seconds?|minutes?|hours?|days?|weeks?)$/;
3432
3435
  /**
3433
3436
  * Decodes a `DurationInput` into a `Duration`.
@@ -3545,7 +3548,7 @@ const DurationProto = {
3545
3548
  return pipeArguments(this, arguments);
3546
3549
  }
3547
3550
  };
3548
- const make$51 = (input) => {
3551
+ const make$52 = (input) => {
3549
3552
  const duration = Object.create(DurationProto);
3550
3553
  if (isNumber(input)) if (isNaN(input) || input <= 0) duration.value = zeroDurationValue;
3551
3554
  else if (!Number.isFinite(input)) duration.value = infinityDurationValue;
@@ -3628,7 +3631,7 @@ const isZero = (self$1) => {
3628
3631
  * @since 2.0.0
3629
3632
  * @category constructors
3630
3633
  */
3631
- const zero = /* @__PURE__ */ make$51(0);
3634
+ const zero = /* @__PURE__ */ make$52(0);
3632
3635
  /**
3633
3636
  * A Duration representing infinite time.
3634
3637
  *
@@ -3642,7 +3645,7 @@ const zero = /* @__PURE__ */ make$51(0);
3642
3645
  * @since 2.0.0
3643
3646
  * @category constructors
3644
3647
  */
3645
- const infinity = /* @__PURE__ */ make$51(Infinity);
3648
+ const infinity = /* @__PURE__ */ make$52(Infinity);
3646
3649
  /**
3647
3650
  * Creates a Duration from nanoseconds.
3648
3651
  *
@@ -3657,7 +3660,7 @@ const infinity = /* @__PURE__ */ make$51(Infinity);
3657
3660
  * @since 2.0.0
3658
3661
  * @category constructors
3659
3662
  */
3660
- const nanos = (nanos$1) => make$51(nanos$1);
3663
+ const nanos = (nanos$1) => make$52(nanos$1);
3661
3664
  /**
3662
3665
  * Creates a Duration from microseconds.
3663
3666
  *
@@ -3672,7 +3675,7 @@ const nanos = (nanos$1) => make$51(nanos$1);
3672
3675
  * @since 2.0.0
3673
3676
  * @category constructors
3674
3677
  */
3675
- const micros = (micros$1) => make$51(micros$1 * bigint1e3);
3678
+ const micros = (micros$1) => make$52(micros$1 * bigint1e3);
3676
3679
  /**
3677
3680
  * Creates a Duration from milliseconds.
3678
3681
  *
@@ -3687,7 +3690,7 @@ const micros = (micros$1) => make$51(micros$1 * bigint1e3);
3687
3690
  * @since 2.0.0
3688
3691
  * @category constructors
3689
3692
  */
3690
- const millis = (millis$1) => make$51(millis$1);
3693
+ const millis = (millis$1) => make$52(millis$1);
3691
3694
  /**
3692
3695
  * Creates a Duration from seconds.
3693
3696
  *
@@ -3702,7 +3705,7 @@ const millis = (millis$1) => make$51(millis$1);
3702
3705
  * @since 2.0.0
3703
3706
  * @category constructors
3704
3707
  */
3705
- const seconds = (seconds$1) => make$51(seconds$1 * 1e3);
3708
+ const seconds = (seconds$1) => make$52(seconds$1 * 1e3);
3706
3709
  /**
3707
3710
  * Creates a Duration from minutes.
3708
3711
  *
@@ -3717,7 +3720,7 @@ const seconds = (seconds$1) => make$51(seconds$1 * 1e3);
3717
3720
  * @since 2.0.0
3718
3721
  * @category constructors
3719
3722
  */
3720
- const minutes = (minutes$1) => make$51(minutes$1 * 6e4);
3723
+ const minutes = (minutes$1) => make$52(minutes$1 * 6e4);
3721
3724
  /**
3722
3725
  * Creates a Duration from hours.
3723
3726
  *
@@ -3732,7 +3735,7 @@ const minutes = (minutes$1) => make$51(minutes$1 * 6e4);
3732
3735
  * @since 2.0.0
3733
3736
  * @category constructors
3734
3737
  */
3735
- const hours = (hours$1) => make$51(hours$1 * 36e5);
3738
+ const hours = (hours$1) => make$52(hours$1 * 36e5);
3736
3739
  /**
3737
3740
  * Creates a Duration from days.
3738
3741
  *
@@ -3747,7 +3750,7 @@ const hours = (hours$1) => make$51(hours$1 * 36e5);
3747
3750
  * @since 2.0.0
3748
3751
  * @category constructors
3749
3752
  */
3750
- const days = (days$1) => make$51(days$1 * 864e5);
3753
+ const days = (days$1) => make$52(days$1 * 864e5);
3751
3754
  /**
3752
3755
  * Creates a Duration from weeks.
3753
3756
  *
@@ -3762,7 +3765,7 @@ const days = (days$1) => make$51(days$1 * 864e5);
3762
3765
  * @since 2.0.0
3763
3766
  * @category constructors
3764
3767
  */
3765
- const weeks = (weeks$1) => make$51(weeks$1 * 6048e5);
3768
+ const weeks = (weeks$1) => make$52(weeks$1 * 6048e5);
3766
3769
  /**
3767
3770
  * Converts a Duration to milliseconds.
3768
3771
  *
@@ -3935,6 +3938,98 @@ const Equivalence$4 = (self$1, that) => matchPair(self$1, that, {
3935
3938
  * @category predicates
3936
3939
  */
3937
3940
  const equals = /* @__PURE__ */ dual(2, (self$1, that) => Equivalence$4(self$1, that));
3941
+ /**
3942
+ * Converts a `Duration` to its parts.
3943
+ *
3944
+ * @example
3945
+ * ```ts
3946
+ * import { Duration } from "effect"
3947
+ *
3948
+ * // Create a complex duration by adding multiple parts
3949
+ * const duration = Duration.sum(
3950
+ * Duration.sum(
3951
+ * Duration.sum(Duration.days(1), Duration.hours(2)),
3952
+ * Duration.sum(Duration.minutes(30), Duration.seconds(45))
3953
+ * ),
3954
+ * Duration.millis(123)
3955
+ * )
3956
+ * const components = Duration.parts(duration)
3957
+ * console.log(components)
3958
+ * // {
3959
+ * // days: 1,
3960
+ * // hours: 2,
3961
+ * // minutes: 30,
3962
+ * // seconds: 45,
3963
+ * // millis: 123,
3964
+ * // nanos: 0
3965
+ * // }
3966
+ *
3967
+ * const complex = Duration.sum(Duration.hours(25), Duration.minutes(90))
3968
+ * const complexParts = Duration.parts(complex)
3969
+ * console.log(complexParts)
3970
+ * // {
3971
+ * // days: 1,
3972
+ * // hours: 2,
3973
+ * // minutes: 30,
3974
+ * // seconds: 0,
3975
+ * // millis: 0,
3976
+ * // nanos: 0
3977
+ * // }
3978
+ * ```
3979
+ *
3980
+ * @since 3.8.0
3981
+ * @category conversions
3982
+ */
3983
+ const parts = (self$1) => {
3984
+ if (self$1.value._tag === "Infinity") return {
3985
+ days: Infinity,
3986
+ hours: Infinity,
3987
+ minutes: Infinity,
3988
+ seconds: Infinity,
3989
+ millis: Infinity,
3990
+ nanos: Infinity
3991
+ };
3992
+ const nanos$1 = toNanosUnsafe(self$1);
3993
+ const ms = nanos$1 / bigint1e6;
3994
+ const sec = ms / bigint1e3;
3995
+ const min$3 = sec / bigint60;
3996
+ const hr = min$3 / bigint60;
3997
+ const days$1 = hr / bigint24;
3998
+ return {
3999
+ days: Number(days$1),
4000
+ hours: Number(hr % bigint24),
4001
+ minutes: Number(min$3 % bigint60),
4002
+ seconds: Number(sec % bigint60),
4003
+ millis: Number(ms % bigint1e3),
4004
+ nanos: Number(nanos$1 % bigint1e6)
4005
+ };
4006
+ };
4007
+ /**
4008
+ * Converts a `Duration` to a human readable string.
4009
+ *
4010
+ * @since 2.0.0
4011
+ * @category conversions
4012
+ * @example
4013
+ * ```ts
4014
+ * import { Duration } from "effect"
4015
+ *
4016
+ * Duration.format(Duration.millis(1000)) // "1s"
4017
+ * Duration.format(Duration.millis(1001)) // "1s 1ms"
4018
+ * ```
4019
+ */
4020
+ const format$2 = (self$1) => {
4021
+ if (self$1.value._tag === "Infinity") return "Infinity";
4022
+ if (isZero(self$1)) return "0";
4023
+ const fragments = parts(self$1);
4024
+ const pieces = [];
4025
+ if (fragments.days !== 0) pieces.push(`${fragments.days}d`);
4026
+ if (fragments.hours !== 0) pieces.push(`${fragments.hours}h`);
4027
+ if (fragments.minutes !== 0) pieces.push(`${fragments.minutes}m`);
4028
+ if (fragments.seconds !== 0) pieces.push(`${fragments.seconds}s`);
4029
+ if (fragments.millis !== 0) pieces.push(`${fragments.millis}ms`);
4030
+ if (fragments.nanos !== 0) pieces.push(`${fragments.nanos}ns`);
4031
+ return pieces.join(" ");
4032
+ };
3938
4033
 
3939
4034
  //#endregion
3940
4035
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/Equivalence.js
@@ -3985,7 +4080,7 @@ const equals = /* @__PURE__ */ dual(2, (self$1, that) => Equivalence$4(self$1, t
3985
4080
  * @category constructors
3986
4081
  * @since 2.0.0
3987
4082
  */
3988
- const make$50 = (isEquivalent) => (self$1, that) => self$1 === that || isEquivalent(self$1, that);
4083
+ const make$51 = (isEquivalent) => (self$1, that) => self$1 === that || isEquivalent(self$1, that);
3989
4084
  const isStrictEquivalent = (x, y) => x === y;
3990
4085
  /**
3991
4086
  * Creates an equivalence relation that uses strict equality (`===`) to compare values.
@@ -4095,7 +4190,7 @@ const strictEqual = () => isStrictEquivalent;
4095
4190
  * @since 4.0.0
4096
4191
  */
4097
4192
  function Tuple$1(elements) {
4098
- return make$50((self$1, that) => {
4193
+ return make$51((self$1, that) => {
4099
4194
  if (self$1.length !== that.length) return false;
4100
4195
  for (let i = 0; i < self$1.length; i++) if (!elements[i](self$1[i], that[i])) return false;
4101
4196
  return true;
@@ -4152,7 +4247,7 @@ function Tuple$1(elements) {
4152
4247
  * @since 4.0.0
4153
4248
  */
4154
4249
  function Array$3(item) {
4155
- return make$50((self$1, that) => {
4250
+ return make$51((self$1, that) => {
4156
4251
  if (self$1.length !== that.length) return false;
4157
4252
  for (let i = 0; i < self$1.length; i++) if (!item(self$1[i], that[i])) return false;
4158
4253
  return true;
@@ -4228,7 +4323,7 @@ function Array$3(item) {
4228
4323
  */
4229
4324
  function Struct$1(fields) {
4230
4325
  const keys$1 = Reflect.ownKeys(fields);
4231
- return make$50((self$1, that) => {
4326
+ return make$51((self$1, that) => {
4232
4327
  for (const key of keys$1) if (!fields[key](self$1[key], that[key])) return false;
4233
4328
  return true;
4234
4329
  });
@@ -4255,7 +4350,7 @@ const SomeProto = /* @__PURE__ */ Object.assign(/* @__PURE__ */ Object.create(Co
4255
4350
  return combine$1(hash(this._tag))(hash(this.value));
4256
4351
  },
4257
4352
  toString() {
4258
- return `some(${format$2(this.value)})`;
4353
+ return `some(${format$3(this.value)})`;
4259
4354
  },
4260
4355
  toJSON() {
4261
4356
  return {
@@ -4327,7 +4422,7 @@ const SuccessProto = /* @__PURE__ */ Object.assign(/* @__PURE__ */ Object.create
4327
4422
  return combine$1(hash(this._tag))(hash(this.success));
4328
4423
  },
4329
4424
  toString() {
4330
- return `success(${format$2(this.success)})`;
4425
+ return `success(${format$3(this.success)})`;
4331
4426
  },
4332
4427
  toJSON() {
4333
4428
  return {
@@ -4350,7 +4445,7 @@ const FailureProto = /* @__PURE__ */ Object.assign(/* @__PURE__ */ Object.create
4350
4445
  return combine$1(hash(this._tag))(hash(this.failure));
4351
4446
  },
4352
4447
  toString() {
4353
- return `failure(${format$2(this.failure)})`;
4448
+ return `failure(${format$3(this.failure)})`;
4354
4449
  },
4355
4450
  toJSON() {
4356
4451
  return {
@@ -4761,7 +4856,7 @@ const getOrUndefined = /* @__PURE__ */ getOrElse(constUndefined);
4761
4856
  * @category Mapping
4762
4857
  * @since 2.0.0
4763
4858
  */
4764
- const map$11 = /* @__PURE__ */ dual(2, (self$1, f) => isNone(self$1) ? none$3() : some(f(self$1.value)));
4859
+ const map$12 = /* @__PURE__ */ dual(2, (self$1, f) => isNone(self$1) ? none$3() : some(f(self$1.value)));
4765
4860
  /**
4766
4861
  * Replaces the value inside a `Some` with the specified constant value, leaving
4767
4862
  * `None` unchanged.
@@ -4795,7 +4890,7 @@ const map$11 = /* @__PURE__ */ dual(2, (self$1, f) => isNone(self$1) ? none$3()
4795
4890
  * @category Mapping
4796
4891
  * @since 2.0.0
4797
4892
  */
4798
- const as$2 = /* @__PURE__ */ dual(2, (self$1, b) => map$11(self$1, () => b));
4893
+ const as$2 = /* @__PURE__ */ dual(2, (self$1, b) => map$12(self$1, () => b));
4799
4894
  /**
4800
4895
  * Applies a function to the value of a `Some` and flattens the resulting
4801
4896
  * `Option`. If the input is `None`, it remains `None`.
@@ -5014,7 +5109,7 @@ const filter$5 = /* @__PURE__ */ dual(2, (self$1, predicate) => filterMap$2(self
5014
5109
  * @category Equivalence
5015
5110
  * @since 2.0.0
5016
5111
  */
5017
- const makeEquivalence$4 = (isEquivalent) => make$50((x, y) => isNone(x) ? isNone(y) : isNone(y) ? false : isEquivalent(x.value, y.value));
5112
+ const makeEquivalence$4 = (isEquivalent) => make$51((x, y) => isNone(x) ? isNone(y) : isNone(y) ? false : isEquivalent(x.value, y.value));
5018
5113
 
5019
5114
  //#endregion
5020
5115
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/Result.js
@@ -5725,7 +5820,7 @@ const constEmptyIterator = { next() {
5725
5820
  * @category constructors
5726
5821
  * @since 2.0.0
5727
5822
  */
5728
- const empty$13 = () => constEmpty;
5823
+ const empty$14 = () => constEmpty;
5729
5824
 
5730
5825
  //#endregion
5731
5826
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/Record.js
@@ -5748,7 +5843,7 @@ const empty$13 = () => constEmpty;
5748
5843
  * @category constructors
5749
5844
  * @since 2.0.0
5750
5845
  */
5751
- const empty$12 = () => ({});
5846
+ const empty$13 = () => ({});
5752
5847
  /**
5753
5848
  * Determine if a record is empty.
5754
5849
  *
@@ -5840,7 +5935,7 @@ const has$1 = /* @__PURE__ */ dual(2, (self$1, key) => Object.hasOwn(self$1, key
5840
5935
  * @category mapping
5841
5936
  * @since 2.0.0
5842
5937
  */
5843
- const map$10 = /* @__PURE__ */ dual(2, (self$1, f) => {
5938
+ const map$11 = /* @__PURE__ */ dual(2, (self$1, f) => {
5844
5939
  const out = { ...self$1 };
5845
5940
  for (const key of keys(self$1)) out[key] = f(self$1[key], key);
5846
5941
  return out;
@@ -5861,7 +5956,7 @@ const map$10 = /* @__PURE__ */ dual(2, (self$1, f) => {
5861
5956
  * @since 2.0.0
5862
5957
  */
5863
5958
  const filter$4 = /* @__PURE__ */ dual(2, (self$1, predicate) => {
5864
- const out = empty$12();
5959
+ const out = empty$13();
5865
5960
  for (const key of keys(self$1)) if (predicate(self$1[key], key)) out[key] = self$1[key];
5866
5961
  return out;
5867
5962
  });
@@ -5971,6 +6066,22 @@ const Array$2 = globalThis.Array;
5971
6066
  */
5972
6067
  const fromIterable$2 = (collection) => Array$2.isArray(collection) ? collection : Array$2.from(collection);
5973
6068
  /**
6069
+ * Creates a new `Array` from a value that might not be an iterable.
6070
+ *
6071
+ * @example
6072
+ * ```ts
6073
+ * import { Array } from "effect"
6074
+ *
6075
+ * console.log(Array.ensure("a")) // ["a"]
6076
+ * console.log(Array.ensure(["a"])) // ["a"]
6077
+ * console.log(Array.ensure(["a", "b", "c"])) // ["a", "b", "c"]
6078
+ * ```
6079
+ *
6080
+ * @category constructors
6081
+ * @since 3.3.0
6082
+ */
6083
+ const ensure = (self$1) => Array$2.isArray(self$1) ? self$1 : [self$1];
6084
+ /**
5974
6085
  * Takes a record and returns an array of tuples containing its keys and values.
5975
6086
  *
5976
6087
  * @example
@@ -6307,7 +6418,7 @@ const union$1 = /* @__PURE__ */ dual(2, (self$1, that) => unionWith(self$1, that
6307
6418
  * @category constructors
6308
6419
  * @since 2.0.0
6309
6420
  */
6310
- const empty$11 = () => [];
6421
+ const empty$12 = () => [];
6311
6422
  /**
6312
6423
  * Constructs a new `NonEmptyArray<A>` from the specified value.
6313
6424
  *
@@ -6337,7 +6448,7 @@ const of = (a) => [a];
6337
6448
  * @category mapping
6338
6449
  * @since 2.0.0
6339
6450
  */
6340
- const map$9 = /* @__PURE__ */ dual(2, (self$1, f) => self$1.map(f));
6451
+ const map$10 = /* @__PURE__ */ dual(2, (self$1, f) => self$1.map(f));
6341
6452
  /**
6342
6453
  * Filters array elements based on a predicate, creating a new array.
6343
6454
  *
@@ -6509,7 +6620,7 @@ const ServiceProto = {
6509
6620
  return self$1;
6510
6621
  },
6511
6622
  serviceMap(self$1) {
6512
- return make$49(this, self$1);
6623
+ return make$50(this, self$1);
6513
6624
  },
6514
6625
  use(f) {
6515
6626
  return withFiber$1((fiber$2) => f(get$7(fiber$2.services, this)));
@@ -6611,7 +6722,7 @@ const isReference = (u) => hasProperty(u, ReferenceTypeId);
6611
6722
  * @since 4.0.0
6612
6723
  * @category Constructors
6613
6724
  */
6614
- const empty$10 = () => emptyServiceMap;
6725
+ const empty$11 = () => emptyServiceMap;
6615
6726
  const emptyServiceMap = /* @__PURE__ */ makeUnsafe$8(/* @__PURE__ */ new Map());
6616
6727
  /**
6617
6728
  * Creates a new `ServiceMap` with a single service associated to the key.
@@ -6631,7 +6742,7 @@ const emptyServiceMap = /* @__PURE__ */ makeUnsafe$8(/* @__PURE__ */ new Map());
6631
6742
  * @since 4.0.0
6632
6743
  * @category Constructors
6633
6744
  */
6634
- const make$49 = (key, service$2) => makeUnsafe$8(new Map([[key.key, service$2]]));
6745
+ const make$50 = (key, service$2) => makeUnsafe$8(new Map([[key.key, service$2]]));
6635
6746
  /**
6636
6747
  * Adds a service to a given `ServiceMap`.
6637
6748
  *
@@ -6658,19 +6769,19 @@ const make$49 = (key, service$2) => makeUnsafe$8(new Map([[key.key, service$2]])
6658
6769
  * @category Adders
6659
6770
  */
6660
6771
  const add$3 = /* @__PURE__ */ dual(3, (self$1, key, service$2) => {
6661
- const map$13 = new Map(self$1.mapUnsafe);
6662
- map$13.set(key.key, service$2);
6663
- return makeUnsafe$8(map$13);
6772
+ const map$14 = new Map(self$1.mapUnsafe);
6773
+ map$14.set(key.key, service$2);
6774
+ return makeUnsafe$8(map$14);
6664
6775
  });
6665
6776
  /**
6666
6777
  * @since 4.0.0
6667
6778
  * @category Adders
6668
6779
  */
6669
6780
  const addOrOmit = /* @__PURE__ */ dual(3, (self$1, key, service$2) => {
6670
- const map$13 = new Map(self$1.mapUnsafe);
6671
- if (service$2._tag === "None") map$13.delete(key.key);
6672
- else map$13.set(key.key, service$2.value);
6673
- return makeUnsafe$8(map$13);
6781
+ const map$14 = new Map(self$1.mapUnsafe);
6782
+ if (service$2._tag === "None") map$14.delete(key.key);
6783
+ else map$14.set(key.key, service$2.value);
6784
+ return makeUnsafe$8(map$14);
6674
6785
  });
6675
6786
  /**
6676
6787
  * Get a service from the context that corresponds to the given key.
@@ -6838,9 +6949,9 @@ const getOption = /* @__PURE__ */ dual(2, (self$1, service$2) => {
6838
6949
  const merge$5 = /* @__PURE__ */ dual(2, (self$1, that) => {
6839
6950
  if (self$1.mapUnsafe.size === 0) return that;
6840
6951
  if (that.mapUnsafe.size === 0) return self$1;
6841
- const map$13 = new Map(self$1.mapUnsafe);
6842
- that.mapUnsafe.forEach((value, key) => map$13.set(key, value));
6843
- return makeUnsafe$8(map$13);
6952
+ const map$14 = new Map(self$1.mapUnsafe);
6953
+ that.mapUnsafe.forEach((value, key) => map$14.set(key, value));
6954
+ return makeUnsafe$8(map$14);
6844
6955
  });
6845
6956
  /**
6846
6957
  * Merges any number of `ServiceMap`s, returning a new `ServiceMap` containing the services of all.
@@ -6872,11 +6983,11 @@ const merge$5 = /* @__PURE__ */ dual(2, (self$1, that) => {
6872
6983
  * @since 3.12.0
6873
6984
  */
6874
6985
  const mergeAll$1 = (...ctxs) => {
6875
- const map$13 = /* @__PURE__ */ new Map();
6986
+ const map$14 = /* @__PURE__ */ new Map();
6876
6987
  for (let i = 0; i < ctxs.length; i++) ctxs[i].mapUnsafe.forEach((value, key) => {
6877
- map$13.set(key, value);
6988
+ map$14.set(key, value);
6878
6989
  });
6879
- return makeUnsafe$8(map$13);
6990
+ return makeUnsafe$8(map$14);
6880
6991
  };
6881
6992
  /**
6882
6993
  * Creates a service map key with a default value.
@@ -7175,7 +7286,7 @@ var ParentSpan = class extends Service()(ParentSpanKey) {};
7175
7286
  * })
7176
7287
  * ```
7177
7288
  */
7178
- const make$48 = (options) => options;
7289
+ const make$49 = (options) => options;
7179
7290
  /**
7180
7291
  * @since 2.0.0
7181
7292
  * @category constructors
@@ -7201,7 +7312,7 @@ const externalSpan = (options) => ({
7201
7312
  spanId: options.spanId,
7202
7313
  traceId: options.traceId,
7203
7314
  sampled: options.sampled ?? true,
7204
- annotations: options.annotations ?? empty$10()
7315
+ annotations: options.annotations ?? empty$11()
7205
7316
  });
7206
7317
  /**
7207
7318
  * @since 3.12.0
@@ -7244,7 +7355,7 @@ const TracerKey = "effect/Tracer";
7244
7355
  * })
7245
7356
  * ```
7246
7357
  */
7247
- const Tracer = /* @__PURE__ */ Reference(TracerKey, { defaultValue: () => make$48({ span: (name, parent, annotations$1, links, startTime, kind) => new NativeSpan(name, parent, annotations$1, links.slice(), startTime, kind) }) });
7358
+ const Tracer = /* @__PURE__ */ Reference(TracerKey, { defaultValue: () => make$49({ span: (name, parent, annotations$1, links, startTime, kind) => new NativeSpan(name, parent, annotations$1, links.slice(), startTime, kind) }) });
7248
7359
  /**
7249
7360
  * @since 4.0.0
7250
7361
  * @category native tracer
@@ -7921,9 +8032,9 @@ const failureIsInterrupt$1 = (self$1) => isTagged(self$1, "Interrupt");
7921
8032
  const failureAnnotations$1 = (self$1) => makeUnsafe$8(self$1.annotations);
7922
8033
  /** @internal */
7923
8034
  const causeAnnotations = (self$1) => {
7924
- const map$13 = /* @__PURE__ */ new Map();
7925
- for (const f of self$1.failures) if (f.annotations.size > 0) for (const [key, value] of f.annotations) map$13.set(key, value);
7926
- return makeUnsafe$8(map$13);
8035
+ const map$14 = /* @__PURE__ */ new Map();
8036
+ for (const f of self$1.failures) if (f.annotations.size > 0) for (const [key, value] of f.annotations) map$14.set(key, value);
8037
+ return makeUnsafe$8(map$14);
7927
8038
  };
7928
8039
  /** @internal */
7929
8040
  const causeMerge = /* @__PURE__ */ dual(2, (self$1, that) => {
@@ -8000,7 +8111,7 @@ const causePrettyError = (original, annotations$1) => {
8000
8111
  error$1.stack = annotations$1 ? addStackAnnotations(stack, annotations$1) : stack;
8001
8112
  }
8002
8113
  for (const key of Object.keys(original)) if (!(key in error$1)) error$1[key] = original[key];
8003
- } else error$1 = new globalThis.Error(!original ? `Unknown error: ${original}` : kind === "string" ? original : formatJson(original));
8114
+ } else error$1 = new globalThis.Error(!original ? `Unknown error: ${original}` : kind === "string" ? original : formatJson$1(original));
8004
8115
  return error$1;
8005
8116
  };
8006
8117
  /** @internal */
@@ -8009,7 +8120,7 @@ const causePrettyMessage = (u) => {
8009
8120
  else if (typeof u.toString === "function" && u.toString !== Object.prototype.toString && u.toString !== Array.prototype.toString) try {
8010
8121
  return u.toString();
8011
8122
  } catch {}
8012
- return formatJson(u);
8123
+ return formatJson$1(u);
8013
8124
  };
8014
8125
  const locationRegExp = /\((.*)\)/g;
8015
8126
  const cleanErrorStack = (stack, error$1, annotations$1) => {
@@ -8144,7 +8255,7 @@ var FiberImpl = class {
8144
8255
  interruptUnsafe(fiberId$2, annotations$1) {
8145
8256
  if (this._exit) return;
8146
8257
  let cause = causeInterrupt(fiberId$2);
8147
- if (this.currentStackFrame) cause = causeAnnotate(cause, make$49(StackTraceKey, this.currentStackFrame));
8258
+ if (this.currentStackFrame) cause = causeAnnotate(cause, make$50(StackTraceKey, this.currentStackFrame));
8148
8259
  if (annotations$1) cause = causeAnnotate(cause, annotations$1);
8149
8260
  this._interruptedCause = this._interruptedCause ? causeMerge(this._interruptedCause, cause) : cause;
8150
8261
  if (this.interruptible) this.evaluate(failCause$4(this._interruptedCause));
@@ -8292,7 +8403,7 @@ const fiberJoin = (self$1) => {
8292
8403
  const fiberJoinAll = (self$1) => callback$2((resume) => {
8293
8404
  const fibers = Array.from(self$1);
8294
8405
  const out = new Array(fibers.length);
8295
- const cancels = empty$11();
8406
+ const cancels = empty$12();
8296
8407
  let done$3 = 0;
8297
8408
  let failed = false;
8298
8409
  for (let i = 0; i < fibers.length; i++) {
@@ -8569,7 +8680,7 @@ const as$1 = /* @__PURE__ */ dual(2, (self$1, value) => {
8569
8680
  return flatMap$2(self$1, (_) => b);
8570
8681
  });
8571
8682
  /** @internal */
8572
- const asSome$1 = (self$1) => map$8(self$1, some);
8683
+ const asSome$1 = (self$1) => map$9(self$1, some);
8573
8684
  /** @internal */
8574
8685
  const flip$2 = (self$1) => matchEffect$2(self$1, {
8575
8686
  onFailure: succeed$5,
@@ -8683,9 +8794,9 @@ const flatMapEager$1 = /* @__PURE__ */ dual(2, (self$1, f) => {
8683
8794
  /** @internal */
8684
8795
  const flatten$1 = (self$1) => flatMap$2(self$1, identity);
8685
8796
  /** @internal */
8686
- const map$8 = /* @__PURE__ */ dual(2, (self$1, f) => flatMap$2(self$1, (a) => succeed$5(internalCall(() => f(a)))));
8797
+ const map$9 = /* @__PURE__ */ dual(2, (self$1, f) => flatMap$2(self$1, (a) => succeed$5(internalCall(() => f(a)))));
8687
8798
  /** @internal */
8688
- const mapEager$1 = /* @__PURE__ */ dual(2, (self$1, f) => effectIsExit(self$1) ? exitMap(self$1, f) : map$8(self$1, f));
8799
+ const mapEager$1 = /* @__PURE__ */ dual(2, (self$1, f) => effectIsExit(self$1) ? exitMap(self$1, f) : map$9(self$1, f));
8689
8800
  /** @internal */
8690
8801
  const mapErrorEager$1 = /* @__PURE__ */ dual(2, (self$1, f) => effectIsExit(self$1) ? exitMapError(self$1, f) : mapError$4(self$1, f));
8691
8802
  /** @internal */
@@ -8778,13 +8889,13 @@ const updateServices$1 = /* @__PURE__ */ dual(2, (self$1, f) => withFiber$1((fib
8778
8889
  const newServices = /* @__PURE__ */ new Map();
8779
8890
  for (const [key, value] of fiber$2.services.mapUnsafe) if (!prev.mapUnsafe.has(key) || value !== prev.mapUnsafe.get(key)) newServices.set(key, value);
8780
8891
  return onExit$3(self$1, () => {
8781
- const map$13 = new Map(fiber$2.services.mapUnsafe);
8892
+ const map$14 = new Map(fiber$2.services.mapUnsafe);
8782
8893
  for (const [key, value] of newServices) {
8783
- if (value !== map$13.get(key)) continue;
8784
- if (prev.mapUnsafe.has(key)) map$13.set(key, prev.mapUnsafe.get(key));
8785
- else map$13.delete(key);
8894
+ if (value !== map$14.get(key)) continue;
8895
+ if (prev.mapUnsafe.has(key)) map$14.set(key, prev.mapUnsafe.get(key));
8896
+ else map$14.delete(key);
8786
8897
  }
8787
- fiber$2.setServices(makeUnsafe$8(map$13));
8898
+ fiber$2.setServices(makeUnsafe$8(map$14));
8788
8899
  });
8789
8900
  }));
8790
8901
  /** @internal */
@@ -8820,7 +8931,7 @@ const withConcurrency$1 = /* @__PURE__ */ provideService$1(CurrentConcurrency);
8820
8931
  /** @internal */
8821
8932
  const zip$1 = /* @__PURE__ */ dual((args$1) => isEffect$1(args$1[1]), (self$1, that, options) => zipWith$1(self$1, that, (a, a2) => [a, a2], options));
8822
8933
  /** @internal */
8823
- const zipWith$1 = /* @__PURE__ */ dual((args$1) => isEffect$1(args$1[1]), (self$1, that, f, options) => options?.concurrent ? map$8(all$1([self$1, that], { concurrency: 2 }), ([a, a2]) => internalCall(() => f(a, a2))) : flatMap$2(self$1, (a) => map$8(that, (a2) => internalCall(() => f(a, a2)))));
8934
+ const zipWith$1 = /* @__PURE__ */ dual((args$1) => isEffect$1(args$1[1]), (self$1, that, f, options) => options?.concurrent ? map$9(all$1([self$1, that], { concurrency: 2 }), ([a, a2]) => internalCall(() => f(a, a2))) : flatMap$2(self$1, (a) => map$9(that, (a2) => internalCall(() => f(a, a2)))));
8824
8935
  const filterOrFail$1 = /* @__PURE__ */ dual((args$1) => isEffect$1(args$1[0]), (self$1, predicate, orFailWith) => filterOrElse$1(self$1, predicate, orFailWith ? (a) => fail$7(orFailWith(a)) : () => fail$7(new NoSuchElementError$1())));
8825
8936
  /** @internal */
8826
8937
  const when$1 = /* @__PURE__ */ dual(2, (self$1, condition) => flatMap$2(isEffect$1(condition) ? condition : sync$1(condition), (pass) => pass ? asSome$1(self$1) : succeedNone$1));
@@ -9035,7 +9146,7 @@ const timeoutOption$1 = /* @__PURE__ */ dual(2, (self$1, duration) => raceFirst$
9035
9146
  /** @internal */
9036
9147
  const timed$1 = (self$1) => clockWith$2((clock) => {
9037
9148
  const start = clock.currentTimeNanosUnsafe();
9038
- return map$8(self$1, (a) => [nanos(clock.currentTimeNanosUnsafe() - start), a]);
9149
+ return map$9(self$1, (a) => [nanos(clock.currentTimeNanosUnsafe() - start), a]);
9039
9150
  });
9040
9151
  /** @internal */
9041
9152
  const ScopeTypeId = "~effect/Scope";
@@ -9217,7 +9328,7 @@ const cachedInvalidateWithTTL$1 = /* @__PURE__ */ dual(2, (self$1, ttl) => sync$
9217
9328
  })];
9218
9329
  }));
9219
9330
  /** @internal */
9220
- const cachedWithTTL$1 = /* @__PURE__ */ dual(2, (self$1, timeToLive) => map$8(cachedInvalidateWithTTL$1(self$1, timeToLive), (tuple$1) => tuple$1[0]));
9331
+ const cachedWithTTL$1 = /* @__PURE__ */ dual(2, (self$1, timeToLive) => map$9(cachedInvalidateWithTTL$1(self$1, timeToLive), (tuple$1) => tuple$1[0]));
9221
9332
  /** @internal */
9222
9333
  const cached$1 = (self$1) => cachedWithTTL$1(self$1, infinity);
9223
9334
  /** @internal */
@@ -9266,7 +9377,7 @@ const all$1 = (arg, options) => {
9266
9377
  else if (options?.discard) return forEach$2(Object.values(arg), identity, options);
9267
9378
  return suspend$4(() => {
9268
9379
  const out = {};
9269
- return as$1(forEach$2(Object.entries(arg), ([key, effect$1]) => map$8(effect$1, (value) => {
9380
+ return as$1(forEach$2(Object.entries(arg), ([key, effect$1]) => map$9(effect$1, (value) => {
9270
9381
  out[key] = value;
9271
9382
  }), {
9272
9383
  discard: true,
@@ -9375,7 +9486,7 @@ const filterOrElse$1 = /* @__PURE__ */ dual(3, (self$1, predicate, orElse$1) =>
9375
9486
  /** @internal */
9376
9487
  const filter$2 = /* @__PURE__ */ dual((args$1) => isIterable(args$1[0]) && !isEffect$1(args$1[0]), (elements, predicate, options) => suspend$4(() => {
9377
9488
  const out = [];
9378
- return as$1(forEach$2(elements, (a, i) => map$8(predicate(a, i), (keep) => {
9489
+ return as$1(forEach$2(elements, (a, i) => map$9(predicate(a, i), (keep) => {
9379
9490
  if (keep) out.push(a);
9380
9491
  }), {
9381
9492
  discard: true,
@@ -9385,7 +9496,7 @@ const filter$2 = /* @__PURE__ */ dual((args$1) => isIterable(args$1[0]) && !isEf
9385
9496
  /** @internal */
9386
9497
  const filterMap$1 = /* @__PURE__ */ dual((args$1) => isIterable(args$1[0]) && !isEffect$1(args$1[0]), (elements, filter$6, options) => suspend$4(() => {
9387
9498
  const out = [];
9388
- return as$1(forEach$2(elements, (a) => map$8(filter$6(a), (result$2) => {
9499
+ return as$1(forEach$2(elements, (a) => map$9(filter$6(a), (result$2) => {
9389
9500
  if (!isFail(result$2)) out.push(result$2);
9390
9501
  }), {
9391
9502
  discard: true,
@@ -9451,7 +9562,7 @@ const fiberRunIn = /* @__PURE__ */ dual(2, (self$1, scope$2) => {
9451
9562
  return self$1;
9452
9563
  });
9453
9564
  /** @internal */
9454
- const runFork$1 = /* @__PURE__ */ runForkWith$1(/* @__PURE__ */ empty$10());
9565
+ const runFork$1 = /* @__PURE__ */ runForkWith$1(/* @__PURE__ */ empty$11());
9455
9566
  /** @internal */
9456
9567
  const runCallbackWith$1 = (services$2) => {
9457
9568
  const runFork$2 = runForkWith$1(services$2);
@@ -9464,7 +9575,7 @@ const runCallbackWith$1 = (services$2) => {
9464
9575
  };
9465
9576
  };
9466
9577
  /** @internal */
9467
- const runCallback$1 = /* @__PURE__ */ runCallbackWith$1(/* @__PURE__ */ empty$10());
9578
+ const runCallback$1 = /* @__PURE__ */ runCallbackWith$1(/* @__PURE__ */ empty$11());
9468
9579
  /** @internal */
9469
9580
  const runPromiseExitWith$1 = (services$2) => {
9470
9581
  const runFork$2 = runForkWith$1(services$2);
@@ -9476,7 +9587,7 @@ const runPromiseExitWith$1 = (services$2) => {
9476
9587
  };
9477
9588
  };
9478
9589
  /** @internal */
9479
- const runPromiseExit$1 = /* @__PURE__ */ runPromiseExitWith$1(/* @__PURE__ */ empty$10());
9590
+ const runPromiseExit$1 = /* @__PURE__ */ runPromiseExitWith$1(/* @__PURE__ */ empty$11());
9480
9591
  /** @internal */
9481
9592
  const runPromiseWith$1 = (services$2) => {
9482
9593
  const runPromiseExit$2 = runPromiseExitWith$1(services$2);
@@ -9486,7 +9597,7 @@ const runPromiseWith$1 = (services$2) => {
9486
9597
  });
9487
9598
  };
9488
9599
  /** @internal */
9489
- const runPromise$1 = /* @__PURE__ */ runPromiseWith$1(/* @__PURE__ */ empty$10());
9600
+ const runPromise$1 = /* @__PURE__ */ runPromiseWith$1(/* @__PURE__ */ empty$11());
9490
9601
  /** @internal */
9491
9602
  const runSyncExitWith$1 = (services$2) => {
9492
9603
  const runFork$2 = runForkWith$1(services$2);
@@ -9499,7 +9610,7 @@ const runSyncExitWith$1 = (services$2) => {
9499
9610
  };
9500
9611
  };
9501
9612
  /** @internal */
9502
- const runSyncExit$1 = /* @__PURE__ */ runSyncExitWith$1(/* @__PURE__ */ empty$10());
9613
+ const runSyncExit$1 = /* @__PURE__ */ runSyncExitWith$1(/* @__PURE__ */ empty$11());
9503
9614
  /** @internal */
9504
9615
  const runSyncWith$1 = (services$2) => {
9505
9616
  const runSyncExit$2 = runSyncExitWith$1(services$2);
@@ -9510,7 +9621,7 @@ const runSyncWith$1 = (services$2) => {
9510
9621
  };
9511
9622
  };
9512
9623
  /** @internal */
9513
- const runSync$1 = /* @__PURE__ */ runSyncWith$1(/* @__PURE__ */ empty$10());
9624
+ const runSync$1 = /* @__PURE__ */ runSyncWith$1(/* @__PURE__ */ empty$11());
9514
9625
  /** @internal */
9515
9626
  var Semaphore = class {
9516
9627
  waiters = /* @__PURE__ */ new Set();
@@ -9666,7 +9777,7 @@ const makeSpanUnsafe = (fiber$2, name, options) => {
9666
9777
  if (disablePropagation) span = noopSpan({
9667
9778
  name,
9668
9779
  parent,
9669
- annotations: add$3(options?.annotations ?? empty$10(), DisablePropagation, true)
9780
+ annotations: add$3(options?.annotations ?? empty$11(), DisablePropagation, true)
9670
9781
  });
9671
9782
  else {
9672
9783
  const tracer$3 = fiber$2.getRef(Tracer);
@@ -9675,7 +9786,7 @@ const makeSpanUnsafe = (fiber$2, name, options) => {
9675
9786
  const annotationsFromEnv = fiber$2.getRef(TracerSpanAnnotations);
9676
9787
  const linksFromEnv = fiber$2.getRef(TracerSpanLinks);
9677
9788
  const links = options?.links !== void 0 ? [...linksFromEnv, ...options.links] : linksFromEnv;
9678
- span = tracer$3.span(name, parent, options?.annotations ?? empty$10(), links, timingEnabled ? clock.currentTimeNanosUnsafe() : 0n, options?.kind ?? "internal", options);
9789
+ span = tracer$3.span(name, parent, options?.annotations ?? empty$11(), links, timingEnabled ? clock.currentTimeNanosUnsafe() : 0n, options?.kind ?? "internal", options);
9679
9790
  for (const [key, value] of Object.entries(annotationsFromEnv)) span.attribute(key, value);
9680
9791
  if (options?.attributes !== void 0) for (const [key, value] of Object.entries(options.attributes)) span.attribute(key, value);
9681
9792
  }
@@ -9811,10 +9922,10 @@ var ClockImpl = class {
9811
9922
  }
9812
9923
  };
9813
9924
  const performanceNowNanos = /* @__PURE__ */ function() {
9814
- const bigint1e6 = /* @__PURE__ */ BigInt(1e6);
9815
- if (typeof performance === "undefined" || typeof performance.now === "undefined") return () => BigInt(Date.now()) * bigint1e6;
9925
+ const bigint1e6$1 = /* @__PURE__ */ BigInt(1e6);
9926
+ if (typeof performance === "undefined" || typeof performance.now === "undefined") return () => BigInt(Date.now()) * bigint1e6$1;
9816
9927
  else if (typeof performance.timeOrigin === "number" && performance.timeOrigin === 0) return () => BigInt(Math.round(performance.now() * 1e6));
9817
- const origin = /* @__PURE__ */ BigInt(/* @__PURE__ */ Date.now()) * bigint1e6 - /* @__PURE__ */ BigInt(/* @__PURE__ */ Math.round(/* @__PURE__ */ performance.now() * 1e6));
9928
+ const origin = /* @__PURE__ */ BigInt(/* @__PURE__ */ Date.now()) * bigint1e6$1 - /* @__PURE__ */ BigInt(/* @__PURE__ */ Math.round(/* @__PURE__ */ performance.now() * 1e6));
9818
9929
  return () => origin + BigInt(Math.round(performance.now() * 1e6));
9819
9930
  }();
9820
9931
  const processOrPerformanceNow = /* @__PURE__ */ function() {
@@ -9898,9 +10009,9 @@ const LogLevelOrder = /* @__PURE__ */ mapInput(Number$4, logLevelToOrder);
9898
10009
  /** @internal */
9899
10010
  const isLogLevelGreaterThan = /* @__PURE__ */ isGreaterThan$4(LogLevelOrder);
9900
10011
  /** @internal */
9901
- const CurrentLoggers = /* @__PURE__ */ Reference("effect/Loggers/CurrentLoggers", { defaultValue: () => new Set([defaultLogger, tracerLogger]) });
10012
+ const CurrentLoggers$1 = /* @__PURE__ */ Reference("effect/Loggers/CurrentLoggers", { defaultValue: () => new Set([defaultLogger$1, tracerLogger$1]) });
9902
10013
  /** @internal */
9903
- const LogToStderr = /* @__PURE__ */ Reference("effect/Logger/LogToStderr", { defaultValue: constFalse });
10014
+ const LogToStderr$1 = /* @__PURE__ */ Reference("effect/Logger/LogToStderr", { defaultValue: constFalse });
9904
10015
  /** @internal */
9905
10016
  const LoggerTypeId = "~effect/Logger";
9906
10017
  const LoggerProto = {
@@ -9934,6 +10045,15 @@ const formatLogSpan = (self$1, now$2) => {
9934
10045
  return `${formatLabel(self$1[0])}=${now$2 - self$1[1]}ms`;
9935
10046
  };
9936
10047
  /** @internal */
10048
+ const structuredMessage = (u) => {
10049
+ switch (typeof u) {
10050
+ case "bigint":
10051
+ case "function":
10052
+ case "symbol": return String(u);
10053
+ default: return toJson(u);
10054
+ }
10055
+ };
10056
+ /** @internal */
9937
10057
  const logWithLevel$1 = (level) => (...message) => {
9938
10058
  let cause = void 0;
9939
10059
  for (let i = 0, len = message.length; i < len; i++) {
@@ -9950,7 +10070,7 @@ const logWithLevel$1 = (level) => (...message) => {
9950
10070
  const logLevel = level ?? fiber$2.getRef(CurrentLogLevel);
9951
10071
  if (isLogLevelGreaterThan(fiber$2.getRef(MinimumLogLevel), logLevel)) return void_$3;
9952
10072
  const clock = fiber$2.getRef(ClockRef);
9953
- const loggers = fiber$2.getRef(CurrentLoggers);
10073
+ const loggers = fiber$2.getRef(CurrentLoggers$1);
9954
10074
  if (loggers.size > 0) {
9955
10075
  const date$2 = new Date(clock.currentTimeMillisUnsafe());
9956
10076
  for (const logger$1 of loggers) logger$1.log({
@@ -9964,6 +10084,12 @@ const logWithLevel$1 = (level) => (...message) => {
9964
10084
  return void_$3;
9965
10085
  });
9966
10086
  };
10087
+ const withColor = (text$3, ...colors$1) => {
10088
+ let out = "";
10089
+ for (let i = 0; i < colors$1.length; i++) out += `\x1b[${colors$1[i]}m`;
10090
+ return out + text$3 + "\x1B[0m";
10091
+ };
10092
+ const withColorNoop = (text$3, ..._colors) => text$3;
9967
10093
  const colors = {
9968
10094
  bold: "1",
9969
10095
  red: "31",
@@ -9986,12 +10112,100 @@ const logLevelColors = {
9986
10112
  Error: [colors.red],
9987
10113
  Fatal: [colors.bgBrightRed, colors.black]
9988
10114
  };
10115
+ const logLevelStyle = {
10116
+ None: "",
10117
+ All: "",
10118
+ Trace: "color:gray",
10119
+ Debug: "color:blue",
10120
+ Info: "color:green",
10121
+ Warn: "color:orange",
10122
+ Error: "color:red",
10123
+ Fatal: "background-color:red;color:white"
10124
+ };
9989
10125
  const defaultDateFormat = (date$2) => `${date$2.getHours().toString().padStart(2, "0")}:${date$2.getMinutes().toString().padStart(2, "0")}:${date$2.getSeconds().toString().padStart(2, "0")}.${date$2.getMilliseconds().toString().padStart(3, "0")}`;
9990
10126
  const hasProcessStdout = typeof process === "object" && process !== null && typeof process.stdout === "object" && process.stdout !== null;
9991
10127
  const processStdoutIsTTY = hasProcessStdout && process.stdout.isTTY === true;
9992
10128
  const hasProcessStdoutOrDeno = hasProcessStdout || "Deno" in globalThis;
9993
10129
  /** @internal */
9994
- const defaultLogger = /* @__PURE__ */ loggerMake(({ cause, date: date$2, fiber: fiber$2, logLevel, message }) => {
10130
+ const consolePretty$1 = (options) => {
10131
+ const mode_ = options?.mode ?? "auto";
10132
+ const isBrowser = (mode_ === "auto" ? hasProcessStdoutOrDeno ? "tty" : "browser" : mode_) === "browser";
10133
+ const showColors = typeof options?.colors === "boolean" ? options.colors : processStdoutIsTTY || isBrowser;
10134
+ const formatDate$1 = options?.formatDate ?? defaultDateFormat;
10135
+ return isBrowser ? prettyLoggerBrowser({
10136
+ colors: showColors,
10137
+ formatDate: formatDate$1
10138
+ }) : prettyLoggerTty({
10139
+ colors: showColors,
10140
+ formatDate: formatDate$1
10141
+ });
10142
+ };
10143
+ const prettyLoggerTty = (options) => {
10144
+ const processIsBun = typeof process === "object" && "isBun" in process && process.isBun === true;
10145
+ const color = options.colors && processStdoutIsTTY ? withColor : withColorNoop;
10146
+ return loggerMake(({ cause, date: date$2, fiber: fiber$2, logLevel, message: message_ }) => {
10147
+ const console$1 = fiber$2.getRef(ConsoleRef);
10148
+ const log$2 = fiber$2.getRef(LogToStderr$1) ? console$1.error : console$1.log;
10149
+ const message = Array.isArray(message_) ? message_.slice() : [message_];
10150
+ let firstLine = color(`[${options.formatDate(date$2)}]`, colors.white) + ` ${color(logLevel.toUpperCase(), ...logLevelColors[logLevel])} (#${fiber$2.id})`;
10151
+ const now$2 = date$2.getTime();
10152
+ const spans = fiber$2.getRef(CurrentLogSpans);
10153
+ for (const span of spans) firstLine += " " + formatLogSpan(span, now$2);
10154
+ firstLine += ":";
10155
+ let messageIndex = 0;
10156
+ if (message.length > 0) {
10157
+ const firstMaybeString = structuredMessage(message[0]);
10158
+ if (typeof firstMaybeString === "string") {
10159
+ firstLine += " " + color(firstMaybeString, colors.bold, colors.cyan);
10160
+ messageIndex++;
10161
+ }
10162
+ }
10163
+ log$2(firstLine);
10164
+ if (!processIsBun) console$1.group();
10165
+ if (cause.failures.length > 0) log$2(causePretty(cause));
10166
+ if (messageIndex < message.length) for (; messageIndex < message.length; messageIndex++) log$2(redact$1(message[messageIndex]));
10167
+ const annotations$1 = fiber$2.getRef(CurrentLogAnnotations);
10168
+ for (const [key, value] of Object.entries(annotations$1)) log$2(color(`${key}:`, colors.bold, colors.white), redact$1(value));
10169
+ if (!processIsBun) console$1.groupEnd();
10170
+ });
10171
+ };
10172
+ const prettyLoggerBrowser = (options) => {
10173
+ const color = options.colors ? "%c" : "";
10174
+ return loggerMake(({ cause, date: date$2, fiber: fiber$2, logLevel, message: message_ }) => {
10175
+ const console$1 = fiber$2.getRef(ConsoleRef);
10176
+ const message = Array.isArray(message_) ? message_.slice() : [message_];
10177
+ let firstLine = `${color}[${options.formatDate(date$2)}]`;
10178
+ const firstParams = [];
10179
+ if (options.colors) firstParams.push("color:gray");
10180
+ firstLine += ` ${color}${logLevel.toUpperCase()}${color} (#${fiber$2.id})`;
10181
+ if (options.colors) firstParams.push(logLevelStyle[logLevel], "");
10182
+ const now$2 = date$2.getTime();
10183
+ const spans = fiber$2.getRef(CurrentLogSpans);
10184
+ for (const span of spans) firstLine += " " + formatLogSpan(span, now$2);
10185
+ firstLine += ":";
10186
+ let messageIndex = 0;
10187
+ if (message.length > 0) {
10188
+ const firstMaybeString = structuredMessage(message[0]);
10189
+ if (typeof firstMaybeString === "string") {
10190
+ firstLine += ` ${color}${firstMaybeString}`;
10191
+ if (options.colors) firstParams.push("color:deepskyblue");
10192
+ messageIndex++;
10193
+ }
10194
+ }
10195
+ console$1.groupCollapsed(firstLine, ...firstParams);
10196
+ if (cause.failures.length > 0) console$1.error(causePretty(cause));
10197
+ if (messageIndex < message.length) for (; messageIndex < message.length; messageIndex++) console$1.log(redact$1(message[messageIndex]));
10198
+ const annotations$1 = fiber$2.getRef(CurrentLogAnnotations);
10199
+ for (const [key, value] of Object.entries(annotations$1)) {
10200
+ const redacted = redact$1(value);
10201
+ if (options.colors) console$1.log(`%c${key}:`, "color:gray", redacted);
10202
+ else console$1.log(`${key}:`, redacted);
10203
+ }
10204
+ console$1.groupEnd();
10205
+ });
10206
+ };
10207
+ /** @internal */
10208
+ const defaultLogger$1 = /* @__PURE__ */ loggerMake(({ cause, date: date$2, fiber: fiber$2, logLevel, message }) => {
9995
10209
  const message_ = Array.isArray(message) ? message.slice() : [message];
9996
10210
  if (cause.failures.length > 0) message_.unshift(causePretty(cause));
9997
10211
  const now$2 = date$2.getTime();
@@ -10001,10 +10215,10 @@ const defaultLogger = /* @__PURE__ */ loggerMake(({ cause, date: date$2, fiber:
10001
10215
  const annotations$1 = fiber$2.getRef(CurrentLogAnnotations);
10002
10216
  if (Object.keys(annotations$1).length > 0) message_.push(annotations$1);
10003
10217
  const console$1 = fiber$2.getRef(ConsoleRef);
10004
- (fiber$2.getRef(LogToStderr) ? console$1.error : console$1.log)(`[${defaultDateFormat(date$2)}] ${logLevel.toUpperCase()} (#${fiber$2.id})${spanString}:`, ...message_);
10218
+ (fiber$2.getRef(LogToStderr$1) ? console$1.error : console$1.log)(`[${defaultDateFormat(date$2)}] ${logLevel.toUpperCase()} (#${fiber$2.id})${spanString}:`, ...message_);
10005
10219
  });
10006
10220
  /** @internal */
10007
- const tracerLogger = /* @__PURE__ */ loggerMake(({ cause, fiber: fiber$2, logLevel, message }) => {
10221
+ const tracerLogger$1 = /* @__PURE__ */ loggerMake(({ cause, fiber: fiber$2, logLevel, message }) => {
10008
10222
  const clock = fiber$2.getRef(ClockRef);
10009
10223
  const annotations$1 = fiber$2.getRef(CurrentLogAnnotations);
10010
10224
  const span = fiber$2.currentSpan;
@@ -10290,7 +10504,7 @@ const match$3 = exitMatch;
10290
10504
  * @category combinators
10291
10505
  * @since 2.0.0
10292
10506
  */
10293
- const map$7 = exitMap;
10507
+ const map$8 = exitMap;
10294
10508
  /**
10295
10509
  * Transforms the error value of a failed `Exit` using the provided function.
10296
10510
  *
@@ -10446,7 +10660,7 @@ const makeUnsafe$7 = () => {
10446
10660
  * @since 2.0.0
10447
10661
  * @category constructors
10448
10662
  */
10449
- const make$47 = () => sync$1(() => makeUnsafe$7());
10663
+ const make$48 = () => sync$1(() => makeUnsafe$7());
10450
10664
  const _await = (self$1) => callback$2((resume) => {
10451
10665
  if (self$1.effect) return resume(self$1.effect);
10452
10666
  self$1.resumes ??= [];
@@ -10683,7 +10897,7 @@ const Scope = scopeTag;
10683
10897
  * @category constructors
10684
10898
  * @since 2.0.0
10685
10899
  */
10686
- const make$46 = scopeMake;
10900
+ const make$47 = scopeMake;
10687
10901
  /**
10688
10902
  * Creates a new `Scope` synchronously without wrapping it in an `Effect`.
10689
10903
  * This is useful when you need a scope immediately but should be used with caution
@@ -11236,8 +11450,8 @@ const buildWithScope = /* @__PURE__ */ dual(2, (self$1, scope$2) => suspend$4(()
11236
11450
  * @category constructors
11237
11451
  */
11238
11452
  const succeed$2 = function() {
11239
- if (arguments.length === 1) return (resource) => succeedServices(make$49(arguments[0], resource));
11240
- return succeedServices(make$49(arguments[0], arguments[1]));
11453
+ if (arguments.length === 1) return (resource) => succeedServices(make$50(arguments[0], resource));
11454
+ return succeedServices(make$50(arguments[0], arguments[1]));
11241
11455
  };
11242
11456
  /**
11243
11457
  * Constructs a layer from the specified value, which must return one or more
@@ -11275,6 +11489,23 @@ const succeed$2 = function() {
11275
11489
  */
11276
11490
  const succeedServices = (services$2) => fromBuildUnsafe(constant(succeed$5(services$2)));
11277
11491
  /**
11492
+ * A Layer that constructs an empty ServiceMap.
11493
+ *
11494
+ * This layer provides no services and can be used as a neutral element
11495
+ * in layer composition or as a starting point for building layers.
11496
+ *
11497
+ * @example
11498
+ * ```ts
11499
+ * import { Layer } from "effect"
11500
+ *
11501
+ * const emptyLayer = Layer.empty
11502
+ * ```
11503
+ *
11504
+ * @since 2.0.0
11505
+ * @category constructors
11506
+ */
11507
+ const empty$10 = /* @__PURE__ */ succeedServices(/* @__PURE__ */ empty$11());
11508
+ /**
11278
11509
  * Constructs a layer from the specified scoped effect.
11279
11510
  *
11280
11511
  * This allows you to create a Layer from an Effect that produces a service.
@@ -11310,7 +11541,7 @@ const effect = function() {
11310
11541
  const effectOrFn = arguments[1];
11311
11542
  return typeof effectOrFn === "function" ? (...args$1) => effectImpl(arguments[0], suspend$4(() => effectOrFn(...args$1))) : effectImpl(arguments[0], effectOrFn);
11312
11543
  };
11313
- const effectImpl = (service$2, effect$1) => effectServices(map$8(effect$1, (value) => make$49(service$2, value)));
11544
+ const effectImpl = (service$2, effect$1) => effectServices(map$9(effect$1, (value) => make$50(service$2, value)));
11314
11545
  /**
11315
11546
  * Constructs a layer from the specified scoped effect, which must return one
11316
11547
  * or more services.
@@ -11364,7 +11595,7 @@ const effectServices = (effect$1) => fromBuildMemo((_, scope$2) => provide$4(eff
11364
11595
  * @since 2.0.0
11365
11596
  * @category constructors
11366
11597
  */
11367
- const effectDiscard = (effect$1) => effectServices(as$1(effect$1, empty$10()));
11598
+ const effectDiscard = (effect$1) => effectServices(as$1(effect$1, empty$11()));
11368
11599
  /**
11369
11600
  * Unwraps a Layer from an Effect, flattening the nested structure.
11370
11601
  *
@@ -11396,7 +11627,7 @@ const unwrap$3 = (self$1) => {
11396
11627
  };
11397
11628
  const mergeAllEffect = (layers, memoMap, scope$2) => {
11398
11629
  const parentScope = forkUnsafe(scope$2, "parallel");
11399
- return forEach$2(layers, (layer$16) => layer$16.build(memoMap, forkUnsafe(parentScope, "sequential")), { concurrency: layers.length }).pipe(map$8((services$2) => mergeAll$1(...services$2)));
11630
+ return forEach$2(layers, (layer$16) => layer$16.build(memoMap, forkUnsafe(parentScope, "sequential")), { concurrency: layers.length }).pipe(map$9((services$2) => mergeAll$1(...services$2)));
11400
11631
  };
11401
11632
  /**
11402
11633
  * Combines all the provided layers concurrently, creating a new layer with merged input, error, and output types.
@@ -11430,7 +11661,7 @@ const mergeAllEffect = (layers, memoMap, scope$2) => {
11430
11661
  * @category zipping
11431
11662
  */
11432
11663
  const mergeAll = (...layers) => fromBuild((memoMap, scope$2) => mergeAllEffect(layers, memoMap, scope$2));
11433
- const provideWith = (self$1, that, f) => fromBuild((memoMap, scope$2) => flatMap$2(Array.isArray(that) ? mergeAllEffect(that, memoMap, scope$2) : that.build(memoMap, scope$2), (context) => self$1.build(memoMap, scope$2).pipe(provideServices$1(context), map$8((merged) => f(merged, context)))));
11664
+ const provideWith = (self$1, that, f) => fromBuild((memoMap, scope$2) => flatMap$2(Array.isArray(that) ? mergeAllEffect(that, memoMap, scope$2) : that.build(memoMap, scope$2), (context) => self$1.build(memoMap, scope$2).pipe(provideServices$1(context), map$9((merged) => f(merged, context)))));
11434
11665
  /**
11435
11666
  * Feeds the output services of this builder into the input of the specified
11436
11667
  * builder, resulting in a new builder with the inputs of this builder as
@@ -11909,7 +12140,7 @@ const isInterruptedOnly = causeIsInterruptedOnly;
11909
12140
  * @category Mapping
11910
12141
  * @since 4.0.0
11911
12142
  */
11912
- const map$6 = causeMap;
12143
+ const map$7 = causeMap;
11913
12144
  /**
11914
12145
  * Merges two causes into a single cause containing failures from both.
11915
12146
  *
@@ -12498,9 +12729,9 @@ const isUtc$1 = (self$1) => self$1._tag === "Utc";
12498
12729
  /** @internal */
12499
12730
  const isZoned$1 = (self$1) => self$1._tag === "Zoned";
12500
12731
  /** @internal */
12501
- const Equivalence$3 = /* @__PURE__ */ make$50((a, b) => a.epochMillis === b.epochMillis);
12732
+ const Equivalence$3 = /* @__PURE__ */ make$51((a, b) => a.epochMillis === b.epochMillis);
12502
12733
  /** @internal */
12503
- const Order$3 = /* @__PURE__ */ make$52((self$1, that) => self$1.epochMillis < that.epochMillis ? -1 : self$1.epochMillis > that.epochMillis ? 1 : 0);
12734
+ const Order$3 = /* @__PURE__ */ make$53((self$1, that) => self$1.epochMillis < that.epochMillis ? -1 : self$1.epochMillis > that.epochMillis ? 1 : 0);
12504
12735
  /** @internal */
12505
12736
  const clamp$1 = /* @__PURE__ */ clamp$2(Order$3);
12506
12737
  const makeUtc = (epochMillis) => {
@@ -12553,7 +12784,7 @@ const makeZonedUnsafe$1 = (input, options) => {
12553
12784
  /** @internal */
12554
12785
  const makeZoned$1 = /* @__PURE__ */ liftThrowable(makeZonedUnsafe$1);
12555
12786
  /** @internal */
12556
- const make$45 = /* @__PURE__ */ liftThrowable(makeUnsafe$5);
12787
+ const make$46 = /* @__PURE__ */ liftThrowable(makeUnsafe$5);
12557
12788
  const zonedStringRegExp = /^(.{17,35})\[(.+)\]$/;
12558
12789
  /** @internal */
12559
12790
  const makeZonedFromString$1 = (input) => {
@@ -12566,9 +12797,9 @@ const makeZonedFromString$1 = (input) => {
12566
12797
  return makeZoned$1(isoString, { timeZone });
12567
12798
  };
12568
12799
  /** @internal */
12569
- const now$1 = /* @__PURE__ */ map$8(currentTimeMillis, makeUtc);
12800
+ const now$1 = /* @__PURE__ */ map$9(currentTimeMillis, makeUtc);
12570
12801
  /** @internal */
12571
- const nowAsDate$1 = /* @__PURE__ */ map$8(currentTimeMillis, (millis$1) => new Date(millis$1));
12802
+ const nowAsDate$1 = /* @__PURE__ */ map$9(currentTimeMillis, (millis$1) => new Date(millis$1));
12572
12803
  /** @internal */
12573
12804
  const nowUnsafe$1 = () => makeUtc(Date.now());
12574
12805
  /** @internal */
@@ -12589,12 +12820,12 @@ const formatOptions = {
12589
12820
  fractionalSecondDigits: 3,
12590
12821
  hourCycle: "h23"
12591
12822
  };
12592
- const zoneMakeIntl = (format$3) => {
12593
- const zoneId = format$3.resolvedOptions().timeZone;
12823
+ const zoneMakeIntl = (format$4) => {
12824
+ const zoneId = format$4.resolvedOptions().timeZone;
12594
12825
  if (validZoneCache.has(zoneId)) return validZoneCache.get(zoneId);
12595
12826
  const zone = Object.create(ProtoTimeZoneNamed);
12596
12827
  zone.id = zoneId;
12597
- zone.format = format$3;
12828
+ zone.format = format$4;
12598
12829
  validZoneCache.set(zoneId, zone);
12599
12830
  return zone;
12600
12831
  };
@@ -12640,7 +12871,7 @@ const zoneToString$1 = (self$1) => {
12640
12871
  return self$1.id;
12641
12872
  };
12642
12873
  /** @internal */
12643
- const setZoneNamed$1 = /* @__PURE__ */ dual(isDateTimeArgs, (self$1, zoneId, options) => map$12(zoneMakeNamed$1(zoneId), (zone) => setZone$1(self$1, zone, options)));
12874
+ const setZoneNamed$1 = /* @__PURE__ */ dual(isDateTimeArgs, (self$1, zoneId, options) => map$13(zoneMakeNamed$1(zoneId), (zone) => setZone$1(self$1, zone, options)));
12644
12875
  /** @internal */
12645
12876
  const setZoneNamedUnsafe$1 = /* @__PURE__ */ dual(isDateTimeArgs, (self$1, zoneId, options) => setZone$1(self$1, zoneMakeNamedUnsafe$1(zoneId), options));
12646
12877
  /** @internal */
@@ -12661,17 +12892,17 @@ const isGreaterThan$3 = /* @__PURE__ */ isGreaterThan$4(Order$3);
12661
12892
  /** @internal */
12662
12893
  const isGreaterThanOrEqualTo$2 = /* @__PURE__ */ isGreaterThanOrEqualTo$3(Order$3);
12663
12894
  /** @internal */
12664
- const isLessThan$2 = /* @__PURE__ */ isLessThan$3(Order$3);
12895
+ const isLessThan$3 = /* @__PURE__ */ isLessThan$4(Order$3);
12665
12896
  /** @internal */
12666
12897
  const isLessThanOrEqualTo$2 = /* @__PURE__ */ isLessThanOrEqualTo$3(Order$3);
12667
12898
  /** @internal */
12668
12899
  const between$1 = /* @__PURE__ */ isBetween$1(Order$3);
12669
12900
  /** @internal */
12670
- const isFuture$1 = (self$1) => map$8(now$1, isLessThan$2(self$1));
12901
+ const isFuture$1 = (self$1) => map$9(now$1, isLessThan$3(self$1));
12671
12902
  /** @internal */
12672
- const isFutureUnsafe$1 = (self$1) => isLessThan$2(nowUnsafe$1(), self$1);
12903
+ const isFutureUnsafe$1 = (self$1) => isLessThan$3(nowUnsafe$1(), self$1);
12673
12904
  /** @internal */
12674
- const isPast$1 = (self$1) => map$8(now$1, isGreaterThan$3(self$1));
12905
+ const isPast$1 = (self$1) => map$9(now$1, isGreaterThan$3(self$1));
12675
12906
  /** @internal */
12676
12907
  const isPastUnsafe$1 = (self$1) => isGreaterThan$3(nowUnsafe$1(), self$1);
12677
12908
  /** @internal */
@@ -12681,10 +12912,10 @@ const toDate$1 = (self$1) => {
12681
12912
  if (self$1._tag === "Utc") return new Date(self$1.epochMillis);
12682
12913
  else if (self$1.zone._tag === "Offset") return new Date(self$1.epochMillis + self$1.zone.offset);
12683
12914
  else if (self$1.adjustedEpochMillis !== void 0) return new Date(self$1.adjustedEpochMillis);
12684
- const parts = self$1.zone.format.formatToParts(self$1.epochMillis).filter((_) => _.type !== "literal");
12915
+ const parts$1 = self$1.zone.format.formatToParts(self$1.epochMillis).filter((_) => _.type !== "literal");
12685
12916
  const date$2 = /* @__PURE__ */ new Date(0);
12686
- date$2.setUTCFullYear(Number(parts[2].value), Number(parts[0].value) - 1, Number(parts[1].value));
12687
- date$2.setUTCHours(Number(parts[3].value), Number(parts[4].value), Number(parts[5].value), Number(parts[6].value));
12917
+ date$2.setUTCFullYear(Number(parts$1[2].value), Number(parts$1[0].value) - 1, Number(parts$1[1].value));
12918
+ date$2.setUTCHours(Number(parts$1[3].value), Number(parts$1[4].value), Number(parts$1[5].value), Number(parts$1[6].value));
12688
12919
  self$1.adjustedEpochMillis = date$2.getTime();
12689
12920
  return date$2;
12690
12921
  };
@@ -12738,23 +12969,23 @@ const toPartsUtc$1 = (self$1) => {
12738
12969
  const getPartUtc$1 = /* @__PURE__ */ dual(2, (self$1, part) => toPartsUtc$1(self$1)[part]);
12739
12970
  /** @internal */
12740
12971
  const getPart$1 = /* @__PURE__ */ dual(2, (self$1, part) => toParts$1(self$1)[part]);
12741
- const setPartsDate = (date$2, parts) => {
12742
- if (parts.year !== void 0) date$2.setUTCFullYear(parts.year);
12743
- if (parts.month !== void 0) date$2.setUTCMonth(parts.month - 1);
12744
- if (parts.day !== void 0) date$2.setUTCDate(parts.day);
12745
- if (parts.weekDay !== void 0) {
12746
- const diff = parts.weekDay - date$2.getUTCDay();
12972
+ const setPartsDate = (date$2, parts$1) => {
12973
+ if (parts$1.year !== void 0) date$2.setUTCFullYear(parts$1.year);
12974
+ if (parts$1.month !== void 0) date$2.setUTCMonth(parts$1.month - 1);
12975
+ if (parts$1.day !== void 0) date$2.setUTCDate(parts$1.day);
12976
+ if (parts$1.weekDay !== void 0) {
12977
+ const diff = parts$1.weekDay - date$2.getUTCDay();
12747
12978
  date$2.setUTCDate(date$2.getUTCDate() + diff);
12748
12979
  }
12749
- if (parts.hours !== void 0) date$2.setUTCHours(parts.hours);
12750
- if (parts.minutes !== void 0) date$2.setUTCMinutes(parts.minutes);
12751
- if (parts.seconds !== void 0) date$2.setUTCSeconds(parts.seconds);
12752
- if (parts.millis !== void 0) date$2.setUTCMilliseconds(parts.millis);
12980
+ if (parts$1.hours !== void 0) date$2.setUTCHours(parts$1.hours);
12981
+ if (parts$1.minutes !== void 0) date$2.setUTCMinutes(parts$1.minutes);
12982
+ if (parts$1.seconds !== void 0) date$2.setUTCSeconds(parts$1.seconds);
12983
+ if (parts$1.millis !== void 0) date$2.setUTCMilliseconds(parts$1.millis);
12753
12984
  };
12754
12985
  /** @internal */
12755
- const setParts$1 = /* @__PURE__ */ dual(2, (self$1, parts) => mutate$1(self$1, (date$2) => setPartsDate(date$2, parts)));
12986
+ const setParts$1 = /* @__PURE__ */ dual(2, (self$1, parts$1) => mutate$1(self$1, (date$2) => setPartsDate(date$2, parts$1)));
12756
12987
  /** @internal */
12757
- const setPartsUtc$1 = /* @__PURE__ */ dual(2, (self$1, parts) => mutateUtc$1(self$1, (date$2) => setPartsDate(date$2, parts)));
12988
+ const setPartsUtc$1 = /* @__PURE__ */ dual(2, (self$1, parts$1) => mutateUtc$1(self$1, (date$2) => setPartsDate(date$2, parts$1)));
12758
12989
  const constDayMillis = 1440 * 60 * 1e3;
12759
12990
  const makeZonedFromAdjusted = (adjustedMillis, zone, disambiguation) => {
12760
12991
  if (zone._tag === "Offset") return makeZonedProto(adjustedMillis - zone.offset, zone);
@@ -12838,29 +13069,29 @@ const addMillis = (date$2, amount) => {
12838
13069
  date$2.setTime(date$2.getTime() + amount);
12839
13070
  };
12840
13071
  /** @internal */
12841
- const add$2 = /* @__PURE__ */ dual(2, (self$1, parts) => mutate$1(self$1, (date$2) => {
12842
- if (parts.millis) addMillis(date$2, parts.millis);
12843
- if (parts.seconds) addMillis(date$2, parts.seconds * 1e3);
12844
- if (parts.minutes) addMillis(date$2, parts.minutes * 60 * 1e3);
12845
- if (parts.hours) addMillis(date$2, parts.hours * 60 * 60 * 1e3);
12846
- if (parts.days) date$2.setUTCDate(date$2.getUTCDate() + parts.days);
12847
- if (parts.weeks) date$2.setUTCDate(date$2.getUTCDate() + parts.weeks * 7);
12848
- if (parts.months) {
13072
+ const add$2 = /* @__PURE__ */ dual(2, (self$1, parts$1) => mutate$1(self$1, (date$2) => {
13073
+ if (parts$1.millis) addMillis(date$2, parts$1.millis);
13074
+ if (parts$1.seconds) addMillis(date$2, parts$1.seconds * 1e3);
13075
+ if (parts$1.minutes) addMillis(date$2, parts$1.minutes * 60 * 1e3);
13076
+ if (parts$1.hours) addMillis(date$2, parts$1.hours * 60 * 60 * 1e3);
13077
+ if (parts$1.days) date$2.setUTCDate(date$2.getUTCDate() + parts$1.days);
13078
+ if (parts$1.weeks) date$2.setUTCDate(date$2.getUTCDate() + parts$1.weeks * 7);
13079
+ if (parts$1.months) {
12849
13080
  const day = date$2.getUTCDate();
12850
- date$2.setUTCMonth(date$2.getUTCMonth() + parts.months + 1, 0);
13081
+ date$2.setUTCMonth(date$2.getUTCMonth() + parts$1.months + 1, 0);
12851
13082
  if (day < date$2.getUTCDate()) date$2.setUTCDate(day);
12852
13083
  }
12853
- if (parts.years) {
13084
+ if (parts$1.years) {
12854
13085
  const day = date$2.getUTCDate();
12855
13086
  const month = date$2.getUTCMonth();
12856
- date$2.setUTCFullYear(date$2.getUTCFullYear() + parts.years, month + 1, 0);
13087
+ date$2.setUTCFullYear(date$2.getUTCFullYear() + parts$1.years, month + 1, 0);
12857
13088
  if (day < date$2.getUTCDate()) date$2.setUTCDate(day);
12858
13089
  }
12859
13090
  }));
12860
13091
  /** @internal */
12861
- const subtract$1 = /* @__PURE__ */ dual(2, (self$1, parts) => {
13092
+ const subtract$1 = /* @__PURE__ */ dual(2, (self$1, parts$1) => {
12862
13093
  const newParts = {};
12863
- for (const key in parts) newParts[key] = -1 * parts[key];
13094
+ for (const key in parts$1) newParts[key] = -1 * parts$1[key];
12864
13095
  return add$2(self$1, newParts);
12865
13096
  });
12866
13097
  const startOfDate = (date$2, part, options) => {
@@ -12968,7 +13199,7 @@ const formatUtc$1 = /* @__PURE__ */ dual(isDateTimeArgs, (self$1, options) => ne
12968
13199
  timeZone: "UTC"
12969
13200
  }).format(self$1.epochMillis));
12970
13201
  /** @internal */
12971
- const formatIntl$1 = /* @__PURE__ */ dual(2, (self$1, format$3) => format$3.format(self$1.epochMillis));
13202
+ const formatIntl$1 = /* @__PURE__ */ dual(2, (self$1, format$4) => format$4.format(self$1.epochMillis));
12972
13203
  /** @internal */
12973
13204
  const formatIso$1 = (self$1) => toDateUtc$1(self$1).toISOString();
12974
13205
  /** @internal */
@@ -13289,7 +13520,7 @@ const metadataFn = () => {
13289
13520
  * @since 4.0.0
13290
13521
  * @category constructors
13291
13522
  */
13292
- const fromStepWithMetadata = (step) => fromStep(map$8(step, (f) => {
13523
+ const fromStepWithMetadata = (step) => fromStep(map$9(step, (f) => {
13293
13524
  const meta = metadataFn();
13294
13525
  return (now$2, input) => f(meta(now$2, input));
13295
13526
  }));
@@ -13325,7 +13556,7 @@ const toStep = (schedule) => catchCause$2(schedule.step, (cause) => succeed$5(()
13325
13556
  * @since 4.0.0
13326
13557
  * @category destructors
13327
13558
  */
13328
- const toStepWithMetadata = (schedule) => clockWith$2((clock) => map$8(toStep(schedule), (step) => {
13559
+ const toStepWithMetadata = (schedule) => clockWith$2((clock) => map$9(toStep(schedule), (step) => {
13329
13560
  const metaFn = metadataFn();
13330
13561
  return (input) => suspend$4(() => {
13331
13562
  const now$2 = clock.currentTimeMillisUnsafe();
@@ -13365,7 +13596,7 @@ const toStepWithMetadata = (schedule) => clockWith$2((clock) => map$8(toStep(sch
13365
13596
  * @since 2.0.0
13366
13597
  * @category utilities
13367
13598
  */
13368
- const passthrough$2 = (self$1) => fromStep(map$8(toStep(self$1), (step) => (now$2, input) => matchEffect$1(step(now$2, input), {
13599
+ const passthrough$2 = (self$1) => fromStep(map$9(toStep(self$1), (step) => (now$2, input) => matchEffect$1(step(now$2, input), {
13369
13600
  onSuccess: (result$2) => succeed$5([input, result$2[1]]),
13370
13601
  onFailure: failCause$4,
13371
13602
  onDone: () => done(input)
@@ -13478,7 +13709,7 @@ const spaced = (duration) => {
13478
13709
  const decoded = fromDurationInputUnsafe(duration);
13479
13710
  return fromStepWithMetadata(succeed$5((meta) => succeed$5([meta.attempt - 1, decoded])));
13480
13711
  };
13481
- const while_ = /* @__PURE__ */ dual(2, (self$1, predicate) => fromStep(map$8(toStep(self$1), (step) => {
13712
+ const while_ = /* @__PURE__ */ dual(2, (self$1, predicate) => fromStep(map$9(toStep(self$1), (step) => {
13482
13713
  const meta = metadataFn();
13483
13714
  return (now$2, input) => flatMap$2(step(now$2, input), (result$2) => {
13484
13715
  const [output, duration] = result$2;
@@ -13578,7 +13809,7 @@ const buildFromOptions = (options) => {
13578
13809
  if (options.while) schedule = while_(schedule, ({ input }) => options.while(input));
13579
13810
  if (options.until) schedule = while_(schedule, ({ input }) => {
13580
13811
  const applied = options.until(input);
13581
- return typeof applied === "boolean" ? !applied : map$8(applied, (b) => !b);
13812
+ return typeof applied === "boolean" ? !applied : map$9(applied, (b) => !b);
13582
13813
  });
13583
13814
  if (options.times !== void 0) schedule = while_(schedule, ({ attempt }) => attempt <= options.times);
13584
13815
  return schedule;
@@ -15080,7 +15311,7 @@ const exit = exit$1;
15080
15311
  * @since 2.0.0
15081
15312
  * @category Mapping
15082
15313
  */
15083
- const map$5 = map$8;
15314
+ const map$6 = map$9;
15084
15315
  /**
15085
15316
  * Replaces the value inside an effect with a constant value.
15086
15317
  *
@@ -20229,7 +20460,7 @@ const makeZoned = makeZoned$1;
20229
20460
  * DateTime.make("2024-01-01")
20230
20461
  * ```
20231
20462
  */
20232
- const make$44 = make$45;
20463
+ const make$45 = make$46;
20233
20464
  /**
20234
20465
  * Create a `DateTime.Zoned` from a string.
20235
20466
  *
@@ -20701,7 +20932,7 @@ const isGreaterThanOrEqualTo$1 = isGreaterThanOrEqualTo$2;
20701
20932
  * @category comparisons
20702
20933
  * @since 3.6.0
20703
20934
  */
20704
- const isLessThan$1 = isLessThan$2;
20935
+ const isLessThan$2 = isLessThan$3;
20705
20936
  /**
20706
20937
  * Checks if the first `DateTime` is before or equal to the second `DateTime`.
20707
20938
  *
@@ -21999,7 +22230,7 @@ const isRedacted = (u) => hasProperty(u, TypeId$45);
21999
22230
  * @since 3.3.0
22000
22231
  * @category constructors
22001
22232
  */
22002
- const make$43 = (value, options) => {
22233
+ const make$44 = (value, options) => {
22003
22234
  const redacted = Object.create(Proto$16);
22004
22235
  if (options?.label) redacted.label = options.label;
22005
22236
  redactedRegistry.set(redacted, value);
@@ -22306,7 +22537,7 @@ var OneOf = class extends Base$1 {
22306
22537
  }
22307
22538
  };
22308
22539
  /** @internal */
22309
- function make$42(input, out) {
22540
+ function make$43(input, out) {
22310
22541
  if (isIssue(out)) return out;
22311
22542
  if (out === void 0) return;
22312
22543
  if (typeof out === "boolean") return out ? void 0 : new InvalidValue$1(some(input));
@@ -22324,9 +22555,9 @@ const defaultLeafHook = (issue) => {
22324
22555
  case "InvalidType": return getExpectedMessage(getExpected(issue.ast), formatOption(issue.actual));
22325
22556
  case "InvalidValue": return `Invalid data ${formatOption(issue.actual)}`;
22326
22557
  case "MissingKey": return "Missing key";
22327
- case "UnexpectedKey": return `Unexpected key with value ${format$2(issue.actual)}`;
22558
+ case "UnexpectedKey": return `Unexpected key with value ${format$3(issue.actual)}`;
22328
22559
  case "Forbidden": return "Forbidden operation";
22329
- case "OneOf": return `Expected exactly one member to match the input ${format$2(issue.actual)}`;
22560
+ case "OneOf": return `Expected exactly one member to match the input ${format$3(issue.actual)}`;
22330
22561
  }
22331
22562
  };
22332
22563
  /**
@@ -22350,7 +22581,7 @@ function toDefaultIssues(issue, path$2, leafHook, checkHook) {
22350
22581
  switch (issue.issue._tag) {
22351
22582
  case "InvalidValue": return [{
22352
22583
  path: path$2,
22353
- message: getExpectedMessage(formatCheck(issue.filter), format$2(issue.actual))
22584
+ message: getExpectedMessage(formatCheck(issue.filter), format$3(issue.actual))
22354
22585
  }];
22355
22586
  default: return toDefaultIssues(issue.issue, path$2, leafHook, checkHook);
22356
22587
  }
@@ -22367,7 +22598,7 @@ function toDefaultIssues(issue, path$2, leafHook, checkHook) {
22367
22598
  }];
22368
22599
  return [{
22369
22600
  path: path$2,
22370
- message: getExpectedMessage(getExpected(issue.ast), format$2(issue.actual))
22601
+ message: getExpectedMessage(getExpected(issue.ast), format$3(issue.actual))
22371
22602
  }];
22372
22603
  }
22373
22604
  return issue.issues.flatMap((issue$1) => toDefaultIssues(issue$1, path$2, leafHook, checkHook));
@@ -22426,7 +22657,7 @@ function getMessageAnnotation(annotations$1, type = "message") {
22426
22657
  }
22427
22658
  function formatOption(actual) {
22428
22659
  if (isNone(actual)) return "no value provided";
22429
- return format$2(actual.value);
22660
+ return format$3(actual.value);
22430
22661
  }
22431
22662
 
22432
22663
  //#endregion
@@ -22445,7 +22676,7 @@ var Getter = class Getter extends Class$3 {
22445
22676
  this.run = run$7;
22446
22677
  }
22447
22678
  map(f) {
22448
- return new Getter((oe, options) => this.run(oe, options).pipe(mapEager(map$11(f))));
22679
+ return new Getter((oe, options) => this.run(oe, options).pipe(mapEager(map$12(f))));
22449
22680
  }
22450
22681
  compose(other) {
22451
22682
  if (isPassthrough(this)) return other;
@@ -22492,7 +22723,7 @@ function onSome(f) {
22492
22723
  * @since 4.0.0
22493
22724
  */
22494
22725
  function transform$2(f) {
22495
- return transformOptional(map$11(f));
22726
+ return transformOptional(map$12(f));
22496
22727
  }
22497
22728
  /**
22498
22729
  * Returns a getter that maps a defined value to a value or a failure.
@@ -22575,7 +22806,7 @@ function decodeBase64() {
22575
22806
  */
22576
22807
  function dateTimeUtcFromInput() {
22577
22808
  return transformOrFail$1((input) => {
22578
- const dt = make$44(input);
22809
+ const dt = make$45(input);
22579
22810
  return dt ? succeed$1(toUtc(dt)) : fail$4(new InvalidValue$1(some(input), { message: "Invalid DateTime input" }));
22580
22811
  });
22581
22812
  }
@@ -22640,7 +22871,7 @@ function isTransformation(u) {
22640
22871
  /**
22641
22872
  * @since 4.0.0
22642
22873
  */
22643
- const make$41 = (options) => {
22874
+ const make$42 = (options) => {
22644
22875
  if (isTransformation(options)) return options;
22645
22876
  return new Transformation(options.decode, options.encode);
22646
22877
  };
@@ -22989,7 +23220,7 @@ var Literal$1 = class extends Base {
22989
23220
  literal;
22990
23221
  constructor(literal, annotations$1, checks, encoding, context) {
22991
23222
  super(annotations$1, checks, encoding, context);
22992
- if (typeof literal === "number" && !globalThis.Number.isFinite(literal)) throw new Error(`A numeric literal must be finite, got ${format$2(literal)}`);
23223
+ if (typeof literal === "number" && !globalThis.Number.isFinite(literal)) throw new Error(`A numeric literal must be finite, got ${format$3(literal)}`);
22993
23224
  this.literal = literal;
22994
23225
  }
22995
23226
  /** @internal */
@@ -23807,7 +24038,7 @@ var FilterGroup = class FilterGroup extends Class$3 {
23807
24038
  };
23808
24039
  /** @internal */
23809
24040
  function makeFilter$1(filter$6, annotations$1, aborted = false) {
23810
- return new Filter((input, ast, options) => make$42(input, filter$6(input, ast, options)), annotations$1, aborted);
24041
+ return new Filter((input, ast, options) => make$43(input, filter$6(input, ast, options)), annotations$1, aborted);
23811
24042
  }
23812
24043
  /** @internal */
23813
24044
  function isPattern$1(regExp, annotations$1) {
@@ -24554,7 +24785,7 @@ const Empty$2 = /* @__PURE__ */ Symbol.for("effect/MutableList/Empty");
24554
24785
  * @since 4.0.0
24555
24786
  * @category constructors
24556
24787
  */
24557
- const make$40 = () => ({
24788
+ const make$41 = () => ({
24558
24789
  head: void 0,
24559
24790
  tail: void 0,
24560
24791
  length: 0
@@ -24893,7 +25124,7 @@ const MutableRefProto = {
24893
25124
  * @since 2.0.0
24894
25125
  * @category constructors
24895
25126
  */
24896
- const make$39 = (value) => {
25127
+ const make$40 = (value) => {
24897
25128
  const ref = Object.create(MutableRefProto);
24898
25129
  ref.current = value;
24899
25130
  return ref;
@@ -24995,12 +25226,12 @@ const QueueProto = {
24995
25226
  * })
24996
25227
  * ```
24997
25228
  */
24998
- const make$38 = (options) => withFiber$1((fiber$2) => {
25229
+ const make$39 = (options) => withFiber$1((fiber$2) => {
24999
25230
  const self$1 = Object.create(QueueProto);
25000
25231
  self$1.scheduler = fiber$2.currentScheduler;
25001
25232
  self$1.capacity = options?.capacity ?? Number.POSITIVE_INFINITY;
25002
25233
  self$1.strategy = options?.strategy ?? "suspend";
25003
- self$1.messages = make$40();
25234
+ self$1.messages = make$41();
25004
25235
  self$1.scheduleRunning = false;
25005
25236
  self$1.state = {
25006
25237
  _tag: "Open",
@@ -25038,7 +25269,7 @@ const make$38 = (options) => withFiber$1((fiber$2) => {
25038
25269
  * @since 2.0.0
25039
25270
  * @category constructors
25040
25271
  */
25041
- const bounded = (capacity) => make$38({ capacity });
25272
+ const bounded = (capacity) => make$39({ capacity });
25042
25273
  /**
25043
25274
  * Add a message to the queue. Returns `false` if the queue is done.
25044
25275
  *
@@ -25873,7 +26104,7 @@ const toTransform = (channel) => channel.transform;
25873
26104
  * @since 2.0.0
25874
26105
  */
25875
26106
  const DefaultChunkSize$1 = 4096;
25876
- const asyncQueue = (scope$2, f, options) => make$38({
26107
+ const asyncQueue = (scope$2, f, options) => make$39({
25877
26108
  capacity: options?.bufferSize,
25878
26109
  strategy: options?.strategy
25879
26110
  }).pipe(tap((queue) => addFinalizer$1(scope$2, shutdown(queue))), tap((queue) => {
@@ -25897,7 +26128,7 @@ const asyncQueue = (scope$2, f, options) => make$38({
25897
26128
  * @category constructors
25898
26129
  * @since 4.0.0
25899
26130
  */
25900
- const callbackArray = (f, options) => fromTransform$1((_, scope$2) => map$5(asyncQueue(scope$2, f, options), takeAll));
26131
+ const callbackArray = (f, options) => fromTransform$1((_, scope$2) => map$6(asyncQueue(scope$2, f, options), takeAll));
25901
26132
  /**
25902
26133
  * Creates a `Channel` that lazily evaluates to another channel.
25903
26134
  *
@@ -26077,9 +26308,9 @@ const die = (defect) => failCause(die$2(defect));
26077
26308
  * @since 2.0.0
26078
26309
  * @category Sequencing
26079
26310
  */
26080
- const map$4 = /* @__PURE__ */ dual(2, (self$1, f) => transformPull$1(self$1, (pull) => sync(() => {
26311
+ const map$5 = /* @__PURE__ */ dual(2, (self$1, f) => transformPull$1(self$1, (pull) => sync(() => {
26081
26312
  let i = 0;
26082
- return map$5(pull, (o) => f(o, i++));
26313
+ return map$6(pull, (o) => f(o, i++));
26083
26314
  })));
26084
26315
  /**
26085
26316
  * Maps the done value of this channel using the specified function.
@@ -26146,7 +26377,7 @@ const concurrencyIsSequential = (concurrency$1) => concurrency$1 === void 0 || c
26146
26377
  const mapEffect$2 = /* @__PURE__ */ dual((args$1) => isChannel(args$1[0]), (self$1, f, options) => concurrencyIsSequential(options?.concurrency) ? mapEffectSequential(self$1, f) : mapEffectConcurrent(self$1, f, options));
26147
26378
  const mapEffectSequential = (self$1, f) => fromTransform$1((upstream, scope$2) => {
26148
26379
  let i = 0;
26149
- return map$5(toTransform(self$1)(upstream, scope$2), flatMap((o) => f(o, i++)));
26380
+ return map$6(toTransform(self$1)(upstream, scope$2), flatMap((o) => f(o, i++)));
26150
26381
  });
26151
26382
  const mapEffectConcurrent = (self$1, f, options) => fromTransformBracket(fnUntraced(function* (upstream, scope$2, forkedScope) {
26152
26383
  let i = 0;
@@ -26240,7 +26471,7 @@ const flattenArray = (self$1) => transformPull$1(self$1, (pull) => {
26240
26471
  * @since 4.0.0
26241
26472
  * @category Filtering
26242
26473
  */
26243
- const filterMapEffect$1 = /* @__PURE__ */ dual(2, (self$1, filter$6) => fromTransform$1((upstream, scope$2) => map$5(toTransform(self$1)(upstream, scope$2), (pull) => flatMap(pull, function loop(elem) {
26474
+ const filterMapEffect$1 = /* @__PURE__ */ dual(2, (self$1, filter$6) => fromTransform$1((upstream, scope$2) => map$6(toTransform(self$1)(upstream, scope$2), (pull) => flatMap(pull, function loop(elem) {
26244
26475
  return flatMap(filter$6(elem), (result$2) => isFail(result$2) ? flatMap(pull, loop) : succeed$1(result$2));
26245
26476
  }))));
26246
26477
  /**
@@ -26286,7 +26517,7 @@ const filterArray = /* @__PURE__ */ dual(2, (self$1, predicate) => transformPull
26286
26517
  * @since 4.0.0
26287
26518
  * @category Filtering
26288
26519
  */
26289
- const filterMapArrayEffect = /* @__PURE__ */ dual(2, (self$1, filter$6) => filterMapEffect$1(self$1, (arr) => map$5(filterMap(arr, filter$6), (passes) => isReadonlyArrayNonEmpty(passes) ? passes : failVoid)));
26520
+ const filterMapArrayEffect = /* @__PURE__ */ dual(2, (self$1, filter$6) => filterMapEffect$1(self$1, (arr) => map$6(filterMap(arr, filter$6), (passes) => isReadonlyArrayNonEmpty(passes) ? passes : failVoid)));
26290
26521
  /**
26291
26522
  * Catches any cause of failure from the channel and allows recovery by
26292
26523
  * creating a new channel based on the caught cause.
@@ -26324,7 +26555,7 @@ const filterMapArrayEffect = /* @__PURE__ */ dual(2, (self$1, filter$6) => filte
26324
26555
  */
26325
26556
  const catchCause = /* @__PURE__ */ dual(2, (self$1, f) => fromTransform$1((upstream, scope$2) => {
26326
26557
  let forkedScope = forkUnsafe(scope$2);
26327
- return map$5(toTransform(self$1)(upstream, forkedScope), (pull) => {
26558
+ return map$6(toTransform(self$1)(upstream, forkedScope), (pull) => {
26328
26559
  let currentPull = pull.pipe(catchCause$1((cause) => {
26329
26560
  if (isDoneCause(cause)) return failCause$2(cause);
26330
26561
  const toClose = forkedScope;
@@ -26558,7 +26789,7 @@ const unwrap$2 = (channel) => fromTransform$1((upstream, scope$2) => {
26558
26789
  */
26559
26790
  const bufferArray = /* @__PURE__ */ dual(2, (self$1, options) => fromTransform$1(fnUntraced(function* (upstream, scope$2) {
26560
26791
  const pull = yield* toTransform(self$1)(upstream, scope$2);
26561
- const queue = yield* make$38({
26792
+ const queue = yield* make$39({
26562
26793
  capacity: options.capacity === "unbounded" ? void 0 : options.capacity,
26563
26794
  strategy: options.capacity === "unbounded" ? void 0 : options.strategy
26564
26795
  });
@@ -26913,7 +27144,7 @@ const forEachArray = (f) => fromTransform((upstream) => upstream.pipe(flatMap(f)
26913
27144
  * @since 2.0.0
26914
27145
  * @category constructors
26915
27146
  */
26916
- const unwrap$1 = (effect$1) => fromChannel$1(unwrap$2(map$5(effect$1, toChannel$1)));
27147
+ const unwrap$1 = (effect$1) => fromChannel$1(unwrap$2(map$6(effect$1, toChannel$1)));
26917
27148
 
26918
27149
  //#endregion
26919
27150
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/MutableHashMap.js
@@ -26924,7 +27155,7 @@ const MutableHashMapProto = {
26924
27155
  return this.backing[Symbol.iterator]();
26925
27156
  },
26926
27157
  toString() {
26927
- return `MutableHashMap(${format$2(Array.from(this))})`;
27158
+ return `MutableHashMap(${format$3(Array.from(this))})`;
26928
27159
  },
26929
27160
  toJSON() {
26930
27161
  return {
@@ -26984,7 +27215,7 @@ const empty$7 = () => {
26984
27215
  * @since 2.0.0
26985
27216
  * @category constructors
26986
27217
  */
26987
- const make$37 = (...entries) => fromIterable$1(entries);
27218
+ const make$38 = (...entries) => fromIterable$1(entries);
26988
27219
  /**
26989
27220
  * Creates a MutableHashMap from an iterable collection of key-value pairs.
26990
27221
  *
@@ -27310,7 +27541,7 @@ const makeUnsafe$3 = (options) => ({
27310
27541
  * })
27311
27542
  * ```
27312
27543
  */
27313
- const make$36 = (options) => withFiber((fiber$2) => {
27544
+ const make$37 = (options) => withFiber((fiber$2) => {
27314
27545
  const services$2 = fiber$2.services;
27315
27546
  const scope$2 = get$7(services$2, Scope);
27316
27547
  const self$1 = makeUnsafe$3({
@@ -27322,10 +27553,10 @@ const make$36 = (options) => withFiber((fiber$2) => {
27322
27553
  });
27323
27554
  return as(addFinalizerExit(scope$2, () => {
27324
27555
  if (self$1.state._tag === "Closed") return void_$1;
27325
- const map$13 = self$1.state.map;
27556
+ const map$14 = self$1.state.map;
27326
27557
  self$1.state = { _tag: "Closed" };
27327
- return forEach$1(map$13, ([, entry]) => exit(close(entry.scope, void_$2))).pipe(tap(() => {
27328
- clear$1(map$13);
27558
+ return forEach$1(map$14, ([, entry]) => exit(close(entry.scope, void_$2))).pipe(tap(() => {
27559
+ clear$1(map$14);
27329
27560
  }));
27330
27561
  }), self$1);
27331
27562
  });
@@ -27478,7 +27709,7 @@ var RcRefImpl = class {
27478
27709
  }
27479
27710
  };
27480
27711
  /** @internal */
27481
- const make$35 = (options) => withFiber((fiber$2) => {
27712
+ const make$36 = (options) => withFiber((fiber$2) => {
27482
27713
  const services$2 = fiber$2.services;
27483
27714
  const scope$2 = get$7(services$2, Scope);
27484
27715
  const ref = new RcRefImpl(options.acquire, services$2, scope$2, options.idleTimeToLive ? fromDurationInputUnsafe(options.idleTimeToLive) : void 0);
@@ -27496,7 +27727,7 @@ const getState = (self$1) => uninterruptibleMask((restore) => {
27496
27727
  return self$1.state.fiber ? as(interrupt(self$1.state.fiber), self$1.state) : succeed$1(self$1.state);
27497
27728
  case "Empty": {
27498
27729
  const scope$2 = makeUnsafe$6();
27499
- return self$1.semaphore.withPermits(1)(restore(provideServices(self$1.acquire, add$3(self$1.services, Scope, scope$2))).pipe(map$5((value) => {
27730
+ return self$1.semaphore.withPermits(1)(restore(provideServices(self$1.acquire, add$3(self$1.services, Scope, scope$2))).pipe(map$6((value) => {
27500
27731
  const state = {
27501
27732
  _tag: "Acquired",
27502
27733
  value,
@@ -27586,7 +27817,7 @@ const invalidate$1 = (self_) => {
27586
27817
  * })
27587
27818
  * ```
27588
27819
  */
27589
- const make$34 = make$35;
27820
+ const make$35 = make$36;
27590
27821
  /**
27591
27822
  * Get the value from an RcRef.
27592
27823
  *
@@ -27950,7 +28181,7 @@ const never = /* @__PURE__ */ fromChannel(never$2);
27950
28181
  * @since 2.0.0
27951
28182
  * @category constructors
27952
28183
  */
27953
- const unwrap = (effect$1) => fromChannel(unwrap$2(map$5(effect$1, toChannel)));
28184
+ const unwrap = (effect$1) => fromChannel(unwrap$2(map$6(effect$1, toChannel)));
27954
28185
  /**
27955
28186
  * Transforms the elements of this stream using the supplied function.
27956
28187
  *
@@ -27967,9 +28198,9 @@ const unwrap = (effect$1) => fromChannel(unwrap$2(map$5(effect$1, toChannel)));
27967
28198
  * @since 2.0.0
27968
28199
  * @category mapping
27969
28200
  */
27970
- const map$3 = /* @__PURE__ */ dual(2, (self$1, f) => suspend$1(() => {
28201
+ const map$4 = /* @__PURE__ */ dual(2, (self$1, f) => suspend$1(() => {
27971
28202
  let i = 0;
27972
- return fromChannel(map$4(self$1.channel, map$9((o) => f(o, i++))));
28203
+ return fromChannel(map$5(self$1.channel, map$10((o) => f(o, i++))));
27973
28204
  }));
27974
28205
  /**
27975
28206
  * Maps over elements of the stream with the specified effectful function.
@@ -27998,7 +28229,7 @@ const map$3 = /* @__PURE__ */ dual(2, (self$1, f) => suspend$1(() => {
27998
28229
  * @since 2.0.0
27999
28230
  * @category mapping
28000
28231
  */
28001
- const mapEffect$1 = /* @__PURE__ */ dual((args$1) => isStream(args$1[0]), (self$1, f, options) => self$1.channel.pipe(flattenArray, mapEffect$2(f, options), map$4(of), fromChannel));
28232
+ const mapEffect$1 = /* @__PURE__ */ dual((args$1) => isStream(args$1[0]), (self$1, f, options) => self$1.channel.pipe(flattenArray, mapEffect$2(f, options), map$5(of), fromChannel));
28002
28233
  /**
28003
28234
  * @since 2.0.0
28004
28235
  * @category merging
@@ -28070,7 +28301,7 @@ const transduce = /* @__PURE__ */ dual(2, (self$1, sink) => transformPull(self$1
28070
28301
  done$3 = fail$6(error$1);
28071
28302
  return done();
28072
28303
  }));
28073
- const pull = map$5(suspend$3(() => sink.transform(upstreamWithLeftover, scope$2)), ([value, leftover_]) => {
28304
+ const pull = map$6(suspend$3(() => sink.transform(upstreamWithLeftover, scope$2)), ([value, leftover_]) => {
28074
28305
  leftover = leftover_;
28075
28306
  return of(value);
28076
28307
  });
@@ -28168,7 +28399,7 @@ const pipeThroughChannel = /* @__PURE__ */ dual(2, (self$1, channel) => fromChan
28168
28399
  */
28169
28400
  const decodeText = /* @__PURE__ */ dual((args$1) => isStream(args$1[0]), (self$1, encoding) => suspend$1(() => {
28170
28401
  const decoder = new TextDecoder(encoding);
28171
- return map$3(self$1, (chunk) => decoder.decode(chunk));
28402
+ return map$4(self$1, (chunk) => decoder.decode(chunk));
28172
28403
  }));
28173
28404
  /**
28174
28405
  * @since 2.0.0
@@ -28216,7 +28447,7 @@ const onExit = /* @__PURE__ */ dual(2, (self$1, finalizer) => fromChannel(onExit
28216
28447
  * @since 2.0.0
28217
28448
  * @category destructors
28218
28449
  */
28219
- const run$6 = /* @__PURE__ */ dual(2, (self$1, sink) => scopedWith((scope$2) => toPullScoped(self$1.channel, scope$2).pipe(flatMap((upstream) => sink.transform(upstream, scope$2)), map$5(([a]) => a))));
28450
+ const run$6 = /* @__PURE__ */ dual(2, (self$1, sink) => scopedWith((scope$2) => toPullScoped(self$1.channel, scope$2).pipe(flatMap((upstream) => sink.transform(upstream, scope$2)), map$6(([a]) => a))));
28220
28451
  /**
28221
28452
  * Runs the stream and collects all of its elements to a chunk.
28222
28453
  *
@@ -28385,7 +28616,7 @@ const toReadableStreamWith = /* @__PURE__ */ dual((args$1) => isStream(args$1[0]
28385
28616
  * @since 2.0.0
28386
28617
  * @category destructors
28387
28618
  */
28388
- const toReadableStreamEffect = /* @__PURE__ */ dual((args$1) => isStream(args$1[0]), (self$1, options) => map$5(services(), (context) => toReadableStreamWith(self$1, context, options)));
28619
+ const toReadableStreamEffect = /* @__PURE__ */ dual((args$1) => isStream(args$1[0]), (self$1, options) => map$6(services(), (context) => toReadableStreamWith(self$1, context, options)));
28389
28620
 
28390
28621
  //#endregion
28391
28622
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/FileSystem.js
@@ -28513,7 +28744,7 @@ const FileSystem = /* @__PURE__ */ Service("effect/platform/FileSystem");
28513
28744
  * @since 4.0.0
28514
28745
  * @category constructor
28515
28746
  */
28516
- const make$33 = (impl) => FileSystem.of({
28747
+ const make$34 = (impl) => FileSystem.of({
28517
28748
  ...impl,
28518
28749
  [TypeId$31]: TypeId$31,
28519
28750
  exists: (path$2) => pipe(impl.access(path$2), as(true), catchTag("PlatformError", (e) => e.reason._tag === "SystemError" && e.reason.kind === "NotFound" ? succeed$1(false) : fail$4(e))),
@@ -28545,7 +28776,7 @@ const make$33 = (impl) => FileSystem.of({
28545
28776
  sink: (path$2, options) => pipe(impl.open(path$2, {
28546
28777
  flag: "w",
28547
28778
  ...options
28548
- }), map$5((file) => forEach((_) => file.writeAll(_))), unwrap$1),
28779
+ }), map$6((file) => forEach((_) => file.writeAll(_))), unwrap$1),
28549
28780
  writeFileString: (path$2, data, options) => flatMap(try_({
28550
28781
  try: () => new TextEncoder().encode(data),
28551
28782
  catch: (cause) => badArgument({
@@ -28968,7 +29199,7 @@ const posixImpl = /* @__PURE__ */ Path$1.of({
28968
29199
  if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) return "";
28969
29200
  return path$2.slice(startDot, end);
28970
29201
  },
28971
- format: function format$3(pathObject) {
29202
+ format: function format$4(pathObject) {
28972
29203
  if (pathObject === null || typeof pathObject !== "object") throw new TypeError("The \"pathObject\" argument must be of type Object. Received type " + typeof pathObject);
28973
29204
  return _format("/", pathObject);
28974
29205
  },
@@ -29084,7 +29315,7 @@ const Proto$15 = {
29084
29315
  * @category Constructors
29085
29316
  * @since 4.0.0
29086
29317
  */
29087
- function make$32(get$8, mapInput$1, prefix$2) {
29318
+ function make$33(get$8, mapInput$1, prefix$2) {
29088
29319
  const self$1 = Object.create(Proto$15);
29089
29320
  self$1.get = get$8;
29090
29321
  self$1.mapInput = mapInput$1;
@@ -29111,7 +29342,7 @@ function fromEnv(options) {
29111
29342
  ...import.meta?.env
29112
29343
  };
29113
29344
  const trie = buildEnvTrie(env);
29114
- return make$32((path$2) => succeed$1(nodeAtEnv(trie, env, path$2)));
29345
+ return make$33((path$2) => succeed$1(nodeAtEnv(trie, env, path$2)));
29115
29346
  }
29116
29347
  function buildEnvTrie(env) {
29117
29348
  const root = {};
@@ -29314,6 +29545,38 @@ const Order = LogLevelOrder;
29314
29545
  * @category ordering
29315
29546
  */
29316
29547
  const isGreaterThan$1 = isLogLevelGreaterThan;
29548
+ /**
29549
+ * Determines if the first log level is less severe than the second.
29550
+ *
29551
+ * Returns `true` if `self` represents a less severe level than `that`.
29552
+ * This is useful for filtering out logs that are too verbose.
29553
+ *
29554
+ * @example
29555
+ * ```ts
29556
+ * import { LogLevel } from "effect"
29557
+ *
29558
+ * // Check if Debug is less severe than Info
29559
+ * console.log(LogLevel.isLessThan("Debug", "Info")) // true
29560
+ * console.log(LogLevel.isLessThan("Error", "Info")) // false
29561
+ *
29562
+ * // Filter out verbose logs
29563
+ * const isFatalVerbose = LogLevel.isLessThan("Fatal", "Info")
29564
+ * const isErrorVerbose = LogLevel.isLessThan("Error", "Info")
29565
+ * const isTraceVerbose = LogLevel.isLessThan("Trace", "Info")
29566
+ * console.log(isFatalVerbose) // false (Fatal is not verbose)
29567
+ * console.log(isErrorVerbose) // false (Error is not verbose)
29568
+ * console.log(isTraceVerbose) // true (Trace is verbose)
29569
+ *
29570
+ * // Curried usage
29571
+ * const isLessSevereThanError = LogLevel.isLessThan("Error")
29572
+ * console.log(isLessSevereThanError("Info")) // true
29573
+ * console.log(isLessSevereThanError("Fatal")) // false
29574
+ * ```
29575
+ *
29576
+ * @since 2.0.0
29577
+ * @category ordering
29578
+ */
29579
+ const isLessThan$1 = /* @__PURE__ */ isLessThan$4(Order);
29317
29580
 
29318
29581
  //#endregion
29319
29582
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/Struct.js
@@ -29742,11 +30005,11 @@ const SchemaProto = {
29742
30005
  }
29743
30006
  };
29744
30007
  /** @internal */
29745
- function make$31(ast, options) {
30008
+ function make$32(ast, options) {
29746
30009
  const self$1 = Object.create(SchemaProto);
29747
30010
  if (options) Object.assign(self$1, options);
29748
30011
  self$1.ast = ast;
29749
- self$1.rebuild = (ast$1) => make$31(ast$1, options);
30012
+ self$1.rebuild = (ast$1) => make$32(ast$1, options);
29750
30013
  self$1.makeUnsafe = makeUnsafe$2(self$1);
29751
30014
  return self$1;
29752
30015
  }
@@ -29766,7 +30029,7 @@ function toCodecJsonBase(ast) {
29766
30029
  case "Declaration": {
29767
30030
  const getLink = ast.annotations?.toCodecJson ?? ast.annotations?.toCodec;
29768
30031
  if (isFunction(getLink)) {
29769
- const link$2 = getLink(isDeclaration(ast) ? ast.typeParameters.map((tp) => make$31(toEncoded(tp))) : []);
30032
+ const link$2 = getLink(isDeclaration(ast) ? ast.typeParameters.map((tp) => make$32(toEncoded(tp))) : []);
29770
30033
  const to = toCodecJson$1(link$2.to);
29771
30034
  return replaceEncoding(ast, to === link$2.to ? [link$2] : [new Link(to, link$2.transformation)]);
29772
30035
  }
@@ -29837,10 +30100,10 @@ function fromASTs(asts) {
29837
30100
  const referenceMap = /* @__PURE__ */ new Map();
29838
30101
  const uniqueReferences = /* @__PURE__ */ new Set();
29839
30102
  const usedReferences = /* @__PURE__ */ new Set();
29840
- const schemas = map$9(asts, (ast) => recur$2(ast));
30103
+ const schemas = map$10(asts, (ast) => recur$2(ast));
29841
30104
  return {
29842
- representations: map$9(schemas, compact),
29843
- references: map$10(filter$4(references, (_, k) => !isCompactable(k)), compact)
30105
+ representations: map$10(schemas, compact),
30106
+ references: map$11(filter$4(references, (_, k) => !isCompactable(k)), compact)
29844
30107
  };
29845
30108
  function isCompactable($ref) {
29846
30109
  return !usedReferences.has($ref);
@@ -29906,7 +30169,7 @@ function fromASTs(asts) {
29906
30169
  };
29907
30170
  case "FilterGroup": return {
29908
30171
  ...check,
29909
- checks: map$9(check.checks, compactCheck)
30172
+ checks: map$10(check.checks, compactCheck)
29910
30173
  };
29911
30174
  }
29912
30175
  }
@@ -29944,7 +30207,7 @@ function fromASTs(asts) {
29944
30207
  function getEncodedSchema(last$1) {
29945
30208
  const getLink = last$1.annotations?.toCodecJson ?? last$1.annotations?.toCodec;
29946
30209
  if (isFunction(getLink)) {
29947
- const link$2 = getLink(last$1.typeParameters.map((tp) => make$31(toEncoded(tp))));
30210
+ const link$2 = getLink(last$1.typeParameters.map((tp) => make$32(toEncoded(tp))));
29948
30211
  return replaceEncoding(last$1, [link$2]);
29949
30212
  }
29950
30213
  return null_;
@@ -30127,10 +30390,10 @@ function toJsonSchemaDocument$1(document, options) {
30127
30390
  function toJsonSchemaMultiDocument(multiDocument, options) {
30128
30391
  const generateDescriptions = options?.generateDescriptions ?? false;
30129
30392
  const additionalProperties = options?.additionalProperties ?? false;
30130
- const definitions = map$10(multiDocument.references, (d) => recur$2(d));
30393
+ const definitions = map$11(multiDocument.references, (d) => recur$2(d));
30131
30394
  return {
30132
30395
  dialect: "draft-2020-12",
30133
- schemas: map$9(multiDocument.representations, (s) => recur$2(s)),
30396
+ schemas: map$10(multiDocument.representations, (s) => recur$2(s)),
30134
30397
  definitions
30135
30398
  };
30136
30399
  function recur$2(s) {
@@ -30254,7 +30517,7 @@ function toJsonSchemaMultiDocument(multiDocument, options) {
30254
30517
  const required = [];
30255
30518
  for (const ps of schema$1.propertySignatures) {
30256
30519
  const name = ps.name;
30257
- if (typeof name !== "string") throw new globalThis.Error(`Unsupported property signature name: ${format$2(name)}`);
30520
+ if (typeof name !== "string") throw new globalThis.Error(`Unsupported property signature name: ${format$3(name)}`);
30258
30521
  const v = recur$2(ps.type);
30259
30522
  const a = collectJsonSchemaAnnotations(ps.annotations);
30260
30523
  properties[name] = a ? appendJsonSchema(v, a) : v;
@@ -30446,7 +30709,7 @@ const TypeId$28 = TypeId$29;
30446
30709
  */
30447
30710
  function declareConstructor() {
30448
30711
  return (typeParameters, run$7, annotations$1) => {
30449
- return make$30(new Declaration(typeParameters.map(getAST), (typeParameters$1) => run$7(typeParameters$1.map((ast) => make$30(ast))), annotations$1));
30712
+ return make$31(new Declaration(typeParameters.map(getAST), (typeParameters$1) => run$7(typeParameters$1.map((ast) => make$31(ast))), annotations$1));
30450
30713
  };
30451
30714
  }
30452
30715
  /**
@@ -30676,7 +30939,7 @@ const encodeSync = encodeSync$1;
30676
30939
  * @category Constructors
30677
30940
  * @since 4.0.0
30678
30941
  */
30679
- const make$30 = make$31;
30942
+ const make$31 = make$32;
30680
30943
  /**
30681
30944
  * Tests if a value is a `Schema`.
30682
30945
  *
@@ -30707,7 +30970,7 @@ function isSchema(u) {
30707
30970
  *
30708
30971
  * @since 4.0.0
30709
30972
  */
30710
- const optionalKey = /* @__PURE__ */ lambda((schema$1) => make$30(optionalKey$1(schema$1.ast), { schema: schema$1 }));
30973
+ const optionalKey = /* @__PURE__ */ lambda((schema$1) => make$31(optionalKey$1(schema$1.ast), { schema: schema$1 }));
30711
30974
  /**
30712
30975
  * Creates an optional schema field that allows both the specified type and
30713
30976
  * `undefined`.
@@ -30742,7 +31005,7 @@ const optional$2 = /* @__PURE__ */ lambda((self$1) => optionalKey(UndefinedOr(se
30742
31005
  * @since 4.0.0
30743
31006
  */
30744
31007
  function Literal(literal) {
30745
- const out = make$30(new Literal$1(literal), {
31008
+ const out = make$31(new Literal$1(literal), {
30746
31009
  literal,
30747
31010
  transform(to) {
30748
31011
  return out.pipe(decodeTo(Literal(to), {
@@ -30756,29 +31019,29 @@ function Literal(literal) {
30756
31019
  /**
30757
31020
  * @since 4.0.0
30758
31021
  */
30759
- const Never = /* @__PURE__ */ make$30(never$3);
31022
+ const Never = /* @__PURE__ */ make$31(never$3);
30760
31023
  /**
30761
31024
  * @since 4.0.0
30762
31025
  */
30763
- const Any = /* @__PURE__ */ make$30(any);
31026
+ const Any = /* @__PURE__ */ make$31(any);
30764
31027
  /**
30765
31028
  * @since 4.0.0
30766
31029
  */
30767
- const Unknown = /* @__PURE__ */ make$30(unknown);
31030
+ const Unknown = /* @__PURE__ */ make$31(unknown);
30768
31031
  /**
30769
31032
  * @since 4.0.0
30770
31033
  */
30771
- const Null = /* @__PURE__ */ make$30(null_);
31034
+ const Null = /* @__PURE__ */ make$31(null_);
30772
31035
  /**
30773
31036
  * @since 4.0.0
30774
31037
  */
30775
- const Undefined = /* @__PURE__ */ make$30(undefined_);
31038
+ const Undefined = /* @__PURE__ */ make$31(undefined_);
30776
31039
  /**
30777
31040
  * A schema for all strings.
30778
31041
  *
30779
31042
  * @since 4.0.0
30780
31043
  */
30781
- const String$1 = /* @__PURE__ */ make$30(string$5);
31044
+ const String$1 = /* @__PURE__ */ make$31(string$5);
30782
31045
  /**
30783
31046
  * A schema for all numbers, including `NaN`, `Infinity`, and `-Infinity`.
30784
31047
  *
@@ -30789,40 +31052,40 @@ const String$1 = /* @__PURE__ */ make$30(string$5);
30789
31052
  *
30790
31053
  * @since 4.0.0
30791
31054
  */
30792
- const Number$1 = /* @__PURE__ */ make$30(number);
31055
+ const Number$1 = /* @__PURE__ */ make$31(number);
30793
31056
  /**
30794
31057
  * A schema for all booleans.
30795
31058
  *
30796
31059
  * @category Boolean
30797
31060
  * @since 4.0.0
30798
31061
  */
30799
- const Boolean$2 = /* @__PURE__ */ make$30(boolean$3);
31062
+ const Boolean$2 = /* @__PURE__ */ make$31(boolean$3);
30800
31063
  /**
30801
31064
  * A schema for all symbols.
30802
31065
  *
30803
31066
  * @since 4.0.0
30804
31067
  */
30805
- const Symbol$1 = /* @__PURE__ */ make$30(symbol);
31068
+ const Symbol$1 = /* @__PURE__ */ make$31(symbol);
30806
31069
  /**
30807
31070
  * A schema for all bigints.
30808
31071
  *
30809
31072
  * @since 4.0.0
30810
31073
  */
30811
- const BigInt$1 = /* @__PURE__ */ make$30(bigInt);
31074
+ const BigInt$1 = /* @__PURE__ */ make$31(bigInt);
30812
31075
  /**
30813
31076
  * A schema for the `void` type.
30814
31077
  *
30815
31078
  * @since 4.0.0
30816
31079
  */
30817
- const Void = /* @__PURE__ */ make$30(void_);
31080
+ const Void = /* @__PURE__ */ make$31(void_);
30818
31081
  /**
30819
31082
  * A schema for the `object` type.
30820
31083
  *
30821
31084
  * @since 4.0.0
30822
31085
  */
30823
- const ObjectKeyword = /* @__PURE__ */ make$30(objectKeyword);
31086
+ const ObjectKeyword = /* @__PURE__ */ make$31(objectKeyword);
30824
31087
  function makeStruct(ast, fields) {
30825
- return make$30(ast, {
31088
+ return make$31(ast, {
30826
31089
  fields,
30827
31090
  mapFields(f, options) {
30828
31091
  const fields$1 = f(this.fields);
@@ -30841,13 +31104,13 @@ function Struct(fields) {
30841
31104
  */
30842
31105
  function Record(key, value, options) {
30843
31106
  const keyValueCombiner = options?.keyValueCombiner?.decode || options?.keyValueCombiner?.encode ? new KeyValueCombiner(options.keyValueCombiner.decode, options.keyValueCombiner.encode) : void 0;
30844
- return make$30(record(key.ast, value.ast, keyValueCombiner), {
31107
+ return make$31(record(key.ast, value.ast, keyValueCombiner), {
30845
31108
  key,
30846
31109
  value
30847
31110
  });
30848
31111
  }
30849
31112
  function makeTuple(ast, elements) {
30850
- return make$30(ast, {
31113
+ return make$31(ast, {
30851
31114
  elements,
30852
31115
  mapElements(f, options) {
30853
31116
  const elements$1 = f(this.elements);
@@ -30866,14 +31129,14 @@ function Tuple(elements) {
30866
31129
  * @category Constructors
30867
31130
  * @since 4.0.0
30868
31131
  */
30869
- const Array$1 = /* @__PURE__ */ lambda((schema$1) => make$30(new Arrays(false, [], [schema$1.ast]), { schema: schema$1 }));
31132
+ const Array$1 = /* @__PURE__ */ lambda((schema$1) => make$31(new Arrays(false, [], [schema$1.ast]), { schema: schema$1 }));
30870
31133
  /**
30871
31134
  * @category Constructors
30872
31135
  * @since 4.0.0
30873
31136
  */
30874
- const NonEmptyArray = /* @__PURE__ */ lambda((schema$1) => make$30(new Arrays(false, [schema$1.ast], [schema$1.ast]), { schema: schema$1 }));
31137
+ const NonEmptyArray = /* @__PURE__ */ lambda((schema$1) => make$31(new Arrays(false, [schema$1.ast], [schema$1.ast]), { schema: schema$1 }));
30875
31138
  function makeUnion(ast, members) {
30876
- return make$30(ast, {
31139
+ return make$31(ast, {
30877
31140
  members,
30878
31141
  mapMembers(f, options) {
30879
31142
  const members$1 = f(this.members);
@@ -30902,7 +31165,7 @@ function Union(members, options) {
30902
31165
  */
30903
31166
  function Literals(literals) {
30904
31167
  const members = literals.map(Literal);
30905
- return make$30(union(members, "anyOf", void 0), {
31168
+ return make$31(union(members, "anyOf", void 0), {
30906
31169
  literals,
30907
31170
  members,
30908
31171
  mapMembers(f) {
@@ -30935,11 +31198,11 @@ const UndefinedOr = /* @__PURE__ */ lambda((self$1) => Union([self$1, Undefined]
30935
31198
  * @since 4.0.0
30936
31199
  */
30937
31200
  function suspend(f) {
30938
- return make$30(new Suspend(() => f().ast));
31201
+ return make$31(new Suspend(() => f().ast));
30939
31202
  }
30940
31203
  function decodeTo(to, transformation) {
30941
31204
  return (from) => {
30942
- return make$30(decodeTo$1(from.ast, to.ast, transformation ? make$41(transformation) : passthrough()), {
31205
+ return make$31(decodeTo$1(from.ast, to.ast, transformation ? make$42(transformation) : passthrough()), {
30943
31206
  from,
30944
31207
  to
30945
31208
  });
@@ -30950,7 +31213,7 @@ function decodeTo(to, transformation) {
30950
31213
  */
30951
31214
  function withConstructorDefault(defaultValue) {
30952
31215
  return (schema$1) => {
30953
- return make$30(withConstructorDefault$1(schema$1.ast, defaultValue), { schema: schema$1 });
31216
+ return make$31(withConstructorDefault$1(schema$1.ast, defaultValue), { schema: schema$1 });
30954
31217
  };
30955
31218
  }
30956
31219
  /**
@@ -30982,7 +31245,7 @@ function instanceOf(constructor, annotations$1) {
30982
31245
  */
30983
31246
  function link$1() {
30984
31247
  return (encodeTo, transformation) => {
30985
- return new Link(encodeTo.ast, make$41(transformation));
31248
+ return new Link(encodeTo.ast, make$42(transformation));
30986
31249
  };
30987
31250
  }
30988
31251
  /**
@@ -31117,7 +31380,7 @@ function isFinite$1(annotations$1) {
31117
31380
  */
31118
31381
  function makeIsGreaterThan(options) {
31119
31382
  const gt = isGreaterThan$4(options.order);
31120
- const formatter = options.formatter ?? format$2;
31383
+ const formatter = options.formatter ?? format$3;
31121
31384
  return (exclusiveMinimum, annotations$1) => {
31122
31385
  return makeFilter((input) => gt(input, exclusiveMinimum), {
31123
31386
  expected: `a value greater than ${formatter(exclusiveMinimum)}`,
@@ -31132,7 +31395,7 @@ function makeIsGreaterThan(options) {
31132
31395
  */
31133
31396
  function makeIsGreaterThanOrEqualTo(options) {
31134
31397
  const gte = isGreaterThanOrEqualTo$3(options.order);
31135
- const formatter = options.formatter ?? format$2;
31398
+ const formatter = options.formatter ?? format$3;
31136
31399
  return (minimum, annotations$1) => {
31137
31400
  return makeFilter((input) => gte(input, minimum), {
31138
31401
  expected: `a value greater than or equal to ${formatter(minimum)}`,
@@ -31146,8 +31409,8 @@ function makeIsGreaterThanOrEqualTo(options) {
31146
31409
  * @since 4.0.0
31147
31410
  */
31148
31411
  function makeIsLessThan(options) {
31149
- const lt = isLessThan$3(options.order);
31150
- const formatter = options.formatter ?? format$2;
31412
+ const lt = isLessThan$4(options.order);
31413
+ const formatter = options.formatter ?? format$3;
31151
31414
  return (exclusiveMaximum, annotations$1) => {
31152
31415
  return makeFilter((input) => lt(input, exclusiveMaximum), {
31153
31416
  expected: `a value less than ${formatter(exclusiveMaximum)}`,
@@ -31162,7 +31425,7 @@ function makeIsLessThan(options) {
31162
31425
  */
31163
31426
  function makeIsLessThanOrEqualTo(options) {
31164
31427
  const lte = isLessThanOrEqualTo$3(options.order);
31165
- const formatter = options.formatter ?? format$2;
31428
+ const formatter = options.formatter ?? format$3;
31166
31429
  return (maximum, annotations$1) => {
31167
31430
  return makeFilter((input) => lte(input, maximum), {
31168
31431
  expected: `a value less than or equal to ${formatter(maximum)}`,
@@ -31179,8 +31442,8 @@ function makeIsBetween(deriveOptions) {
31179
31442
  const greaterThanOrEqualTo = isGreaterThanOrEqualTo$3(deriveOptions.order);
31180
31443
  const greaterThan = isGreaterThan$4(deriveOptions.order);
31181
31444
  const lessThanOrEqualTo = isLessThanOrEqualTo$3(deriveOptions.order);
31182
- const lessThan = isLessThan$3(deriveOptions.order);
31183
- const formatter = deriveOptions.formatter ?? format$2;
31445
+ const lessThan = isLessThan$4(deriveOptions.order);
31446
+ const formatter = deriveOptions.formatter ?? format$3;
31184
31447
  return (options, annotations$1) => {
31185
31448
  const gte = options.exclusiveMinimum ? greaterThan : greaterThanOrEqualTo;
31186
31449
  const lte = options.exclusiveMaximum ? lessThan : lessThanOrEqualTo;
@@ -31648,7 +31911,7 @@ const isBetweenBigInt = /* @__PURE__ */ makeIsBetween({
31648
31911
  * @since 4.0.0
31649
31912
  */
31650
31913
  function Option(value) {
31651
- return make$30(declareConstructor()([value], ([value$1]) => (input, ast, options) => {
31914
+ return make$31(declareConstructor()([value], ([value$1]) => (input, ast, options) => {
31652
31915
  if (isOption(input)) {
31653
31916
  if (isNone(input)) return succeedNone;
31654
31917
  return mapBothEager(decodeUnknownEffect$1(value$1)(input.value, options), {
@@ -31716,7 +31979,7 @@ const defectTransformation = /* @__PURE__ */ new Transformation(/* @__PURE__ */
31716
31979
  try {
31717
31980
  return JSON.parse(JSON.stringify(u));
31718
31981
  } catch {
31719
- return format$2(u);
31982
+ return format$3(u);
31720
31983
  }
31721
31984
  }));
31722
31985
  /**
@@ -32241,7 +32504,7 @@ function makeClass(Inherited, identifier$1, struct$1, annotations$1) {
32241
32504
  }
32242
32505
  }
32243
32506
  toString() {
32244
- return `${identifier$1}(${format$2({ ...this })})`;
32507
+ return `${identifier$1}(${format$3({ ...this })})`;
32245
32508
  }
32246
32509
  static [TypeId$28] = TypeId$28;
32247
32510
  get [ClassTypeId$1]() {
@@ -32296,7 +32559,7 @@ function getClassSchemaFactory(from, identifier$1, annotations$1) {
32296
32559
  return (self$1) => {
32297
32560
  if (memo === void 0) {
32298
32561
  const transformation = getClassTransformation(self$1);
32299
- const to = make$30(new Declaration([from.ast], () => (input, ast) => {
32562
+ const to = make$31(new Declaration([from.ast], () => (input, ast) => {
32300
32563
  return input instanceof self$1 || hasProperty(input, getClassTypeId(identifier$1)) ? succeed$1(input) : fail$4(new InvalidType(ast, some(input)));
32301
32564
  }, {
32302
32565
  identifier: identifier$1,
@@ -32359,11 +32622,11 @@ function toJsonSchemaDocument(schema$1, options) {
32359
32622
  * @since 4.0.0
32360
32623
  */
32361
32624
  function toCodecJson(schema$1) {
32362
- return make$30(toCodecJson$1(schema$1.ast));
32625
+ return make$31(toCodecJson$1(schema$1.ast));
32363
32626
  }
32364
32627
  function toCodecStringTree(schema$1, options) {
32365
- if (options?.keepDeclarations === true) return make$30(toCodecEnsureArray(serializerStringTreeKeepDeclarations(schema$1.ast)));
32366
- else return make$30(toCodecEnsureArray(serializerStringTree(schema$1.ast)));
32628
+ if (options?.keepDeclarations === true) return make$31(toCodecEnsureArray(serializerStringTreeKeepDeclarations(schema$1.ast)));
32629
+ else return make$31(toCodecEnsureArray(serializerStringTree(schema$1.ast)));
32367
32630
  }
32368
32631
  function getStringTreePriority(ast) {
32369
32632
  switch (ast._tag) {
@@ -32384,7 +32647,7 @@ function serializerTree(ast, recur$2, onMissingAnnotation) {
32384
32647
  case "Declaration": {
32385
32648
  const getLink = ast.annotations?.toCodecJson ?? ast.annotations?.toCodec;
32386
32649
  if (isFunction(getLink)) {
32387
- const link$2 = getLink(isDeclaration(ast) ? ast.typeParameters.map((tp) => make$30(recur$2(toEncoded(tp)))) : []);
32650
+ const link$2 = getLink(isDeclaration(ast) ? ast.typeParameters.map((tp) => make$31(recur$2(toEncoded(tp)))) : []);
32388
32651
  const to = recur$2(link$2.to);
32389
32652
  return replaceEncoding(ast, to === link$2.to ? [link$2] : [new Link(to, link$2.transformation)]);
32390
32653
  }
@@ -32429,8 +32692,8 @@ const toCodecEnsureArray = /* @__PURE__ */ toCodec((ast) => {
32429
32692
  if (isUnion(ast) && ast.annotations?.[SERIALIZER_ENSURE_ARRAY]) return ast;
32430
32693
  const out = onSerializerEnsureArray(ast);
32431
32694
  if (isArrays(out)) {
32432
- const ensure = new Union$1([out, decodeTo$1(string$5, out, new Transformation(split(), passthrough$1()))], "anyOf", { [SERIALIZER_ENSURE_ARRAY]: true });
32433
- return isOptional(ast) ? optionalKey$1(ensure) : ensure;
32695
+ const ensure$1 = new Union$1([out, decodeTo$1(string$5, out, new Transformation(split(), passthrough$1()))], "anyOf", { [SERIALIZER_ENSURE_ARRAY]: true });
32696
+ return isOptional(ast) ? optionalKey$1(ensure$1) : ensure$1;
32434
32697
  }
32435
32698
  return out;
32436
32699
  });
@@ -32487,7 +32750,7 @@ const Proto$14 = {
32487
32750
  * @category Constructors
32488
32751
  * @since 4.0.0
32489
32752
  */
32490
- function make$29(parse$3) {
32753
+ function make$30(parse$3) {
32491
32754
  const self$1 = Object.create(Proto$14);
32492
32755
  self$1.parse = parse$3;
32493
32756
  return self$1;
@@ -32500,8 +32763,8 @@ function make$29(parse$3) {
32500
32763
  * @category Mapping
32501
32764
  * @since 4.0.0
32502
32765
  */
32503
- const map$2 = /* @__PURE__ */ dual(2, (self$1, f) => {
32504
- return make$29((provider) => map$5(self$1.parse(provider), f));
32766
+ const map$3 = /* @__PURE__ */ dual(2, (self$1, f) => {
32767
+ return make$30((provider) => map$6(self$1.parse(provider), f));
32505
32768
  });
32506
32769
  /**
32507
32770
  * Returns a config that falls back to the specified config if there is an error
@@ -32510,7 +32773,7 @@ const map$2 = /* @__PURE__ */ dual(2, (self$1, f) => {
32510
32773
  * @since 4.0.0
32511
32774
  */
32512
32775
  const orElse = /* @__PURE__ */ dual(2, (self$1, that) => {
32513
- return make$29((provider) => catch_$1(self$1.parse(provider), (error$1) => that(error$1).parse(provider)));
32776
+ return make$30((provider) => catch_$1(self$1.parse(provider), (error$1) => that(error$1).parse(provider)));
32514
32777
  });
32515
32778
  function isMissingDataOnly(issue) {
32516
32779
  switch (issue._tag) {
@@ -32557,7 +32820,7 @@ const withDefault$2 = /* @__PURE__ */ dual(2, (self$1, defaultValue) => {
32557
32820
  *
32558
32821
  * @since 4.0.0
32559
32822
  */
32560
- const option = (self$1) => self$1.pipe(map$2(some), withDefault$2(() => none$3()));
32823
+ const option = (self$1) => self$1.pipe(map$3(some), withDefault$2(() => none$3()));
32561
32824
  const dump = /* @__PURE__ */ fnUntraced(function* (provider, path$2) {
32562
32825
  const stat$1 = yield* provider.load(path$2);
32563
32826
  if (stat$1 === void 0) return void 0;
@@ -32631,7 +32894,7 @@ function schema(codec, path$2) {
32631
32894
  const decodeUnknownEffect$2 = decodeUnknownEffect$1(toCodecStringTree$1);
32632
32895
  const toCodecStringTreeEncoded = toEncoded(toCodecStringTree$1.ast);
32633
32896
  const defaultPath = typeof path$2 === "string" ? [path$2] : path$2 ?? [];
32634
- return make$29((provider) => recur(toCodecStringTreeEncoded, provider, defaultPath).pipe(flatMapEager((tree) => decodeUnknownEffect$2(tree).pipe(mapErrorEager((issue) => new SchemaError(defaultPath.length > 0 ? new Pointer(defaultPath, issue) : issue)))), mapErrorEager((cause) => new ConfigError(cause))));
32897
+ return make$30((provider) => recur(toCodecStringTreeEncoded, provider, defaultPath).pipe(flatMapEager((tree) => decodeUnknownEffect$2(tree).pipe(mapErrorEager((issue) => new SchemaError(defaultPath.length > 0 ? new Pointer(defaultPath, issue) : issue)))), mapErrorEager((cause) => new ConfigError(cause))));
32635
32898
  }
32636
32899
  /** @internal */
32637
32900
  const TrueValues = /* @__PURE__ */ Literals([
@@ -32701,7 +32964,7 @@ const LogLevel = /* @__PURE__ */ Literals(values);
32701
32964
  * @since 4.0.0
32702
32965
  */
32703
32966
  function fail(err) {
32704
- return make$29(() => fail$4(new ConfigError(err)));
32967
+ return make$30(() => fail$4(new ConfigError(err)));
32705
32968
  }
32706
32969
  /**
32707
32970
  * Creates a configuration that always succeeds with a given value.
@@ -32710,7 +32973,7 @@ function fail(err) {
32710
32973
  * @since 4.0.0
32711
32974
  */
32712
32975
  function succeed(value) {
32713
- return make$29(() => succeed$1(value));
32976
+ return make$30(() => succeed$1(value));
32714
32977
  }
32715
32978
  /**
32716
32979
  * Creates a configuration for string values.
@@ -33253,11 +33516,11 @@ var require_ini = /* @__PURE__ */ __commonJSMin$1(((exports, module) => {
33253
33516
  const remove$3 = [];
33254
33517
  for (const k of Object.keys(out)) {
33255
33518
  if (!hasOwnProperty.call(out, k) || typeof out[k] !== "object" || Array.isArray(out[k])) continue;
33256
- const parts = splitSections(k, ".");
33519
+ const parts$1 = splitSections(k, ".");
33257
33520
  p = out;
33258
- const l = parts.pop();
33521
+ const l = parts$1.pop();
33259
33522
  const nl = l.replace(/\\\./g, ".");
33260
- for (const part of parts) {
33523
+ for (const part of parts$1) {
33261
33524
  if (part === "__proto__") continue;
33262
33525
  if (!hasOwnProperty.call(p, part) || typeof p[part] !== "object") p[part] = Object.create(null);
33263
33526
  p = p[part];
@@ -33354,8 +33617,8 @@ var require_parser$1 = /* @__PURE__ */ __commonJSMin$1(((exports, module) => {
33354
33617
  addNode(node("ObjectPath", name, line, column));
33355
33618
  }, peg$c12 = function(name) {
33356
33619
  addNode(node("ArrayPath", name, line, column));
33357
- }, peg$c13 = function(parts, name) {
33358
- return parts.concat(name);
33620
+ }, peg$c13 = function(parts$1, name) {
33621
+ return parts$1.concat(name);
33359
33622
  }, peg$c14 = function(name) {
33360
33623
  return [name];
33361
33624
  }, peg$c15 = function(name) {
@@ -37396,25 +37659,25 @@ var require_directives = /* @__PURE__ */ __commonJSMin$1(((exports) => {
37396
37659
  this.tags = Object.assign({}, Directives.defaultTags);
37397
37660
  this.atNextDocument = false;
37398
37661
  }
37399
- const parts = line.trim().split(/[ \t]+/);
37400
- const name = parts.shift();
37662
+ const parts$1 = line.trim().split(/[ \t]+/);
37663
+ const name = parts$1.shift();
37401
37664
  switch (name) {
37402
37665
  case "%TAG": {
37403
- if (parts.length !== 2) {
37666
+ if (parts$1.length !== 2) {
37404
37667
  onError$2(0, "%TAG directive should contain exactly two parts");
37405
- if (parts.length < 2) return false;
37668
+ if (parts$1.length < 2) return false;
37406
37669
  }
37407
- const [handle, prefix$2] = parts;
37670
+ const [handle, prefix$2] = parts$1;
37408
37671
  this.tags[handle] = prefix$2;
37409
37672
  return true;
37410
37673
  }
37411
37674
  case "%YAML": {
37412
37675
  this.yaml.explicit = true;
37413
- if (parts.length !== 1) {
37676
+ if (parts$1.length !== 1) {
37414
37677
  onError$2(0, "%YAML directive should contain exactly one part");
37415
37678
  return false;
37416
37679
  }
37417
- const [version$2] = parts;
37680
+ const [version$2] = parts$1;
37418
37681
  if (version$2 === "1.1" || version$2 === "1.2") {
37419
37682
  this.yaml.version = version$2;
37420
37683
  return true;
@@ -37816,9 +38079,9 @@ var require_createNode = /* @__PURE__ */ __commonJSMin$1(((exports) => {
37816
38079
  if (identity.isDocument(value)) value = value.contents;
37817
38080
  if (identity.isNode(value)) return value;
37818
38081
  if (identity.isPair(value)) {
37819
- const map$13 = ctx.schema[identity.MAP].createNode?.(ctx.schema, null, ctx);
37820
- map$13.items.push(value);
37821
- return map$13;
38082
+ const map$14 = ctx.schema[identity.MAP].createNode?.(ctx.schema, null, ctx);
38083
+ map$14.items.push(value);
38084
+ return map$14;
37822
38085
  }
37823
38086
  if (value instanceof String || value instanceof Number || value instanceof Boolean || typeof BigInt !== "undefined" && value instanceof BigInt) value = value.valueOf();
37824
38087
  const { aliasDuplicateObjects, onAnchor, onTagObj, schema: schema$1, sourceObjects } = ctx;
@@ -38581,26 +38844,26 @@ var require_merge = /* @__PURE__ */ __commonJSMin$1(((exports) => {
38581
38844
  stringify: () => MERGE_KEY
38582
38845
  };
38583
38846
  const isMergeKey = (ctx, key) => (merge.identify(key) || identity.isScalar(key) && (!key.type || key.type === Scalar.Scalar.PLAIN) && merge.identify(key.value)) && ctx?.doc.schema.tags.some((tag$1) => tag$1.tag === merge.tag && tag$1.default);
38584
- function addMergeToJSMap(ctx, map$13, value) {
38847
+ function addMergeToJSMap(ctx, map$14, value) {
38585
38848
  value = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value;
38586
- if (identity.isSeq(value)) for (const it of value.items) mergeValue(ctx, map$13, it);
38587
- else if (Array.isArray(value)) for (const it of value) mergeValue(ctx, map$13, it);
38588
- else mergeValue(ctx, map$13, value);
38849
+ if (identity.isSeq(value)) for (const it of value.items) mergeValue(ctx, map$14, it);
38850
+ else if (Array.isArray(value)) for (const it of value) mergeValue(ctx, map$14, it);
38851
+ else mergeValue(ctx, map$14, value);
38589
38852
  }
38590
- function mergeValue(ctx, map$13, value) {
38853
+ function mergeValue(ctx, map$14, value) {
38591
38854
  const source = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value;
38592
38855
  if (!identity.isMap(source)) throw new Error("Merge sources must be maps or map aliases");
38593
38856
  const srcMap = source.toJSON(null, ctx, Map);
38594
- for (const [key, value$1] of srcMap) if (map$13 instanceof Map) {
38595
- if (!map$13.has(key)) map$13.set(key, value$1);
38596
- } else if (map$13 instanceof Set) map$13.add(key);
38597
- else if (!Object.prototype.hasOwnProperty.call(map$13, key)) Object.defineProperty(map$13, key, {
38857
+ for (const [key, value$1] of srcMap) if (map$14 instanceof Map) {
38858
+ if (!map$14.has(key)) map$14.set(key, value$1);
38859
+ } else if (map$14 instanceof Set) map$14.add(key);
38860
+ else if (!Object.prototype.hasOwnProperty.call(map$14, key)) Object.defineProperty(map$14, key, {
38598
38861
  value: value$1,
38599
38862
  writable: true,
38600
38863
  enumerable: true,
38601
38864
  configurable: true
38602
38865
  });
38603
- return map$13;
38866
+ return map$14;
38604
38867
  }
38605
38868
  exports.addMergeToJSMap = addMergeToJSMap;
38606
38869
  exports.isMergeKey = isMergeKey;
@@ -38615,26 +38878,26 @@ var require_addPairToJSMap = /* @__PURE__ */ __commonJSMin$1(((exports) => {
38615
38878
  var stringify = require_stringify();
38616
38879
  var identity = require_identity();
38617
38880
  var toJS = require_toJS();
38618
- function addPairToJSMap(ctx, map$13, { key, value }) {
38619
- if (identity.isNode(key) && key.addToJSMap) key.addToJSMap(ctx, map$13, value);
38620
- else if (merge.isMergeKey(ctx, key)) merge.addMergeToJSMap(ctx, map$13, value);
38881
+ function addPairToJSMap(ctx, map$14, { key, value }) {
38882
+ if (identity.isNode(key) && key.addToJSMap) key.addToJSMap(ctx, map$14, value);
38883
+ else if (merge.isMergeKey(ctx, key)) merge.addMergeToJSMap(ctx, map$14, value);
38621
38884
  else {
38622
38885
  const jsKey = toJS.toJS(key, "", ctx);
38623
- if (map$13 instanceof Map) map$13.set(jsKey, toJS.toJS(value, jsKey, ctx));
38624
- else if (map$13 instanceof Set) map$13.add(jsKey);
38886
+ if (map$14 instanceof Map) map$14.set(jsKey, toJS.toJS(value, jsKey, ctx));
38887
+ else if (map$14 instanceof Set) map$14.add(jsKey);
38625
38888
  else {
38626
38889
  const stringKey = stringifyKey(key, jsKey, ctx);
38627
38890
  const jsValue = toJS.toJS(value, stringKey, ctx);
38628
- if (stringKey in map$13) Object.defineProperty(map$13, stringKey, {
38891
+ if (stringKey in map$14) Object.defineProperty(map$14, stringKey, {
38629
38892
  value: jsValue,
38630
38893
  writable: true,
38631
38894
  enumerable: true,
38632
38895
  configurable: true
38633
38896
  });
38634
- else map$13[stringKey] = jsValue;
38897
+ else map$14[stringKey] = jsValue;
38635
38898
  }
38636
38899
  }
38637
- return map$13;
38900
+ return map$14;
38638
38901
  }
38639
38902
  function stringifyKey(key, jsKey, ctx) {
38640
38903
  if (jsKey === null) return "";
@@ -38838,16 +39101,16 @@ var require_YAMLMap = /* @__PURE__ */ __commonJSMin$1(((exports) => {
38838
39101
  */
38839
39102
  static from(schema$1, obj, ctx) {
38840
39103
  const { keepUndefined, replacer } = ctx;
38841
- const map$13 = new this(schema$1);
39104
+ const map$14 = new this(schema$1);
38842
39105
  const add$4 = (key, value) => {
38843
39106
  if (typeof replacer === "function") value = replacer.call(obj, key, value);
38844
39107
  else if (Array.isArray(replacer) && !replacer.includes(key)) return;
38845
- if (value !== void 0 || keepUndefined) map$13.items.push(Pair.createPair(key, value, ctx));
39108
+ if (value !== void 0 || keepUndefined) map$14.items.push(Pair.createPair(key, value, ctx));
38846
39109
  };
38847
39110
  if (obj instanceof Map) for (const [key, value] of obj) add$4(key, value);
38848
39111
  else if (obj && typeof obj === "object") for (const key of Object.keys(obj)) add$4(key, obj[key]);
38849
- if (typeof schema$1.sortMapEntries === "function") map$13.items.sort(schema$1.sortMapEntries);
38850
- return map$13;
39112
+ if (typeof schema$1.sortMapEntries === "function") map$14.items.sort(schema$1.sortMapEntries);
39113
+ return map$14;
38851
39114
  }
38852
39115
  /**
38853
39116
  * Adds a value to the collection.
@@ -38893,10 +39156,10 @@ var require_YAMLMap = /* @__PURE__ */ __commonJSMin$1(((exports) => {
38893
39156
  * @returns Instance of Type, Map, or Object
38894
39157
  */
38895
39158
  toJSON(_, ctx, Type) {
38896
- const map$13 = Type ? new Type() : ctx?.mapAsMap ? /* @__PURE__ */ new Map() : {};
38897
- if (ctx?.onCreate) ctx.onCreate(map$13);
38898
- for (const item of this.items) addPairToJSMap.addPairToJSMap(ctx, map$13, item);
38899
- return map$13;
39159
+ const map$14 = Type ? new Type() : ctx?.mapAsMap ? /* @__PURE__ */ new Map() : {};
39160
+ if (ctx?.onCreate) ctx.onCreate(map$14);
39161
+ for (const item of this.items) addPairToJSMap.addPairToJSMap(ctx, map$14, item);
39162
+ return map$14;
38900
39163
  }
38901
39164
  toString(ctx, onComment, onChompKeep) {
38902
39165
  if (!ctx) return JSON.stringify(this);
@@ -38928,9 +39191,9 @@ var require_map = /* @__PURE__ */ __commonJSMin$1(((exports) => {
38928
39191
  default: true,
38929
39192
  nodeClass: YAMLMap.YAMLMap,
38930
39193
  tag: "tag:yaml.org,2002:map",
38931
- resolve(map$13, onError$2) {
38932
- if (!identity.isMap(map$13)) onError$2("Expected a mapping for this tag");
38933
- return map$13;
39194
+ resolve(map$14, onError$2) {
39195
+ if (!identity.isMap(map$14)) onError$2("Expected a mapping for this tag");
39196
+ return map$14;
38934
39197
  },
38935
39198
  createNode: (schema$1, obj, ctx) => YAMLMap.YAMLMap.from(schema$1, obj, ctx)
38936
39199
  };
@@ -39119,12 +39382,12 @@ var require_bool$1 = /* @__PURE__ */ __commonJSMin$1(((exports) => {
39119
39382
  //#endregion
39120
39383
  //#region node_modules/.pnpm/yaml@2.8.2/node_modules/yaml/dist/stringify/stringifyNumber.js
39121
39384
  var require_stringifyNumber = /* @__PURE__ */ __commonJSMin$1(((exports) => {
39122
- function stringifyNumber({ format: format$3, minFractionDigits, tag: tag$1, value }) {
39385
+ function stringifyNumber({ format: format$4, minFractionDigits, tag: tag$1, value }) {
39123
39386
  if (typeof value === "bigint") return String(value);
39124
39387
  const num = typeof value === "number" ? value : Number(value);
39125
39388
  if (!isFinite(num)) return isNaN(num) ? ".nan" : num < 0 ? "-.inf" : ".inf";
39126
39389
  let n = Object.is(value, -0) ? "-0" : JSON.stringify(value);
39127
- if (!format$3 && minFractionDigits && (!tag$1 || tag$1 === "tag:yaml.org,2002:float") && /^\d/.test(n)) {
39390
+ if (!format$4 && minFractionDigits && (!tag$1 || tag$1 === "tag:yaml.org,2002:float") && /^\d/.test(n)) {
39128
39391
  let i = n.indexOf(".");
39129
39392
  if (i < 0) {
39130
39393
  i = n.length;
@@ -39448,18 +39711,18 @@ var require_omap = /* @__PURE__ */ __commonJSMin$1(((exports) => {
39448
39711
  */
39449
39712
  toJSON(_, ctx) {
39450
39713
  if (!ctx) return super.toJSON(_);
39451
- const map$13 = /* @__PURE__ */ new Map();
39452
- if (ctx?.onCreate) ctx.onCreate(map$13);
39714
+ const map$14 = /* @__PURE__ */ new Map();
39715
+ if (ctx?.onCreate) ctx.onCreate(map$14);
39453
39716
  for (const pair of this.items) {
39454
39717
  let key, value;
39455
39718
  if (identity.isPair(pair)) {
39456
39719
  key = toJS.toJS(pair.key, "", ctx);
39457
39720
  value = toJS.toJS(pair.value, key, ctx);
39458
39721
  } else key = toJS.toJS(pair, "", ctx);
39459
- if (map$13.has(key)) throw new Error("Ordered maps must not include duplicate keys");
39460
- map$13.set(key, value);
39722
+ if (map$14.has(key)) throw new Error("Ordered maps must not include duplicate keys");
39723
+ map$14.set(key, value);
39461
39724
  }
39462
- return map$13;
39725
+ return map$14;
39463
39726
  }
39464
39727
  static from(schema$1, iterable, ctx) {
39465
39728
  const pairs$1 = pairs.createPairs(schema$1, iterable, ctx);
@@ -39696,11 +39959,11 @@ var require_set = /* @__PURE__ */ __commonJSMin$1(((exports) => {
39696
39959
  default: false,
39697
39960
  tag: "tag:yaml.org,2002:set",
39698
39961
  createNode: (schema$1, iterable, ctx) => YAMLSet.from(schema$1, iterable, ctx),
39699
- resolve(map$13, onError$2) {
39700
- if (identity.isMap(map$13)) if (map$13.hasAllNullValues(true)) return Object.assign(new YAMLSet(), map$13);
39962
+ resolve(map$14, onError$2) {
39963
+ if (identity.isMap(map$14)) if (map$14.hasAllNullValues(true)) return Object.assign(new YAMLSet(), map$14);
39701
39964
  else onError$2("Set items must all have null values");
39702
39965
  else onError$2("Expected a mapping for this tag");
39703
- return map$13;
39966
+ return map$14;
39704
39967
  }
39705
39968
  };
39706
39969
  exports.YAMLSet = YAMLSet;
@@ -39714,9 +39977,9 @@ var require_timestamp = /* @__PURE__ */ __commonJSMin$1(((exports) => {
39714
39977
  /** Internal types handle bigint as number, because TS can't figure it out. */
39715
39978
  function parseSexagesimal(str, asBigInt) {
39716
39979
  const sign$1 = str[0];
39717
- const parts = sign$1 === "-" || sign$1 === "+" ? str.substring(1) : str;
39980
+ const parts$1 = sign$1 === "-" || sign$1 === "+" ? str.substring(1) : str;
39718
39981
  const num = (n) => asBigInt ? BigInt(n) : Number(n);
39719
- const res = parts.replace(/_/g, "").split(":").reduce((res$1, p) => res$1 * num(60) + num(p), num(0));
39982
+ const res = parts$1.replace(/_/g, "").split(":").reduce((res$1, p) => res$1 * num(60) + num(p), num(0));
39720
39983
  return sign$1 === "-" ? num(-1) * res : res;
39721
39984
  }
39722
39985
  /**
@@ -39735,17 +39998,17 @@ var require_timestamp = /* @__PURE__ */ __commonJSMin$1(((exports) => {
39735
39998
  value *= num(-1);
39736
39999
  }
39737
40000
  const _60 = num(60);
39738
- const parts = [value % _60];
39739
- if (value < 60) parts.unshift(0);
40001
+ const parts$1 = [value % _60];
40002
+ if (value < 60) parts$1.unshift(0);
39740
40003
  else {
39741
- value = (value - parts[0]) / _60;
39742
- parts.unshift(value % _60);
40004
+ value = (value - parts$1[0]) / _60;
40005
+ parts$1.unshift(value % _60);
39743
40006
  if (value >= 60) {
39744
- value = (value - parts[0]) / _60;
39745
- parts.unshift(value);
40007
+ value = (value - parts$1[0]) / _60;
40008
+ parts$1.unshift(value);
39746
40009
  }
39747
40010
  }
39748
- return sign$1 + parts.map((n) => String(n).padStart(2, "0")).join(":").replace(/000000\d*$/, "");
40011
+ return sign$1 + parts$1.map((n) => String(n).padStart(2, "0")).join(":").replace(/000000\d*$/, "");
39749
40012
  }
39750
40013
  const intTime = {
39751
40014
  identify: (value) => typeof value === "bigint" || Number.isInteger(value),
@@ -40521,7 +40784,7 @@ var require_resolve_block_map = /* @__PURE__ */ __commonJSMin$1(((exports) => {
40521
40784
  var utilMapIncludes = require_util_map_includes();
40522
40785
  const startColMsg = "All mapping items must start at the same column";
40523
40786
  function resolveBlockMap({ composeNode, composeEmptyNode }, ctx, bm, onError$2, tag$1) {
40524
- const map$13 = new (tag$1?.nodeClass ?? YAMLMap.YAMLMap)(ctx.schema);
40787
+ const map$14 = new (tag$1?.nodeClass ?? YAMLMap.YAMLMap)(ctx.schema);
40525
40788
  if (ctx.atRoot) ctx.atRoot = false;
40526
40789
  let offset = bm.offset;
40527
40790
  let commentEnd = null;
@@ -40543,8 +40806,8 @@ var require_resolve_block_map = /* @__PURE__ */ __commonJSMin$1(((exports) => {
40543
40806
  }
40544
40807
  if (!keyProps.anchor && !keyProps.tag && !sep$1) {
40545
40808
  commentEnd = keyProps.end;
40546
- if (keyProps.comment) if (map$13.comment) map$13.comment += "\n" + keyProps.comment;
40547
- else map$13.comment = keyProps.comment;
40809
+ if (keyProps.comment) if (map$14.comment) map$14.comment += "\n" + keyProps.comment;
40810
+ else map$14.comment = keyProps.comment;
40548
40811
  continue;
40549
40812
  }
40550
40813
  if (keyProps.newlineAfterProp || utilContainsNewline.containsNewline(key)) onError$2(key ?? start[start.length - 1], "MULTILINE_IMPLICIT_KEY", "Implicit keys need to be on a single line");
@@ -40554,7 +40817,7 @@ var require_resolve_block_map = /* @__PURE__ */ __commonJSMin$1(((exports) => {
40554
40817
  const keyNode = key ? composeNode(ctx, key, keyProps, onError$2) : composeEmptyNode(ctx, keyStart, start, null, keyProps, onError$2);
40555
40818
  if (ctx.schema.compat) utilFlowIndentCheck.flowIndentCheck(bm.indent, key, onError$2);
40556
40819
  ctx.atKey = false;
40557
- if (utilMapIncludes.mapIncludes(ctx, map$13.items, keyNode)) onError$2(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
40820
+ if (utilMapIncludes.mapIncludes(ctx, map$14.items, keyNode)) onError$2(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
40558
40821
  const valueProps = resolveProps.resolveProps(sep$1 ?? [], {
40559
40822
  indicator: "map-value-ind",
40560
40823
  next: value,
@@ -40574,23 +40837,23 @@ var require_resolve_block_map = /* @__PURE__ */ __commonJSMin$1(((exports) => {
40574
40837
  offset = valueNode.range[2];
40575
40838
  const pair = new Pair.Pair(keyNode, valueNode);
40576
40839
  if (ctx.options.keepSourceTokens) pair.srcToken = collItem;
40577
- map$13.items.push(pair);
40840
+ map$14.items.push(pair);
40578
40841
  } else {
40579
40842
  if (implicitKey) onError$2(keyNode.range, "MISSING_CHAR", "Implicit map keys need to be followed by map values");
40580
40843
  if (valueProps.comment) if (keyNode.comment) keyNode.comment += "\n" + valueProps.comment;
40581
40844
  else keyNode.comment = valueProps.comment;
40582
40845
  const pair = new Pair.Pair(keyNode);
40583
40846
  if (ctx.options.keepSourceTokens) pair.srcToken = collItem;
40584
- map$13.items.push(pair);
40847
+ map$14.items.push(pair);
40585
40848
  }
40586
40849
  }
40587
40850
  if (commentEnd && commentEnd < offset) onError$2(commentEnd, "IMPOSSIBLE", "Map comment with trailing content");
40588
- map$13.range = [
40851
+ map$14.range = [
40589
40852
  bm.offset,
40590
40853
  offset,
40591
40854
  commentEnd ?? offset
40592
40855
  ];
40593
- return map$13;
40856
+ return map$14;
40594
40857
  }
40595
40858
  exports.resolveBlockMap = resolveBlockMap;
40596
40859
  }));
@@ -40786,20 +41049,20 @@ var require_resolve_flow_collection = /* @__PURE__ */ __commonJSMin$1(((exports)
40786
41049
  const pair = new Pair.Pair(keyNode, valueNode);
40787
41050
  if (ctx.options.keepSourceTokens) pair.srcToken = collItem;
40788
41051
  if (isMap) {
40789
- const map$13 = coll;
40790
- if (utilMapIncludes.mapIncludes(ctx, map$13.items, keyNode)) onError$2(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
40791
- map$13.items.push(pair);
41052
+ const map$14 = coll;
41053
+ if (utilMapIncludes.mapIncludes(ctx, map$14.items, keyNode)) onError$2(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
41054
+ map$14.items.push(pair);
40792
41055
  } else {
40793
- const map$13 = new YAMLMap.YAMLMap(ctx.schema);
40794
- map$13.flow = true;
40795
- map$13.items.push(pair);
41056
+ const map$14 = new YAMLMap.YAMLMap(ctx.schema);
41057
+ map$14.flow = true;
41058
+ map$14.items.push(pair);
40796
41059
  const endRange = (valueNode ?? keyNode).range;
40797
- map$13.range = [
41060
+ map$14.range = [
40798
41061
  keyNode.range[0],
40799
41062
  endRange[1],
40800
41063
  endRange[2]
40801
41064
  ];
40802
- coll.items.push(map$13);
41065
+ coll.items.push(map$14);
40803
41066
  }
40804
41067
  offset = valueNode ? valueNode.range[2] : valueProps.end;
40805
41068
  }
@@ -43117,7 +43380,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43117
43380
  sep$1.push(this.sourceToken);
43118
43381
  delete scalar.end;
43119
43382
  } else sep$1 = [this.sourceToken];
43120
- const map$13 = {
43383
+ const map$14 = {
43121
43384
  type: "block-map",
43122
43385
  offset: scalar.offset,
43123
43386
  indent: scalar.indent,
@@ -43128,7 +43391,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43128
43391
  }]
43129
43392
  };
43130
43393
  this.onKeyLine = true;
43131
- this.stack[this.stack.length - 1] = map$13;
43394
+ this.stack[this.stack.length - 1] = map$14;
43132
43395
  } else yield* this.lineEnd(scalar);
43133
43396
  }
43134
43397
  *blockScalar(scalar) {
@@ -43156,29 +43419,29 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43156
43419
  yield* this.step();
43157
43420
  }
43158
43421
  }
43159
- *blockMap(map$13) {
43160
- const it = map$13.items[map$13.items.length - 1];
43422
+ *blockMap(map$14) {
43423
+ const it = map$14.items[map$14.items.length - 1];
43161
43424
  switch (this.type) {
43162
43425
  case "newline":
43163
43426
  this.onKeyLine = false;
43164
43427
  if (it.value) {
43165
43428
  const end = "end" in it.value ? it.value.end : void 0;
43166
43429
  if ((Array.isArray(end) ? end[end.length - 1] : void 0)?.type === "comment") end?.push(this.sourceToken);
43167
- else map$13.items.push({ start: [this.sourceToken] });
43430
+ else map$14.items.push({ start: [this.sourceToken] });
43168
43431
  } else if (it.sep) it.sep.push(this.sourceToken);
43169
43432
  else it.start.push(this.sourceToken);
43170
43433
  return;
43171
43434
  case "space":
43172
43435
  case "comment":
43173
- if (it.value) map$13.items.push({ start: [this.sourceToken] });
43436
+ if (it.value) map$14.items.push({ start: [this.sourceToken] });
43174
43437
  else if (it.sep) it.sep.push(this.sourceToken);
43175
43438
  else {
43176
- if (this.atIndentedComment(it.start, map$13.indent)) {
43177
- const end = map$13.items[map$13.items.length - 2]?.value?.end;
43439
+ if (this.atIndentedComment(it.start, map$14.indent)) {
43440
+ const end = map$14.items[map$14.items.length - 2]?.value?.end;
43178
43441
  if (Array.isArray(end)) {
43179
43442
  Array.prototype.push.apply(end, it.start);
43180
43443
  end.push(this.sourceToken);
43181
- map$13.items.pop();
43444
+ map$14.items.pop();
43182
43445
  return;
43183
43446
  }
43184
43447
  }
@@ -43186,8 +43449,8 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43186
43449
  }
43187
43450
  return;
43188
43451
  }
43189
- if (this.indent >= map$13.indent) {
43190
- const atMapIndent = !this.onKeyLine && this.indent === map$13.indent;
43452
+ if (this.indent >= map$14.indent) {
43453
+ const atMapIndent = !this.onKeyLine && this.indent === map$14.indent;
43191
43454
  const atNextItem = atMapIndent && (it.sep || it.explicitKey) && this.type !== "seq-item-ind";
43192
43455
  let start = [];
43193
43456
  if (atNextItem && it.sep && !it.value) {
@@ -43200,7 +43463,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43200
43463
  break;
43201
43464
  case "space": break;
43202
43465
  case "comment":
43203
- if (st.indent > map$13.indent) nl.length = 0;
43466
+ if (st.indent > map$14.indent) nl.length = 0;
43204
43467
  break;
43205
43468
  default: nl.length = 0;
43206
43469
  }
@@ -43212,7 +43475,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43212
43475
  case "tag":
43213
43476
  if (atNextItem || it.value) {
43214
43477
  start.push(this.sourceToken);
43215
- map$13.items.push({ start });
43478
+ map$14.items.push({ start });
43216
43479
  this.onKeyLine = true;
43217
43480
  } else if (it.sep) it.sep.push(this.sourceToken);
43218
43481
  else it.start.push(this.sourceToken);
@@ -43223,7 +43486,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43223
43486
  it.explicitKey = true;
43224
43487
  } else if (atNextItem || it.value) {
43225
43488
  start.push(this.sourceToken);
43226
- map$13.items.push({
43489
+ map$14.items.push({
43227
43490
  start,
43228
43491
  explicitKey: true
43229
43492
  });
@@ -43256,7 +43519,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43256
43519
  }]
43257
43520
  });
43258
43521
  }
43259
- else if (it.value) map$13.items.push({
43522
+ else if (it.value) map$14.items.push({
43260
43523
  start: [],
43261
43524
  key: null,
43262
43525
  sep: [this.sourceToken]
@@ -43294,7 +43557,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43294
43557
  key: null,
43295
43558
  sep: [this.sourceToken]
43296
43559
  });
43297
- else if (it.value || atNextItem) map$13.items.push({
43560
+ else if (it.value || atNextItem) map$14.items.push({
43298
43561
  start,
43299
43562
  key: null,
43300
43563
  sep: [this.sourceToken]
@@ -43318,7 +43581,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43318
43581
  case "double-quoted-scalar": {
43319
43582
  const fs = this.flowScalar(this.type);
43320
43583
  if (atNextItem || it.value) {
43321
- map$13.items.push({
43584
+ map$14.items.push({
43322
43585
  start,
43323
43586
  key: fs,
43324
43587
  sep: []
@@ -43335,7 +43598,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43335
43598
  return;
43336
43599
  }
43337
43600
  default: {
43338
- const bv = this.startBlockValue(map$13);
43601
+ const bv = this.startBlockValue(map$14);
43339
43602
  if (bv) {
43340
43603
  if (bv.type === "block-seq") {
43341
43604
  if (!it.explicitKey && it.sep && !includesToken(it.sep, "newline")) {
@@ -43347,7 +43610,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43347
43610
  });
43348
43611
  return;
43349
43612
  }
43350
- } else if (atMapIndent) map$13.items.push({ start });
43613
+ } else if (atMapIndent) map$14.items.push({ start });
43351
43614
  this.stack.push(bv);
43352
43615
  return;
43353
43616
  }
@@ -43479,7 +43742,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43479
43742
  fixFlowSeqItems(fc);
43480
43743
  const sep$1 = fc.end.splice(1, fc.end.length);
43481
43744
  sep$1.push(this.sourceToken);
43482
- const map$13 = {
43745
+ const map$14 = {
43483
43746
  type: "block-map",
43484
43747
  offset: fc.offset,
43485
43748
  indent: fc.indent,
@@ -43490,7 +43753,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin$1(((exports) => {
43490
43753
  }]
43491
43754
  };
43492
43755
  this.onKeyLine = true;
43493
- this.stack[this.stack.length - 1] = map$13;
43756
+ this.stack[this.stack.length - 1] = map$14;
43494
43757
  } else yield* this.lineEnd(fc);
43495
43758
  }
43496
43759
  }
@@ -43920,10 +44183,10 @@ const string$3 = /* @__PURE__ */ makePrimitive("String", (value) => succeed$1(va
43920
44183
  */
43921
44184
  const choice$2 = (choices) => {
43922
44185
  const choiceMap = new Map(choices);
43923
- const validChoices = choices.map(([key]) => format$2(key)).join(" | ");
44186
+ const validChoices = choices.map(([key]) => format$3(key)).join(" | ");
43924
44187
  return makePrimitive("Choice", (value) => {
43925
44188
  if (choiceMap.has(value)) return succeed$1(choiceMap.get(value));
43926
- return fail$4(`Expected ${validChoices}, got ${format$2(value)}`);
44189
+ return fail$4(`Expected ${validChoices}, got ${format$3(value)}`);
43927
44190
  });
43928
44191
  };
43929
44192
  /**
@@ -44062,7 +44325,7 @@ const Terminal = /* @__PURE__ */ Service("effect/platform/Terminal");
44062
44325
  * @since 4.0.0
44063
44326
  * @category Constructors
44064
44327
  */
44065
- const make$28 = (impl) => Terminal.of({
44328
+ const make$29 = (impl) => Terminal.of({
44066
44329
  ...impl,
44067
44330
  [TypeId$25]: TypeId$25
44068
44331
  });
@@ -44197,7 +44460,7 @@ const windowsFigures = {
44197
44460
  pointer: ">"
44198
44461
  };
44199
44462
  /** @internal */
44200
- const platformFigures = /* @__PURE__ */ map$5(/* @__PURE__ */ sync(() => process.platform === "win32"), (isWindows) => isWindows ? windowsFigures : defaultFigures);
44463
+ const platformFigures = /* @__PURE__ */ map$6(/* @__PURE__ */ sync(() => process.platform === "win32"), (isWindows) => isWindows ? windowsFigures : defaultFigures);
44201
44464
  const annotateLine = (line) => annotate(line, bold);
44202
44465
  const annotateErrorLine = (line) => annotate(line, combine(italicized, red));
44203
44466
  /**
@@ -44371,7 +44634,7 @@ const eraseText = (text$3, columns) => {
44371
44634
  };
44372
44635
  const lines = (prompt, columns) => {
44373
44636
  const lines$1 = prompt.split(NEWLINE_REGEXP);
44374
- return columns === 0 ? lines$1.length : pipe(map$9(lines$1, (line) => Math.ceil(line.length / columns)), reduce(0, (left, right) => left + right));
44637
+ return columns === 0 ? lines$1.length : pipe(map$10(lines$1, (line) => Math.ceil(line.length / columns)), reduce(0, (left, right) => left + right));
44375
44638
  };
44376
44639
  const renderBeep = beep;
44377
44640
  const NEWLINE_REGEXP = /\r?\n/;
@@ -44411,7 +44674,7 @@ const renderSelectOutput = (leadingSymbol, trailingSymbol, options) => {
44411
44674
  return match$5(options.message.split(NEWLINE_REGEXP), {
44412
44675
  onEmpty: () => prefix$2 + " " + trailingSymbol,
44413
44676
  onNonEmpty: (promptLines) => {
44414
- return prefix$2 + map$9(promptLines, (line) => annotateLine(line)).join("\n") + " " + trailingSymbol + " ";
44677
+ return prefix$2 + map$10(promptLines, (line) => annotateLine(line)).join("\n") + " " + trailingSymbol + " ";
44415
44678
  }
44416
44679
  });
44417
44680
  };
@@ -44425,7 +44688,7 @@ const renderAutoCompleteOutput = (state, leadingSymbol, trailingSymbol, options)
44425
44688
  return match$5(options.message.split(NEWLINE_REGEXP), {
44426
44689
  onEmpty: () => prefix$2 + " " + trailingSymbol + " " + filter$6,
44427
44690
  onNonEmpty: (promptLines) => {
44428
- return prefix$2 + map$9(promptLines, (line) => annotateLine(line)).join("\n") + " " + trailingSymbol + " " + filter$6;
44691
+ return prefix$2 + map$10(promptLines, (line) => annotateLine(line)).join("\n") + " " + trailingSymbol + " " + filter$6;
44429
44692
  }
44430
44693
  });
44431
44694
  };
@@ -44636,7 +44899,7 @@ const renderTextError = (nextState, pointer) => {
44636
44899
  onEmpty: () => "",
44637
44900
  onNonEmpty: (errorLines) => {
44638
44901
  const prefix$2 = annotate(pointer, red) + " ";
44639
- const lines$1 = map$9(errorLines, (str) => annotateErrorLine(str));
44902
+ const lines$1 = map$10(errorLines, (str) => annotateErrorLine(str));
44640
44903
  return cursorSavePosition + "\n" + prefix$2 + lines$1.join("\n") + cursorRestorePosition;
44641
44904
  }
44642
44905
  });
@@ -44645,7 +44908,7 @@ const renderTextError = (nextState, pointer) => {
44645
44908
  const renderTextOutput = (nextState, leadingSymbol, trailingSymbol, options, submitted = false) => {
44646
44909
  const promptLines = options.message.split(NEWLINE_REGEXP);
44647
44910
  const prefix$2 = leadingSymbol + " ";
44648
- if (isReadonlyArrayNonEmpty(promptLines)) return prefix$2 + map$9(promptLines, (line) => annotateLine(line)).join("\n") + " " + trailingSymbol + " " + renderTextInput(nextState, options, submitted);
44911
+ if (isReadonlyArrayNonEmpty(promptLines)) return prefix$2 + map$10(promptLines, (line) => annotateLine(line)).join("\n") + " " + trailingSymbol + " " + renderTextInput(nextState, options, submitted);
44649
44912
  return prefix$2 + " " + trailingSymbol + " " + renderTextInput(nextState, options, submitted);
44650
44913
  };
44651
44914
  const renderTextNextFrame = /* @__PURE__ */ fnUntraced(function* (state, options) {
@@ -45158,8 +45421,8 @@ const withDescription$2 = /* @__PURE__ */ dual(2, (self$1, description) => {
45158
45421
  * @since 4.0.0
45159
45422
  * @category combinators
45160
45423
  */
45161
- const map$1 = /* @__PURE__ */ dual(2, (self$1, f) => {
45162
- const parse$3 = (args$1) => map$5(self$1.parse(args$1), ([operands, value]) => [operands, f(value)]);
45424
+ const map$2 = /* @__PURE__ */ dual(2, (self$1, f) => {
45425
+ const parse$3 = (args$1) => map$6(self$1.parse(args$1), ([operands, value]) => [operands, f(value)]);
45163
45426
  return Object.assign(Object.create(Proto$12), {
45164
45427
  _tag: "Map",
45165
45428
  kind: self$1.kind,
@@ -45205,7 +45468,7 @@ const transform = (self$1, f) => Object.assign(Object.create(Proto$12), {
45205
45468
  * @since 4.0.0
45206
45469
  * @category combinators
45207
45470
  */
45208
- const mapEffect = /* @__PURE__ */ dual(2, (self$1, f) => transform(self$1, (parse$3) => (args$1) => flatMap(parse$3(args$1), ([leftover, a]) => f(a).pipe(map$5((b) => [leftover, b])))));
45471
+ const mapEffect = /* @__PURE__ */ dual(2, (self$1, f) => transform(self$1, (parse$3) => (args$1) => flatMap(parse$3(args$1), ([leftover, a]) => f(a).pipe(map$6((b) => [leftover, b])))));
45209
45472
  /**
45210
45473
  * Creates an optional option that returns None when not provided.
45211
45474
  *
@@ -45228,7 +45491,7 @@ const mapEffect = /* @__PURE__ */ dual(2, (self$1, f) => transform(self$1, (pars
45228
45491
  * @category combinators
45229
45492
  */
45230
45493
  const optional$1 = (param) => {
45231
- const parse$3 = (args$1) => param.parse(args$1).pipe(map$5(([leftover, value]) => [leftover, some(value)]), catchTag("MissingOption", () => succeed$1([args$1.arguments, none$3()])), catchTag("MissingArgument", () => succeed$1([args$1.arguments, none$3()])));
45494
+ const parse$3 = (args$1) => param.parse(args$1).pipe(map$6(([leftover, value]) => [leftover, some(value)]), catchTag("MissingOption", () => succeed$1([args$1.arguments, none$3()])), catchTag("MissingArgument", () => succeed$1([args$1.arguments, none$3()])));
45232
45495
  return Object.assign(Object.create(Proto$12), {
45233
45496
  _tag: "Optional",
45234
45497
  kind: param.kind,
@@ -45266,7 +45529,7 @@ const optional$1 = (param) => {
45266
45529
  * @category combinators
45267
45530
  */
45268
45531
  const withDefault$1 = /* @__PURE__ */ dual(2, (self$1, defaultValue) => {
45269
- if (!isEffect(defaultValue)) return map$1(optional$1(self$1), getOrElse(() => defaultValue));
45532
+ if (!isEffect(defaultValue)) return map$2(optional$1(self$1), getOrElse(() => defaultValue));
45270
45533
  return mapEffect(optional$1(self$1), match$7({
45271
45534
  onNone: () => defaultValue,
45272
45535
  onSome: succeed$1
@@ -45432,7 +45695,7 @@ const matchParam = (param, patterns) => {
45432
45695
  const transformSingle = (param, f) => {
45433
45696
  return matchParam(param, {
45434
45697
  Single: (single) => f(single),
45435
- Map: (mapped) => map$1(transformSingle(mapped.param, f), mapped.f),
45698
+ Map: (mapped) => map$2(transformSingle(mapped.param, f), mapped.f),
45436
45699
  Transform: (mapped) => transform(transformSingle(mapped.param, f), mapped.f),
45437
45700
  Optional: (p) => optional$1(transformSingle(p.param, f)),
45438
45701
  Variadic: (p) => variadic(transformSingle(p.param, f), {
@@ -46356,14 +46619,14 @@ const getTypeLabel = (flag) => {
46356
46619
  }
46357
46620
  };
46358
46621
  const buildFlagDescription = (flag) => {
46359
- const parts = [];
46622
+ const parts$1 = [];
46360
46623
  const aliasParts = flag.aliases.map(formatAlias).filter((alias) => alias !== `--${flag.name}`);
46361
46624
  const baseDescription = flag.description ?? `--${flag.name}`;
46362
- if (aliasParts.length > 0) parts.push(`${aliasParts.join(", ")} -- ${baseDescription}`);
46363
- else parts.push(baseDescription);
46625
+ if (aliasParts.length > 0) parts$1.push(`${aliasParts.join(", ")} -- ${baseDescription}`);
46626
+ else parts$1.push(baseDescription);
46364
46627
  const typeLabel = getTypeLabel(flag);
46365
- if (typeLabel) parts.push(typeLabel);
46366
- return parts.join(" — ");
46628
+ if (typeLabel) parts$1.push(typeLabel);
46629
+ return parts$1.join(" — ");
46367
46630
  };
46368
46631
  const addFlagCandidates = (addItem, flag, query, includeAliases) => {
46369
46632
  const description = buildFlagDescription(flag);
@@ -46797,7 +47060,7 @@ const withFallbackConfig = /* @__PURE__ */ dual(2, (self$1, config) => withFallb
46797
47060
  * @since 4.0.0
46798
47061
  * @category mapping
46799
47062
  */
46800
- const map = /* @__PURE__ */ dual(2, (self$1, f) => map$1(self$1, f));
47063
+ const map$1 = /* @__PURE__ */ dual(2, (self$1, f) => map$2(self$1, f));
46801
47064
 
46802
47065
  //#endregion
46803
47066
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/unstable/cli/internal/builtInFlags.js
@@ -46851,7 +47114,7 @@ const completionsFlag = /* @__PURE__ */ choice("completions", [
46851
47114
  "zsh",
46852
47115
  "fish",
46853
47116
  "sh"
46854
- ]).pipe(optional, /* @__PURE__ */ map((v) => map$11(v, (s) => s === "sh" ? "bash" : s)), /* @__PURE__ */ withDescription$1("Print shell completion script for the given shell"));
47117
+ ]).pipe(optional, /* @__PURE__ */ map$1((v) => map$12(v, (s) => s === "sh" ? "bash" : s)), /* @__PURE__ */ withDescription$1("Print shell completion script for the given shell"));
46855
47118
 
46856
47119
  //#endregion
46857
47120
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/unstable/cli/internal/parser.js
@@ -46966,18 +47229,18 @@ const createEmptyFlagMap = (params) => Object.fromEntries(params.map((p) => [p.n
46966
47229
  * Pre-initializes empty arrays for all known flags.
46967
47230
  */
46968
47231
  const createFlagAccumulator = (params) => {
46969
- const map$13 = createEmptyFlagMap(params);
47232
+ const map$14 = createEmptyFlagMap(params);
46970
47233
  return {
46971
47234
  add: (name, raw$2) => {
46972
- if (raw$2 !== void 0) map$13[name].push(raw$2);
47235
+ if (raw$2 !== void 0) map$14[name].push(raw$2);
46973
47236
  },
46974
47237
  merge: (from) => {
46975
47238
  for (const key in from) {
46976
47239
  const values$1 = from[key];
46977
- if (values$1?.length) for (let i = 0; i < values$1.length; i++) map$13[key].push(values$1[i]);
47240
+ if (values$1?.length) for (let i = 0; i < values$1.length; i++) map$14[key].push(values$1[i]);
46978
47241
  }
46979
47242
  },
46980
- snapshot: () => map$13
47243
+ snapshot: () => map$14
46981
47244
  };
46982
47245
  };
46983
47246
  const isFlagToken = (t) => t._tag === "LongOption" || t._tag === "ShortOption";
@@ -47222,7 +47485,7 @@ const scanCommandLevel = (tokens, context) => {
47222
47485
  * @since 4.0.0
47223
47486
  * @category constructors
47224
47487
  */
47225
- const make$27 = (name, config, handler$1) => {
47488
+ const make$28 = (name, config, handler$1) => {
47226
47489
  return makeCommand({
47227
47490
  name,
47228
47491
  config: parseConfig(config ?? {}),
@@ -47585,7 +47848,7 @@ const TypeId$21 = "~effect/Cache";
47585
47848
  const makeWith$1 = (options) => servicesWith$1((services$2) => {
47586
47849
  const self$1 = Object.create(Proto$10);
47587
47850
  self$1.lookup = (key) => updateServices$1(options.lookup(key), (input) => merge$5(services$2, input));
47588
- self$1.map = make$37();
47851
+ self$1.map = make$38();
47589
47852
  self$1.capacity = options.capacity;
47590
47853
  self$1.timeToLive = options.timeToLive ? (exit$2, key) => fromDurationInputUnsafe(options.timeToLive(exit$2, key)) : defaultTimeToLive;
47591
47854
  return succeed$5(self$1);
@@ -47643,7 +47906,7 @@ const makeWith$1 = (options) => servicesWith$1((services$2) => {
47643
47906
  * @since 4.0.0
47644
47907
  * @category Constructors
47645
47908
  */
47646
- const make$26 = (options) => makeWith$1({
47909
+ const make$27 = (options) => makeWith$1({
47647
47910
  ...options,
47648
47911
  timeToLive: options.timeToLive ? () => options.timeToLive : defaultTimeToLive
47649
47912
  });
@@ -47957,7 +48220,7 @@ const makeUnsafe$1 = () => {
47957
48220
  * @since 2.0.0
47958
48221
  * @category constructors
47959
48222
  */
47960
- const make$25 = () => acquireRelease(sync(() => makeUnsafe$1()), (handle) => {
48223
+ const make$26 = () => acquireRelease(sync(() => makeUnsafe$1()), (handle) => {
47961
48224
  const state = handle.state;
47962
48225
  if (state._tag === "Closed") return void_$1;
47963
48226
  handle.state = { _tag: "Closed" };
@@ -48110,7 +48373,7 @@ const isFiberSet = (u) => hasProperty(u, TypeId$19);
48110
48373
  const Proto$8 = {
48111
48374
  [TypeId$19]: TypeId$19,
48112
48375
  [Symbol.iterator]() {
48113
- if (this.state._tag === "Closed") return empty$13();
48376
+ if (this.state._tag === "Closed") return empty$14();
48114
48377
  return this.state.backing[Symbol.iterator]();
48115
48378
  },
48116
48379
  ...PipeInspectableProto,
@@ -48157,7 +48420,7 @@ const makeUnsafe = (backing, deferred) => {
48157
48420
  * @since 2.0.0
48158
48421
  * @category constructors
48159
48422
  */
48160
- const make$24 = () => acquireRelease(sync(() => makeUnsafe(/* @__PURE__ */ new Set(), makeUnsafe$7())), (set$6) => suspend$3(() => {
48423
+ const make$25 = () => acquireRelease(sync(() => makeUnsafe(/* @__PURE__ */ new Set(), makeUnsafe$7())), (set$6) => suspend$3(() => {
48161
48424
  const state = set$6.state;
48162
48425
  if (state._tag === "Closed") return void_$1;
48163
48426
  set$6.state = { _tag: "Closed" };
@@ -48276,7 +48539,7 @@ const runImpl = (self$1, effect$1, options) => withFiber((parent) => {
48276
48539
  * @since 2.0.0
48277
48540
  * @category combinators
48278
48541
  */
48279
- const runtime = (self$1) => () => map$5(services(), (services$2) => {
48542
+ const runtime = (self$1) => () => map$6(services(), (services$2) => {
48280
48543
  const runFork$2 = runForkWith(services$2);
48281
48544
  return (effect$1, options) => {
48282
48545
  if (self$1.state._tag === "Closed") return constInterruptedFiber();
@@ -48336,6 +48599,454 @@ const awaitEmpty = (self$1) => whileLoop({
48336
48599
  step: constVoid
48337
48600
  });
48338
48601
 
48602
+ //#endregion
48603
+ //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/Logger.js
48604
+ /**
48605
+ * @since 2.0.0
48606
+ *
48607
+ * The `Logger` module provides a robust and flexible logging system for Effect applications.
48608
+ * It offers structured logging, multiple output formats, and seamless integration with the
48609
+ * Effect runtime's tracing and context management.
48610
+ *
48611
+ * ## Key Features
48612
+ *
48613
+ * - **Structured Logging**: Built-in support for structured log messages with metadata
48614
+ * - **Multiple Formats**: JSON, LogFmt, Pretty, and custom formatting options
48615
+ * - **Context Integration**: Automatic capture of fiber context, spans, and annotations
48616
+ * - **Batching**: Efficient log aggregation and batch processing
48617
+ * - **File Output**: Direct file writing with configurable batch windows
48618
+ * - **Composable**: Transform and compose loggers using functional patterns
48619
+ *
48620
+ * ## Basic Usage
48621
+ *
48622
+ * ```ts
48623
+ * import { Effect } from "effect"
48624
+ *
48625
+ * // Basic logging
48626
+ * const program = Effect.gen(function*() {
48627
+ * yield* Effect.log("Application started")
48628
+ * yield* Effect.logInfo("Processing user request")
48629
+ * yield* Effect.logWarning("Resource limit approaching")
48630
+ * yield* Effect.logError("Database connection failed")
48631
+ * })
48632
+ *
48633
+ * // With structured data
48634
+ * const structuredLog = Effect.gen(function*() {
48635
+ * yield* Effect.log("User action", { userId: 123, action: "login" })
48636
+ * yield* Effect.logInfo("Request processed", { duration: 150, statusCode: 200 })
48637
+ * })
48638
+ * ```
48639
+ *
48640
+ * ## Custom Loggers
48641
+ *
48642
+ * ```ts
48643
+ * import { Effect, Logger } from "effect"
48644
+ *
48645
+ * // Create a custom logger
48646
+ * const customLogger = Logger.make((options) => {
48647
+ * console.log(`[${options.logLevel}] ${options.message}`)
48648
+ * })
48649
+ *
48650
+ * // Use JSON format for production
48651
+ * const jsonLogger = Logger.consoleJson
48652
+ *
48653
+ * // Pretty format for development
48654
+ * const prettyLogger = Logger.consolePretty()
48655
+ *
48656
+ * const program = Effect.log("Hello World").pipe(
48657
+ * Effect.provide(Logger.layer([jsonLogger]))
48658
+ * )
48659
+ * ```
48660
+ *
48661
+ * ## Multiple Loggers
48662
+ *
48663
+ * ```ts
48664
+ * import { Effect, Logger } from "effect"
48665
+ *
48666
+ * // Combine multiple loggers
48667
+ * const CombinedLoggerLive = Logger.layer([
48668
+ * Logger.consoleJson,
48669
+ * Logger.consolePretty()
48670
+ * ])
48671
+ *
48672
+ * const program = Effect.log("Application event").pipe(
48673
+ * Effect.provide(CombinedLoggerLive)
48674
+ * )
48675
+ * ```
48676
+ *
48677
+ * ## Batched Logging
48678
+ *
48679
+ * ```ts
48680
+ * import { Duration, Effect, Logger } from "effect"
48681
+ *
48682
+ * const batchedLogger = Logger.batched(Logger.formatJson, {
48683
+ * window: Duration.seconds(5),
48684
+ * flush: (messages) =>
48685
+ * Effect.sync(() => {
48686
+ * // Process batch of log messages
48687
+ * console.log("Flushing", messages.length, "log entries")
48688
+ * })
48689
+ * })
48690
+ *
48691
+ * const program = Effect.gen(function*() {
48692
+ * const logger = yield* batchedLogger
48693
+ * yield* Effect.provide(
48694
+ * Effect.all([
48695
+ * Effect.log("Event 1"),
48696
+ * Effect.log("Event 2"),
48697
+ * Effect.log("Event 3")
48698
+ * ]),
48699
+ * Logger.layer([logger])
48700
+ * )
48701
+ * })
48702
+ * ```
48703
+ */
48704
+ /**
48705
+ * @example
48706
+ * ```ts
48707
+ * import { Effect, Logger } from "effect"
48708
+ *
48709
+ * // Access current loggers from fiber context
48710
+ * const program = Effect.gen(function*() {
48711
+ * const currentLoggers = yield* Effect.service(Logger.CurrentLoggers)
48712
+ * console.log(`Number of active loggers: ${currentLoggers.size}`)
48713
+ *
48714
+ * // Add a custom logger to the set
48715
+ * const customLogger = Logger.make((options) => {
48716
+ * console.log(`Custom: ${options.message}`)
48717
+ * })
48718
+ *
48719
+ * yield* Effect.log("Hello from custom logger").pipe(
48720
+ * Effect.provide(Logger.layer([customLogger]))
48721
+ * )
48722
+ * })
48723
+ * ```
48724
+ *
48725
+ * @since 4.0.0
48726
+ * @category references
48727
+ */
48728
+ const CurrentLoggers = CurrentLoggers$1;
48729
+ /**
48730
+ * @since 4.0.0
48731
+ * @category references
48732
+ */
48733
+ const LogToStderr = LogToStderr$1;
48734
+ /**
48735
+ * Transforms the output of a `Logger` using the provided function.
48736
+ *
48737
+ * This allows you to modify, enhance, or completely change the output format
48738
+ * of an existing logger without recreating the entire logging logic.
48739
+ *
48740
+ * @example
48741
+ * ```ts
48742
+ * import { Logger } from "effect"
48743
+ *
48744
+ * // Create a logger that outputs objects
48745
+ * const structuredLogger = Logger.make((options) => ({
48746
+ * level: options.logLevel,
48747
+ * message: options.message,
48748
+ * timestamp: options.date.toISOString()
48749
+ * }))
48750
+ *
48751
+ * // Transform the output to JSON strings
48752
+ * const jsonStringLogger = Logger.map(
48753
+ * structuredLogger,
48754
+ * (output) => JSON.stringify(output)
48755
+ * )
48756
+ *
48757
+ * // Transform to uppercase messages
48758
+ * const uppercaseLogger = Logger.map(
48759
+ * structuredLogger,
48760
+ * (output) => ({ ...output, message: String(output.message).toUpperCase() })
48761
+ * )
48762
+ * ```
48763
+ *
48764
+ * @since 2.0.0
48765
+ * @category utils
48766
+ */
48767
+ const map = /* @__PURE__ */ dual(2, (self$1, f) => loggerMake((options) => f(self$1.log(options))));
48768
+ /**
48769
+ * Formats the identifier of a `Fiber` by prefixing it with a hash tag.
48770
+ */
48771
+ const formatFiberId = (fiberId$2) => `#${fiberId$2}`;
48772
+ /**
48773
+ * Creates a new `Logger` from a log function.
48774
+ *
48775
+ * The log function receives an options object containing the message, log level,
48776
+ * cause, fiber information, and timestamp, and should return the desired output.
48777
+ *
48778
+ * @example
48779
+ * ```ts
48780
+ * import { Effect, Logger } from "effect"
48781
+ * import { CurrentLogAnnotations } from "effect/References"
48782
+ *
48783
+ * // Simple text logger
48784
+ * const textLogger = Logger.make((options) =>
48785
+ * `${options.date.toISOString()} [${options.logLevel}] ${options.message}`
48786
+ * )
48787
+ *
48788
+ * // Structured object logger
48789
+ * const objectLogger = Logger.make((options) => ({
48790
+ * timestamp: options.date.toISOString(),
48791
+ * level: options.logLevel,
48792
+ * message: options.message,
48793
+ * fiberId: options.fiber.id,
48794
+ * annotations: options.fiber.getRef(CurrentLogAnnotations)
48795
+ * }))
48796
+ *
48797
+ * // Custom filtering logger
48798
+ * const filteredLogger = Logger.make((options) => {
48799
+ * if (options.logLevel === "Debug") {
48800
+ * return // Skip debug messages
48801
+ * }
48802
+ * return `${options.logLevel}: ${options.message}`
48803
+ * })
48804
+ *
48805
+ * const program = Effect.log("Hello World").pipe(
48806
+ * Effect.provide(Logger.layer([textLogger]))
48807
+ * )
48808
+ * ```
48809
+ *
48810
+ * @since 2.0.0
48811
+ * @category constructors
48812
+ */
48813
+ const make$24 = loggerMake;
48814
+ /**
48815
+ * The default logging implementation used by the Effect runtime.
48816
+ *
48817
+ * @example
48818
+ * ```ts
48819
+ * import { Effect, Logger } from "effect"
48820
+ *
48821
+ * // Use the default logger (automatically used by Effect runtime)
48822
+ * const program = Effect.gen(function*() {
48823
+ * yield* Effect.log("This uses the default logger")
48824
+ * yield* Effect.logInfo("Info message")
48825
+ * yield* Effect.logError("Error message")
48826
+ * })
48827
+ *
48828
+ * // Explicitly use the default logger
48829
+ * const withDefaultLogger = Effect.log("Explicit default").pipe(
48830
+ * Effect.provide(Logger.layer([Logger.defaultLogger]))
48831
+ * )
48832
+ *
48833
+ * // Compare with custom logger
48834
+ * const customLogger = Logger.make((options) => {
48835
+ * console.log(`CUSTOM: ${options.message}`)
48836
+ * })
48837
+ * ```
48838
+ *
48839
+ * @since 4.0.0
48840
+ * @category constructors
48841
+ */
48842
+ const defaultLogger = defaultLogger$1;
48843
+ /**
48844
+ * A `Logger` which outputs logs using a structured format.
48845
+ *
48846
+ * For example:
48847
+ * ```
48848
+ * {
48849
+ * message: [ 'hello' ],
48850
+ * level: 'INFO',
48851
+ * timestamp: '2025-01-03T14:25:39.666Z',
48852
+ * annotations: { key: 'value' },
48853
+ * spans: { label: 0 },
48854
+ * fiberId: '#1'
48855
+ * }
48856
+ * ```
48857
+ *
48858
+ * @example
48859
+ * ```ts
48860
+ * import { Effect, Logger } from "effect"
48861
+ *
48862
+ * // Use the structured format logger
48863
+ * const structuredLoggerProgram = Effect.log("Hello Structured Format").pipe(
48864
+ * Effect.provide(Logger.layer([Logger.formatStructured]))
48865
+ * )
48866
+ *
48867
+ * // Perfect for JSON processing and analytics
48868
+ * const analyticsProgram = Effect.gen(function*() {
48869
+ * yield* Effect.log("User action", { action: "click", element: "button" })
48870
+ * yield* Effect.logInfo("API call", { endpoint: "/users", duration: 150 })
48871
+ * }).pipe(
48872
+ * Effect.annotateLogs("sessionId", "abc123"),
48873
+ * Effect.withLogSpan("request"),
48874
+ * Effect.provide(Logger.layer([Logger.formatStructured]))
48875
+ * )
48876
+ *
48877
+ * // Process structured output
48878
+ * const processingLogger = Logger.map(Logger.formatStructured, (output) => {
48879
+ * // Process the structured object
48880
+ * const enhanced = { ...output, processed: true }
48881
+ * return enhanced
48882
+ * })
48883
+ * ```
48884
+ *
48885
+ * @since 4.0.0
48886
+ * @category constructors
48887
+ */
48888
+ const formatStructured = /* @__PURE__ */ loggerMake(({ cause, date: date$2, fiber: fiber$2, logLevel, message }) => {
48889
+ const annotationsObj = {};
48890
+ const spansObj = {};
48891
+ const annotations$1 = fiber$2.getRef(CurrentLogAnnotations);
48892
+ for (const [key, value] of Object.entries(annotations$1)) annotationsObj[key] = structuredMessage(value);
48893
+ const now$2 = date$2.getTime();
48894
+ const spans = fiber$2.getRef(CurrentLogSpans);
48895
+ for (const [label, timestamp] of spans) spansObj[label] = now$2 - timestamp;
48896
+ const messageArr = ensure(message);
48897
+ return {
48898
+ message: messageArr.length === 1 ? structuredMessage(messageArr[0]) : messageArr.map(structuredMessage),
48899
+ level: logLevel.toUpperCase(),
48900
+ timestamp: date$2.toISOString(),
48901
+ cause: cause.failures.length > 0 ? causePretty(cause) : void 0,
48902
+ annotations: annotationsObj,
48903
+ spans: spansObj,
48904
+ fiberId: formatFiberId(fiber$2.id)
48905
+ };
48906
+ });
48907
+ /**
48908
+ * A `Logger` which outputs logs using a structured format serialized as JSON
48909
+ * on a single line.
48910
+ *
48911
+ * For example:
48912
+ * ```
48913
+ * {"message":["hello"],"level":"INFO","timestamp":"2025-01-03T14:28:57.508Z","annotations":{"key":"value"},"spans":{"label":0},"fiberId":"#1"}
48914
+ * ```
48915
+ *
48916
+ * @example
48917
+ * ```ts
48918
+ * import { Effect, Logger } from "effect"
48919
+ *
48920
+ * // Use the JSON format logger
48921
+ * const jsonLoggerProgram = Effect.log("Hello JSON Format").pipe(
48922
+ * Effect.provide(Logger.layer([Logger.formatJson]))
48923
+ * )
48924
+ *
48925
+ * // Perfect for log aggregation and processing systems
48926
+ * const productionProgram = Effect.gen(function*() {
48927
+ * yield* Effect.log("Server started", { port: 3000, env: "production" })
48928
+ * yield* Effect.logInfo("Request received", {
48929
+ * method: "GET",
48930
+ * path: "/api/users"
48931
+ * })
48932
+ * yield* Effect.logError("Database error", { error: "Connection timeout" })
48933
+ * }).pipe(
48934
+ * Effect.annotateLogs("service", "api-server"),
48935
+ * Effect.withLogSpan("request-processing"),
48936
+ * Effect.provide(Logger.layer([Logger.formatJson]))
48937
+ * )
48938
+ *
48939
+ * // Send to external logging service
48940
+ * const externalLogger = Logger.map(Logger.formatJson, (jsonString) => {
48941
+ * // Send to Elasticsearch, CloudWatch, etc.
48942
+ * console.log("Sending to external service:", jsonString)
48943
+ * return jsonString
48944
+ * })
48945
+ * ```
48946
+ *
48947
+ * @since 4.0.0
48948
+ * @category constructors
48949
+ */
48950
+ const formatJson = /* @__PURE__ */ map(formatStructured, formatJson$1);
48951
+ /**
48952
+ * A `Logger` which outputs logs in a "pretty" format and writes them to the
48953
+ * console.
48954
+ *
48955
+ * For example:
48956
+ * ```
48957
+ * [09:37:17.579] INFO (#1) label=0ms: hello
48958
+ * key: value
48959
+ * ```
48960
+ *
48961
+ * @example
48962
+ * ```ts
48963
+ * import { Effect, Logger } from "effect"
48964
+ *
48965
+ * // Use the pretty console logger with default settings
48966
+ * const basicPretty = Effect.log("Hello Pretty Format").pipe(
48967
+ * Effect.provide(Logger.layer([Logger.consolePretty()]))
48968
+ * )
48969
+ *
48970
+ * // Configure pretty logger options
48971
+ * const customPretty = Logger.consolePretty({
48972
+ * colors: true,
48973
+ * stderr: false,
48974
+ * mode: "tty",
48975
+ * formatDate: (date) => date.toLocaleTimeString()
48976
+ * })
48977
+ *
48978
+ * // Perfect for development environment
48979
+ * const developmentProgram = Effect.gen(function*() {
48980
+ * yield* Effect.log("Application starting")
48981
+ * yield* Effect.logInfo("Database connected")
48982
+ * yield* Effect.logWarning("High memory usage detected")
48983
+ * }).pipe(
48984
+ * Effect.annotateLogs("environment", "development"),
48985
+ * Effect.withLogSpan("startup"),
48986
+ * Effect.provide(Logger.layer([customPretty]))
48987
+ * )
48988
+ *
48989
+ * // Disable colors for CI/CD environments
48990
+ * const ciLogger = Logger.consolePretty({ colors: false })
48991
+ * ```
48992
+ *
48993
+ * @since 4.0.0
48994
+ * @category constructors
48995
+ */
48996
+ const consolePretty = consolePretty$1;
48997
+ /**
48998
+ * A `Logger` which includes log messages as tracer span events.
48999
+ *
49000
+ * This logger integrates logging with distributed tracing by recording
49001
+ * all log messages as events on the current trace span, making them visible
49002
+ * in tracing tools like OpenTelemetry, Jaeger, or Zipkin.
49003
+ *
49004
+ * **Note**: This logger is included in the default set of loggers for all
49005
+ * Effect programs, so log messages automatically appear as span events unless
49006
+ * you override the default loggers.
49007
+ *
49008
+ * @example
49009
+ * ```ts
49010
+ * import { Effect, Logger } from "effect"
49011
+ *
49012
+ * // Tracer logger is included by default - logs automatically become span events
49013
+ * const defaultProgram = Effect.gen(function*() {
49014
+ * yield* Effect.log("This automatically becomes a span event")
49015
+ * yield* Effect.logInfo("Processing data")
49016
+ * })
49017
+ *
49018
+ * // Explicitly combine tracer logger with other loggers
49019
+ * const observabilityProgram = Effect.gen(function*() {
49020
+ * yield* Effect.log("Operation started")
49021
+ * yield* Effect.logInfo("Processing data")
49022
+ * yield* Effect.logError("Error occurred")
49023
+ * }).pipe(
49024
+ * Effect.withLogSpan("data-processing"),
49025
+ * Effect.provide(Logger.layer([
49026
+ * Logger.tracerLogger,
49027
+ * Logger.consoleJson
49028
+ * ]))
49029
+ * )
49030
+ *
49031
+ * // Perfect for correlating logs with traces in distributed systems
49032
+ * const distributedProgram = Effect.gen(function*() {
49033
+ * yield* Effect.log("Step 1: Fetching user data")
49034
+ * yield* Effect.sleep("100 millis")
49035
+ * yield* Effect.log("Step 2: Processing payment")
49036
+ * yield* Effect.sleep("200 millis")
49037
+ * yield* Effect.log("Step 3: Sending confirmation")
49038
+ * }).pipe(
49039
+ * Effect.withLogSpan("payment-workflow"),
49040
+ * Effect.annotateLogs("userId", "user-123"),
49041
+ * Effect.provide(Logger.layer([Logger.tracerLogger]))
49042
+ * )
49043
+ * ```
49044
+ *
49045
+ * @since 4.0.0
49046
+ * @category constructors
49047
+ */
49048
+ const tracerLogger = tracerLogger$1;
49049
+
48339
49050
  //#endregion
48340
49051
  //#region node_modules/.pnpm/effect@https+++pkg.pr.new+Effect-TS+effect-smol+effect@53d2c5b_bb57938f6a2db8d6e7529a5713147df2/node_modules/effect/dist/unstable/persistence/KeyValueStore.js
48341
49052
  /**
@@ -48364,8 +49075,8 @@ const KeyValueStore = /* @__PURE__ */ Service("effect/persistence/KeyValueStore"
48364
49075
  */
48365
49076
  const make$23 = (options) => KeyValueStore.of({
48366
49077
  [TypeId$18]: TypeId$18,
48367
- has: (key) => map$5(options.get(key), isNotUndefined),
48368
- isEmpty: map$5(options.size, (size$2) => size$2 === 0),
49078
+ has: (key) => map$6(options.get(key), isNotUndefined),
49079
+ isEmpty: map$6(options.size, (size$2) => size$2 === 0),
48369
49080
  modify: (key, f) => flatMap(options.get(key), (o) => {
48370
49081
  if (o === void 0) return undefined_$1;
48371
49082
  const newValue = f(o);
@@ -50142,7 +50853,7 @@ const makePipedCommand = (left, right, options = {}) => Object.assign(Object.cre
50142
50853
  * @since 4.0.0
50143
50854
  * @category Constructors
50144
50855
  */
50145
- const make$21 = function make$53(...args$1) {
50856
+ const make$21 = function make$54(...args$1) {
50146
50857
  if (isTemplateString(args$1[0])) {
50147
50858
  const [templates, ...expressions] = args$1;
50148
50859
  const tokens = parseTemplates(templates, expressions);
@@ -50288,7 +50999,7 @@ const exitCode = (command) => scoped$1(flatMap(spawn(command), (handle) => handl
50288
50999
  * @since 4.0.0
50289
51000
  * @category Execution
50290
51001
  */
50291
- const streamString = /* @__PURE__ */ dual((args$1) => isCommand(args$1[0]), (self$1, options) => spawn(self$1).pipe(map$5((handle) => decodeText(options?.includeStderr === true ? handle.all : handle.stdout)), unwrap));
51002
+ const streamString = /* @__PURE__ */ dual((args$1) => isCommand(args$1[0]), (self$1, options) => spawn(self$1).pipe(map$6((handle) => decodeText(options?.includeStderr === true ? handle.all : handle.stdout)), unwrap));
50292
51003
  /**
50293
51004
  * @since 4.0.0
50294
51005
  * @category Execution
@@ -50585,11 +51296,11 @@ const toArrayBuffer = (readable, options) => {
50585
51296
  * @since 1.0.0
50586
51297
  * @category conversions
50587
51298
  */
50588
- const toUint8Array = (readable, options) => map$5(toArrayBuffer(readable, options), (buffer$1) => new Uint8Array(buffer$1));
51299
+ const toUint8Array = (readable, options) => map$6(toArrayBuffer(readable, options), (buffer$1) => new Uint8Array(buffer$1));
50589
51300
  const readableToPullUnsafe = (options) => {
50590
51301
  const readable = options.readable;
50591
51302
  const closeOnDone = options.closeOnDone ?? true;
50592
- const exit$2 = options.exit ?? make$39(void 0);
51303
+ const exit$2 = options.exit ?? make$40(void 0);
50593
51304
  const latch = makeLatchUnsafe(false);
50594
51305
  function onReadable() {
50595
51306
  latch.openUnsafe();
@@ -50925,7 +51636,7 @@ const make$20 = /* @__PURE__ */ gen(function* () {
50925
51636
  const stdin = yield* setupChildStdin(cmd, childProcess, stdinConfig);
50926
51637
  const { all: all$2, stderr, stdout } = setupChildOutputStreams(cmd, childProcess, stdoutConfig, stderrConfig);
50927
51638
  const { getInputFd, getOutputFd } = yield* setupAdditionalFds(cmd, childProcess, resolvedAdditionalFds);
50928
- const isRunning = map$5(isDone$1(exitSignal), (done$3) => !done$3);
51639
+ const isRunning = map$6(isDone$1(exitSignal), (done$3) => !done$3);
50929
51640
  const exitCode$1 = flatMap(_await(exitSignal), ([code, signal]) => {
50930
51641
  if (isNotNull(code)) return succeed$1(ExitCode(code));
50931
51642
  const error$1 = new globalThis.Error(`Process interrupted due to receipt of signal: '${signal}'`);
@@ -50955,7 +51666,7 @@ const make$20 = /* @__PURE__ */ gen(function* () {
50955
51666
  const command = pipeline$1[i];
50956
51667
  const options = pipeOptions[i] ?? {};
50957
51668
  const stdinConfig = resolveStdinOption(command.options);
50958
- const sourceStream = unwrap(map$5(handle, (h) => getSourceStream(h, options.from)));
51669
+ const sourceStream = unwrap(map$6(handle, (h) => getSourceStream(h, options.from)));
50959
51670
  const toOption$1 = options.to ?? "stdin";
50960
51671
  if (toOption$1 === "stdin") handle = spawnCommand(make$21(command.command, command.args, {
50961
51672
  ...command.options,
@@ -51121,7 +51832,7 @@ const Proto$6 = {
51121
51832
  toJSON() {
51122
51833
  return {
51123
51834
  _id: "effect/Cookies",
51124
- cookies: map$10(this.cookies, (cookie) => cookie.toJSON())
51835
+ cookies: map$11(this.cookies, (cookie) => cookie.toJSON())
51125
51836
  };
51126
51837
  },
51127
51838
  pipe() {
@@ -51166,22 +51877,22 @@ const fromSetCookie = (headers) => {
51166
51877
  return fromIterable(cookies);
51167
51878
  };
51168
51879
  function parseSetCookie(header) {
51169
- const parts = header.split(";").map((_) => _.trim()).filter((_) => _ !== "");
51170
- if (parts.length === 0) return;
51171
- const firstEqual = parts[0].indexOf("=");
51880
+ const parts$1 = header.split(";").map((_) => _.trim()).filter((_) => _ !== "");
51881
+ if (parts$1.length === 0) return;
51882
+ const firstEqual = parts$1[0].indexOf("=");
51172
51883
  if (firstEqual === -1) return;
51173
- const name = parts[0].slice(0, firstEqual);
51884
+ const name = parts$1[0].slice(0, firstEqual);
51174
51885
  if (!fieldContentRegExp.test(name)) return;
51175
- const valueEncoded = parts[0].slice(firstEqual + 1);
51886
+ const valueEncoded = parts$1[0].slice(firstEqual + 1);
51176
51887
  const value = tryDecodeURIComponent(valueEncoded);
51177
- if (parts.length === 1) return Object.assign(Object.create(CookieProto), {
51888
+ if (parts$1.length === 1) return Object.assign(Object.create(CookieProto), {
51178
51889
  name,
51179
51890
  value,
51180
51891
  valueEncoded
51181
51892
  });
51182
51893
  const options = {};
51183
- for (let i = 1; i < parts.length; i++) {
51184
- const part = parts[i];
51894
+ for (let i = 1; i < parts$1.length; i++) {
51895
+ const part = parts$1[i];
51185
51896
  const equalIndex = part.indexOf("=");
51186
51897
  const key = equalIndex === -1 ? part : part.slice(0, equalIndex).trim();
51187
51898
  const value$1 = equalIndex === -1 ? void 0 : part.slice(equalIndex + 1).trim();
@@ -51525,8 +52236,8 @@ const redact = /* @__PURE__ */ dual(2, (self$1, key) => {
51525
52236
  const modify$1 = (key$1) => {
51526
52237
  if (typeof key$1 === "string") {
51527
52238
  const k = key$1.toLowerCase();
51528
- if (k in self$1) out[k] = make$43(self$1[k]);
51529
- } else for (const name in self$1) if (key$1.test(name)) out[name] = make$43(self$1[name]);
52239
+ if (k in self$1) out[k] = make$44(self$1[k]);
52240
+ } else for (const name in self$1) if (key$1.test(name)) out[name] = make$44(self$1[name]);
51530
52241
  };
51531
52242
  if (Array.isArray(key)) for (let i = 0; i < key.length; i++) modify$1(key[i]);
51532
52243
  else modify$1(key);
@@ -51749,7 +52460,7 @@ const fromInputNested = (input) => {
51749
52460
  * @since 4.0.0
51750
52461
  * @category Equivalence
51751
52462
  */
51752
- const Equivalence = /* @__PURE__ */ make$50((a, b) => arrayEquivalence(a.params, b.params));
52463
+ const Equivalence = /* @__PURE__ */ make$51((a, b) => arrayEquivalence(a.params, b.params));
51753
52464
  const arrayEquivalence = /* @__PURE__ */ makeEquivalence$1(/* @__PURE__ */ makeEquivalence$3([/* @__PURE__ */ strictEqual(), /* @__PURE__ */ strictEqual()]));
51754
52465
  /**
51755
52466
  * @since 4.0.0
@@ -51921,7 +52632,7 @@ var Proto$3 = class {
51921
52632
  return this.toJSON();
51922
52633
  }
51923
52634
  toString() {
51924
- return format$2(this, { ignoreToString: true });
52635
+ return format$3(this, { ignoreToString: true });
51925
52636
  }
51926
52637
  };
51927
52638
  /**
@@ -52398,12 +53109,12 @@ const fromHeaders = (headers) => {
52398
53109
  */
52399
53110
  const b3 = (headers) => {
52400
53111
  if (!("b3" in headers)) return;
52401
- const parts = headers["b3"].split("-");
52402
- if (parts.length < 2) return;
53112
+ const parts$1 = headers["b3"].split("-");
53113
+ if (parts$1.length < 2) return;
52403
53114
  return externalSpan({
52404
- traceId: parts[0],
52405
- spanId: parts[1],
52406
- sampled: parts[2] ? parts[2] === "1" : true
53115
+ traceId: parts$1[0],
53116
+ spanId: parts$1[1],
53117
+ sampled: parts$1[2] ? parts$1[2] === "1" : true
52407
53118
  });
52408
53119
  };
52409
53120
  /**
@@ -52426,9 +53137,9 @@ const w3cSpanId = /^[0-9a-f]{16}$/i;
52426
53137
  */
52427
53138
  const w3c = (headers) => {
52428
53139
  if (!headers["traceparent"]) return;
52429
- const parts = headers["traceparent"].split("-");
52430
- if (parts.length !== 4) return;
52431
- const [version$2, traceId, spanId, flags] = parts;
53140
+ const parts$1 = headers["traceparent"].split("-");
53141
+ if (parts$1.length !== 4) return;
53142
+ const [version$2, traceId, spanId, flags] = parts$1;
52432
53143
  switch (version$2) {
52433
53144
  case "00":
52434
53145
  if (w3cTraceId.test(traceId) === false || w3cSpanId.test(spanId) === false) return;
@@ -52549,7 +53260,7 @@ const make$16 = (f) => makeWith((effect$1) => flatMap(effect$1, (request$3) => w
52549
53260
  * @since 4.0.0
52550
53261
  * @category mapping & sequencing
52551
53262
  */
52552
- const mapRequest = /* @__PURE__ */ dual(2, (self$1, f) => makeWith(self$1.postprocess, (request$3) => map$5(self$1.preprocess(request$3), f)));
53263
+ const mapRequest = /* @__PURE__ */ dual(2, (self$1, f) => makeWith(self$1.postprocess, (request$3) => map$6(self$1.preprocess(request$3), f)));
52553
53264
  /**
52554
53265
  * Retries common transient errors, such as rate limiting, timeouts or network issues.
52555
53266
  *
@@ -52595,7 +53306,7 @@ const SpanNameGenerator$1 = /* @__PURE__ */ Reference("effect/http/HttpClient/Sp
52595
53306
  /**
52596
53307
  * @since 4.0.0
52597
53308
  */
52598
- const layerMergedServices = (effect$1) => effect(HttpClient)(servicesWith((services$2) => map$5(effect$1, (client) => transformResponse(client, updateServices((input) => merge$5(services$2, input))))));
53309
+ const layerMergedServices = (effect$1) => effect(HttpClient)(servicesWith((services$2) => map$6(effect$1, (client) => transformResponse(client, updateServices((input) => merge$5(services$2, input))))));
52599
53310
  const responseRegistry = /* @__PURE__ */ (() => {
52600
53311
  if ("FinalizationRegistry" in globalThis && globalThis.FinalizationRegistry) {
52601
53312
  const registry = /* @__PURE__ */ new FinalizationRegistry((controller) => {
@@ -53313,7 +54024,7 @@ function make$13(strings, ...args$1) {
53313
54024
  else values$1[i] = primitiveToString(arg);
53314
54025
  }
53315
54026
  if (effects.length === 0) return succeed$1(consolidate(strings, values$1));
53316
- return map$5(forEach$1(effects, ([index, effect$1]) => tap(effect$1, (value) => {
54027
+ return map$6(forEach$1(effects, ([index, effect$1]) => tap(effect$1, (value) => {
53317
54028
  values$1[index] = primitiveToString(value);
53318
54029
  }), {
53319
54030
  concurrency: "inherit",
@@ -53386,7 +54097,7 @@ const text = (body, options) => {
53386
54097
  */
53387
54098
  const html = (strings, ...args$1) => {
53388
54099
  if (typeof strings === "string") return text(strings, { contentType: "text/html" });
53389
- return map$5(make$13(strings, ...args$1), (_) => text(_, { contentType: "text/html" }));
54100
+ return map$6(make$13(strings, ...args$1), (_) => text(_, { contentType: "text/html" }));
53390
54101
  };
53391
54102
  /**
53392
54103
  * @since 4.0.0
@@ -53853,7 +54564,7 @@ const fromWebSocket = (acquire, options) => withFiber((fiber$2) => {
53853
54564
  const acquireContext = fiber$2.services;
53854
54565
  const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError;
53855
54566
  const runRaw = (handler$1, opts) => scopedWith(fnUntraced(function* (scope$2) {
53856
- const fiberSet = yield* make$24().pipe(provide$4(scope$2));
54567
+ const fiberSet = yield* make$25().pipe(provide$4(scope$2));
53857
54568
  const ws = yield* provide$4(acquire, scope$2);
53858
54569
  const run$8 = yield* provideService(runtime(fiberSet)(), WebSocket$1, ws);
53859
54570
  let open$1 = false;
@@ -54750,8 +55461,8 @@ function make$10({ headers, onFile: onPart, onField, onError: onError$2, onDone,
54750
55461
  }
54751
55462
  let encodedFilename;
54752
55463
  if ("filename*" in contentDisposition.parameters) {
54753
- const parts = contentDisposition.parameters["filename*"].split("''");
54754
- if (parts.length === 2) encodedFilename = decodeURIComponent(parts[1]);
55464
+ const parts$1 = contentDisposition.parameters["filename*"].split("''");
55465
+ if (parts$1.length === 2) encodedFilename = decodeURIComponent(parts$1[1]);
54755
55466
  }
54756
55467
  state.info = {
54757
55468
  name: contentDisposition.parameters.name ?? "",
@@ -54866,8 +55577,8 @@ const makeConfig = (headers) => withFiber((fiber$2) => {
54866
55577
  headers,
54867
55578
  maxParts: fiber$2.getRef(MaxParts),
54868
55579
  maxFieldSize: Number(fiber$2.getRef(MaxFieldSize)),
54869
- maxPartSize: map$12(fiber$2.getRef(MaxFileSize), Number),
54870
- maxTotalSize: map$12(fiber$2.getRef(MaxBodySize), Number),
55580
+ maxPartSize: map$13(fiber$2.getRef(MaxFileSize), Number),
55581
+ maxTotalSize: map$13(fiber$2.getRef(MaxBodySize), Number),
54871
55582
  isFile: mimeTypes.length === 0 ? void 0 : (info) => !mimeTypes.some((_) => info.contentType.includes(_)) && defaultIsFile(info)
54872
55583
  });
54873
55584
  });
@@ -54875,7 +55586,7 @@ const makeConfig = (headers) => withFiber((fiber$2) => {
54875
55586
  * @since 4.0.0
54876
55587
  * @category Parsers
54877
55588
  */
54878
- const makeChannel = (headers) => fromTransform$1((upstream) => map$5(makeConfig(headers), (config) => {
55589
+ const makeChannel = (headers) => fromTransform$1((upstream) => map$6(makeConfig(headers), (config) => {
54879
55590
  let partsBuffer = [];
54880
55591
  let exit$2 = none$3();
54881
55592
  const parser = make$9({
@@ -54918,9 +55629,9 @@ const makeChannel = (headers) => fromTransform$1((upstream) => map$5(makeConfig(
54918
55629
  if (isSome(exit$2)) return exit$2.value;
54919
55630
  return flatMap(pump, loop);
54920
55631
  }
54921
- const parts = partsBuffer;
55632
+ const parts$1 = partsBuffer;
54922
55633
  partsBuffer = [];
54923
- return succeed$1(parts);
55634
+ return succeed$1(parts$1);
54924
55635
  }));
54925
55636
  }));
54926
55637
  function convertError$1(cause) {
@@ -55499,7 +56210,7 @@ const make$7 = /* @__PURE__ */ fnUntraced(function* (impl) {
55499
56210
  return impl.fileResponse(path$2, options?.status ?? 200, options?.statusText, headers, start, end, contentLength);
55500
56211
  }),
55501
56212
  fileWebResponse(file, options) {
55502
- return map$5(etagGen.fromFileWeb(file), (etag) => {
56213
+ return map$6(etagGen.fromFileWeb(file), (etag) => {
55503
56214
  const headers = merge$1(options?.headers ? fromInput$1(options.headers) : empty$4, fromRecordUnsafe({
55504
56215
  etag: toString(etag),
55505
56216
  "last-modified": new Date(file.lastModified).toUTCString()
@@ -55853,7 +56564,7 @@ const makeMiddleware = (middleware$1, options) => options?.global ? effectDiscar
55853
56564
  const router = yield* HttpRouter;
55854
56565
  const fn$2 = isEffect(middleware$1) ? yield* middleware$1 : middleware$1;
55855
56566
  yield* router.addGlobalMiddleware(fn$2);
55856
- })) : new MiddlewareImpl(isEffect(middleware$1) ? effectServices(map$5(middleware$1, (fn$2) => makeUnsafe$8(new Map([[fnContextKey, fn$2]])))) : succeedServices(makeUnsafe$8(new Map([[fnContextKey, middleware$1]]))));
56567
+ })) : new MiddlewareImpl(isEffect(middleware$1) ? effectServices(map$6(middleware$1, (fn$2) => makeUnsafe$8(new Map([[fnContextKey, fn$2]])))) : succeedServices(makeUnsafe$8(new Map([[fnContextKey, middleware$1]]))));
55857
56568
  let middlewareId = 0;
55858
56569
  const fnContextKey = "effect/http/HttpRouter/MiddlewareFn";
55859
56570
  var MiddlewareImpl = class MiddlewareImpl {
@@ -55885,7 +56596,7 @@ const middlewareCache = /* @__PURE__ */ new WeakMap();
55885
56596
  const getMiddleware = (context) => {
55886
56597
  let arr = middlewareCache.get(context);
55887
56598
  if (arr) return arr;
55888
- const topLevel = empty$11();
56599
+ const topLevel = empty$12();
55889
56600
  let maxLength = 0;
55890
56601
  for (const [key, value] of context.mapUnsafe) if (key.startsWith("effect/http/HttpRouter/Middleware-")) {
55891
56602
  topLevel.push(value);
@@ -58550,9 +59261,9 @@ var require_websocket = /* @__PURE__ */ __commonJSMin$1(((exports, module) => {
58550
59261
  else opts.headers.Origin = opts.origin;
58551
59262
  if (parsedUrl.username || parsedUrl.password) opts.auth = `${parsedUrl.username}:${parsedUrl.password}`;
58552
59263
  if (isIpcUrl) {
58553
- const parts = opts.path.split(":");
58554
- opts.socketPath = parts[0];
58555
- opts.path = parts[1];
59264
+ const parts$1 = opts.path.split(":");
59265
+ opts.socketPath = parts$1[0];
59266
+ opts.path = parts$1[1];
58556
59267
  }
58557
59268
  let req;
58558
59269
  if (opts.followRedirects) {
@@ -59394,10 +60105,10 @@ var require_websocket_server = /* @__PURE__ */ __commonJSMin$1(((exports, module
59394
60105
  * called
59395
60106
  * @private
59396
60107
  */
59397
- function addListeners(server, map$13) {
59398
- for (const event of Object.keys(map$13)) server.on(event, map$13[event]);
60108
+ function addListeners(server, map$14) {
60109
+ for (const event of Object.keys(map$14)) server.on(event, map$14[event]);
59399
60110
  return function removeListeners() {
59400
- for (const event of Object.keys(map$13)) server.removeListener(event, map$13[event]);
60111
+ for (const event of Object.keys(map$14)) server.removeListener(event, map$14[event]);
59401
60112
  };
59402
60113
  }
59403
60114
  /**
@@ -59542,7 +60253,7 @@ const makeTempDirectoryScoped = /* @__PURE__ */ (() => {
59542
60253
  const openFactory = (method) => {
59543
60254
  const nodeOpen = effectify(NFS.open, handleErrnoException("FileSystem", method), handleBadArgument(method));
59544
60255
  const nodeClose = effectify(NFS.close, handleErrnoException("FileSystem", method), handleBadArgument(method));
59545
- return (path$2, options) => pipe(acquireRelease(nodeOpen(path$2, options?.flag ?? "r", options?.mode), (fd) => orDie$2(nodeClose(fd))), map$5((fd) => makeFile(FileDescriptor(fd), options?.flag?.startsWith("a") ?? false)));
60256
+ return (path$2, options) => pipe(acquireRelease(nodeOpen(path$2, options?.flag ?? "r", options?.mode), (fd) => orDie$2(nodeClose(fd))), map$6((fd) => makeFile(FileDescriptor(fd), options?.flag?.startsWith("a") ?? false)));
59546
60257
  };
59547
60258
  const open = /* @__PURE__ */ openFactory("open");
59548
60259
  const makeFile = /* @__PURE__ */ (() => {
@@ -59566,7 +60277,7 @@ const makeFile = /* @__PURE__ */ (() => {
59566
60277
  this.append = append$2;
59567
60278
  }
59568
60279
  get stat() {
59569
- return map$5(nodeStat(this.fd), makeFileInfo);
60280
+ return map$6(nodeStat(this.fd), makeFileInfo);
59570
60281
  }
59571
60282
  get sync() {
59572
60283
  return nodeSync(this.fd);
@@ -59582,7 +60293,7 @@ const makeFile = /* @__PURE__ */ (() => {
59582
60293
  read(buffer$1) {
59583
60294
  return suspend$3(() => {
59584
60295
  const position = this.position;
59585
- return map$5(nodeRead(this.fd, {
60296
+ return map$6(nodeRead(this.fd, {
59586
60297
  buffer: buffer$1,
59587
60298
  position
59588
60299
  }), (bytesRead) => {
@@ -59597,7 +60308,7 @@ const makeFile = /* @__PURE__ */ (() => {
59597
60308
  return suspend$3(() => {
59598
60309
  const buffer$1 = Buffer.allocUnsafeSlow(sizeNumber);
59599
60310
  const position = this.position;
59600
- return map$5(nodeReadAlloc(this.fd, {
60311
+ return map$6(nodeReadAlloc(this.fd, {
59601
60312
  buffer: buffer$1,
59602
60313
  position
59603
60314
  }), (bytesRead) => {
@@ -59611,7 +60322,7 @@ const makeFile = /* @__PURE__ */ (() => {
59611
60322
  });
59612
60323
  }
59613
60324
  truncate(length) {
59614
- return map$5(nodeTruncate(this.fd, length ? Number(length) : void 0), () => {
60325
+ return map$6(nodeTruncate(this.fd, length ? Number(length) : void 0), () => {
59615
60326
  if (!this.append) {
59616
60327
  const len = BigInt(length ?? 0);
59617
60328
  if (this.position > len) this.position = len;
@@ -59621,7 +60332,7 @@ const makeFile = /* @__PURE__ */ (() => {
59621
60332
  write(buffer$1) {
59622
60333
  return suspend$3(() => {
59623
60334
  const position = this.position;
59624
- return map$5(nodeWrite(this.fd, buffer$1, void 0, void 0, this.append ? void 0 : Number(position)), (bytesWritten) => {
60335
+ return map$6(nodeWrite(this.fd, buffer$1, void 0, void 0, this.append ? void 0 : Number(position)), (bytesWritten) => {
59625
60336
  const sizeWritten = Size(bytesWritten);
59626
60337
  if (!this.append) this.position = position + sizeWritten;
59627
60338
  return sizeWritten;
@@ -59710,7 +60421,7 @@ const makeFileInfo = (stat$1) => ({
59710
60421
  });
59711
60422
  const stat = /* @__PURE__ */ (() => {
59712
60423
  const nodeStat = /* @__PURE__ */ effectify(NFS.stat, /* @__PURE__ */ handleErrnoException("FileSystem", "stat"), /* @__PURE__ */ handleBadArgument("stat"));
59713
- return (path$2) => map$5(nodeStat(path$2), makeFileInfo);
60424
+ return (path$2) => map$6(nodeStat(path$2), makeFileInfo);
59714
60425
  })();
59715
60426
  const symlink = /* @__PURE__ */ (() => {
59716
60427
  const nodeSymlink = /* @__PURE__ */ effectify(NFS.symlink, /* @__PURE__ */ handleErrnoException("FileSystem", "symlink"), /* @__PURE__ */ handleBadArgument("symlink"));
@@ -59762,7 +60473,7 @@ const watchNode = (path$2) => callback((queue) => acquireRelease(sync(() => {
59762
60473
  });
59763
60474
  return watcher;
59764
60475
  }), (watcher) => sync(() => watcher.close())));
59765
- const watch = (backend, path$2) => stat(path$2).pipe(map$5((stat$1) => {
60476
+ const watch = (backend, path$2) => stat(path$2).pipe(map$6((stat$1) => {
59766
60477
  if (backend) {
59767
60478
  const stream$3 = backend.register(path$2, stat$1);
59768
60479
  if (stream$3) return stream$3;
@@ -59783,7 +60494,7 @@ const writeFile = (path$2, data, options) => callback$1((resume, signal) => {
59783
60494
  resume(fail$4(handleBadArgument("writeFile")(err)));
59784
60495
  }
59785
60496
  });
59786
- const makeFileSystem = /* @__PURE__ */ map$5(/* @__PURE__ */ serviceOption(WatchBackend), (backend) => make$33({
60497
+ const makeFileSystem = /* @__PURE__ */ map$6(/* @__PURE__ */ serviceOption(WatchBackend), (backend) => make$34({
59787
60498
  access,
59788
60499
  chmod,
59789
60500
  chown,
@@ -59918,7 +60629,7 @@ const fetch$1 = /* @__PURE__ */ make$16((request$3, url, signal, fiber$2) => {
59918
60629
  const fetch$2 = fiber$2.getRef(Fetch);
59919
60630
  const options = fiber$2.services.mapUnsafe.get(RequestInit.key) ?? {};
59920
60631
  const headers = options.headers ? merge$1(fromInput$1(options.headers), request$3.headers) : request$3.headers;
59921
- const send = (body) => map$5(tryPromise({
60632
+ const send = (body) => map$6(tryPromise({
59922
60633
  try: () => fetch$2(url, {
59923
60634
  ...options,
59924
60635
  method: request$3.method,
@@ -60079,14 +60790,14 @@ var FileStream = class extends Readable {
60079
60790
  * @since 1.0.0
60080
60791
  * @category constructors
60081
60792
  */
60082
- const stream = (source, headers) => makeConfig(headers).pipe(map$5((config) => fromReadable({
60793
+ const stream = (source, headers) => makeConfig(headers).pipe(map$6((config) => fromReadable({
60083
60794
  evaluate() {
60084
60795
  const parser = make$3(config);
60085
60796
  source.pipe(parser);
60086
60797
  return parser;
60087
60798
  },
60088
60799
  onError: (error$1) => convertError(error$1)
60089
- })), unwrap, map$3(convertPart));
60800
+ })), unwrap, map$4(convertPart));
60090
60801
  /**
60091
60802
  * @since 1.0.0
60092
60803
  * @category constructors
@@ -60299,7 +61010,7 @@ const layer$4 = layer$5;
60299
61010
  const make$2 = /* @__PURE__ */ fnUntraced(function* (shouldQuit = defaultShouldQuit) {
60300
61011
  const stdin = process.stdin;
60301
61012
  const stdout = process.stdout;
60302
- const rlRef = yield* make$34({ acquire: acquireRelease(sync(() => {
61013
+ const rlRef = yield* make$35({ acquire: acquireRelease(sync(() => {
60303
61014
  const rl = readline.createInterface({
60304
61015
  input: stdin,
60305
61016
  escapeCodeTimeout: 50
@@ -60314,7 +61025,7 @@ const make$2 = /* @__PURE__ */ fnUntraced(function* (shouldQuit = defaultShouldQ
60314
61025
  const columns = sync(() => stdout.columns ?? 0);
60315
61026
  const readInput = gen(function* () {
60316
61027
  yield* get$3(rlRef);
60317
- const queue = yield* make$38();
61028
+ const queue = yield* make$39();
60318
61029
  const handleKeypress = (s, k) => {
60319
61030
  const userInput = {
60320
61031
  input: s,
@@ -60345,7 +61056,7 @@ const make$2 = /* @__PURE__ */ fnUntraced(function* (shouldQuit = defaultShouldQ
60345
61056
  cause: err
60346
61057
  }))));
60347
61058
  }));
60348
- return make$28({
61059
+ return make$29({
60349
61060
  columns,
60350
61061
  readInput,
60351
61062
  readLine,
@@ -60452,11 +61163,11 @@ const make = /* @__PURE__ */ fnUntraced(function* (evaluate$1, options) {
60452
61163
  */
60453
61164
  const makeHandler = (httpEffect, options) => {
60454
61165
  const handled = toHandled(httpEffect, handleResponse, options.middleware);
60455
- return map$5(services(), (services$2) => {
61166
+ return map$6(services(), (services$2) => {
60456
61167
  return function handler$1(nodeRequest, nodeResponse) {
60457
- const map$13 = new Map(services$2.mapUnsafe);
60458
- map$13.set(HttpServerRequest.key, new ServerRequestImpl(nodeRequest, nodeResponse));
60459
- const fiber$2 = runIn(runForkWith(makeUnsafe$8(map$13))(handled), options.scope);
61168
+ const map$14 = new Map(services$2.mapUnsafe);
61169
+ map$14.set(HttpServerRequest.key, new ServerRequestImpl(nodeRequest, nodeResponse));
61170
+ const fiber$2 = runIn(runForkWith(makeUnsafe$8(map$14))(handled), options.scope);
60460
61171
  nodeResponse.on("close", () => {
60461
61172
  if (!nodeResponse.writableEnded) fiber$2.interruptUnsafe(clientAbortFiberId);
60462
61173
  });
@@ -60469,7 +61180,7 @@ const makeHandler = (httpEffect, options) => {
60469
61180
  */
60470
61181
  const makeUpgradeHandler = (lazyWss, httpEffect, options) => {
60471
61182
  const handledApp = toHandled(httpEffect, handleResponse, options.middleware);
60472
- return map$5(services(), (services$2) => function handler$1(nodeRequest, socket, head) {
61183
+ return map$6(services(), (services$2) => function handler$1(nodeRequest, socket, head) {
60473
61184
  let nodeResponse_ = void 0;
60474
61185
  const nodeResponse = () => {
60475
61186
  if (nodeResponse_ === void 0) {
@@ -60484,9 +61195,9 @@ const makeUpgradeHandler = (lazyWss, httpEffect, options) => {
60484
61195
  const upgradeEffect = fromWebSocket(flatMap(lazyWss, (wss) => acquireRelease(callback$1((resume) => wss.handleUpgrade(nodeRequest, socket, head, (ws) => {
60485
61196
  resume(succeed$1(ws));
60486
61197
  })), (ws) => sync(() => ws.close()))));
60487
- const map$13 = new Map(services$2.mapUnsafe);
60488
- map$13.set(HttpServerRequest.key, new ServerRequestImpl(nodeRequest, nodeResponse, upgradeEffect));
60489
- const fiber$2 = runIn(runForkWith(makeUnsafe$8(map$13))(handledApp), options.scope);
61198
+ const map$14 = new Map(services$2.mapUnsafe);
61199
+ map$14.set(HttpServerRequest.key, new ServerRequestImpl(nodeRequest, nodeResponse, upgradeEffect));
61200
+ const fiber$2 = runIn(runForkWith(makeUnsafe$8(map$14))(handledApp), options.scope);
60490
61201
  socket.on("close", () => {
60491
61202
  if (!socket.writableEnded) fiber$2.interruptUnsafe(clientAbortFiberId);
60492
61203
  });
@@ -60757,7 +61468,7 @@ const ansiColors = {
60757
61468
 
60758
61469
  //#endregion
60759
61470
  //#region src/CliAgent/claude.ts
60760
- const claudeOutputTransformer = (stream$3) => stream$3.pipe(streamFilterJson(StreamJsonMessage), map$3((m) => m.format()));
61471
+ const claudeOutputTransformer = (stream$3) => stream$3.pipe(streamFilterJson(StreamJsonMessage), map$4((m) => m.format()));
60761
61472
  const ContentBlock = Struct({
60762
61473
  type: String$1,
60763
61474
  text: optional$2(String$1),
@@ -60898,7 +61609,7 @@ const allCliAgents = [
60898
61609
  //#region src/Settings.ts
60899
61610
  var Settings = class extends Service()("lalph/Settings", { make: gen(function* () {
60900
61611
  const store = prefix$1(yield* KeyValueStore, "settings.");
60901
- const cache = yield* make$26({
61612
+ const cache = yield* make$27({
60902
61613
  lookup(setting) {
60903
61614
  const s = toSchemaStore(store, setting.schema);
60904
61615
  return orDie$2(s.get(setting.name));
@@ -135057,10 +135768,10 @@ var TokenManager$1 = class extends Service()("lalph/Linear/TokenManager", { make
135057
135768
  const httpClient = (yield* HttpClient).pipe(filterStatusOk, retryTransient({ schedule: spaced(1e3) }));
135058
135769
  let currentToken = yield* orDie$2(tokenStore.get(""));
135059
135770
  const set$6 = (token) => match$7(token, {
135060
- onNone: () => orDie$2(tokenStore.remove("")).pipe(map$5(() => {
135771
+ onNone: () => orDie$2(tokenStore.remove("")).pipe(map$6(() => {
135061
135772
  currentToken = none$3();
135062
135773
  })),
135063
- onSome: (token$1) => orDie$2(tokenStore.set("", token$1)).pipe(map$5(() => {
135774
+ onSome: (token$1) => orDie$2(tokenStore.set("", token$1)).pipe(map$6(() => {
135064
135775
  currentToken = some(token$1);
135065
135776
  }))
135066
135777
  });
@@ -135079,7 +135790,7 @@ var TokenManager$1 = class extends Service()("lalph/Linear/TokenManager", { make
135079
135790
  }));
135080
135791
  const get$8 = makeSemaphoreUnsafe(1).withPermit(getNoLock);
135081
135792
  const pkce = gen(function* () {
135082
- const deferred = yield* make$47();
135793
+ const deferred = yield* make$48();
135083
135794
  const CallbackRoute = add("GET", "/callback", gen(function* () {
135084
135795
  const params$1 = yield* callbackParams;
135085
135796
  yield* succeed$3(deferred, params$1);
@@ -135181,7 +135892,7 @@ var NoMoreWork = class extends ErrorClass("lalph/Prd/NoMoreWork")({ _tag: tag("N
135181
135892
  //#region src/Linear.ts
135182
135893
  var Linear = class extends Service()("lalph/Linear", { make: gen(function* () {
135183
135894
  const tokens = yield* TokenManager$1;
135184
- const clients = yield* make$36({
135895
+ const clients = yield* make$37({
135185
135896
  lookup: (token) => succeed$1(new LinearClient({ accessToken: token })),
135186
135897
  idleTimeToLive: "1 minute"
135187
135898
  });
@@ -135258,7 +135969,7 @@ const LinearIssueSource = effect(IssueSource, gen(function* () {
135258
135969
  const issues = linear.stream((c) => c.issues({ filter: {
135259
135970
  project: { id: { eq: project.id } },
135260
135971
  assignee: { isMe: { eq: true } },
135261
- labels: { id: labelId.pipe(map$11((eq) => ({ eq })), getOrNull) },
135972
+ labels: { id: labelId.pipe(map$12((eq) => ({ eq })), getOrNull) },
135262
135973
  state: { type: { in: [
135263
135974
  "unstarted",
135264
135975
  "started",
@@ -135282,7 +135993,7 @@ const LinearIssueSource = effect(IssueSource, gen(function* () {
135282
135993
  estimate: issue.estimate ?? null,
135283
135994
  state,
135284
135995
  blockedBy: blockedBy.map((i) => i.identifier),
135285
- autoMerge: autoMergeLabelId.pipe(map$11((labelId$1) => issue.labelIds.includes(labelId$1)), getOrElse(() => false)),
135996
+ autoMerge: autoMergeLabelId.pipe(map$12((labelId$1) => issue.labelIds.includes(labelId$1)), getOrElse(() => false)),
135286
135997
  githubPrNumber: null
135287
135998
  });
135288
135999
  }), { concurrency: 10 }), runCollect, mapError$2((cause) => new IssueSourceError({ cause })));
@@ -135732,7 +136443,7 @@ function parse(options) {
135732
136443
  if (!/^http/.test(url)) url = options.baseUrl + url;
135733
136444
  const remainingParameters = omit(parameters, Object.keys(options).filter((option$3) => urlVariableNames.includes(option$3)).concat("baseUrl"));
135734
136445
  if (!/application\/octet-stream/i.test(headers.accept)) {
135735
- if (options.mediaType.format) headers.accept = headers.accept.split(/,/).map((format$3) => format$3.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)).join(",");
136446
+ if (options.mediaType.format) headers.accept = headers.accept.split(/,/).map((format$4) => format$4.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)).join(",");
135736
136447
  if (url.endsWith("/graphql")) {
135737
136448
  if (options.mediaType.previews?.length) headers.accept = (headers.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g) || []).concat(options.mediaType.previews).map((preview) => {
135738
136449
  return `application/vnd.github.${preview}-preview${options.mediaType.format ? `.${options.mediaType.format}` : "+json"}`;
@@ -138792,7 +139503,7 @@ var require_light = /* @__PURE__ */ __commonJSMin$1(((exports, module) => {
138792
139503
  });
138793
139504
  index = this._randomIndex();
138794
139505
  return this._store.__register__(index, options.weight, options.expiration).then(({ success, wait: wait$1, reservoir }) => {
138795
- var empty$14;
139506
+ var empty$15;
138796
139507
  this.Events.trigger("debug", `Drained ${options.id}`, {
138797
139508
  success,
138798
139509
  args: args$1,
@@ -138800,9 +139511,9 @@ var require_light = /* @__PURE__ */ __commonJSMin$1(((exports, module) => {
138800
139511
  });
138801
139512
  if (success) {
138802
139513
  queue.shift();
138803
- empty$14 = this.empty();
138804
- if (empty$14) this.Events.trigger("empty");
138805
- if (reservoir === 0) this.Events.trigger("depleted", empty$14);
139514
+ empty$15 = this.empty();
139515
+ if (empty$15) this.Events.trigger("empty");
139516
+ if (reservoir === 0) this.Events.trigger("depleted", empty$15);
138806
139517
  this._run(index, next, wait$1);
138807
139518
  return this.Promise.resolve(options.weight);
138808
139519
  } else return this.Promise.resolve(null);
@@ -139281,7 +139992,7 @@ function oauthAuthorizationUrl(options) {
139281
139992
  return result$2;
139282
139993
  }
139283
139994
  function urlBuilderAuthorize(base, options) {
139284
- const map$13 = {
139995
+ const map$14 = {
139285
139996
  allowSignup: "allow_signup",
139286
139997
  clientId: "client_id",
139287
139998
  login: "login",
@@ -139290,11 +140001,11 @@ function urlBuilderAuthorize(base, options) {
139290
140001
  state: "state"
139291
140002
  };
139292
140003
  let url = base;
139293
- Object.keys(map$13).filter((k) => options[k] !== null).filter((k) => {
140004
+ Object.keys(map$14).filter((k) => options[k] !== null).filter((k) => {
139294
140005
  if (k !== "scopes") return true;
139295
140006
  if (options.clientType === "github-app") return false;
139296
140007
  return !Array.isArray(options[k]) || options[k].length > 0;
139297
- }).map((key) => [map$13[key], `${options[key]}`]).forEach(([key, value], index) => {
140008
+ }).map((key) => [map$14[key], `${options[key]}`]).forEach(([key, value], index) => {
139298
140009
  url += index === 0 ? `?` : "&";
139299
140010
  url += `${key}=${encodeURIComponent(value)}`;
139300
140011
  });
@@ -141442,10 +142153,10 @@ var TokenManager = class extends Service()("lalph/Github/TokenManager", { make:
141442
142153
  const httpClient = (yield* HttpClient).pipe(filterStatusOk, retryTransient({ schedule: spaced(1e3) }));
141443
142154
  let currentToken = yield* orDie$2(tokenStore.get(""));
141444
142155
  const set$6 = (token) => match$7(token, {
141445
- onNone: () => orDie$2(tokenStore.remove("")).pipe(map$5(() => {
142156
+ onNone: () => orDie$2(tokenStore.remove("")).pipe(map$6(() => {
141446
142157
  currentToken = none$3();
141447
142158
  })),
141448
- onSome: (t) => orDie$2(tokenStore.set("", t)).pipe(map$5(() => {
142159
+ onSome: (t) => orDie$2(tokenStore.set("", t)).pipe(map$6(() => {
141449
142160
  currentToken = token;
141450
142161
  }))
141451
142162
  });
@@ -141539,17 +142250,17 @@ var ReviewThreads = class extends Class("github/ReviewThreads")({ edges: Array$1
141539
142250
  //#region src/Github/Cli.ts
141540
142251
  var GithubCli = class extends Service()("lalph/Github/Cli", { make: gen(function* () {
141541
142252
  const spawner = yield* ChildProcessSpawner;
141542
- const [owner, repo] = (yield* make$21`gh repo view --json nameWithOwner -q ${".nameWithOwner"}`.pipe(string, option$1, flatMap(flow(map$11(trim), filter$5(isNonEmpty), match$7({
142253
+ const [owner, repo] = (yield* make$21`gh repo view --json nameWithOwner -q ${".nameWithOwner"}`.pipe(string, option$1, flatMap(flow(map$12(trim), filter$5(isNonEmpty), match$7({
141543
142254
  onNone: () => fail$4(new GithubCliRepoNotFound()),
141544
142255
  onSome: (value) => succeed$1(value)
141545
142256
  }))))).split("/");
141546
- const reviewComments = (pr) => make$21`gh api graphql -f owner=${owner} -f repo=${repo} -F pr=${pr} -f query=${githubReviewCommentsQuery}`.pipe(string, flatMap(decodeEffect(CommentsFromJson)), map$5((data) => {
142257
+ const reviewComments = (pr) => make$21`gh api graphql -f owner=${owner} -f repo=${repo} -F pr=${pr} -f query=${githubReviewCommentsQuery}`.pipe(string, flatMap(decodeEffect(CommentsFromJson)), map$6((data) => {
141547
142258
  return {
141548
142259
  comments: data.data.repository.pullRequest.comments.edges.map((edge) => edge.node),
141549
142260
  reviewThreads: data.data.repository.pullRequest.reviewThreads.edges.map((edge) => edge.node)
141550
142261
  };
141551
142262
  }), provideService(ChildProcessSpawner, spawner));
141552
- const prFeedbackMd = (pr) => reviewComments(pr).pipe(map$5(({ comments, reviewThreads }) => {
142263
+ const prFeedbackMd = (pr) => reviewComments(pr).pipe(map$6(({ comments, reviewThreads }) => {
141553
142264
  const eligibleReviewThreads = reviewThreads.filter((thread) => thread.shouldDisplayThread);
141554
142265
  if (comments.length === 0 && eligibleReviewThreads.length === 0) return `No review comments found.`;
141555
142266
  let content = `# PR feedback
@@ -141647,7 +142358,7 @@ const githubReviewCommentsQuery = `
141647
142358
  var GithubError = class extends TaggedError("GithubError") {};
141648
142359
  var Github = class extends Service()("lalph/Github", { make: gen(function* () {
141649
142360
  const tokens = yield* TokenManager;
141650
- const clients = yield* make$36({
142361
+ const clients = yield* make$37({
141651
142362
  lookup: (token) => succeed$1(new Octokit({ auth: token }).rest),
141652
142363
  idleTimeToLive: "1 minute"
141653
142364
  });
@@ -141659,11 +142370,11 @@ var Github = class extends Service()("lalph/Github", { make: gen(function* () {
141659
142370
  const wrap = (f) => (...args$1) => getClient.pipe(flatMap((rest) => tryPromise({
141660
142371
  try: () => f(rest)(...args$1),
141661
142372
  catch: (cause) => new GithubError({ cause })
141662
- })), scoped$1, map$5((_) => _.data), withSpan("Github.wrap"));
142373
+ })), scoped$1, map$6((_) => _.data), withSpan("Github.wrap"));
141663
142374
  const stream$3 = (f) => paginate$1(0, (page) => getClient.pipe(flatMap((rest) => tryPromise({
141664
142375
  try: () => f(rest, page),
141665
142376
  catch: (cause) => new GithubError({ cause })
141666
- })), scoped$1, map$5((_) => [_.data, maybeNextPage(page, _.headers.link)])));
142377
+ })), scoped$1, map$6((_) => [_.data, maybeNextPage(page, _.headers.link)])));
141667
142378
  return {
141668
142379
  request: request$3,
141669
142380
  wrap,
@@ -141712,7 +142423,7 @@ const GithubIssueSource = effect(IssueSource, gen(function* () {
141712
142423
  estimate: null,
141713
142424
  state,
141714
142425
  blockedBy: dependencies.map((dep) => `#${dep.number}`),
141715
- autoMerge: autoMergeLabelName.pipe(map$11((labelName) => hasLabel(issue.labels, labelName)), getOrElse(() => false)),
142426
+ autoMerge: autoMergeLabelName.pipe(map$12((labelName) => hasLabel(issue.labels, labelName)), getOrElse(() => false)),
141716
142427
  githubPrNumber: null
141717
142428
  });
141718
142429
  }), { concurrency: 10 }), runCollect, mapError$2((cause) => new IssueSourceError({ cause })));
@@ -141782,7 +142493,7 @@ const GithubIssueSource = effect(IssueSource, gen(function* () {
141782
142493
  yield* updateIssue(update);
141783
142494
  if (options.blockedBy !== void 0) {
141784
142495
  const desiredBlockedBy = options.blockedBy;
141785
- const currentBlockedBy = yield* listOpenBlockedBy(issueNumber).pipe(map$3((issue) => issue.number), runCollect);
142496
+ const currentBlockedBy = yield* listOpenBlockedBy(issueNumber).pipe(map$4((issue) => issue.number), runCollect);
141786
142497
  const currentNumbers = new Set(currentBlockedBy);
141787
142498
  const desiredNumbers = new Set(desiredBlockedBy.map((id) => Number(id.slice(1))).filter((id) => Number.isFinite(id)));
141788
142499
  const toAdd = desiredBlockedBy.reduce((acc, id) => {
@@ -141894,7 +142605,7 @@ const resetCurrentIssueSource = gen(function* () {
141894
142605
  var CurrentIssueSource = class CurrentIssueSource extends Service()("lalph/CurrentIssueSource") {
141895
142606
  static layer = effectServices(gen(function* () {
141896
142607
  const source = yield* getOrSelectIssueSource;
141897
- const services$2 = yield* buildWithMemoMap(source.layer, yield* CurrentMemoMap, yield* scope);
142608
+ const services$2 = yield* buildWithMemoMap(source.layer, yield* CurrentMemoMap, yield* scope).pipe(withSpan("CurrentIssueSource.build"));
141898
142609
  return add$3(services$2, CurrentIssueSource, source);
141899
142610
  }));
141900
142611
  };
@@ -142137,9 +142848,9 @@ const seedSetupScript = fnUntraced(function* (setupPath) {
142137
142848
  yield* fs.chmod(setupPath, 493);
142138
142849
  });
142139
142850
  const discoverBaseBranch = gen(function* () {
142140
- const originHead = yield* make$21`git symbolic-ref --short refs/remotes/origin/HEAD`.pipe(string, catch_$1((_) => succeed$1("")), map$5((output) => output.trim()));
142851
+ const originHead = yield* make$21`git symbolic-ref --short refs/remotes/origin/HEAD`.pipe(string, catch_$1((_) => succeed$1("")), map$6((output) => output.trim()));
142141
142852
  if (originHead !== "") return originHead.startsWith("origin/") ? originHead.slice(7) : originHead;
142142
- const currentBranch = yield* make$21`git branch --show-current`.pipe(string, catch_$1((_) => succeed$1("")), map$5((output) => output.trim()));
142853
+ const currentBranch = yield* make$21`git branch --show-current`.pipe(string, catch_$1((_) => succeed$1("")), map$6((output) => output.trim()));
142143
142854
  return currentBranch === "" ? "main" : currentBranch;
142144
142855
  });
142145
142856
  const setupScriptTemplate = (baseBranch) => `#!/usr/bin/env bash
@@ -142167,7 +142878,7 @@ var Prd = class extends Service()("lalph/Prd", { make: gen(function* () {
142167
142878
  const syncSemaphore = makeSemaphoreUnsafe(1);
142168
142879
  const mergableGithubPrs = gen(function* () {
142169
142880
  const updated = yield* readPrd;
142170
- const prs = empty$11();
142881
+ const prs = empty$12();
142171
142882
  for (const issue of updated) {
142172
142883
  if (!updatedIssues.get(issue.id ?? "") || !issue.githubPrNumber || issue.state !== "in-review") continue;
142173
142884
  prs.push({
@@ -142224,7 +142935,7 @@ var Prd = class extends Service()("lalph/Prd", { make: gen(function* () {
142224
142935
  let current = yield* source.issues;
142225
142936
  yield* fs.writeFileString(prdFile, PrdIssue.arrayToYaml(current));
142226
142937
  const updatedIssues = /* @__PURE__ */ new Map();
142227
- const sync$2 = syncSemaphore.withPermit(gen(function* () {
142938
+ const sync$2 = gen(function* () {
142228
142939
  const updated = yield* readPrd;
142229
142940
  if (!(updated.length !== current.length || updated.some((u, i) => u.isChangedComparedTo(current[i])))) return;
142230
142941
  const githubPrs = /* @__PURE__ */ new Map();
@@ -142257,8 +142968,8 @@ var Prd = class extends Service()("lalph/Prd", { make: gen(function* () {
142257
142968
  githubPrNumber: prNumber
142258
142969
  });
142259
142970
  })));
142260
- }).pipe(uninterruptible));
142261
- const updateSyncHandle = yield* make$25();
142971
+ }).pipe(uninterruptible, syncSemaphore.withPermit, withSpan("Prd.sync"));
142972
+ const updateSyncHandle = yield* make$26();
142262
142973
  const updateSync = gen(function* () {
142263
142974
  const tempFile = yield* fs.makeTempFileScoped();
142264
142975
  const sourceIssues = yield* source.issues;
@@ -142289,7 +143000,7 @@ var Prd = class extends Service()("lalph/Prd", { make: gen(function* () {
142289
143000
  flagUnmergable,
142290
143001
  findById
142291
143002
  };
142292
- }) }) {
143003
+ }).pipe(withSpan("Prd.build")) }) {
142293
143004
  static layerNoWorktree = effect(this, this.make);
142294
143005
  static layer = this.layerNoWorktree.pipe(provideMerge(Worktree.layer));
142295
143006
  static layerLocal = this.layerNoWorktree.pipe(provideMerge(Worktree.layerLocal));
@@ -142324,8 +143035,8 @@ const parseCommand = (command) => {
142324
143035
  //#region src/commands/agent.ts
142325
143036
  const commandPrefixSetting = new Setting("commandPrefix", Option(String$1));
142326
143037
  const parseCommandPrefix = (value) => {
142327
- const parts = parseCommand(value);
142328
- return isReadonlyArrayNonEmpty(parts) ? prefix(parts[0], parts.slice(1)) : identity;
143038
+ const parts$1 = parseCommand(value);
143039
+ return isReadonlyArrayNonEmpty(parts$1) ? prefix(parts$1[0], parts$1.slice(1)) : identity;
142329
143040
  };
142330
143041
  const normalizePrefix = (value) => some(value.trim()).pipe(filter$5(isNonEmpty));
142331
143042
  const promptForCommandPrefix = gen(function* () {
@@ -142357,7 +143068,7 @@ const getOrSelectCliAgent = gen(function* () {
142357
143068
  if (isSome(selectedAgent)) return selectedAgent.value;
142358
143069
  return yield* selectCliAgent;
142359
143070
  });
142360
- const commandAgent = make$27("agent").pipe(withDescription("Select the CLI agent to use"), withHandler(() => selectCliAgent));
143071
+ const commandAgent = make$28("agent").pipe(withDescription("Select the CLI agent to use"), withHandler(() => selectCliAgent));
142361
143072
 
142362
143073
  //#endregion
142363
143074
  //#region src/commands/root.ts
@@ -142370,15 +143081,17 @@ const targetBranch = string$1("target-branch").pipe(withDescription$1("Target br
142370
143081
  const maxIterationMinutes = integer("max-minutes").pipe(withDescription$1("Maximum number of minutes to allow an iteration to run. Defaults to 90 minutes. Env variable: LALPH_MAX_MINUTES"), withFallbackConfig(int("LALPH_MAX_MINUTES")), withDefault(90));
142371
143082
  const stallMinutes = integer("stall-minutes").pipe(withDescription$1("If no activity occurs for this many minutes, the iteration will be stopped. Defaults to 5 minutes. Env variable: LALPH_STALL_MINUTES"), withFallbackConfig(int("LALPH_STALL_MINUTES")), withDefault(5));
142372
143083
  const specsDirectory = directory("specs").pipe(withDescription$1("Directory to store plan specifications. Env variable: LALPH_SPECS"), withAlias("s"), withFallbackConfig(string$4("LALPH_SPECS")), withDefault(".specs"));
143084
+ const verbose = boolean("verbose").pipe(withDescription$1("Enable verbose logging"), withAlias("v"));
142373
143085
  const reset = boolean("reset").pipe(withDescription$1("Reset the current issue source before running"), withAlias("r"));
142374
- const commandRoot = make$27("lalph", {
143086
+ const commandRoot = make$28("lalph", {
142375
143087
  iterations,
142376
143088
  concurrency,
142377
143089
  targetBranch,
142378
143090
  maxIterationMinutes,
142379
143091
  stallMinutes,
142380
143092
  reset,
142381
- specsDirectory
143093
+ specsDirectory,
143094
+ verbose
142382
143095
  }).pipe(withHandler(fnUntraced(function* ({ iterations: iterations$1, concurrency: concurrency$1, targetBranch: targetBranch$1, maxIterationMinutes: maxIterationMinutes$1, stallMinutes: stallMinutes$1, specsDirectory: specsDirectory$1 }) {
142383
143096
  const source = yield* build(CurrentIssueSource.layer);
142384
143097
  const commandPrefix = yield* getCommandPrefix;
@@ -142387,8 +143100,8 @@ const commandRoot = make$27("lalph", {
142387
143100
  const iterationsDisplay = isFinite$3 ? iterations$1 : "unlimited";
142388
143101
  const runConcurrency = Math.max(1, concurrency$1);
142389
143102
  const semaphore = makeSemaphoreUnsafe(runConcurrency);
142390
- const fibers = yield* make$24();
142391
- yield* resetInProgress.pipe(provide$1(source));
143103
+ const fibers = yield* make$25();
143104
+ yield* resetInProgress.pipe(provide$1(source), withSpan("Main.resetInProgress"));
142392
143105
  yield* log$1(`Executing ${iterationsDisplay} iteration(s) with concurrency ${runConcurrency}`);
142393
143106
  if (isSome(targetBranch$1)) yield* log$1(`Using target branch: ${targetBranch$1.value}`);
142394
143107
  let iteration = 0;
@@ -142397,7 +143110,7 @@ const commandRoot = make$27("lalph", {
142397
143110
  yield* semaphore.take(1);
142398
143111
  if (quit || isFinite$3 && iteration >= iterations$1) break;
142399
143112
  const currentIteration = iteration;
142400
- const startedDeferred = yield* make$47();
143113
+ const startedDeferred = yield* make$48();
142401
143114
  yield* checkForWork.pipe(andThen(run({
142402
143115
  startedDeferred,
142403
143116
  targetBranch: targetBranch$1,
@@ -142439,7 +143152,7 @@ const run = fnUntraced(function* (options) {
142439
143152
  const stallTimeout = suspend$3(function loop() {
142440
143153
  const now$2 = nowUnsafe();
142441
143154
  const deadline = addDuration(lastOutputAt, options.stallTimeout);
142442
- if (isLessThan$1(deadline, now$2)) return fail$4(new RunnerStalled());
143155
+ if (isLessThan$2(deadline, now$2)) return fail$4(new RunnerStalled());
142443
143156
  const timeUntilDeadline = distanceDuration(deadline, now$2);
142444
143157
  return flatMap(sleep(timeUntilDeadline), loop);
142445
143158
  });
@@ -142513,7 +143226,7 @@ const run = fnUntraced(function* (options) {
142513
143226
  if ((yield* exec`gh pr merge ${pr.prNumber} -sd`) !== 0) yield* prd.flagUnmergable({ issueId: pr.issueId });
142514
143227
  }
142515
143228
  }).pipe(ensuring(gen(function* () {
142516
- const currentBranchName = yield* currentBranch(worktree.directory).pipe(option$1, map$5(getOrUndefined));
143229
+ const currentBranchName = yield* currentBranch(worktree.directory).pipe(option$1, map$6(getOrUndefined));
142517
143230
  if (!currentBranchName) return;
142518
143231
  yield* exec`git checkout --detach ${currentBranchName}`;
142519
143232
  yield* exec`git branch -D ${currentBranchName}`;
@@ -142533,7 +143246,7 @@ const ChosenTask = fromJsonString(Struct({
142533
143246
  //#endregion
142534
143247
  //#region src/commands/plan.ts
142535
143248
  const dangerous = boolean("dangerous").pipe(withAlias("d"), withDescription$1("Enable dangerous mode (skip permission prompts) during plan generation"));
142536
- const commandPlan = make$27("plan", { dangerous }).pipe(withDescription("Iterate on an issue plan and create PRD tasks"), withHandler(fnUntraced(function* ({ dangerous: dangerous$1 }) {
143249
+ const commandPlan = make$28("plan", { dangerous }).pipe(withDescription("Iterate on an issue plan and create PRD tasks"), withHandler(fnUntraced(function* ({ dangerous: dangerous$1 }) {
142537
143250
  const { specsDirectory: specsDirectory$1, targetBranch: targetBranch$1 } = yield* commandRoot;
142538
143251
  yield* plan({
142539
143252
  specsDirectory: specsDirectory$1,
@@ -142568,7 +143281,7 @@ const plan = fnUntraced(function* (options) {
142568
143281
 
142569
143282
  //#endregion
142570
143283
  //#region src/shared/config.ts
142571
- const configEditor = string$4("LALPH_EDITOR").pipe(orElse(() => string$4("EDITOR")), map$2(parseCommand), withDefault$2(() => ["nano"]));
143284
+ const configEditor = string$4("LALPH_EDITOR").pipe(orElse(() => string$4("EDITOR")), map$3(parseCommand), withDefault$2(() => ["nano"]));
142572
143285
 
142573
143286
  //#endregion
142574
143287
  //#region src/commands/issue.ts
@@ -142588,7 +143301,7 @@ const FrontMatterSchema = toCodecJson(Struct({
142588
143301
  blockedBy: Array$1(String$1),
142589
143302
  autoMerge: Boolean$2
142590
143303
  }));
142591
- const commandIssue = make$27("issue").pipe(withDescription("Create a new issue in the selected issue source"), withHandler(fnUntraced(function* () {
143304
+ const commandIssue = make$28("issue").pipe(withDescription("Create a new issue in the selected issue source"), withHandler(fnUntraced(function* () {
142592
143305
  const source = yield* IssueSource;
142593
143306
  const fs = yield* FileSystem;
142594
143307
  const tempFile = yield* fs.makeTempFileScoped({ suffix: ".md" });
@@ -142628,7 +143341,7 @@ const commandIssue = make$27("issue").pipe(withDescription("Create a new issue i
142628
143341
 
142629
143342
  //#endregion
142630
143343
  //#region src/commands/edit.ts
142631
- const commandEdit = make$27("edit").pipe(withDescription("Open the prd.yml file in your editor"), withHandler(fnUntraced(function* () {
143344
+ const commandEdit = make$28("edit").pipe(withDescription("Open the prd.yml file in your editor"), withHandler(fnUntraced(function* () {
142632
143345
  const prd = yield* Prd;
142633
143346
  const editor = yield* configEditor;
142634
143347
  yield* make$21(editor[0], [...editor.slice(1), prd.path], {
@@ -142641,7 +143354,7 @@ const commandEdit = make$27("edit").pipe(withDescription("Open the prd.yml file
142641
143354
 
142642
143355
  //#endregion
142643
143356
  //#region src/commands/shell.ts
142644
- const commandShell = make$27("shell").pipe(withDescription("Enter an interactive shell in the worktree"), withHandler(fnUntraced(function* () {
143357
+ const commandShell = make$28("shell").pipe(withDescription("Enter an interactive shell in the worktree"), withHandler(fnUntraced(function* () {
142645
143358
  const worktree = yield* Worktree;
142646
143359
  const fs = yield* FileSystem;
142647
143360
  const pathService = yield* Path$1;
@@ -142656,11 +143369,47 @@ const commandShell = make$27("shell").pipe(withDescription("Enter an interactive
142656
143369
 
142657
143370
  //#endregion
142658
143371
  //#region src/commands/source.ts
142659
- const commandSource = make$27("source").pipe(withDescription("Select the issue source to use"), withHandler(() => selectIssueSource));
143372
+ const commandSource = make$28("source").pipe(withDescription("Select the issue source to use"), withHandler(() => selectIssueSource));
142660
143373
 
142661
143374
  //#endregion
142662
143375
  //#region package.json
142663
- var version = "0.1.78";
143376
+ var version = "0.1.80";
143377
+
143378
+ //#endregion
143379
+ //#region src/Tracing.ts
143380
+ const TracingLayer = unwrap$3(gen(function* () {
143381
+ const logLevel = yield* MinimumLogLevel;
143382
+ if (isLessThan$1("Trace", logLevel)) return empty$10;
143383
+ return TracerLogger;
143384
+ }));
143385
+ const TracerLogger = gen(function* () {
143386
+ const loggers = yield* CurrentLoggers;
143387
+ const tracer$3 = yield* Tracer;
143388
+ const fiber$2 = getCurrent();
143389
+ const log$2 = (message, time) => {
143390
+ const options = {
143391
+ message,
143392
+ fiber: fiber$2,
143393
+ date: new Date(Number(time / BigInt(1e6))),
143394
+ logLevel: "Trace",
143395
+ cause: empty$9
143396
+ };
143397
+ loggers.forEach((logger$1) => {
143398
+ logger$1.log(options);
143399
+ });
143400
+ };
143401
+ return make$49({ span(name, parent, annotations$1, links, startTime, kind, options) {
143402
+ const span = tracer$3.span(name, parent, annotations$1, links, startTime, kind, options);
143403
+ log$2(`${name}: started`, startTime);
143404
+ const oldEnd = span.end;
143405
+ span.end = (endTime, cause) => {
143406
+ const duration = nanos(endTime - span.status.startTime);
143407
+ log$2(`${name}: completed. Took ${format$2(duration)}`, endTime);
143408
+ return oldEnd.call(span, endTime, cause);
143409
+ };
143410
+ return span;
143411
+ } });
143412
+ }).pipe(effect(Tracer));
142664
143413
 
142665
143414
  //#endregion
142666
143415
  //#region src/cli.ts
@@ -142673,7 +143422,7 @@ commandRoot.pipe(withSubcommands([
142673
143422
  commandAgent
142674
143423
  ]), provideEffectDiscard(fnUntraced(function* (options) {
142675
143424
  if (options.reset) yield* resetCurrentIssueSource;
142676
- })), (_) => run$3(_, { version }), provide$1(mergeAll(Settings.layer, GithubCli.layer).pipe(provideMerge(layer$1))), runMain);
143425
+ })), provide(TracingLayer), provide(({ verbose: verbose$1 }) => verbose$1 ? succeed$2(MinimumLogLevel, "All") : empty$10), (_) => run$3(_, { version }), provide$1(mergeAll(Settings.layer, GithubCli.layer).pipe(provideMerge(layer$1))), runMain);
142677
143426
 
142678
143427
  //#endregion
142679
143428
  export { };