repo-dive 0.11.1 → 0.12.0

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.js CHANGED
@@ -15,7 +15,7 @@ import * as NodeUrl from "node:url";
15
15
  import { fileURLToPath, pathToFileURL } from "node:url";
16
16
  import { access, mkdir, mkdtemp, readFile, readdir, rm, writeFile } from "node:fs/promises";
17
17
  import * as readline from "node:readline";
18
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Pipeable.js
18
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Pipeable.js
19
19
  /**
20
20
  * The `Pipeable` module defines the shared interface and implementation helpers
21
21
  * for values that support Effect-style method chaining with `.pipe(...)`.
@@ -117,7 +117,7 @@ var Class$3 = /*#__PURE__*/ function() {
117
117
  return PipeableBase;
118
118
  }();
119
119
  //#endregion
120
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Function.js
120
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Function.js
121
121
  /**
122
122
  * Creates a function that can be called in data-first style or data-last
123
123
  * (`pipe`-friendly) style.
@@ -396,7 +396,7 @@ function memoize(f) {
396
396
  };
397
397
  }
398
398
  //#endregion
399
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/equal.js
399
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/equal.js
400
400
  /** @internal */
401
401
  var getAllObjectKeys = (obj) => {
402
402
  const keys = new Set(Reflect.ownKeys(obj));
@@ -415,7 +415,7 @@ var getAllObjectKeys = (obj) => {
415
415
  /** @internal */
416
416
  var byReferenceInstances = /*#__PURE__*/ new WeakSet();
417
417
  //#endregion
418
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Predicate.js
418
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Predicate.js
419
419
  /**
420
420
  * Defines runtime checks for values.
421
421
  *
@@ -1019,7 +1019,7 @@ function isIterable(input) {
1019
1019
  return hasProperty(input, Symbol.iterator) || isString(input);
1020
1020
  }
1021
1021
  //#endregion
1022
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Hash.js
1022
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Hash.js
1023
1023
  /**
1024
1024
  * Computes Effect hash values and defines the interface for objects that want
1025
1025
  * to provide their own hash implementation. Hashes are small numeric
@@ -1432,7 +1432,7 @@ function withVisitedTracking$1(obj, fn) {
1432
1432
  return result;
1433
1433
  }
1434
1434
  //#endregion
1435
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Equal.js
1435
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Equal.js
1436
1436
  /**
1437
1437
  * Defines the unique string identifier for the `Equal` interface.
1438
1438
  *
@@ -1658,7 +1658,7 @@ var compareSets = /*#__PURE__*/ makeCompareSet(compareBoth);
1658
1658
  */
1659
1659
  var isEqual = (u) => hasProperty(u, symbol$2);
1660
1660
  //#endregion
1661
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Redactable.js
1661
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Redactable.js
1662
1662
  /**
1663
1663
  * Defines the symbol used to identify objects that implement the {@link Redactable}
1664
1664
  * protocol.
@@ -1777,7 +1777,7 @@ var emptyContext$1 = {
1777
1777
  }
1778
1778
  };
1779
1779
  //#endregion
1780
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Formatter.js
1780
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Formatter.js
1781
1781
  /**
1782
1782
  * Formats JavaScript values into readable strings.
1783
1783
  *
@@ -2011,7 +2011,7 @@ function formatJson(input, options) {
2011
2011
  }, options?.space) ?? "null";
2012
2012
  }
2013
2013
  //#endregion
2014
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Inspectable.js
2014
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Inspectable.js
2015
2015
  /**
2016
2016
  * Controls how values appear in logs and debugging output.
2017
2017
  *
@@ -2158,7 +2158,7 @@ var BaseProto = {
2158
2158
  }
2159
2159
  };
2160
2160
  //#endregion
2161
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Utils.js
2161
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Utils.js
2162
2162
  /**
2163
2163
  * Yields its wrapped value exactly once through an `IterableIterator`.
2164
2164
  *
@@ -2245,7 +2245,7 @@ var pickInternalCall = () => {
2245
2245
  /** @internal */
2246
2246
  var internalCall = /*#__PURE__*/ pickInternalCall();
2247
2247
  //#endregion
2248
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/record.js
2248
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/record.js
2249
2249
  /** @internal */
2250
2250
  function assignProperty(self, key, value) {
2251
2251
  if (key === "__proto__") Object.defineProperty(self, key, {
@@ -2261,7 +2261,7 @@ function assignProperties(self, source) {
2261
2261
  for (const key of Reflect.ownKeys(source)) if (Object.prototype.propertyIsEnumerable.call(source, key)) assignProperty(self, key, source[key]);
2262
2262
  }
2263
2263
  //#endregion
2264
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/core.js
2264
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/core.js
2265
2265
  /** @internal */
2266
2266
  var EffectTypeId = `~effect/Effect`;
2267
2267
  /** @internal */
@@ -2634,7 +2634,7 @@ var done$2 = (value) => {
2634
2634
  return exitFail(Done$1(value));
2635
2635
  };
2636
2636
  //#endregion
2637
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Equivalence.js
2637
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Equivalence.js
2638
2638
  /**
2639
2639
  * Creates a custom equivalence relation with an optimized reference equality check.
2640
2640
  *
@@ -2744,14 +2744,14 @@ function Array_(item) {
2744
2744
  });
2745
2745
  }
2746
2746
  //#endregion
2747
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/array.js
2747
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/array.js
2748
2748
  /**
2749
2749
  * @since 2.0.0
2750
2750
  */
2751
2751
  /** @internal */
2752
2752
  var isArrayNonEmpty$1 = (self) => self.length > 0;
2753
2753
  //#endregion
2754
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/option.js
2754
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/option.js
2755
2755
  /**
2756
2756
  * @since 2.0.0
2757
2757
  */
@@ -2821,7 +2821,7 @@ var some$1 = (value) => {
2821
2821
  return a;
2822
2822
  };
2823
2823
  //#endregion
2824
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/result.js
2824
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/result.js
2825
2825
  var TypeId$51 = "~effect/data/Result";
2826
2826
  var CommonProto = {
2827
2827
  [TypeId$51]: {
@@ -2893,7 +2893,7 @@ var succeed$9 = (success) => {
2893
2893
  return a;
2894
2894
  };
2895
2895
  //#endregion
2896
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Order.js
2896
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Order.js
2897
2897
  /**
2898
2898
  * Defines comparison functions for ordered values.
2899
2899
  *
@@ -3136,7 +3136,7 @@ var isLessThanOrEqualTo$1 = (O) => dual(2, (self, that) => O(self, that) !== 1);
3136
3136
  */
3137
3137
  var isGreaterThanOrEqualTo$2 = (O) => dual(2, (self, that) => O(self, that) !== -1);
3138
3138
  //#endregion
3139
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Option.js
3139
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Option.js
3140
3140
  /**
3141
3141
  * Creates an `Option` representing the absence of a value.
3142
3142
  *
@@ -3608,7 +3608,7 @@ var filter = /*#__PURE__*/ dual(2, (self, predicate) => isNone(self) ? none() :
3608
3608
  */
3609
3609
  var exists$1 = /*#__PURE__*/ dual(2, (self, refinement) => isNone(self) ? false : refinement(self.value));
3610
3610
  //#endregion
3611
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Result.js
3611
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Result.js
3612
3612
  /**
3613
3613
  * Creates a `Result` holding a `Success` value.
3614
3614
  *
@@ -3726,7 +3726,7 @@ var isFailure$1 = isFailure$2;
3726
3726
  */
3727
3727
  var match$4 = /*#__PURE__*/ dual(2, (self, { onFailure, onSuccess }) => isFailure$1(self) ? onFailure(self.failure) : onSuccess(self.success));
3728
3728
  //#endregion
3729
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Iterable.js
3729
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Iterable.js
3730
3730
  /**
3731
3731
  * Returns the first element that satisfies the specified
3732
3732
  * predicate, or `None` if no such element exists.
@@ -3779,7 +3779,7 @@ var findFirst$1 = /*#__PURE__*/ dual(2, (self, f) => {
3779
3779
  return none();
3780
3780
  });
3781
3781
  //#endregion
3782
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Record.js
3782
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Record.js
3783
3783
  /**
3784
3784
  * Checks whether a given `key` exists in a record.
3785
3785
  *
@@ -3890,7 +3890,7 @@ var makeEquivalence$2 = (equivalence) => {
3890
3890
  return (self, that) => is(self, that) && is(that, self);
3891
3891
  };
3892
3892
  //#endregion
3893
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Array.js
3893
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Array.js
3894
3894
  /**
3895
3895
  * Works with JavaScript arrays, readonly arrays, and non-empty arrays.
3896
3896
  *
@@ -4422,7 +4422,7 @@ var dedupe = (self) => {
4422
4422
  return out;
4423
4423
  };
4424
4424
  //#endregion
4425
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Effectable.js
4425
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Effectable.js
4426
4426
  /**
4427
4427
  * Create a low-level `Effect` prototype.
4428
4428
  *
@@ -4446,39 +4446,7 @@ var Prototype = (options) => makePrimitiveProto({
4446
4446
  [evaluate]: options.evaluate
4447
4447
  });
4448
4448
  //#endregion
4449
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/stackTraceLimit.js
4450
- /**
4451
- * Check if `Error.stackTraceLimit` is writable.
4452
- * Returns `false` if the property is frozen, non-writable, or `Error` is non-extensible.
4453
- *
4454
- * @internal
4455
- */
4456
- var isStackTraceLimitWritable = () => {
4457
- const desc = Object.getOwnPropertyDescriptor(Error, "stackTraceLimit");
4458
- if (desc === void 0) return Object.isExtensible(Error);
4459
- return Object.hasOwn(desc, "writable") ? desc.writable === true : desc.set !== void 0;
4460
- };
4461
- var canWriteStackTraceLimit = /*#__PURE__*/ isStackTraceLimitWritable();
4462
- /**
4463
- * Get the current `Error.stackTraceLimit` value.
4464
- * Returns `undefined` if the property doesn't exist.
4465
- *
4466
- * @internal
4467
- */
4468
- var getStackTraceLimit = () => Error.stackTraceLimit;
4469
- /**
4470
- * Safely set `Error.stackTraceLimit` if possible, otherwise no-op.
4471
- *
4472
- * Accepts `undefined` so a value read via {@link getStackTraceLimit} can be
4473
- * restored faithfully.
4474
- *
4475
- * @internal
4476
- */
4477
- var setStackTraceLimit = (value) => {
4478
- if (canWriteStackTraceLimit) Error.stackTraceLimit = value;
4479
- };
4480
- //#endregion
4481
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Context.js
4449
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Context.js
4482
4450
  /**
4483
4451
  * Runtime type identifier attached to `Context` service keys and used by
4484
4452
  * `isKey` to recognize them.
@@ -4538,16 +4506,9 @@ var ServiceTypeId = "~effect/Context/Service";
4538
4506
  * @since 4.0.0
4539
4507
  */
4540
4508
  var Service$1 = function() {
4541
- const prevLimit = getStackTraceLimit();
4542
- setStackTraceLimit(2);
4543
- const err = /* @__PURE__ */ new Error();
4544
- setStackTraceLimit(prevLimit);
4545
4509
  function KeyClass() {}
4546
4510
  const self = KeyClass;
4547
4511
  Object.setPrototypeOf(self, ServiceProto);
4548
- Object.defineProperty(self, "stack", { get() {
4549
- return err.stack;
4550
- } });
4551
4512
  const init = (key, options) => {
4552
4513
  self.key = key;
4553
4514
  if (options?.defaultValue) {
@@ -4571,8 +4532,7 @@ var ServiceProto = {
4571
4532
  toJSON() {
4572
4533
  return {
4573
4534
  _id: "Service",
4574
- key: this.key,
4575
- stack: this.stack
4535
+ key: this.key
4576
4536
  };
4577
4537
  },
4578
4538
  of(self) {
@@ -4936,13 +4896,6 @@ var getDefaultValue = (ref) => {
4936
4896
  };
4937
4897
  var serviceNotFoundError = (service) => {
4938
4898
  const error = /* @__PURE__ */ new Error(`Service not found${service.key ? `: ${String(service.key)}` : ""}`);
4939
- if (service.stack) {
4940
- const lines = service.stack.split("\n");
4941
- if (lines.length > 2) {
4942
- const afterAt = lines[2].match(/at (.*)/);
4943
- if (afterAt) error.message = error.message + ` (defined at ${afterAt[1]})`;
4944
- }
4945
- }
4946
4899
  if (error.stack) {
4947
4900
  const lines = error.stack.split("\n");
4948
4901
  lines.splice(1, 3);
@@ -5121,7 +5074,7 @@ var mergeAll$1 = (...ctxs) => {
5121
5074
  */
5122
5075
  var Reference = Service$1;
5123
5076
  //#endregion
5124
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Duration.js
5077
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Duration.js
5125
5078
  var TypeId$49 = "~effect/time/Duration";
5126
5079
  var bigint0$2 = /*#__PURE__*/ BigInt(0);
5127
5080
  var bigint1 = /*#__PURE__*/ BigInt(1);
@@ -5795,7 +5748,7 @@ var format$2 = (self) => {
5795
5748
  return pieces.join(" ");
5796
5749
  };
5797
5750
  //#endregion
5798
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Filter.js
5751
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Filter.js
5799
5752
  /**
5800
5753
  * Composes two filters sequentially, passing the successful output of the first
5801
5754
  * filter to the second.
@@ -5816,7 +5769,7 @@ var composePassthrough = /*#__PURE__*/ dual(2, (left, right) => (input) => {
5816
5769
  return rightOut;
5817
5770
  });
5818
5771
  //#endregion
5819
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Scheduler.js
5772
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Scheduler.js
5820
5773
  /**
5821
5774
  * Controls how runnable Effect fiber tasks are dispatched.
5822
5775
  *
@@ -6032,7 +5985,7 @@ var PreventSchedulerYield = /*#__PURE__*/ Reference("effect/Scheduler/PreventSch
6032
5985
  defaultValue: () => false
6033
5986
  });
6034
5987
  //#endregion
6035
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Tracer.js
5988
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Tracer.js
6036
5989
  /**
6037
5990
  * Defines the low-level tracing model used by Effect.
6038
5991
  *
@@ -6345,11 +6298,11 @@ var randomHexString = /*#__PURE__*/ function() {
6345
6298
  };
6346
6299
  }();
6347
6300
  //#endregion
6348
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/metric.js
6301
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/metric.js
6349
6302
  /** @internal */
6350
6303
  var FiberRuntimeMetricsKey = "effect/observability/Metric/FiberRuntimeMetricsKey";
6351
6304
  //#endregion
6352
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/references.js
6305
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/references.js
6353
6306
  /** @internal */
6354
6307
  var CurrentErrorReporters = /*#__PURE__*/ Reference("effect/ErrorReporter/CurrentErrorReporters", { defaultValue: () => /* @__PURE__ */ new Set() });
6355
6308
  /** @internal */
@@ -6380,7 +6333,39 @@ var MinimumLogLevel$1 = /*#__PURE__*/ Reference("effect/References/MinimumLogLev
6380
6333
  /** @internal */
6381
6334
  var CurrentLogSpans = /*#__PURE__*/ Reference("effect/References/CurrentLogSpans", { defaultValue: () => [] });
6382
6335
  //#endregion
6383
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/tracer.js
6336
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/stackTraceLimit.js
6337
+ /**
6338
+ * Check if `Error.stackTraceLimit` is writable.
6339
+ * Returns `false` if the property is frozen, non-writable, or `Error` is non-extensible.
6340
+ *
6341
+ * @internal
6342
+ */
6343
+ var isStackTraceLimitWritable = () => {
6344
+ const desc = Object.getOwnPropertyDescriptor(Error, "stackTraceLimit");
6345
+ if (desc === void 0) return Object.isExtensible(Error);
6346
+ return Object.hasOwn(desc, "writable") ? desc.writable === true : desc.set !== void 0;
6347
+ };
6348
+ var canWriteStackTraceLimit = /*#__PURE__*/ isStackTraceLimitWritable();
6349
+ /**
6350
+ * Get the current `Error.stackTraceLimit` value.
6351
+ * Returns `undefined` if the property doesn't exist.
6352
+ *
6353
+ * @internal
6354
+ */
6355
+ var getStackTraceLimit = () => Error.stackTraceLimit;
6356
+ /**
6357
+ * Safely set `Error.stackTraceLimit` if possible, otherwise no-op.
6358
+ *
6359
+ * Accepts `undefined` so a value read via {@link getStackTraceLimit} can be
6360
+ * restored faithfully.
6361
+ *
6362
+ * @internal
6363
+ */
6364
+ var setStackTraceLimit = (value) => {
6365
+ if (canWriteStackTraceLimit) Error.stackTraceLimit = value;
6366
+ };
6367
+ //#endregion
6368
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/tracer.js
6384
6369
  /** @internal */
6385
6370
  var addSpanStackTrace = (options) => {
6386
6371
  if (options?.captureStackTrace === false) return options;
@@ -6410,7 +6395,7 @@ var makeStackCleaner = (line) => (stack) => {
6410
6395
  };
6411
6396
  var spanCleaner = /*#__PURE__*/ makeStackCleaner(3);
6412
6397
  //#endregion
6413
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/effect.js
6398
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/effect.js
6414
6399
  /** @internal */
6415
6400
  var Interrupt = class extends ReasonBase {
6416
6401
  fiberId;
@@ -8330,7 +8315,7 @@ var reportCauseUnsafe = (fiber, cause, defectsOnly) => {
8330
8315
  reporters.forEach((reporter) => reporter.report(opts));
8331
8316
  };
8332
8317
  //#endregion
8333
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Deferred.js
8318
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Deferred.js
8334
8319
  var TypeId$48 = "~effect/Deferred";
8335
8320
  /**
8336
8321
  * Checks whether a value is a `Deferred`.
@@ -8504,7 +8489,7 @@ var doneUnsafe = (self, effect) => {
8504
8489
  return true;
8505
8490
  };
8506
8491
  //#endregion
8507
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Exit.js
8492
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Exit.js
8508
8493
  /**
8509
8494
  * Checks whether an unknown value is an Exit.
8510
8495
  *
@@ -8732,7 +8717,7 @@ var isSuccess = exitIsSuccess;
8732
8717
  */
8733
8718
  var isFailure = exitIsFailure;
8734
8719
  //#endregion
8735
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/References.js
8720
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/References.js
8736
8721
  /**
8737
8722
  * Context reference for managing log annotations that are automatically added to all log entries.
8738
8723
  * These annotations provide contextual metadata that appears in every log message.
@@ -8866,7 +8851,7 @@ var CurrentLogLevel = CurrentLogLevel$1;
8866
8851
  */
8867
8852
  var MinimumLogLevel = MinimumLogLevel$1;
8868
8853
  //#endregion
8869
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Scope.js
8854
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Scope.js
8870
8855
  /**
8871
8856
  * Controls how long resources stay open.
8872
8857
  *
@@ -9160,7 +9145,7 @@ var close = scopeClose;
9160
9145
  */
9161
9146
  var closeUnsafe = scopeCloseUnsafe;
9162
9147
  //#endregion
9163
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Layer.js
9148
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Layer.js
9164
9149
  var TypeId$47 = "~effect/Layer";
9165
9150
  var MemoMapTypeId = "~effect/Layer/MemoMap";
9166
9151
  var memoMapReuse = (entry, scope) => {
@@ -9978,7 +9963,7 @@ var provideMerge = /*#__PURE__*/ dual(2, (self, that) => provideWith(self, that,
9978
9963
  */
9979
9964
  var launch = (self) => scoped$1(andThen$1(build(self), never$2));
9980
9965
  //#endregion
9981
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Cause.js
9966
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Cause.js
9982
9967
  /**
9983
9968
  * Records the full reason an `Effect` failed.
9984
9969
  *
@@ -10531,7 +10516,7 @@ var UnknownError$1 = UnknownError$2;
10531
10516
  var StackTrace = class extends Service$1()("effect/Cause/StackTrace") {};
10532
10517
  Service$1()("effect/Cause/InterruptorStackTrace");
10533
10518
  //#endregion
10534
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Data.js
10519
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Data.js
10535
10520
  /**
10536
10521
  * Provides a base class for immutable data types.
10537
10522
  *
@@ -10741,7 +10726,7 @@ var Error$2 = Error$3;
10741
10726
  */
10742
10727
  var TaggedError$1 = TaggedError$2;
10743
10728
  //#endregion
10744
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Clock.js
10729
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Clock.js
10745
10730
  /**
10746
10731
  * Context reference for the active time service in the environment.
10747
10732
  *
@@ -10821,7 +10806,7 @@ var Clock = ClockRef;
10821
10806
  */
10822
10807
  var currentTimeMillis = currentTimeMillis$1;
10823
10808
  //#endregion
10824
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/dateTime.js
10809
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/dateTime.js
10825
10810
  /** @internal */
10826
10811
  var TypeId$46 = "~effect/time/DateTime";
10827
10812
  /** @internal */
@@ -10974,7 +10959,7 @@ var round = /*#__PURE__*/ dual(2, (self, precision) => {
10974
10959
  return Math.round(self * factor) / factor;
10975
10960
  });
10976
10961
  //#endregion
10977
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Pull.js
10962
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Pull.js
10978
10963
  /**
10979
10964
  * Models one low-level pull step for stream-like consumers.
10980
10965
  *
@@ -11129,7 +11114,7 @@ var matchEffect$1 = /*#__PURE__*/ dual(2, (self, options) => matchCauseEffect$1(
11129
11114
  }
11130
11115
  }));
11131
11116
  //#endregion
11132
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Schedule.js
11117
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Schedule.js
11133
11118
  var TypeId$45 = "~effect/Schedule";
11134
11119
  /**
11135
11120
  * Context reference containing metadata for the currently running schedule step.
@@ -11434,12 +11419,12 @@ var while_ = /*#__PURE__*/ dual(2, (self, predicate) => fromStep(map$9(toStep(se
11434
11419
  */
11435
11420
  var forever$1 = /*#__PURE__*/ spaced(zero$1);
11436
11421
  //#endregion
11437
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/layer.js
11422
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/layer.js
11438
11423
  var provideLayer = (self, layer, options) => scopedWith$1((scope) => flatMap$2(options?.local ? buildWithMemoMap(layer, makeMemoMapUnsafe(), scope) : buildWithScope(layer, scope), (context) => provideContext$3(self, context)));
11439
11424
  /** @internal */
11440
11425
  var provide$1 = /*#__PURE__*/ dual((args) => isEffect$1(args[0]), (self, source, options) => isContext(source) ? provideContext$3(self, source) : provideLayer(self, Array.isArray(source) ? mergeAll(...source) : source, options));
11441
11426
  //#endregion
11442
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/schedule.js
11427
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/schedule.js
11443
11428
  /** @internal */
11444
11429
  var retryOrElse = /*#__PURE__*/ dual(3, (self, policy, orElse) => flatMap$2(toStepWithMetadata(policy), (step) => {
11445
11430
  let meta = CurrentMetadata.defaultValue();
@@ -11473,7 +11458,7 @@ var buildFromOptions = (options) => {
11473
11458
  return schedule;
11474
11459
  };
11475
11460
  //#endregion
11476
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Effect.js
11461
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Effect.js
11477
11462
  /**
11478
11463
  * Checks whether a value is an `Effect`.
11479
11464
  *
@@ -15345,7 +15330,7 @@ var flatMapEager = flatMapEager$1;
15345
15330
  */
15346
15331
  var fnUntracedEager = fnUntracedEager$1;
15347
15332
  //#endregion
15348
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/PlatformError.js
15333
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/PlatformError.js
15349
15334
  /**
15350
15335
  * Normalized errors for platform APIs.
15351
15336
  *
@@ -15497,7 +15482,7 @@ var systemError = (options) => new PlatformError(new SystemError(options));
15497
15482
  */
15498
15483
  var badArgument = (options) => new PlatformError(new BadArgument(options));
15499
15484
  //#endregion
15500
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Fiber.js
15485
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Fiber.js
15501
15486
  /**
15502
15487
  * Joins a fiber, blocking until it completes. If the fiber succeeds,
15503
15488
  * returns its value. If it fails, the error is propagated.
@@ -15628,7 +15613,7 @@ var getCurrent = getCurrentFiber;
15628
15613
  */
15629
15614
  var runIn = fiberRunIn;
15630
15615
  //#endregion
15631
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Latch.js
15616
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Latch.js
15632
15617
  /**
15633
15618
  * Creates a `Latch` synchronously, outside of `Effect`.
15634
15619
  *
@@ -15665,7 +15650,7 @@ var runIn = fiberRunIn;
15665
15650
  */
15666
15651
  var makeUnsafe$3 = makeLatchUnsafe;
15667
15652
  //#endregion
15668
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/MutableRef.js
15653
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/MutableRef.js
15669
15654
  var TypeId$43 = "~effect/MutableRef";
15670
15655
  var MutableRefProto = {
15671
15656
  [TypeId$43]: TypeId$43,
@@ -15715,7 +15700,7 @@ var make$43 = (value) => {
15715
15700
  return ref;
15716
15701
  };
15717
15702
  //#endregion
15718
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/MutableList.js
15703
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/MutableList.js
15719
15704
  /**
15720
15705
  * Mutable lists for collecting ordered values and draining them from the front.
15721
15706
  * A `MutableList<A>` can append values to the end, prepend values to the
@@ -15982,7 +15967,7 @@ var take$1 = (self) => {
15982
15967
  return message;
15983
15968
  };
15984
15969
  //#endregion
15985
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Queue.js
15970
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Queue.js
15986
15971
  /**
15987
15972
  * Passes values asynchronously between fibers.
15988
15973
  *
@@ -16897,7 +16882,7 @@ var finalize = (self, exit) => {
16897
16882
  openState.awaiters.clear();
16898
16883
  };
16899
16884
  //#endregion
16900
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Semaphore.js
16885
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Semaphore.js
16901
16886
  /**
16902
16887
  * Creates a `Semaphore` synchronously with the specified total
16903
16888
  * number of permits.
@@ -17058,7 +17043,7 @@ var SemaphoreImpl = class {
17058
17043
  */
17059
17044
  var make$40 = (permits) => sync$1(() => new SemaphoreImpl(permits));
17060
17045
  //#endregion
17061
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Channel.js
17046
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Channel.js
17062
17047
  /**
17063
17048
  * Provides low-level building blocks for streaming data through Effect.
17064
17049
  *
@@ -17967,7 +17952,7 @@ var runFold = /*#__PURE__*/ dual(3, (self, initial, f) => suspend$2(() => {
17967
17952
  */
17968
17953
  var toPullScoped = (self, scope) => toTransform(self)(done(), scope);
17969
17954
  //#endregion
17970
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/stream.js
17955
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/stream.js
17971
17956
  var TypeId$40 = "~effect/Stream";
17972
17957
  var streamVariance = {
17973
17958
  _R: identity,
@@ -17987,7 +17972,7 @@ var fromChannel$2 = (channel) => {
17987
17972
  return self;
17988
17973
  };
17989
17974
  //#endregion
17990
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Sink.js
17975
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Sink.js
17991
17976
  var TypeId$39 = "~effect/Sink";
17992
17977
  var endVoid = /*#__PURE__*/ succeed$4([void 0]);
17993
17978
  var sinkVariance = {
@@ -18209,7 +18194,7 @@ var forEachArray = (f) => fromTransform((upstream) => upstream.pipe(flatMap$1(f)
18209
18194
  */
18210
18195
  var unwrap$1 = (effect) => fromChannel$1(unwrap$2(map$7(effect, toChannel$1)));
18211
18196
  //#endregion
18212
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/MutableHashMap.js
18197
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/MutableHashMap.js
18213
18198
  var TypeId$38 = "~effect/collections/MutableHashMap";
18214
18199
  var MutableHashMapProto = {
18215
18200
  [TypeId$38]: TypeId$38,
@@ -18556,7 +18541,7 @@ var clear = (self) => {
18556
18541
  */
18557
18542
  var size = (self) => self.backing.size;
18558
18543
  //#endregion
18559
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/RcMap.js
18544
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/RcMap.js
18560
18545
  /**
18561
18546
  * Shares scoped resources by key and releases them when no one is using them.
18562
18547
  *
@@ -18757,7 +18742,7 @@ var release = (self, key, entry) => withFiber((fiber) => {
18757
18742
  return void_$1;
18758
18743
  });
18759
18744
  //#endregion
18760
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/rcRef.js
18745
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/rcRef.js
18761
18746
  var TypeId$36 = "~effect/RcRef";
18762
18747
  var stateEmpty = { _tag: "Empty" };
18763
18748
  var stateClosed = { _tag: "Closed" };
@@ -18845,7 +18830,7 @@ var get$1 = /*#__PURE__*/ fnUntraced(function* (self_) {
18845
18830
  return state.value;
18846
18831
  });
18847
18832
  //#endregion
18848
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/RcRef.js
18833
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/RcRef.js
18849
18834
  /**
18850
18835
  * Creates an `RcRef` from an acquire effect.
18851
18836
  *
@@ -18939,7 +18924,7 @@ var make$37 = make$38;
18939
18924
  */
18940
18925
  var get = get$1;
18941
18926
  //#endregion
18942
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Stream.js
18927
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Stream.js
18943
18928
  /**
18944
18929
  * Describes effectful sources that emit values over time.
18945
18930
  *
@@ -19616,7 +19601,7 @@ var runForEachArray = /*#__PURE__*/ dual(2, (self, f) => runForEach$1(self.chann
19616
19601
  */
19617
19602
  var mkString = (self) => runFold(self.channel, () => "", (acc, chunk) => acc + chunk.join(""));
19618
19603
  //#endregion
19619
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/FileSystem.js
19604
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/FileSystem.js
19620
19605
  /**
19621
19606
  * Defines the portable file system service for Effect programs.
19622
19607
  *
@@ -19828,7 +19813,7 @@ var FileTypeId = "~effect/platform/FileSystem/File";
19828
19813
  */
19829
19814
  var WatchBackend = class extends Service$1()("effect/platform/FileSystem/WatchBackend") {};
19830
19815
  //#endregion
19831
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Path.js
19816
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Path.js
19832
19817
  /**
19833
19818
  * Provides path operations through the Effect environment.
19834
19819
  *
@@ -19922,7 +19907,7 @@ var TypeId$33 = "~effect/platform/Path";
19922
19907
  */
19923
19908
  var Path$1 = /*#__PURE__*/ Service$1("effect/Path");
19924
19909
  //#endregion
19925
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/schema/annotations.js
19910
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/schema/annotations.js
19926
19911
  /** @internal */
19927
19912
  function resolve(ast) {
19928
19913
  return ast.checks ? ast.checks[ast.checks.length - 1].annotations : ast.annotations;
@@ -19982,7 +19967,15 @@ var annotationExcludedKeys = /*#__PURE__*/ new Set([
19982
19967
  "toCodecIso"
19983
19968
  ]);
19984
19969
  //#endregion
19985
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/SchemaIssue.js
19970
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/schema/parser.js
19971
+ var missing = /*#__PURE__*/ Symbol();
19972
+ var succeed$1 = succeed$6;
19973
+ var missingExit = /*#__PURE__*/ succeed$1(missing);
19974
+ var sameExit = /*#__PURE__*/ succeed$1(missing);
19975
+ var toOption = (value) => value === missing ? none() : some(value);
19976
+ var fromOptionExit = (option) => option._tag === "None" ? missingExit : succeed$1(option.value);
19977
+ //#endregion
19978
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/SchemaIssue.js
19986
19979
  var TypeId$32 = "~effect/SchemaIssue/Issue";
19987
19980
  /**
19988
19981
  * Returns `true` if the given value is an {@link Issue}.
@@ -20015,10 +20008,42 @@ var TypeId$32 = "~effect/SchemaIssue/Issue";
20015
20008
  function isIssue(u) {
20016
20009
  return hasProperty(u, TypeId$32) && u[TypeId$32] === TypeId$32;
20017
20010
  }
20011
+ /**
20012
+ * Returns `true` when an issue contains an input reported by the schema parser.
20013
+ *
20014
+ * **When to use**
20015
+ *
20016
+ * Use when reading `Issue.input`, especially when `undefined` is a valid input
20017
+ * value.
20018
+ *
20019
+ * **Details**
20020
+ *
20021
+ * Reported input is stored as an own property. This guard checks for that
20022
+ * property and narrows `input` from optional to required.
20023
+ *
20024
+ * **Example** (Reading a reported input)
20025
+ *
20026
+ * ```ts import.meta.vitest
20027
+ * import { Result, Schema, SchemaIssue } from "effect"
20028
+ *
20029
+ * const result = Schema.decodeUnknownResult(Schema.String)(1, { reportInput: true })
20030
+ * if (Result.isFailure(result) && SchemaIssue.hasInput(result.failure.issue)) {
20031
+ * result.failure.issue.input // => 1
20032
+ * }
20033
+ * ```
20034
+ *
20035
+ * @see {@link Issue} for the complete issue model
20036
+ *
20037
+ * @category guards
20038
+ * @since 4.0.0
20039
+ */
20040
+ function hasInput(issue) {
20041
+ return Object.hasOwn(issue, "input");
20042
+ }
20018
20043
  var Base$1 = class {
20019
20044
  [TypeId$32] = TypeId$32;
20020
- toString() {
20021
- return defaultFormatter$1(this);
20045
+ constructor(input, options) {
20046
+ if (options?.reportInput === true && input !== missing) this.input = input;
20022
20047
  }
20023
20048
  };
20024
20049
  /**
@@ -20039,11 +20064,13 @@ var Base$1 = class {
20039
20064
  * ```ts import.meta.vitest
20040
20065
  * import { SchemaAST, SchemaIssue } from "effect"
20041
20066
  *
20067
+ * const formatIssue = SchemaIssue.makeFormatterDefault()
20068
+ *
20042
20069
  * function describe(issue: SchemaIssue.Issue): string {
20043
20070
  * if (issue._tag === "Filter") {
20044
- * return `Filter failed: ${String(issue.issue)}`
20071
+ * return `Filter failed: ${formatIssue(issue.issue)}`
20045
20072
  * }
20046
- * return String(issue)
20073
+ * return formatIssue(issue)
20047
20074
  * }
20048
20075
  *
20049
20076
  * const issue = new SchemaIssue.Filter(
@@ -20069,8 +20096,8 @@ var Filter$1 = class extends Base$1 {
20069
20096
  * The issue that occurred.
20070
20097
  */
20071
20098
  issue;
20072
- constructor(filter, issue) {
20073
- super();
20099
+ constructor(filter, issue, input, options) {
20100
+ super(input, options);
20074
20101
  this.filter = filter;
20075
20102
  this.issue = issue;
20076
20103
  }
@@ -20104,8 +20131,8 @@ var Encoding = class extends Base$1 {
20104
20131
  * The issue that occurred.
20105
20132
  */
20106
20133
  issue;
20107
- constructor(ast, issue) {
20108
- super();
20134
+ constructor(ast, issue, input, options) {
20135
+ super(input, options);
20109
20136
  this.ast = ast;
20110
20137
  this.issue = issue;
20111
20138
  }
@@ -20187,7 +20214,8 @@ var MissingKey = class extends Base$1 {
20187
20214
  *
20188
20215
  * - `ast` is the schema that was being validated against.
20189
20216
  * - `annotations` on `ast` may contain a custom `messageUnexpectedKey`.
20190
- * - The default formatter renders this as `"Expected no excess property"`.
20217
+ * - The default formatter renders this as `"Expected no excess property"`, or
20218
+ * `"Unexpected key with value <input>"` when the issue reports an input.
20191
20219
  *
20192
20220
  * @see {@link MissingKey} — the opposite case (required key absent)
20193
20221
  * @see {@link Pointer} — wraps this issue with the unexpected key's path
@@ -20201,8 +20229,8 @@ var UnexpectedKey = class extends Base$1 {
20201
20229
  * The schema that caused the issue.
20202
20230
  */
20203
20231
  ast;
20204
- constructor(ast) {
20205
- super();
20232
+ constructor(ast, input, options) {
20233
+ super(input, options);
20206
20234
  this.ast = ast;
20207
20235
  }
20208
20236
  };
@@ -20235,8 +20263,8 @@ var Composite = class extends Base$1 {
20235
20263
  * The issues that occurred.
20236
20264
  */
20237
20265
  issues;
20238
- constructor(ast, issues) {
20239
- super();
20266
+ constructor(ast, issues, input, options) {
20267
+ super(input, options);
20240
20268
  this.ast = ast;
20241
20269
  this.issues = issues;
20242
20270
  }
@@ -20253,15 +20281,17 @@ var Composite = class extends Base$1 {
20253
20281
  * **Details**
20254
20282
  *
20255
20283
  * - `ast` is the schema node that expected a different type.
20256
- * - The default formatter renders this as `"Expected <type>"`.
20284
+ * - The default formatter renders this as `"Expected <type>"`, adding
20285
+ * `", got <input>"` when the issue reports an input.
20257
20286
  *
20258
20287
  * **Example** (Formatting a type mismatch)
20259
20288
  *
20260
20289
  * ```ts import.meta.vitest
20261
20290
  * import { Schema, SchemaIssue } from "effect"
20262
20291
  *
20292
+ * const formatIssue = SchemaIssue.makeFormatterDefault()
20263
20293
  * const issue = new SchemaIssue.InvalidType(Schema.String.ast)
20264
- * String(issue) // => "Expected string"
20294
+ * formatIssue(issue) // => "Expected string"
20265
20295
  * ```
20266
20296
  *
20267
20297
  * @see {@link InvalidValue} — the input has the right type but fails a value constraint
@@ -20275,8 +20305,8 @@ var InvalidType = class extends Base$1 {
20275
20305
  * The schema that caused the issue.
20276
20306
  */
20277
20307
  ast;
20278
- constructor(ast) {
20279
- super();
20308
+ constructor(ast, input, options) {
20309
+ super(input, options);
20280
20310
  this.ast = ast;
20281
20311
  }
20282
20312
  };
@@ -20291,17 +20321,22 @@ var InvalidType = class extends Base$1 {
20291
20321
  *
20292
20322
  * **Details**
20293
20323
  *
20294
- * - `annotations` optionally carries a `message` string for formatting.
20295
- * - The default formatter renders this as `"Expected a valid value"` unless a
20296
- * custom `message` annotation is provided.
20324
+ * - A `message` annotation is returned unchanged and takes precedence over all
20325
+ * other default formatting.
20326
+ * - Without `message`, an `expected` annotation is formatted as
20327
+ * `"Expected <expected>"`, adding `", got <input>"` when input is reported.
20328
+ * - Without either annotation, the default formatter renders
20329
+ * `"Expected a valid value"`, or `"Invalid data <input>"` when input is
20330
+ * reported.
20297
20331
  *
20298
20332
  * **Example** (Returning InvalidValue from a custom filter)
20299
20333
  *
20300
20334
  * ```ts import.meta.vitest
20301
20335
  * import { SchemaIssue } from "effect"
20302
20336
  *
20337
+ * const formatIssue = SchemaIssue.makeFormatterDefault()
20303
20338
  * const issue = new SchemaIssue.InvalidValue({ message: "must not be empty" })
20304
- * String(issue) // => "must not be empty"
20339
+ * formatIssue(issue) // => "must not be empty"
20305
20340
  * ```
20306
20341
  *
20307
20342
  * @see {@link InvalidType} — the input has the wrong type entirely
@@ -20316,11 +20351,15 @@ var InvalidValue$1 = class extends Base$1 {
20316
20351
  * The metadata for the issue.
20317
20352
  */
20318
20353
  annotations;
20319
- constructor(annotations) {
20320
- super();
20354
+ constructor(annotations, input, options) {
20355
+ super(input, options);
20321
20356
  this.annotations = annotations;
20322
20357
  }
20323
20358
  };
20359
+ /** @internal */
20360
+ function makeCompositeAtKey(compositeAst, pointerKey, pointerIssue, compositeInput, parseOptions) {
20361
+ return new Composite(compositeAst, [new Pointer([pointerKey], pointerIssue)], compositeInput, parseOptions);
20362
+ }
20324
20363
  /**
20325
20364
  * Represents a schema issue produced when a forbidden operation is encountered during parsing,
20326
20365
  * such as an asynchronous Effect running inside `Schema.decodeUnknownSync`.
@@ -20340,10 +20379,11 @@ var InvalidValue$1 = class extends Base$1 {
20340
20379
  * ```ts import.meta.vitest
20341
20380
  * import { SchemaIssue } from "effect"
20342
20381
  *
20382
+ * const formatIssue = SchemaIssue.makeFormatterDefault()
20343
20383
  * const issue = new SchemaIssue.Forbidden(
20344
20384
  * { message: "async operation not allowed in sync context" }
20345
20385
  * )
20346
- * String(issue) // => "async operation not allowed in sync context"
20386
+ * formatIssue(issue) // => "async operation not allowed in sync context"
20347
20387
  * ```
20348
20388
  *
20349
20389
  * @see {@link InvalidValue} — for value-constraint failures (not operation failures)
@@ -20357,8 +20397,8 @@ var Forbidden = class extends Base$1 {
20357
20397
  * The metadata for the issue.
20358
20398
  */
20359
20399
  annotations;
20360
- constructor(annotations) {
20361
- super();
20400
+ constructor(annotations, input, options) {
20401
+ super(input, options);
20362
20402
  this.annotations = annotations;
20363
20403
  }
20364
20404
  };
@@ -20378,7 +20418,8 @@ var Forbidden = class extends Base$1 {
20378
20418
  * **Gotchas**
20379
20419
  *
20380
20420
  * `issues` is empty when no union member was applicable. In that case, the
20381
- * default formatter reports the expected type for the union.
20421
+ * default formatter reports the expected type for the union and appends
20422
+ * `", got <input>"` when input is reported.
20382
20423
  *
20383
20424
  * @see {@link OneOf} — the opposite: *too many* members matched
20384
20425
  * @see {@link Composite} — groups multiple issues under a non-union schema
@@ -20396,8 +20437,8 @@ var AnyOf = class extends Base$1 {
20396
20437
  * The issues that occurred.
20397
20438
  */
20398
20439
  issues;
20399
- constructor(ast, issues) {
20400
- super();
20440
+ constructor(ast, issues, input, options) {
20441
+ super(input, options);
20401
20442
  this.ast = ast;
20402
20443
  this.issues = issues;
20403
20444
  }
@@ -20416,7 +20457,9 @@ var AnyOf = class extends Base$1 {
20416
20457
  * - `ast` is the `Union` AST node.
20417
20458
  * - `successes` lists the AST nodes of each member that accepted the input.
20418
20459
  * - The default formatter renders this as
20419
- * `"Expected exactly one member to match"`.
20460
+ * `"Expected exactly one member to match"`, or
20461
+ * `"Expected exactly one member to match the input <input>"` when input is
20462
+ * reported.
20420
20463
  *
20421
20464
  * @see {@link AnyOf} — the opposite: *no* members matched
20422
20465
  *
@@ -20433,31 +20476,31 @@ var OneOf = class extends Base$1 {
20433
20476
  * The schemas that were successful.
20434
20477
  */
20435
20478
  successes;
20436
- constructor(ast, successes) {
20437
- super();
20479
+ constructor(ast, successes, input, options) {
20480
+ super(input, options);
20438
20481
  this.ast = ast;
20439
20482
  this.successes = successes;
20440
20483
  }
20441
20484
  };
20442
- function makeFilterIssue(entry) {
20485
+ function makeFilterIssue(entry, input, options) {
20443
20486
  if (isIssue(entry)) return entry;
20444
- if (typeof entry === "string") return new InvalidValue$1({ message: entry });
20445
- const inner = typeof entry.issue === "string" ? new InvalidValue$1({ message: entry.issue }) : entry.issue;
20487
+ if (typeof entry === "string") return new InvalidValue$1({ message: entry }, input, options);
20488
+ const inner = typeof entry.issue === "string" ? new InvalidValue$1({ message: entry.issue }, input, options) : entry.issue;
20446
20489
  return new Pointer(entry.path, inner);
20447
20490
  }
20448
20491
  /** @internal */
20449
- function makeSingle$1(out) {
20492
+ function makeSingle$1(out, input, options) {
20450
20493
  if (out === void 0) return;
20451
- if (typeof out === "boolean") return out ? void 0 : new InvalidValue$1();
20452
- return makeFilterIssue(out);
20494
+ if (typeof out === "boolean") return out ? void 0 : new InvalidValue$1(void 0, input, options);
20495
+ return makeFilterIssue(out, input, options);
20453
20496
  }
20454
20497
  /** @internal */
20455
- function normalizeFilterOutput(ast, out) {
20498
+ function normalizeFilterOutput(ast, out, input, options) {
20456
20499
  if (Array.isArray(out)) {
20457
20500
  if (!isReadonlyArrayNonEmpty(out)) return;
20458
- return out.length === 1 ? makeFilterIssue(out[0]) : new Composite(ast, map$10(out, makeFilterIssue));
20501
+ return out.length === 1 ? makeFilterIssue(out[0], input, options) : new Composite(ast, map$10(out, (entry) => makeFilterIssue(entry, input, options)), input, options);
20459
20502
  }
20460
- return makeSingle$1(out);
20503
+ return makeSingle$1(out, input, options);
20461
20504
  }
20462
20505
  /**
20463
20506
  * Returns the built-in {@link LeafHook} used by default formatters.
@@ -20469,13 +20512,18 @@ function normalizeFilterOutput(ast, out) {
20469
20512
  * **Details**
20470
20513
  *
20471
20514
  * - Checks for a `message` annotation first; returns it if present.
20472
- * - Otherwise generates a default message per `_tag`:
20473
- * - `InvalidType` → `"Expected <type>"`
20474
- * - `InvalidValue` → `"Expected a valid value"`
20515
+ * - For `InvalidValue`, an `expected` annotation uses the standard expected
20516
+ * value message and includes reported input when available.
20517
+ * - Otherwise generates a default message per `_tag`. When the issue reports
20518
+ * input, the message includes its formatted value where applicable:
20519
+ * - `InvalidType` → `"Expected <type>"` or `"Expected <type>, got <input>"`
20520
+ * - `InvalidValue` → `"Expected a valid value"` or `"Invalid data <input>"`
20475
20521
  * - `MissingKey` → `"Missing key"`
20476
- * - `UnexpectedKey` → `"Expected no excess property"`
20522
+ * - `UnexpectedKey` → `"Expected no excess property"` or
20523
+ * `"Unexpected key with value <input>"`
20477
20524
  * - `Forbidden` → `"Forbidden operation"`
20478
- * - `OneOf` → `"Expected exactly one member to match"`
20525
+ * - `OneOf` → `"Expected exactly one member to match"` or
20526
+ * `"Expected exactly one member to match the input <input>"`
20479
20527
  *
20480
20528
  * **Example** (Formatting Standard Schema issues with defaultLeafHook)
20481
20529
  *
@@ -20498,12 +20546,23 @@ var defaultLeafHook = (issue) => {
20498
20546
  const message = findMessage(issue);
20499
20547
  if (message !== void 0) return message;
20500
20548
  switch (issue._tag) {
20501
- case "InvalidType": return getExpectedMessage(getExpected(issue.ast));
20502
- case "InvalidValue": return "Expected a valid value";
20549
+ case "InvalidType": return getExpectedMessage(getExpected(issue.ast), issue);
20550
+ case "InvalidValue": {
20551
+ const expected = findExpected(issue);
20552
+ if (expected !== void 0) return getExpectedMessage(expected, issue);
20553
+ const input = formatInput(issue);
20554
+ return input === void 0 ? "Expected a valid value" : `Invalid data ${input}`;
20555
+ }
20503
20556
  case "MissingKey": return "Missing key";
20504
- case "UnexpectedKey": return "Expected no excess property";
20557
+ case "UnexpectedKey": {
20558
+ const input = formatInput(issue);
20559
+ return input === void 0 ? "Expected no excess property" : `Unexpected key with value ${input}`;
20560
+ }
20505
20561
  case "Forbidden": return "Forbidden operation";
20506
- case "OneOf": return "Expected exactly one member to match";
20562
+ case "OneOf": {
20563
+ const input = formatInput(issue);
20564
+ return input === void 0 ? "Expected exactly one member to match" : `Expected exactly one member to match the input ${input}`;
20565
+ }
20507
20566
  }
20508
20567
  };
20509
20568
  /**
@@ -20518,7 +20577,8 @@ var defaultLeafHook = (issue) => {
20518
20577
  * - Looks for a `message` annotation on the inner issue first, then on the
20519
20578
  * filter itself.
20520
20579
  * - Returns `undefined` when no annotation is found, causing the formatter to
20521
- * fall back to `"Expected <filter>"`.
20580
+ * fall back to `"Expected <filter>"` or, when the filter reports input,
20581
+ * `"Expected <filter>, got <input>"`.
20522
20582
  *
20523
20583
  * @see {@link CheckHook}
20524
20584
  * @see {@link makeFormatterStandardSchemaV1}
@@ -20526,11 +20586,17 @@ var defaultLeafHook = (issue) => {
20526
20586
  * @category formatting
20527
20587
  * @since 4.0.0
20528
20588
  */
20529
- var defaultCheckHook = (issue) => {
20530
- return findMessage(issue.issue) ?? findMessage(issue);
20531
- };
20532
- function getExpectedMessage(expected) {
20533
- return `Expected ${expected}`;
20589
+ var defaultCheckHook = (issue) => findMessage(issue.issue) ?? findMessage(issue);
20590
+ function formatInput(issue) {
20591
+ return hasInput(issue) ? format$3(issue.input) : void 0;
20592
+ }
20593
+ function findExpected(issue) {
20594
+ const expected = issue.annotations?.expected;
20595
+ return typeof expected === "string" ? expected : void 0;
20596
+ }
20597
+ function getExpectedMessage(expected, issue) {
20598
+ const input = formatInput(issue);
20599
+ return input === void 0 ? `Expected ${expected}` : `Expected ${expected}, got ${input}`;
20534
20600
  }
20535
20601
  function toDefaultIssues(issue, path, leafHook, checkHook) {
20536
20602
  switch (issue._tag) {
@@ -20540,13 +20606,12 @@ function toDefaultIssues(issue, path, leafHook, checkHook) {
20540
20606
  path,
20541
20607
  message
20542
20608
  }];
20543
- switch (issue.issue._tag) {
20544
- case "InvalidValue": return [{
20545
- path,
20546
- message: getExpectedMessage(formatCheck(issue.filter))
20547
- }];
20548
- default: return toDefaultIssues(issue.issue, path, leafHook, checkHook);
20549
- }
20609
+ if (issue.issue._tag !== "InvalidValue") return toDefaultIssues(issue.issue, path, leafHook, checkHook);
20610
+ const expected = findExpected(issue.issue);
20611
+ return [{
20612
+ path,
20613
+ message: expected === void 0 ? getExpectedMessage(formatCheck(issue.filter), issue) : getExpectedMessage(expected, issue.issue)
20614
+ }];
20550
20615
  }
20551
20616
  case "Encoding": return toDefaultIssues(issue.issue, path, leafHook, checkHook);
20552
20617
  case "Pointer": return toDefaultIssues(issue.issue, [...path, ...issue.path], leafHook, checkHook);
@@ -20554,7 +20619,7 @@ function toDefaultIssues(issue, path, leafHook, checkHook) {
20554
20619
  case "AnyOf":
20555
20620
  if (issue.issues.length === 0) return [{
20556
20621
  path,
20557
- message: findMessage(issue) ?? getExpectedMessage(getExpected(issue.ast))
20622
+ message: findMessage(issue) ?? getExpectedMessage(getExpected(issue.ast), issue)
20558
20623
  }];
20559
20624
  return issue.issues.flatMap((issue) => toDefaultIssues(issue, path, leafHook, checkHook));
20560
20625
  default: return [{
@@ -20582,13 +20647,19 @@ function formatCheck(check) {
20582
20647
  *
20583
20648
  * **Details**
20584
20649
  *
20585
- * This is the default formatter used by `SchemaIssue.toString()`.
20586
- *
20587
20650
  * - Flattens the issue tree into `{ message, path }` entries using
20588
20651
  * {@link defaultLeafHook} and {@link defaultCheckHook}.
20652
+ * - Includes reported input in default messages when the node producing the
20653
+ * message has an `input` field.
20589
20654
  * - Each entry is rendered as `"<message>"` or `"<message>\n at <path>"`.
20590
20655
  * - Multiple entries are joined with newlines.
20591
20656
  *
20657
+ * **Gotchas**
20658
+ *
20659
+ * Formatting an issue can disclose input retained with `reportInput: true`.
20660
+ * Wrapper inputs are not inherited by child messages, and custom messages are
20661
+ * returned unchanged.
20662
+ *
20592
20663
  * **Example** (Formatting an issue as a string)
20593
20664
  *
20594
20665
  * ```ts import.meta.vitest
@@ -20636,7 +20707,7 @@ function getMessageAnnotation(annotations, type = "message") {
20636
20707
  if (typeof message === "string") return message;
20637
20708
  }
20638
20709
  //#endregion
20639
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/schema/cause.js
20710
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/schema/cause.js
20640
20711
  /** @internal */
20641
20712
  function getSchemaIssue(cause) {
20642
20713
  let issue;
@@ -20653,15 +20724,7 @@ function getSchemaIssueOrThrow(cause, message) {
20653
20724
  return issue;
20654
20725
  }
20655
20726
  //#endregion
20656
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/schema/parser.js
20657
- var missing = /*#__PURE__*/ Symbol();
20658
- var succeed$1 = succeed$6;
20659
- var missingExit = /*#__PURE__*/ succeed$1(missing);
20660
- var sameExit = /*#__PURE__*/ succeed$1(missing);
20661
- var toOption = (value) => value === missing ? none() : some(value);
20662
- var fromOptionExit = (option) => option._tag === "None" ? missingExit : succeed$1(option.value);
20663
- //#endregion
20664
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/DateTime.js
20727
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/DateTime.js
20665
20728
  /**
20666
20729
  * Checks whether a value is a `DateTime`.
20667
20730
  *
@@ -20892,7 +20955,7 @@ Service$1()("effect/DateTime/CurrentTimeZone");
20892
20955
  */
20893
20956
  var formatIso = formatIso$1;
20894
20957
  //#endregion
20895
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Encoding.js
20958
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Encoding.js
20896
20959
  /**
20897
20960
  * Encoding and decoding helpers for Base64, Base64Url, and hexadecimal text.
20898
20961
  * The functions convert between strings, UTF-8 text, and `Uint8Array` bytes.
@@ -21270,7 +21333,7 @@ var base64codes = [
21270
21333
  51
21271
21334
  ];
21272
21335
  //#endregion
21273
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/SchemaGetter.js
21336
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/SchemaGetter.js
21274
21337
  /**
21275
21338
  * Builds one-way conversions used by schemas.
21276
21339
  *
@@ -21347,7 +21410,8 @@ var Getter = class Getter extends Class$3 {
21347
21410
  * **Details**
21348
21411
  *
21349
21412
  * - Always fails with the `Issue` returned by `f`.
21350
- * - The failure function receives the original `Option<E>` input for error context.
21413
+ * - The failure function receives the original `Option<E>` input and the
21414
+ * effective `ParseOptions` for error context.
21351
21415
  *
21352
21416
  * **Example** (Defining an always-failing getter)
21353
21417
  *
@@ -21368,7 +21432,7 @@ var Getter = class Getter extends Class$3 {
21368
21432
  * @since 4.0.0
21369
21433
  */
21370
21434
  function fail(f) {
21371
- return new Getter((oe) => fail$3(f(oe)));
21435
+ return new Getter((oe, options) => fail$3(f(oe, options)));
21372
21436
  }
21373
21437
  /**
21374
21438
  * Creates a getter that always fails with a `Forbidden` issue.
@@ -21402,7 +21466,10 @@ function fail(f) {
21402
21466
  * @since 4.0.0
21403
21467
  */
21404
21468
  function forbidden(message) {
21405
- return fail((oe) => new Forbidden({ message: message(oe) }));
21469
+ return fail((oe, options) => {
21470
+ const annotations = { message: message(oe) };
21471
+ return isSome(oe) ? new Forbidden(annotations, oe.value, options) : new Forbidden(annotations);
21472
+ });
21406
21473
  }
21407
21474
  var passthrough_$1 = /*#__PURE__*/ new Getter(succeed$4);
21408
21475
  function isPassthrough(getter) {
@@ -21507,10 +21574,10 @@ function transform$2(f) {
21507
21574
  * import { Effect, Option, SchemaGetter, SchemaIssue } from "effect"
21508
21575
  *
21509
21576
  * const safeParseInt = SchemaGetter.transformOrFail<number, string>(
21510
- * (s) => {
21577
+ * (s, options) => {
21511
21578
  * const n = parseInt(s, 10)
21512
21579
  * return isNaN(n)
21513
- * ? Effect.fail(new SchemaIssue.InvalidValue({ message: "not an integer" }))
21580
+ * ? Effect.fail(new SchemaIssue.InvalidValue({ message: "not an integer" }, s, options))
21514
21581
  * : Effect.succeed(n)
21515
21582
  * }
21516
21583
  * )
@@ -21762,10 +21829,10 @@ function encodeBase64() {
21762
21829
  * @since 4.0.0
21763
21830
  */
21764
21831
  function decodeBase64() {
21765
- return transformOrFail$1((input) => mapErrorEager(fromResult(decodeBase64$1(input)), () => new InvalidValue$1({ message: "Expected a valid Base64 string" })));
21832
+ return transformOrFail$1((input, options) => mapErrorEager(fromResult(decodeBase64$1(input)), () => new InvalidValue$1({ expected: "a valid Base64 string" }, input, options)));
21766
21833
  }
21767
21834
  //#endregion
21768
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/BigDecimal.js
21835
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/BigDecimal.js
21769
21836
  /**
21770
21837
  * Decimal numbers and arithmetic for cases where JavaScript `number` rounding
21771
21838
  * is not precise enough. A `BigDecimal` stores digits as a `bigint` plus a
@@ -22149,7 +22216,7 @@ var isZero = (n) => n.value === bigint0;
22149
22216
  */
22150
22217
  var isNegative = (n) => n.value < bigint0;
22151
22218
  //#endregion
22152
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/SchemaTransformation.js
22219
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/SchemaTransformation.js
22153
22220
  var TypeId$30 = "~effect/SchemaTransformation/Transformation";
22154
22221
  /**
22155
22222
  * Represents a bidirectional transformation between a decoded type `T` and an encoded
@@ -22300,10 +22367,10 @@ var make$32 = (options) => {
22300
22367
  * Schema.decodeTo(
22301
22368
  * Schema.Date,
22302
22369
  * SchemaTransformation.transformOrFail({
22303
- * decode: (s) => {
22370
+ * decode: (s, options) => {
22304
22371
  * const d = new Date(s)
22305
22372
  * return isNaN(d.getTime())
22306
- * ? Effect.fail(new SchemaIssue.InvalidValue({ message: "Invalid date" }))
22373
+ * ? Effect.fail(new SchemaIssue.InvalidValue({ message: "Invalid date" }, s, options))
22307
22374
  * : Effect.succeed(d)
22308
22375
  * },
22309
22376
  * encode: (d) => Effect.succeed(d.toISOString())
@@ -22534,16 +22601,16 @@ var uint8ArrayFromBase64String = /*#__PURE__*/ new Transformation(/*#__PURE__*/
22534
22601
  * @since 4.0.0
22535
22602
  */
22536
22603
  var dateTimeUtcFromString = /*#__PURE__*/ transformOrFail({
22537
- decode: (s) => {
22604
+ decode: (s, options) => {
22538
22605
  return match$5(make$34(s), {
22539
- onNone: () => fail$3(new InvalidValue$1({ message: "Expected a valid UTC DateTime string" })),
22606
+ onNone: () => fail$3(new InvalidValue$1({ expected: "a valid UTC DateTime string" }, s, options)),
22540
22607
  onSome: (result) => succeed$4(toUtc(result))
22541
22608
  });
22542
22609
  },
22543
22610
  encode: (utc) => succeed$4(formatIso(utc))
22544
22611
  });
22545
22612
  //#endregion
22546
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/SchemaAST.js
22613
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/SchemaAST.js
22547
22614
  /**
22548
22615
  * Represents Effect schemas as runtime trees.
22549
22616
  *
@@ -23063,7 +23130,7 @@ var TemplateLiteral$1 = class extends Base {
23063
23130
  if (result._tag === "Success") return sameExit;
23064
23131
  return mapBothEager(result, {
23065
23132
  onSuccess: () => input,
23066
- onFailure: (issue) => new Composite(this, [issue])
23133
+ onFailure: (issue) => new Composite(this, [issue], input, options)
23067
23134
  });
23068
23135
  };
23069
23136
  }
@@ -23080,7 +23147,7 @@ var TemplateLiteral$1 = class extends Base {
23080
23147
  return decodeTo$1(string$5, new Arrays(false, this.parts.map(partFromString), []), new Transformation(transformOrFail$1((s, options) => {
23081
23148
  const segments = segmentTemplateLiteralParts(this, s, options);
23082
23149
  if (segments) return succeed$4(segments);
23083
- return fail$3(new InvalidValue$1({ message: "Expected a string matching template literal parts" }));
23150
+ return fail$3(new InvalidValue$1({ expected: "a string matching template literal parts" }, s, options));
23084
23151
  }), transform$2((parts) => parts.join(""))));
23085
23152
  }
23086
23153
  };
@@ -23414,7 +23481,7 @@ var Arrays = class Arrays extends Base {
23414
23481
  }
23415
23482
  return fnUntracedEager(function* (input, options) {
23416
23483
  if (input === missing) return missing;
23417
- if (!Array.isArray(input)) return yield* fail$3(new InvalidType(ast));
23484
+ if (!Array.isArray(input)) return yield* fail$3(new InvalidType(ast, input, options));
23418
23485
  if (!elements) {
23419
23486
  elements = ast.elements.map((ast) => ({
23420
23487
  ast,
@@ -23442,12 +23509,13 @@ var Arrays = class Arrays extends Base {
23442
23509
  });
23443
23510
  if (eff) yield* eff;
23444
23511
  if (ast.rest.length === 0 && len > elementLen) for (let i = elementLen; i <= len - 1; i++) {
23445
- const issue = new Pointer([i], new UnexpectedKey(ast));
23512
+ const unexpected = new UnexpectedKey(ast, input[i], options);
23513
+ const issue = new Pointer([i], unexpected);
23446
23514
  if (options.errors === "all") if (state.issues) state.issues.push(issue);
23447
23515
  else state.issues = [issue];
23448
- else return yield* fail$3(new Composite(ast, [issue]));
23516
+ else return yield* fail$3(new Composite(ast, [issue], input, options));
23449
23517
  }
23450
- if (state.issues) return yield* fail$3(new Composite(ast, state.issues));
23518
+ if (state.issues) return yield* fail$3(new Composite(ast, state.issues, input, options));
23451
23519
  return state.output;
23452
23520
  });
23453
23521
  }
@@ -23484,7 +23552,7 @@ var parseArray = /*#__PURE__*/ iterateEager()({
23484
23552
  const issue = new Pointer([i], new MissingKey(p.ast.context?.annotations));
23485
23553
  if (s.options.errors === "all") if (s.issues) s.issues.push(issue);
23486
23554
  else s.issues = [issue];
23487
- else return fail$5(new Composite(s.ast, [issue]));
23555
+ else return fail$5(new Composite(s.ast, [issue], s.input, s.options));
23488
23556
  }
23489
23557
  }
23490
23558
  });
@@ -23495,11 +23563,11 @@ var resolveConcurrency = (value) => {
23495
23563
  var wrapPropertyKeyIssue = (s, ast, key, exit) => {
23496
23564
  if (exit.cause.reasons.length === 0) return exit;
23497
23565
  const issue = getSchemaIssue(exit.cause);
23498
- if (issue === void 0) return failCause$3(map$8(exit.cause, (issue) => new Composite(ast, [new Pointer([key], issue)])));
23566
+ if (issue === void 0) return failCause$3(map$8(exit.cause, (issue) => new Composite(ast, [new Pointer([key], issue)], s.input, s.options)));
23499
23567
  const pointer = new Pointer([key], issue);
23500
23568
  if (s.options.errors === "all") if (s.issues) s.issues.push(pointer);
23501
23569
  else s.issues = [pointer];
23502
- else return fail$5(new Composite(ast, [pointer]));
23570
+ else return fail$5(new Composite(ast, [pointer], s.input, s.options));
23503
23571
  };
23504
23572
  /**
23505
23573
  * floating point or integer, with optional exponent
@@ -23691,7 +23759,7 @@ var Objects = class Objects extends Base {
23691
23759
  }) : void 0;
23692
23760
  return fnUntracedEager(function* (input, options) {
23693
23761
  if (input === missing) return missing;
23694
- if (!(typeof input === "object" && input !== null && !Array.isArray(input))) return yield* fail$3(new InvalidType(ast));
23762
+ if (!(typeof input === "object" && input !== null && !Array.isArray(input))) return yield* fail$3(new InvalidType(ast, input, options));
23695
23763
  if (!properties) {
23696
23764
  properties = ast.propertySignatures.map((ps) => ({
23697
23765
  parser: compileConstructorDefault(ps.type),
@@ -23723,12 +23791,13 @@ var Objects = class Objects extends Base {
23723
23791
  for (let i = 0; i < inputKeys.length; i++) {
23724
23792
  const key = inputKeys[i];
23725
23793
  if (!expectedKeysSet.has(key)) if (onExcessPropertyError) {
23726
- const issue = new Pointer([key], new UnexpectedKey(ast));
23794
+ const unexpected = new UnexpectedKey(ast, record[key], options);
23795
+ const issue = new Pointer([key], unexpected);
23727
23796
  if (errorsAllOption) {
23728
23797
  if (state.issues) state.issues.push(issue);
23729
23798
  else state.issues = [issue];
23730
23799
  continue;
23731
- } else return yield* fail$3(new Composite(ast, [issue]));
23800
+ } else return yield* fail$3(new Composite(ast, [issue], input, options));
23732
23801
  } else assignProperty(out, key, record[key]);
23733
23802
  }
23734
23803
  }
@@ -23757,7 +23826,7 @@ var Objects = class Objects extends Base {
23757
23826
  const eff = parseIndexes(state, keyPairs, concurrency);
23758
23827
  if (eff) yield* eff;
23759
23828
  }
23760
- if (state.issues) return yield* fail$3(new Composite(ast, state.issues));
23829
+ if (state.issues) return yield* fail$3(new Composite(ast, state.issues, input, options));
23761
23830
  if (options.propertyOrder === "original") {
23762
23831
  const keys = (inputKeys ?? Reflect.ownKeys(record)).concat(expectedKeys);
23763
23832
  const preserved = {};
@@ -23815,7 +23884,7 @@ var parseProperties = /*#__PURE__*/ iterateEager()({
23815
23884
  if (s.issues) s.issues.push(issue);
23816
23885
  else s.issues = [issue];
23817
23886
  return;
23818
- } else return fail$5(new Composite(s.ast, [issue]));
23887
+ } else return fail$5(new Composite(s.ast, [issue], s.input, s.options));
23819
23888
  }
23820
23889
  }
23821
23890
  });
@@ -24068,7 +24137,7 @@ var Union$1 = class Union$1 extends Base {
24068
24137
  if (candidates.length === 1) {
24069
24138
  const result = compile(candidates[0])(input, options);
24070
24139
  if (result._tag === "Success") return result;
24071
- return effectIsExit(result) ? failSingleUnionCandidate(ast, result.cause) : catchCause$1(result, (cause) => failSingleUnionCandidate(ast, cause));
24140
+ return effectIsExit(result) ? failSingleUnionCandidate(ast, result.cause, input, options) : catchCause$1(result, (cause) => failSingleUnionCandidate(ast, cause, input, options));
24072
24141
  }
24073
24142
  const state = {
24074
24143
  ast,
@@ -24084,9 +24153,14 @@ var Union$1 = class Union$1 extends Base {
24084
24153
  ...concurrency,
24085
24154
  orderedStep: true
24086
24155
  } : void 0);
24087
- if (!eff) return state.out ?? fail$3(new AnyOf(ast, state.issues ?? []));
24156
+ if (!eff) {
24157
+ if (state.out) return state.out;
24158
+ return fail$3(new AnyOf(ast, state.issues ?? [], input, options));
24159
+ }
24088
24160
  return flatMapEager(eff, (_) => {
24089
- return state.out === sameExit ? succeed$4(input) : state.out ?? fail$3(new AnyOf(ast, state.issues ?? []));
24161
+ if (state.out === sameExit) return succeed$4(input);
24162
+ if (state.out) return state.out;
24163
+ return fail$3(new AnyOf(ast, state.issues ?? [], input, options));
24090
24164
  });
24091
24165
  };
24092
24166
  }
@@ -24133,9 +24207,10 @@ var Union$1 = class Union$1 extends Base {
24133
24207
  return Array.from(new Set(types)).join(" | ");
24134
24208
  }
24135
24209
  };
24136
- function failSingleUnionCandidate(ast, cause) {
24210
+ function failSingleUnionCandidate(ast, cause, input, options) {
24137
24211
  const issue = getSchemaIssue(cause);
24138
- return issue ? fail$5(new AnyOf(ast, [issue])) : failCause$3(cause);
24212
+ if (!issue) return failCause$3(cause);
24213
+ return fail$5(new AnyOf(ast, [issue], input, options));
24139
24214
  }
24140
24215
  var parseUnion = /*#__PURE__*/ iterateEager()({
24141
24216
  onItem(s, ast) {
@@ -24150,7 +24225,7 @@ var parseUnion = /*#__PURE__*/ iterateEager()({
24150
24225
  } else {
24151
24226
  if (s.out && s.successes) {
24152
24227
  s.successes.push(candidate);
24153
- return fail$5(new OneOf(s.ast, s.successes));
24228
+ return fail$5(new OneOf(s.ast, s.successes, s.input, s.options));
24154
24229
  }
24155
24230
  s.out = exit;
24156
24231
  if (s.successes) s.successes.push(candidate);
@@ -24252,7 +24327,7 @@ var FilterGroup = class FilterGroup extends Class$3 {
24252
24327
  };
24253
24328
  /** @internal */
24254
24329
  function makeFilter$1(filter, annotations, aborted = false) {
24255
- return new Filter((input, ast, options) => normalizeFilterOutput(ast, filter(input, ast, options)), annotations, aborted);
24330
+ return new Filter((input, ast, options) => normalizeFilterOutput(ast, filter(input, ast, options), input, options), annotations, aborted);
24256
24331
  }
24257
24332
  /** @internal */
24258
24333
  function isFinite$1(annotations) {
@@ -24639,15 +24714,17 @@ function containsUndefined(ast) {
24639
24714
  }
24640
24715
  function fromConst(ast, value) {
24641
24716
  const succeed = succeed$1(value);
24642
- return (input) => {
24717
+ return (input, options) => {
24643
24718
  if (input === missing) return missingExit;
24644
- return input === value ? succeed : fail$3(new InvalidType(ast));
24719
+ if (input === value) return succeed;
24720
+ return fail$3(new InvalidType(ast, input, options));
24645
24721
  };
24646
24722
  }
24647
24723
  function fromRefinement(ast, refinement) {
24648
- return (input) => {
24724
+ return (input, options) => {
24649
24725
  if (input === missing) return missingExit;
24650
- return refinement(input) ? sameExit : fail$3(new InvalidType(ast));
24726
+ if (refinement(input)) return sameExit;
24727
+ return fail$3(new InvalidType(ast, input, options));
24651
24728
  };
24652
24729
  }
24653
24730
  function segmentTemplateLiteralParts(ast, input, options) {
@@ -24768,7 +24845,7 @@ function collectIssues(checks, value, issues, ast, options) {
24768
24845
  } else {
24769
24846
  const issue = check.run(value, ast, options);
24770
24847
  if (issue) {
24771
- const filter = new Filter$1(check, issue);
24848
+ const filter = new Filter$1(check, issue, value, options);
24772
24849
  if (issues) issues.push(filter);
24773
24850
  else issues = [filter];
24774
24851
  if (options.errors !== "all" || check.aborted) return issues;
@@ -24853,7 +24930,7 @@ function isJson(u) {
24853
24930
  return isTree(u, isJsonLeaf);
24854
24931
  }
24855
24932
  /** @internal */
24856
- var Json$1 = /*#__PURE__*/ new Declaration([], () => (input, ast) => isJson(input) ? sameExit : fail$3(new InvalidType(ast)), {
24933
+ var Json$1 = /*#__PURE__*/ new Declaration([], () => (input, ast, options) => isJson(input) ? sameExit : fail$3(new InvalidType(ast, input, options)), {
24857
24934
  representation: {
24858
24935
  id: "effect/schema/Json",
24859
24936
  payload: null
@@ -24883,12 +24960,12 @@ function isStringTree(u) {
24883
24960
  return isTree(u, isStringTreeLeaf);
24884
24961
  }
24885
24962
  /** @internal */
24886
- var unknownToStringTree = /*#__PURE__*/ new Link(/* @__PURE__ */ new Declaration([], () => (input, ast) => isStringTree(input) ? sameExit : fail$3(new InvalidType(ast)), {
24963
+ var unknownToStringTree = /*#__PURE__*/ new Link(/* @__PURE__ */ new Declaration([], () => (input, ast, options) => isStringTree(input) ? sameExit : fail$3(new InvalidType(ast, input, options)), {
24887
24964
  expected: "StringTree",
24888
24965
  toCodecStringTree: () => void 0
24889
24966
  }), /*#__PURE__*/ passthrough());
24890
24967
  //#endregion
24891
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Brand.js
24968
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Brand.js
24892
24969
  /**
24893
24970
  * Returns a `Constructor` that **does not apply any runtime checks** and just
24894
24971
  * returns the provided value.
@@ -24912,7 +24989,7 @@ function nominal() {
24912
24989
  });
24913
24990
  }
24914
24991
  //#endregion
24915
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/process/ChildProcessSpawner.js
24992
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/process/ChildProcessSpawner.js
24916
24993
  /**
24917
24994
  * Service boundary for starting and controlling child processes.
24918
24995
  *
@@ -24984,7 +25061,7 @@ var make$31 = (spawn) => {
24984
25061
  */
24985
25062
  var ChildProcessSpawner = class extends Service$1()("effect/process/ChildProcessSpawner") {};
24986
25063
  //#endregion
24987
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/process/ChildProcess.js
25064
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/process/ChildProcess.js
24988
25065
  /**
24989
25066
  * Describes child processes before they are started.
24990
25067
  *
@@ -25192,7 +25269,7 @@ var concatTokens = (prevTokens, nextTokens, isSeparated) => isSeparated || prevT
25192
25269
  ...nextTokens.slice(1)
25193
25270
  ];
25194
25271
  //#endregion
25195
- //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.104/node_modules/@effect/platform-node-shared/dist/internal/utils.js
25272
+ //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.105/node_modules/@effect/platform-node-shared/dist/internal/utils.js
25196
25273
  /** @internal */
25197
25274
  var handleErrnoException = (module, method) => (err, [path]) => {
25198
25275
  let reason = "Unknown";
@@ -25227,7 +25304,7 @@ var handleErrnoException = (module, method) => (err, [path]) => {
25227
25304
  });
25228
25305
  };
25229
25306
  //#endregion
25230
- //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.104/node_modules/@effect/platform-node-shared/dist/NodeSink.js
25307
+ //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.105/node_modules/@effect/platform-node-shared/dist/NodeSink.js
25231
25308
  /**
25232
25309
  * Creates a `Sink` that writes chunks to a Node writable stream, respecting
25233
25310
  * backpressure, mapping writable errors with `onError`, and ending the stream
@@ -25292,7 +25369,7 @@ var pullIntoWritable = (options) => options.pull.pipe(flatMap$1((chunk) => {
25292
25369
  });
25293
25370
  }) : identity);
25294
25371
  //#endregion
25295
- //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.104/node_modules/@effect/platform-node-shared/dist/NodeStream.js
25372
+ //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.105/node_modules/@effect/platform-node-shared/dist/NodeStream.js
25296
25373
  /**
25297
25374
  * Adapters between Node streams and Effect streams, channels, and readables.
25298
25375
  *
@@ -25372,7 +25449,7 @@ var readableToPullUnsafe = (options) => {
25372
25449
  };
25373
25450
  var defaultOnError = (error) => new UnknownError$1(error);
25374
25451
  //#endregion
25375
- //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.104/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js
25452
+ //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.105/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js
25376
25453
  var toError = (error) => error instanceof globalThis.Error ? error : new globalThis.Error(String(error));
25377
25454
  var toPlatformError = (method, error, command) => {
25378
25455
  const { commands } = flattenCommand(command);
@@ -25770,7 +25847,7 @@ var flattenCommand = (command) => {
25770
25847
  };
25771
25848
  };
25772
25849
  //#endregion
25773
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Ref.js
25850
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Ref.js
25774
25851
  /**
25775
25852
  * Stores fiber-safe mutable state inside Effect programs.
25776
25853
  *
@@ -25879,66 +25956,7 @@ var make$28 = (value) => sync(() => makeUnsafe(value));
25879
25956
  */
25880
25957
  var updateAndGet = /*#__PURE__*/ dual(2, (self, f) => sync(() => self.ref.current = f(self.ref.current)));
25881
25958
  //#endregion
25882
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/SchemaError.js
25883
- /**
25884
- * @since 4.0.0
25885
- */
25886
- var TypeId$27 = "~effect/SchemaError/SchemaError";
25887
- /**
25888
- * Error thrown (or returned as the error channel value) when schema decoding
25889
- * or encoding fails.
25890
- *
25891
- * **Details**
25892
- *
25893
- * The `issue` field contains a structured {@link Issue} tree describing
25894
- * every validation failure, including the path to the problematic value and
25895
- * the expected type or constraint. Built-in issues have no `actual` field,
25896
- * and built-in messages do not include the rejected value. Other Issue fields
25897
- * and custom annotations or messages are not sanitized. `message` renders the
25898
- * issue tree as a human-readable string.
25899
- *
25900
- * Use {@link isSchemaError} to narrow an unknown value to `SchemaError`.
25901
- *
25902
- * **Example** (Catching a SchemaError)
25903
- *
25904
- * ```ts import.meta.vitest
25905
- * import { Schema } from "effect"
25906
- *
25907
- * try {
25908
- * Schema.decodeUnknownSync(Schema.Number)("not a number")
25909
- * } catch (err) {
25910
- * if (Schema.isSchemaError(err)) {
25911
- * err.message // => "Expected number"
25912
- * }
25913
- * }
25914
- * ```
25915
- *
25916
- * @category errors
25917
- * @since 4.0.0
25918
- */
25919
- var SchemaError = class extends TaggedError$1("SchemaError") {
25920
- [TypeId$27] = TypeId$27;
25921
- constructor(issue) {
25922
- super({ issue });
25923
- }
25924
- get message() {
25925
- return this.issue.toString();
25926
- }
25927
- toString() {
25928
- return `SchemaError(${this.message})`;
25929
- }
25930
- };
25931
- /**
25932
- * Returns `true` if `u` is a {@link SchemaError}.
25933
- *
25934
- * @category guards
25935
- * @since 4.0.0
25936
- */
25937
- function isSchemaError(u) {
25938
- return hasProperty(u, TypeId$27) && u[TypeId$27] === TypeId$27;
25939
- }
25940
- //#endregion
25941
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/SchemaParser.js
25959
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/SchemaParser.js
25942
25960
  /**
25943
25961
  * Runs schemas against real values.
25944
25962
  *
@@ -26016,6 +26034,9 @@ function makeOption(schema) {
26016
26034
  *
26017
26035
  * The returned function constructs a value from constructor input and throws an
26018
26036
  * `Error` with the `SchemaIssue.Issue` in its `cause` when construction fails.
26037
+ * Schema validation failures use the generic message `"Schema validation failed"`.
26038
+ * Format the `cause` explicitly with `SchemaIssue.makeFormatterDefault()` when
26039
+ * human-readable details are needed.
26019
26040
  *
26020
26041
  * **Gotchas**
26021
26042
  *
@@ -26032,7 +26053,7 @@ function make$27(schema) {
26032
26053
  const exit = runSyncExit(parser(input, options));
26033
26054
  if (isSuccess(exit)) return exit.value;
26034
26055
  const issue = getSchemaIssueOrThrow(exit.cause, "Constructor adapter can only throw schema issues");
26035
- throw new Error(issue.toString(), { cause: issue });
26056
+ throw new Error("Schema validation failed", { cause: issue });
26036
26057
  };
26037
26058
  }
26038
26059
  /**
@@ -26201,13 +26222,13 @@ function makeParser$1(ast, compile, compileConstructorDefault, constructorDefaul
26201
26222
  const output = result === sameExit ? input : result[args];
26202
26223
  if (input !== missing && output !== missing) {
26203
26224
  const issues = collectIssues(encodingChecks, input, void 0, ast, options);
26204
- if (issues) result = fail$3(new Composite(ast, issues));
26225
+ if (issues) result = fail$3(new Composite(ast, issues, input, options));
26205
26226
  }
26206
26227
  }
26207
26228
  } else result = flatMap$1(result, (value) => {
26208
26229
  if (input !== missing && value !== missing) {
26209
26230
  const issues = collectIssues(encodingChecks, input, void 0, ast, options);
26210
- if (issues) return fail$3(new Composite(ast, issues));
26231
+ if (issues) return fail$3(new Composite(ast, issues, input, options));
26211
26232
  }
26212
26233
  return succeed$4(value);
26213
26234
  });
@@ -26216,12 +26237,12 @@ function makeParser$1(ast, compile, compileConstructorDefault, constructorDefaul
26216
26237
  const value = result === sameExit ? input : result[args];
26217
26238
  if (value === missing) return result;
26218
26239
  const issues = collectIssues(checks, value, void 0, ast, options);
26219
- if (issues) result = fail$3(new Composite(ast, issues));
26240
+ if (issues) result = fail$3(new Composite(ast, issues, value, options));
26220
26241
  }
26221
26242
  } else result = flatMap$1(result, (value) => {
26222
26243
  if (value !== missing) {
26223
26244
  const issues = collectIssues(checks, value, void 0, ast, options);
26224
- if (issues) return fail$3(new Composite(ast, issues));
26245
+ if (issues) return fail$3(new Composite(ast, issues, value, options));
26225
26246
  }
26226
26247
  return succeed$4(value);
26227
26248
  });
@@ -26251,7 +26272,7 @@ function makeParser$1(ast, compile, compileConstructorDefault, constructorDefaul
26251
26272
  const local = parseLocal(value, options);
26252
26273
  return local === sameExit ? result : local;
26253
26274
  }
26254
- result = catchCause$1(result, (cause) => failCauseSync(() => map$8(cause, (issue) => new Encoding(ast, issue))));
26275
+ result = catchCause$1(result, (cause) => failCauseSync(() => map$8(cause, (issue) => new Encoding(ast, issue, input, options))));
26255
26276
  return flatMapEager(result, (value) => {
26256
26277
  const local = parseLocal(value, options);
26257
26278
  return local === sameExit ? succeed$1(value) : local;
@@ -26259,11 +26280,11 @@ function makeParser$1(ast, compile, compileConstructorDefault, constructorDefaul
26259
26280
  };
26260
26281
  }
26261
26282
  //#endregion
26262
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/schema/schema.js
26283
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/schema/schema.js
26263
26284
  /** @internal */
26264
- var TypeId$26 = "~effect/Schema/Schema";
26285
+ var TypeId$27 = "~effect/Schema/Schema";
26265
26286
  var SchemaProto = {
26266
- [TypeId$26]: TypeId$26,
26287
+ [TypeId$27]: TypeId$27,
26267
26288
  pipe() {
26268
26289
  return pipeArguments(this, arguments);
26269
26290
  },
@@ -26283,18 +26304,13 @@ function make$26(ast, options) {
26283
26304
  const self = Object.defineProperties(Object.setPrototypeOf(Schema, SchemaProto), Object.getOwnPropertyDescriptors({ ...options }));
26284
26305
  self.ast = ast;
26285
26306
  self.rebuild = (ast) => make$26(ast, options);
26286
- const makeEffect$1 = makeEffect(self);
26287
- self.makeEffect = (input, options) => fromIssueEffect(makeEffect$1(input, options));
26307
+ self.makeEffect = makeEffect(self);
26288
26308
  self.make = make$27(self);
26289
26309
  self.makeOption = makeOption(self);
26290
26310
  return self;
26291
26311
  }
26292
- /** @internal */
26293
- function fromIssueEffect(self) {
26294
- return catchCause$1(self, (cause) => failCauseSync(() => map$8(cause, (issue) => new SchemaError(issue))));
26295
- }
26296
26312
  //#endregion
26297
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Struct.js
26313
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Struct.js
26298
26314
  /**
26299
26315
  * Wraps a plain function as a {@link Lambda} value so it can be used with
26300
26316
  * {@link map}, {@link mapPick}, and {@link mapOmit}.
@@ -26333,14 +26349,14 @@ function fromIssueEffect(self) {
26333
26349
  */
26334
26350
  var lambda = (f) => f;
26335
26351
  //#endregion
26336
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/errors.js
26352
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/errors.js
26337
26353
  /** @internal */
26338
26354
  function errorWithPath(message, path) {
26339
26355
  if (path.length > 0) message += `\n at ${formatPath(path)}`;
26340
26356
  return new Error(message);
26341
26357
  }
26342
26358
  //#endregion
26343
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/JsonPointer.js
26359
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/JsonPointer.js
26344
26360
  /**
26345
26361
  * Helpers for escaping and unescaping JSON Pointer path segments. JSON Pointer
26346
26362
  * uses `/` to separate path tokens inside a JSON document, so token text must
@@ -26405,7 +26421,7 @@ globalThis.RegExp;
26405
26421
  */
26406
26422
  var escape = (string) => string.replace(/[/\\^$*+?.()|[\]{}]/g, "\\$&");
26407
26423
  //#endregion
26408
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/schema/toJsonSchemaDocument.js
26424
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/schema/toJsonSchemaDocument.js
26409
26425
  var jsonSchemaAnnotationExcludedKeys = /*#__PURE__*/ new Set([
26410
26426
  ...annotationExcludedKeys,
26411
26427
  IDENTIFIER_FALLBACK_KEY,
@@ -26838,7 +26854,7 @@ function toJsonSchemaDocument$1(document, options) {
26838
26854
  };
26839
26855
  }
26840
26856
  //#endregion
26841
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/schema/toRepresentation.js
26857
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/schema/toRepresentation.js
26842
26858
  /** @internal */
26843
26859
  function toRepresentation(ast) {
26844
26860
  const { references, representations } = toRepresentations([ast]);
@@ -27135,7 +27151,7 @@ function fromASTs(asts) {
27135
27151
  }
27136
27152
  }
27137
27153
  //#endregion
27138
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/internal/redacted.js
27154
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/internal/redacted.js
27139
27155
  /** @internal */
27140
27156
  var redactedRegistry = /*#__PURE__*/ new WeakMap();
27141
27157
  /** @internal */
@@ -27144,7 +27160,7 @@ var value$1 = (self) => {
27144
27160
  else throw new Error("Unable to get redacted value" + (self.label ? ` with label: "${self.label}"` : ""));
27145
27161
  };
27146
27162
  //#endregion
27147
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Redacted.js
27163
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Redacted.js
27148
27164
  /**
27149
27165
  * Wraps sensitive values so normal output does not reveal them.
27150
27166
  *
@@ -27157,7 +27173,7 @@ var value$1 = (self) => {
27157
27173
  *
27158
27174
  * @since 3.3.0
27159
27175
  */
27160
- var TypeId$25 = "~effect/data/Redacted";
27176
+ var TypeId$26 = "~effect/data/Redacted";
27161
27177
  /**
27162
27178
  * Returns `true` if a value is a `Redacted` wrapper.
27163
27179
  *
@@ -27185,7 +27201,7 @@ var TypeId$25 = "~effect/data/Redacted";
27185
27201
  * @category guards
27186
27202
  * @since 3.3.0
27187
27203
  */
27188
- var isRedacted = (u) => hasProperty(u, TypeId$25);
27204
+ var isRedacted = (u) => hasProperty(u, TypeId$26);
27189
27205
  /**
27190
27206
  * Creates a `Redacted` wrapper for a sensitive value.
27191
27207
  *
@@ -27219,7 +27235,7 @@ var make$25 = (value, options) => {
27219
27235
  return self;
27220
27236
  };
27221
27237
  var Proto$13 = {
27222
- [TypeId$25]: { _A: (_) => _ },
27238
+ [TypeId$26]: { _A: (_) => _ },
27223
27239
  label: void 0,
27224
27240
  ...PipeInspectableProto,
27225
27241
  toJSON() {
@@ -27287,8 +27303,67 @@ var value = value$1;
27287
27303
  */
27288
27304
  var makeEquivalence = (isEquivalent) => make$50((x, y) => isEquivalent(value(x), value(y)));
27289
27305
  //#endregion
27290
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Schema.js
27291
- var TypeId$24 = TypeId$26;
27306
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/SchemaError.js
27307
+ /**
27308
+ * @since 4.0.0
27309
+ */
27310
+ var TypeId$25 = "~effect/SchemaError/SchemaError";
27311
+ /**
27312
+ * Error thrown (or returned as the error channel value) when schema decoding
27313
+ * or encoding fails.
27314
+ *
27315
+ * **Details**
27316
+ *
27317
+ * The `issue` field contains a structured {@link SchemaIssue.Issue} tree describing
27318
+ * every validation failure, including the path to the problematic value and
27319
+ * the expected type or constraint. The `message` field renders the issue tree
27320
+ * with the default formatter. When input reporting is enabled, the message may
27321
+ * include reported input. Other Issue fields and custom annotations or messages
27322
+ * are not sanitized.
27323
+ *
27324
+ * Use {@link isSchemaError} to narrow an unknown value to `SchemaError`.
27325
+ *
27326
+ * **Example** (Catching a SchemaError)
27327
+ *
27328
+ * ```ts import.meta.vitest
27329
+ * import { Schema } from "effect"
27330
+ *
27331
+ * try {
27332
+ * Schema.decodeUnknownSync(Schema.Number)("not a number")
27333
+ * } catch (err) {
27334
+ * if (Schema.isSchemaError(err)) {
27335
+ * err.message // => "Expected number"
27336
+ * }
27337
+ * }
27338
+ * ```
27339
+ *
27340
+ * @category errors
27341
+ * @since 4.0.0
27342
+ */
27343
+ var SchemaError = class extends TaggedError$1("SchemaError") {
27344
+ [TypeId$25] = TypeId$25;
27345
+ constructor(issue) {
27346
+ super({ issue });
27347
+ }
27348
+ get message() {
27349
+ return defaultFormatter$1(this.issue);
27350
+ }
27351
+ toString() {
27352
+ return `SchemaError(${this.message})`;
27353
+ }
27354
+ };
27355
+ /**
27356
+ * Returns `true` if `u` is a {@link SchemaError}.
27357
+ *
27358
+ * @category guards
27359
+ * @since 4.0.0
27360
+ */
27361
+ function isSchemaError(u) {
27362
+ return hasProperty(u, TypeId$25) && u[TypeId$25] === TypeId$25;
27363
+ }
27364
+ //#endregion
27365
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Schema.js
27366
+ var TypeId$24 = TypeId$27;
27292
27367
  /**
27293
27368
  * Creates a schema for a **parametric** type (a generic container such as
27294
27369
  * `Array<A>`, `Option<A>`, etc.) by accepting a list of type-parameter schemas
@@ -27313,7 +27388,7 @@ var TypeId$24 = TypeId$26;
27313
27388
  * **Example** (Schema for a parametric `Box<A>` type)
27314
27389
  *
27315
27390
  * ```ts import.meta.vitest
27316
- * import { Effect, Schema, SchemaIssue as Issue, SchemaParser } from "effect"
27391
+ * import { Effect, Schema, SchemaIssue, SchemaParser } from "effect"
27317
27392
  *
27318
27393
  * interface Box<A> {
27319
27394
  * readonly value: A
@@ -27328,7 +27403,7 @@ var TypeId$24 = TypeId$26;
27328
27403
  * ([itemCodec]) =>
27329
27404
  * (u, ast, options) => {
27330
27405
  * if (!isBox(u)) {
27331
- * return Effect.fail(new SchemaIssue.InvalidType(ast))
27406
+ * return Effect.fail(new SchemaIssue.InvalidType(ast, u, options))
27332
27407
  * }
27333
27408
  * return Effect.map(
27334
27409
  * SchemaParser.decodeUnknownEffect(itemCodec)(u.value, options),
@@ -27382,7 +27457,7 @@ function declareConstructor() {
27382
27457
  * @since 3.10.0
27383
27458
  */
27384
27459
  function declare(is, annotations) {
27385
- return declareConstructor()([], () => (input, ast) => is(input) ? succeed$4(input) : fail$3(new InvalidType(ast)), annotations);
27460
+ return declareConstructor()([], () => (input, ast, options) => is(input) ? succeed$4(input) : fail$3(new InvalidType(ast, input, options)), annotations);
27386
27461
  }
27387
27462
  /**
27388
27463
  * Creates a type guard function that checks if a value conforms to a given
@@ -27449,6 +27524,9 @@ function decodeUnknownEffect(schema, options) {
27449
27524
  return fromIssueEffect(parser(input, options));
27450
27525
  };
27451
27526
  }
27527
+ function fromIssueEffect(self) {
27528
+ return catchCause$1(self, (cause) => failCauseSync(() => map$8(cause, (issue) => new SchemaError(issue))));
27529
+ }
27452
27530
  function getSchemaErrorOrThrow(cause, message) {
27453
27531
  let schemaError;
27454
27532
  for (const reason of cause.reasons) {
@@ -28230,7 +28308,7 @@ function decode$1(transformation) {
28230
28308
  * **Details**
28231
28309
  *
28232
28310
  * Constructor defaults are applied only during `make*`, not during decoding or
28233
- * encoding.
28311
+ * encoding. Failures are represented directly as `SchemaIssue.Issue` values.
28234
28312
  *
28235
28313
  * **Example** (Defining an optional field with a static default)
28236
28314
  *
@@ -28251,7 +28329,7 @@ function decode$1(transformation) {
28251
28329
  * @since 3.10.0
28252
28330
  */
28253
28331
  function withConstructorDefault(defaultValue) {
28254
- return (schema) => make$24(withConstructorDefault$1(schema.ast, toIssueEffect(defaultValue)), { schema });
28332
+ return (schema) => make$24(withConstructorDefault$1(schema.ast, defaultValue), { schema });
28255
28333
  }
28256
28334
  function toIssueEffect(self) {
28257
28335
  return catchCause$1(self, (cause) => failCauseSync(() => map$8(cause, (error) => error.issue)));
@@ -28655,10 +28733,10 @@ function Redacted(value$3, options) {
28655
28733
  if (isRedacted(input)) return flatMapEager(decodeLabel !== void 0 ? mapErrorEager(decodeLabel(input.label, poptions), (issue) => new Pointer(["label"], issue)) : void_$1, () => mapBothEager(decodeUnknownEffect$1(value$2)(value(input), poptions), {
28656
28734
  onSuccess: () => input,
28657
28735
  onFailure: () => {
28658
- return new Composite(ast, [new Pointer(["value"], new InvalidValue$1())]);
28736
+ return new Composite(ast, [new Pointer(["value"], new InvalidValue$1(void 0, input, poptions))], input, poptions);
28659
28737
  }
28660
28738
  }));
28661
- return fail$3(new InvalidType(ast));
28739
+ return fail$3(new InvalidType(ast, input, poptions));
28662
28740
  }, {
28663
28741
  representation: {
28664
28742
  id: "effect/schema/Redacted",
@@ -28704,15 +28782,15 @@ function Redacted(value$3, options) {
28704
28782
  */
28705
28783
  function CauseReason(error, defect) {
28706
28784
  return make$24(declareConstructor()([error, defect], ([error, defect]) => (input, ast, options) => {
28707
- if (!isReason(input)) return fail$3(new InvalidType(ast));
28785
+ if (!isReason(input)) return fail$3(new InvalidType(ast, input, options));
28708
28786
  switch (input._tag) {
28709
28787
  case "Fail": return mapBothEager(decodeUnknownEffect$1(error)(input.error, options), {
28710
28788
  onSuccess: makeFailReason,
28711
- onFailure: (issue) => new Composite(ast, [new Pointer(["error"], issue)])
28789
+ onFailure: (issue) => makeCompositeAtKey(ast, "error", issue, input, options)
28712
28790
  });
28713
28791
  case "Die": return mapBothEager(decodeUnknownEffect$1(defect)(input.defect, options), {
28714
28792
  onSuccess: makeDieReason,
28715
- onFailure: (issue) => new Composite(ast, [new Pointer(["defect"], issue)])
28793
+ onFailure: (issue) => makeCompositeAtKey(ast, "defect", issue, input, options)
28716
28794
  });
28717
28795
  case "Interrupt": return succeed$4(input);
28718
28796
  }
@@ -28808,10 +28886,10 @@ function Cause(error, defect) {
28808
28886
  return make$24(declareConstructor()([error, defect], ([error, defect]) => {
28809
28887
  const failures = ArraySchema(CauseReason(error, defect));
28810
28888
  return (input, ast, options) => {
28811
- if (!isCause(input)) return fail$3(new InvalidType(ast));
28889
+ if (!isCause(input)) return fail$3(new InvalidType(ast, input, options));
28812
28890
  return mapBothEager(decodeUnknownEffect$1(failures)(input.reasons, options), {
28813
28891
  onSuccess: fromReasons,
28814
- onFailure: (issue) => new Composite(ast, [new Pointer(["failures"], issue)])
28892
+ onFailure: (issue) => makeCompositeAtKey(ast, "failures", issue, input, options)
28815
28893
  });
28816
28894
  };
28817
28895
  }, {
@@ -28933,15 +29011,15 @@ function Exit(value, error, defect) {
28933
29011
  ], ([value, error, defect]) => {
28934
29012
  const cause = Cause(error, defect);
28935
29013
  return (input, ast, options) => {
28936
- if (!isExit(input)) return fail$3(new InvalidType(ast));
29014
+ if (!isExit(input)) return fail$3(new InvalidType(ast, input, options));
28937
29015
  switch (input._tag) {
28938
29016
  case "Success": return mapBothEager(decodeUnknownEffect$1(value)(input.value, options), {
28939
29017
  onSuccess: succeed$6,
28940
- onFailure: (issue) => new Composite(ast, [new Pointer(["value"], issue)])
29018
+ onFailure: (issue) => makeCompositeAtKey(ast, "value", issue, input, options)
28941
29019
  });
28942
29020
  case "Failure": return mapBothEager(decodeUnknownEffect$1(cause)(input.cause, options), {
28943
29021
  onSuccess: failCause$3,
28944
- onFailure: (issue) => new Composite(ast, [new Pointer(["cause"], issue)])
29022
+ onFailure: (issue) => makeCompositeAtKey(ast, "cause", issue, input, options)
28945
29023
  });
28946
29024
  }
28947
29025
  };
@@ -29252,8 +29330,8 @@ function getClassSchemaFactory(from, identifier, annotations) {
29252
29330
  const ClassTypeId = getClassTypeId(identifier);
29253
29331
  const isClassValue = (input) => input instanceof self || hasProperty(input, ClassTypeId);
29254
29332
  const transformation = getClassTransformation(self);
29255
- return memo = decodeTo(make$24(new Declaration([from.ast], () => (input, ast) => {
29256
- return isClassValue(input) ? succeed$4(input) : fail$3(new InvalidType(ast));
29333
+ return memo = decodeTo(make$24(new Declaration([from.ast], () => (input, ast, options) => {
29334
+ return isClassValue(input) ? succeed$4(input) : fail$3(new InvalidType(ast, input, options));
29257
29335
  }, {
29258
29336
  identifier,
29259
29337
  [CONSTRUCTOR_ANNOTATION_KEY]: ([from]) => ({
@@ -29276,8 +29354,8 @@ function isStruct(schema) {
29276
29354
  }
29277
29355
  /**
29278
29356
  * Creates a schema-backed class whose constructor validates input against a
29279
- * {@link Struct} schema. Construction throws a {@link SchemaError} on invalid
29280
- * input.
29357
+ * {@link Struct} schema. Construction throws an `Error` with a
29358
+ * `SchemaIssue.Issue` in its `cause` on invalid input.
29281
29359
  *
29282
29360
  * **When to use**
29283
29361
  *
@@ -29631,7 +29709,7 @@ var MutableJson = /*#__PURE__*/ make$24(/*#__PURE__*/ annotate$1(MutableJson$1,
29631
29709
  Type: "Schema.MutableJson"
29632
29710
  }) }));
29633
29711
  //#endregion
29634
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/Cookies.js
29712
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/Cookies.js
29635
29713
  /**
29636
29714
  * Models HTTP cookies and cookie collections for requests and responses.
29637
29715
  *
@@ -29689,7 +29767,7 @@ var fromIterable = (cookies) => {
29689
29767
  var empty$3 = /*#__PURE__*/ fromIterable([]);
29690
29768
  ({ ...BaseProto });
29691
29769
  //#endregion
29692
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/Headers.js
29770
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/Headers.js
29693
29771
  /**
29694
29772
  * Models HTTP headers for the unstable HTTP client and server modules.
29695
29773
  *
@@ -29872,7 +29950,7 @@ var CurrentRedactedNames = /*#__PURE__*/ Reference("effect/Headers/CurrentRedact
29872
29950
  ] });
29873
29951
  ({ ...PipeInspectableProto });
29874
29952
  //#endregion
29875
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/HttpBody.js
29953
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/HttpBody.js
29876
29954
  /**
29877
29955
  * Describes HTTP request and response bodies before they reach a platform
29878
29956
  * adapter.
@@ -29927,7 +30005,7 @@ var Empty$1 = class extends Proto$9 {
29927
30005
  */
29928
30006
  var empty$1 = /*#__PURE__*/ new Empty$1();
29929
30007
  //#endregion
29930
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/HttpClientError.js
30008
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/HttpClientError.js
29931
30009
  /**
29932
30010
  * Typed failure model for Effect HTTP client operations.
29933
30011
  *
@@ -29960,7 +30038,7 @@ Error$1(TypeId$19)({
29960
30038
  cause: /*#__PURE__*/ optional$3(/*#__PURE__*/ Defect())
29961
30039
  });
29962
30040
  //#endregion
29963
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/FindMyWay/internal/queryString.js
30041
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/FindMyWay/internal/queryString.js
29964
30042
  /**
29965
30043
  * @since 1.0.0
29966
30044
  */
@@ -30025,7 +30103,7 @@ function parse$2(input) {
30025
30103
  return result;
30026
30104
  }
30027
30105
  //#endregion
30028
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/FindMyWay/internal/router.js
30106
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/FindMyWay/internal/router.js
30029
30107
  var FULL_PATH_REGEXP = /^https?:\/\/.*?\//;
30030
30108
  var OPTIONAL_PARAM_REGEXP = /(\/:[^/()]*?)\?(\/?)/;
30031
30109
  /** @internal */
@@ -30574,7 +30652,7 @@ var httpMethods = [
30574
30652
  "UNSUBSCRIBE"
30575
30653
  ];
30576
30654
  //#endregion
30577
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/FindMyWay.js
30655
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/FindMyWay.js
30578
30656
  /**
30579
30657
  * A radix-tree HTTP router used by the unstable HTTP routing modules.
30580
30658
  *
@@ -30615,7 +30693,7 @@ var make$20 = make$21;
30615
30693
  */
30616
30694
  var isGreaterThanOrEqualTo = /*#__PURE__*/ isGreaterThanOrEqualTo$2(LogLevelOrder);
30617
30695
  //#endregion
30618
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/ErrorReporter.js
30696
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/ErrorReporter.js
30619
30697
  /**
30620
30698
  * Defines the runtime property key used to mark an object error as ignored by error
30621
30699
  * reporting.
@@ -30652,7 +30730,7 @@ var isGreaterThanOrEqualTo = /*#__PURE__*/ isGreaterThanOrEqualTo$2(LogLevelOrde
30652
30730
  */
30653
30731
  var ignore = "~effect/ErrorReporter/ignore";
30654
30732
  //#endregion
30655
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/HttpServerResponse.js
30733
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/HttpServerResponse.js
30656
30734
  var TypeId$16 = "~effect/http/HttpServerResponse";
30657
30735
  /**
30658
30736
  * Creates an empty HTTP response.
@@ -30741,7 +30819,7 @@ TaggedError$1("MultipartError");
30741
30819
  var HttpServerRequest = /*#__PURE__*/ Service$1("effect/http/HttpServerRequest");
30742
30820
  Service$1()("effect/http/ParsedSearchParams");
30743
30821
  //#endregion
30744
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/internal/preResponseHandler.js
30822
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/internal/preResponseHandler.js
30745
30823
  /** @internal */
30746
30824
  var requestPreResponseHandlers = /*#__PURE__*/ new WeakMap();
30747
30825
  /** @internal */
@@ -30751,7 +30829,7 @@ var appendPreResponseHandlerUnsafe$1 = (request, handler) => {
30751
30829
  requestPreResponseHandlers.set(request.source, next);
30752
30830
  };
30753
30831
  //#endregion
30754
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/HttpMiddleware.js
30832
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/HttpMiddleware.js
30755
30833
  var loggerDisabledRequests = /*#__PURE__*/ new WeakSet();
30756
30834
  /**
30757
30835
  * Runs an effect with HTTP response logging disabled for the current server request.
@@ -30765,7 +30843,7 @@ var withLoggerDisabled = (self) => withFiber((fiber) => {
30765
30843
  return self;
30766
30844
  });
30767
30845
  //#endregion
30768
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/HttpEffect.js
30846
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/HttpEffect.js
30769
30847
  /**
30770
30848
  * Registers a pre-response handler for the supplied HTTP server request.
30771
30849
  *
@@ -30774,7 +30852,7 @@ var withLoggerDisabled = (self) => withFiber((fiber) => {
30774
30852
  */
30775
30853
  var appendPreResponseHandlerUnsafe = appendPreResponseHandlerUnsafe$1;
30776
30854
  //#endregion
30777
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/http/HttpRouter.js
30855
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/http/HttpRouter.js
30778
30856
  /**
30779
30857
  * Builds server-side routers for Effect HTTP applications.
30780
30858
  *
@@ -30900,7 +30978,7 @@ var getMiddleware = (context) => {
30900
30978
  };
30901
30979
  (/*#__PURE__*/ middleware(withLoggerDisabled)).layer;
30902
30980
  //#endregion
30903
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/workers/Transferable.js
30981
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/workers/Transferable.js
30904
30982
  /**
30905
30983
  * Marks encoded worker message fields that should move through `postMessage` as
30906
30984
  * transfer-list entries.
@@ -30949,7 +31027,7 @@ var makeCollectorUnsafe = () => {
30949
31027
  });
30950
31028
  };
30951
31029
  //#endregion
30952
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/PrimaryKey.js
31030
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/PrimaryKey.js
30953
31031
  /**
30954
31032
  * Defines the unique identifier used to identify objects that implement the `PrimaryKey` interface.
30955
31033
  *
@@ -30967,7 +31045,7 @@ var makeCollectorUnsafe = () => {
30967
31045
  */
30968
31046
  var symbol = "~effect/interfaces/PrimaryKey";
30969
31047
  //#endregion
30970
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/RpcSchema.js
31048
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/RpcSchema.js
30971
31049
  /**
30972
31050
  * RPC schema markers and interruption annotations.
30973
31051
  *
@@ -31026,7 +31104,7 @@ var ClientAbort = class extends Service$1()("effect/rpc/RpcSchema/ClientAbort")
31026
31104
  }));
31027
31105
  };
31028
31106
  //#endregion
31029
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/Rpc.js
31107
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/Rpc.js
31030
31108
  var TypeId$12 = "~effect/rpc/Rpc";
31031
31109
  /**
31032
31110
  * Represents server-side metadata for the client associated with an RPC request.
@@ -31213,7 +31291,7 @@ var WrapperTypeId = "~effect/rpc/Rpc/Wrapper";
31213
31291
  */
31214
31292
  var isWrapper = (u) => WrapperTypeId in u;
31215
31293
  //#endregion
31216
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/RpcMessage.js
31294
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/RpcMessage.js
31217
31295
  /**
31218
31296
  * Converts a bigint or string request id into the branded `RequestId` type.
31219
31297
  *
@@ -33071,7 +33149,7 @@ defaultPackr.pack;
33071
33149
  defaultPackr.pack;
33072
33150
  var { NEVER, ALWAYS, DECIMAL_ROUND, DECIMAL_FIT } = FLOAT32_OPTIONS;
33073
33151
  //#endregion
33074
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/RpcSerialization.js
33152
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/RpcSerialization.js
33075
33153
  /**
33076
33154
  * Service that describes how RPC protocol messages are encoded and decoded,
33077
33155
  * including the content type and whether the serialization format provides
@@ -33340,7 +33418,7 @@ function encodeJsonRpcMessage(response) {
33340
33418
  }
33341
33419
  var jsonRpcInternalError = -32603;
33342
33420
  //#endregion
33343
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/Utils.js
33421
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/Utils.js
33344
33422
  /**
33345
33423
  * Builds a service with a `run` method that buffers writes until `run` installs
33346
33424
  * a writer, replays buffered writes with their original contexts, and restores
@@ -33418,7 +33496,7 @@ var withRunClient = (f) => suspend$2(() => {
33418
33496
  }));
33419
33497
  });
33420
33498
  //#endregion
33421
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/RpcClient.js
33499
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/RpcClient.js
33422
33500
  var requestIdCounter = 0;
33423
33501
  /**
33424
33502
  * Creates an RPC client for an already-decoded message channel, returning the
@@ -33784,7 +33862,7 @@ var Protocol$1 = class extends Service$1()("effect/rpc/RpcClient/Protocol") {
33784
33862
  Service$1()("effect/rpc/RpcClient/ConnectionHooks");
33785
33863
  var decodeDefect = /*#__PURE__*/ decodeSync(/*#__PURE__*/ Defect());
33786
33864
  //#endregion
33787
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Stdio.js
33865
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Stdio.js
33788
33866
  /**
33789
33867
  * Service contract for command-line arguments and standard input, output, and
33790
33868
  * error output. It lets programs depend on standard I/O through the Effect
@@ -33836,8 +33914,9 @@ var Stdio = /*#__PURE__*/ Service$1(TypeId$11);
33836
33914
  *
33837
33915
  * **Details**
33838
33916
  *
33839
- * The returned service reuses the supplied fields unchanged and only adds the
33840
- * `Stdio` type identifier; it does not create a `Layer` or provide defaults.
33917
+ * The returned service reuses the supplied fields unchanged and adds the
33918
+ * `Stdio` type identifier. Omitted terminal-detection fields default to
33919
+ * effects that succeed with `false`.
33841
33920
  *
33842
33921
  * @see {@link layerTest} for a test layer with default fields that can be overridden
33843
33922
  *
@@ -33846,10 +33925,12 @@ var Stdio = /*#__PURE__*/ Service$1(TypeId$11);
33846
33925
  */
33847
33926
  var make$13 = (options) => ({
33848
33927
  [TypeId$11]: TypeId$11,
33928
+ stdinIsTerminal: succeed$4(false),
33929
+ stdoutIsTerminal: succeed$4(false),
33849
33930
  ...options
33850
33931
  });
33851
33932
  //#endregion
33852
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/RpcServer.js
33933
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/RpcServer.js
33853
33934
  /**
33854
33935
  * Creates an RPC server for an already-decoded message channel, running
33855
33936
  * handlers for a group and sending decoded server responses through
@@ -34170,7 +34251,7 @@ var make$12 = /*#__PURE__*/ fnUntraced(function* (group, options) {
34170
34251
  const clients = /* @__PURE__ */ new Map();
34171
34252
  const handleEncode = (client, requestId, encodeDefect, collector, effect, onSuccess) => (collector ? provideService(effect, Collector, collector) : effect).pipe(flatMap$1((a) => send(client.id, onSuccess(a), collector && collector.clearUnsafe())), catchCause$1((cause) => {
34172
34253
  client.schemas.delete(requestId);
34173
- const defect = squash(map$8(cause, (e) => e.issue.toString()));
34254
+ const defect = squash(map$8(cause, (e) => defaultFormatter$1(e.issue)));
34174
34255
  return andThen(sendRequestDefect(client, requestId, encodeDefect, defect), server.write(client.id, {
34175
34256
  _tag: "Interrupt",
34176
34257
  requestId,
@@ -34216,7 +34297,7 @@ var make$12 = /*#__PURE__*/ fnUntraced(function* (group, options) {
34216
34297
  if (!rpc) return sendRequestDefect(client, requestId, (defect) => succeed$4(defect), `Unknown request tag: ${tag}`);
34217
34298
  const schemas = getSchemas(rpc);
34218
34299
  return matchEffect(provideContext$2(schemas.decode(request.payload), schemas.context), {
34219
- onFailure: (error) => sendRequestDefect(client, requestId, schemas.encodeDefect, error.issue.toString()),
34300
+ onFailure: (error) => sendRequestDefect(client, requestId, schemas.encodeDefect, defaultFormatter$1(error.issue)),
34220
34301
  onSuccess: (payload) => {
34221
34302
  client.schemas.set(requestId, supportsTransferables ? {
34222
34303
  ...schemas,
@@ -34311,7 +34392,7 @@ var layerProtocolStdio = /*#__PURE__*/ effect(Protocol, /* @__PURE__ */ gen(func
34311
34392
  }));
34312
34393
  }));
34313
34394
  //#endregion
34314
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/RpcGroup.js
34395
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/RpcGroup.js
34315
34396
  var RpcGroupProto = {
34316
34397
  add(...rpcs) {
34317
34398
  const requests = new Map(this.requests);
@@ -34445,7 +34526,7 @@ var make$11 = (...rpcs) => makeProto$1({
34445
34526
  annotations: empty$8()
34446
34527
  });
34447
34528
  //#endregion
34448
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/ConfigProvider.js
34529
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/ConfigProvider.js
34449
34530
  /**
34450
34531
  * Data sources used by `Config` to load raw configuration values. A
34451
34532
  * `ConfigProvider` reads paths from places such as environment variables,
@@ -34811,7 +34892,7 @@ var Boolean$1 = /*#__PURE__*/ Literals([...TrueValues.literals, ...FalseValues.l
34811
34892
  encode: (value) => value ? "true" : "false"
34812
34893
  })));
34813
34894
  //#endregion
34814
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Crypto.js
34895
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Crypto.js
34815
34896
  /**
34816
34897
  * Defines a platform-independent service for cryptographic operations.
34817
34898
  *
@@ -34959,7 +35040,7 @@ var formatUUIDv7 = (timestampMillis, bytes) => {
34959
35040
  return formatUUID(bytes);
34960
35041
  };
34961
35042
  //#endregion
34962
- //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.104/node_modules/@effect/platform-node-shared/dist/NodeCrypto.js
35043
+ //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.105/node_modules/@effect/platform-node-shared/dist/NodeCrypto.js
34963
35044
  /**
34964
35045
  * Node-compatible implementation of Effect's `Crypto` service.
34965
35046
  *
@@ -34989,7 +35070,7 @@ var digest = (algorithm, data) => try_({
34989
35070
  })
34990
35071
  });
34991
35072
  //#endregion
34992
- //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.104_effect@4.0.0-beta.104_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeCrypto.js
35073
+ //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.105_effect@4.0.0-beta.105_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeCrypto.js
34993
35074
  /**
34994
35075
  * The `NodeCrypto` module provides the Node.js `Crypto` service layer for
34995
35076
  * Effect programs. Provide {@link layer} at the edge of a Node application,
@@ -35014,7 +35095,7 @@ var layer$10 = /* @__PURE__ */ succeed$5(Crypto, /* @__PURE__ */ make$9({
35014
35095
  digest
35015
35096
  }));
35016
35097
  //#endregion
35017
- //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.104/node_modules/@effect/platform-node-shared/dist/NodeFileSystem.js
35098
+ //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.105/node_modules/@effect/platform-node-shared/dist/NodeFileSystem.js
35018
35099
  /**
35019
35100
  * Shared Node-compatible implementation of Effect's `FileSystem` service.
35020
35101
  *
@@ -35368,7 +35449,7 @@ var makeFileSystem = /*#__PURE__*/ map$7(/*#__PURE__*/ serviceOption(WatchBacken
35368
35449
  writeFile: writeFile$1
35369
35450
  }));
35370
35451
  //#endregion
35371
- //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.104_effect@4.0.0-beta.104_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeFileSystem.js
35452
+ //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.105_effect@4.0.0-beta.105_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeFileSystem.js
35372
35453
  /**
35373
35454
  * Node.js `FileSystem` layer for programs that perform real filesystem I/O.
35374
35455
  *
@@ -35387,7 +35468,7 @@ var makeFileSystem = /*#__PURE__*/ map$7(/*#__PURE__*/ serviceOption(WatchBacken
35387
35468
  */
35388
35469
  var layer$8 = /* @__PURE__ */ effect(FileSystem)(makeFileSystem);
35389
35470
  //#endregion
35390
- //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.104/node_modules/@effect/platform-node-shared/dist/NodePath.js
35471
+ //#region node_modules/.pnpm/@effect+platform-node-shared@4.0.0-beta.105_effect@4.0.0-beta.105/node_modules/@effect/platform-node-shared/dist/NodePath.js
35391
35472
  /**
35392
35473
  * Node-backed provider for Effect's `Path` service.
35393
35474
  *
@@ -35425,7 +35506,7 @@ var fileUrlOps = (windows) => ({
35425
35506
  .../*#__PURE__*/ fileUrlOps(true)
35426
35507
  });
35427
35508
  //#endregion
35428
- //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.104_effect@4.0.0-beta.104_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodePath.js
35509
+ //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.105_effect@4.0.0-beta.105_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodePath.js
35429
35510
  /**
35430
35511
  * Node.js layers for Effect's `Path` service.
35431
35512
  *
@@ -35449,7 +35530,7 @@ var layer$6 = /* @__PURE__ */ succeed$5(Path$1)({
35449
35530
  .../*#__PURE__*/ fileUrlOps(void 0)
35450
35531
  });
35451
35532
  //#endregion
35452
- //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.104_effect@4.0.0-beta.104_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeStdio.js
35533
+ //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.105_effect@4.0.0-beta.105_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeStdio.js
35453
35534
  /**
35454
35535
  * Node.js `Stdio` layer for the current process.
35455
35536
  *
@@ -35503,7 +35584,7 @@ var layer$4 = /* @__PURE__ */ succeed$5(Stdio, /*#__PURE__*/ make$13({
35503
35584
  })
35504
35585
  }));
35505
35586
  //#endregion
35506
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Terminal.js
35587
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Terminal.js
35507
35588
  var TypeId$8 = "~effect/platform/Terminal";
35508
35589
  var QuitErrorTypeId = "effect/platform/Terminal/QuitError";
35509
35590
  /**
@@ -35687,7 +35768,7 @@ function defaultShouldQuit(input) {
35687
35768
  return input.key.ctrl && (input.key.name === "c" || input.key.name === "d");
35688
35769
  }
35689
35770
  //#endregion
35690
- //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.104_effect@4.0.0-beta.104_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeServices.js
35771
+ //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.105_effect@4.0.0-beta.105_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeServices.js
35691
35772
  /**
35692
35773
  * Provides the default Node implementations for child process spawning,
35693
35774
  * filesystem, path, stdio, and terminal services.
@@ -35697,7 +35778,7 @@ function defaultShouldQuit(input) {
35697
35778
  */
35698
35779
  var layer$1 = /*#__PURE__*/ provideMerge(layer$12, /*#__PURE__*/ mergeAll(layer$8, layer$10, layer$6, layer$4, layer$3));
35699
35780
  //#endregion
35700
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Runtime.js
35781
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Runtime.js
35701
35782
  /**
35702
35783
  * Helpers for turning an `Effect` program into a host application's main entry
35703
35784
  * point. This module is the low-level layer used by platform adapters to run a
@@ -35981,7 +36062,7 @@ var getErrorReported = (u) => {
35981
36062
  return true;
35982
36063
  };
35983
36064
  //#endregion
35984
- //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.104_effect@4.0.0-beta.104_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeRuntime.js
36065
+ //#region node_modules/.pnpm/@effect+platform-node@4.0.0-beta.105_effect@4.0.0-beta.105_ioredis@5.11.1_supports-color@7.2.0_/node_modules/@effect/platform-node/dist/NodeRuntime.js
35985
36066
  /**
35986
36067
  * Node.js process runner for Effect programs.
35987
36068
  *
@@ -36033,7 +36114,7 @@ var runMain = /* @__PURE__ */ makeRunMain(({ fiber, teardown }) => {
36033
36114
  process.on("SIGTERM", onSigint);
36034
36115
  });
36035
36116
  //#endregion
36036
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Console.js
36117
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Console.js
36037
36118
  /**
36038
36119
  * Context reference for the current console service in the Effect system, allowing access to the active console implementation from within the Effect context.
36039
36120
  *
@@ -36168,7 +36249,7 @@ var log = (...args) => consoleWith((console) => sync$1(() => {
36168
36249
  console.log(...args);
36169
36250
  }));
36170
36251
  //#endregion
36171
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/Logger.js
36252
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/Logger.js
36172
36253
  /**
36173
36254
  * Context reference that routes the built-in default logger and TTY pretty
36174
36255
  * console logger to stderr.
@@ -36192,7 +36273,7 @@ var log = (...args) => consoleWith((console) => sync$1(() => {
36192
36273
  */
36193
36274
  var LogToStderr = LogToStderr$1;
36194
36275
  //#endregion
36195
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/CliError.js
36276
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/CliError.js
36196
36277
  /**
36197
36278
  * Defines structured errors for the unstable CLI parser and runner.
36198
36279
  *
@@ -36664,7 +36745,7 @@ var ShowHelp = class extends TaggedError(`${TypeId$7}/ShowHelp`)("ShowHelp", {
36664
36745
  }
36665
36746
  };
36666
36747
  //#endregion
36667
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/Primitive.js
36748
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/Primitive.js
36668
36749
  /**
36669
36750
  * Parses raw command-line strings into typed values.
36670
36751
  *
@@ -36927,7 +37008,7 @@ var getChoiceKeys = (primitive) => primitive._tag === "Choice" ? primitive.choic
36927
37008
  /** @internal */
36928
37009
  var getPathType = (primitive) => primitive._tag === "Path" ? primitive.pathType : void 0;
36929
37010
  //#endregion
36930
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/ansi.js
37011
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/ansi.js
36931
37012
  /**
36932
37013
  * Internal ANSI escape sequence helpers used by the unstable CLI rendering
36933
37014
  * implementation. This module centralizes the control codes for text styling,
@@ -37007,7 +37088,7 @@ var eraseLines = (rows) => {
37007
37088
  return command;
37008
37089
  };
37009
37090
  //#endregion
37010
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/Prompt.js
37091
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/Prompt.js
37011
37092
  /**
37012
37093
  * Builds interactive terminal prompts for CLI applications.
37013
37094
  *
@@ -38583,7 +38664,7 @@ var entriesToDisplay = (cursor, total, maxVisible) => {
38583
38664
  };
38584
38665
  };
38585
38666
  //#endregion
38586
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/Param.js
38667
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/Param.js
38587
38668
  var TypeId$5 = "~effect/cli/Param";
38588
38669
  /**
38589
38670
  * Defines the kind discriminator for positional argument parameters.
@@ -39280,7 +39361,7 @@ var getParamMetadata = (param) => {
39280
39361
  });
39281
39362
  };
39282
39363
  //#endregion
39283
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/Argument.js
39364
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/Argument.js
39284
39365
  /**
39285
39366
  * Creates a positional string argument.
39286
39367
  *
@@ -39316,7 +39397,7 @@ var string$2 = (name) => string$3(argumentKind, name);
39316
39397
  */
39317
39398
  var withDescription$2 = /*#__PURE__*/ dual(2, (self, description) => withDescription$3(self, description));
39318
39399
  //#endregion
39319
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/CliOutput.js
39400
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/CliOutput.js
39320
39401
  /**
39321
39402
  * Formats CLI help and errors as text.
39322
39403
  *
@@ -39564,7 +39645,7 @@ var formatHelpDocImpl = (doc, colors) => {
39564
39645
  return sections.join("\n");
39565
39646
  };
39566
39647
  //#endregion
39567
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/completions/bash.js
39648
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/completions/bash.js
39568
39649
  var escapeForBash = (s) => s.replace(/'/g, "'\\''");
39569
39650
  var sanitizeFunctionName = (s) => s.replace(/[^a-zA-Z0-9_]/g, "_");
39570
39651
  var flagNamesForWordlist = (flag) => {
@@ -39768,7 +39849,7 @@ var generate$3 = (executableName, descriptor) => {
39768
39849
  return lines.join("\n");
39769
39850
  };
39770
39851
  //#endregion
39771
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/completions/fish.js
39852
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/completions/fish.js
39772
39853
  var escapeFishString = (s) => s.replace(/'/g, "\\'");
39773
39854
  /**
39774
39855
  * Build a Fish condition that checks the current subcommand context.
@@ -39906,7 +39987,7 @@ var generate$2 = (executableName, descriptor) => {
39906
39987
  return lines.join("\n");
39907
39988
  };
39908
39989
  //#endregion
39909
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/completions/zsh.js
39990
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/completions/zsh.js
39910
39991
  var escapeZsh = (s) => s.replace(/\\/g, "\\\\").replace(/'/g, "'\\''").replace(/:/g, "\\:");
39911
39992
  var sanitize = (s) => s.replace(/[^a-zA-Z0-9_]/g, "_");
39912
39993
  /**
@@ -40043,7 +40124,7 @@ var generate$1 = (executableName, descriptor) => {
40043
40124
  return lines.join("\n");
40044
40125
  };
40045
40126
  //#endregion
40046
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/Completions.js
40127
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/Completions.js
40047
40128
  /**
40048
40129
  * The `Completions` module turns a plain description of an Effect CLI command
40049
40130
  * tree into shell completion scripts for Bash, Zsh, and Fish. It is the
@@ -40079,7 +40160,7 @@ var generate = (executableName, shell, descriptor) => {
40079
40160
  }
40080
40161
  };
40081
40162
  //#endregion
40082
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/Flag.js
40163
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/Flag.js
40083
40164
  /**
40084
40165
  * Creates a string flag that accepts text input.
40085
40166
  *
@@ -40345,7 +40426,7 @@ var withDefault = withDefault$1;
40345
40426
  */
40346
40427
  var map$1 = /*#__PURE__*/ dual(2, (self, f) => map$2(self, f));
40347
40428
  //#endregion
40348
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/config.js
40429
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/config.js
40349
40430
  /**
40350
40431
  * Config Internal
40351
40432
  * ================
@@ -40464,7 +40545,7 @@ var reconstructTree = (tree, results) => {
40464
40545
  }
40465
40546
  };
40466
40547
  //#endregion
40467
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/command.js
40548
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/command.js
40468
40549
  /**
40469
40550
  * Command Implementation
40470
40551
  * ======================
@@ -40655,7 +40736,7 @@ var checkForDuplicateFlags = (parent, subcommands, options) => {
40655
40736
  }
40656
40737
  };
40657
40738
  //#endregion
40658
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/completions/descriptor.js
40739
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/completions/descriptor.js
40659
40740
  /**
40660
40741
  * CommandDescriptor — pure-data representation of a command tree for
40661
40742
  * shell completion generation.
@@ -40753,7 +40834,7 @@ var fromCommand = (cmd) => {
40753
40834
  };
40754
40835
  };
40755
40836
  //#endregion
40756
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/help.js
40837
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/help.js
40757
40838
  /**
40758
40839
  * Help Documentation
40759
40840
  * ================
@@ -40862,7 +40943,7 @@ var getHelpForCommandPath = (command, commandPath, builtIns) => gen(function* ()
40862
40943
  };
40863
40944
  });
40864
40945
  //#endregion
40865
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/GlobalFlag.js
40946
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/GlobalFlag.js
40866
40947
  /**
40867
40948
  * Global flags for Effect CLI command trees. Global flags are parsed outside a
40868
40949
  * single command's local flags and can apply to a command and its descendants.
@@ -41033,7 +41114,7 @@ var BuiltIns = [
41033
41114
  LogLevel
41034
41115
  ];
41035
41116
  //#endregion
41036
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/CliConfig.js
41117
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/CliConfig.js
41037
41118
  /**
41038
41119
  * Configuration for Effect CLI command execution.
41039
41120
  *
@@ -41060,7 +41141,7 @@ var CliConfig = class extends Reference("effect/unstable/cli/CliConfig", { defau
41060
41141
  */
41061
41142
  var defaults = { builtIns: BuiltIns };
41062
41143
  //#endregion
41063
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/lexer.js
41144
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/lexer.js
41064
41145
  /** @internal */
41065
41146
  function lex(argv) {
41066
41147
  const endIndex = argv.indexOf("--");
@@ -41119,7 +41200,7 @@ var lexTokens = (args) => {
41119
41200
  return tokens;
41120
41201
  };
41121
41202
  //#endregion
41122
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/auto-suggest.js
41203
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/auto-suggest.js
41123
41204
  /**
41124
41205
  * Simple Levenshtein distance implementation (small N, no perf worries)
41125
41206
  */
@@ -41147,7 +41228,7 @@ var suggest = (input, candidates) => {
41147
41228
  return distances.filter(([d]) => d === minDistance).map(([, c]) => c);
41148
41229
  };
41149
41230
  //#endregion
41150
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/parser.js
41231
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/parser.js
41151
41232
  /**
41152
41233
  * Parsing Pipeline for CLI Commands
41153
41234
  * ==================================
@@ -41673,7 +41754,7 @@ var scanCommandLevel = (tokens, context) => {
41673
41754
  return toLeafResult(state);
41674
41755
  };
41675
41756
  //#endregion
41676
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/internal/wizard.js
41757
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/internal/wizard.js
41677
41758
  var run$1 = /*#__PURE__*/ fnUntraced(function* (command, options) {
41678
41759
  const commandPath = options?.commandPath ?? [command.name];
41679
41760
  const selected = getCommandAtPath(command, commandPath);
@@ -41833,7 +41914,7 @@ var wrapCommand = (commandLine) => {
41833
41914
  };
41834
41915
  var formatShellArg = (arg) => /^[A-Za-z0-9_./:@%+=,-]+$/.test(arg) ? arg : `'${arg.replaceAll("'", `'"'"'`)}'`;
41835
41916
  //#endregion
41836
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/cli/Command.js
41917
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/cli/Command.js
41837
41918
  /**
41838
41919
  * Returns `true` if the provided value is a `Command`.
41839
41920
  *
@@ -42433,7 +42514,7 @@ var runWith = (command, config) => {
42433
42514
  };
42434
42515
  var package_default = {
42435
42516
  name: "repo-dive",
42436
- version: "0.11.1",
42517
+ version: "0.12.0",
42437
42518
  description: "Dive into a git repo's history: per-commit snapshots, an indexed metrics catalog and an interactive dashboard",
42438
42519
  keywords: [
42439
42520
  "git",
@@ -42509,8 +42590,8 @@ var package_default = {
42509
42590
  "@changesets/changelog-github": "0.7.0",
42510
42591
  "@changesets/cli": "2.31.1",
42511
42592
  "@changesets/config": "3.1.4",
42512
- "@effect/platform-node": "4.0.0-beta.104",
42513
- "@effect/vitest": "4.0.0-beta.104",
42593
+ "@effect/platform-node": "4.0.0-beta.105",
42594
+ "@effect/vitest": "4.0.0-beta.105",
42514
42595
  "@kachkaev/eslint-config-base": "1.2.0",
42515
42596
  "@kachkaev/markdownlint-config": "1.0.1",
42516
42597
  "@kachkaev/prettier-config": "2.2.1",
@@ -42533,13 +42614,13 @@ var package_default = {
42533
42614
  "babel-plugin-react-compiler": "1.0.0",
42534
42615
  "class-variance-authority": "0.7.1",
42535
42616
  "cspell": "10.0.1",
42536
- "effect": "4.0.0-beta.104",
42617
+ "effect": "4.0.0-beta.105",
42537
42618
  "eslint": "9.39.5",
42538
42619
  "eslint-plugin-react-hooks": "7.1.1",
42539
42620
  "husky": "9.1.7",
42540
42621
  "knip": "6.32.0",
42541
42622
  "lint-staged": "17.3.0",
42542
- "lucide-react": "1.29.0",
42623
+ "lucide-react": "1.30.0",
42543
42624
  "markdownlint-cli": "0.49.1",
42544
42625
  "npm-run-all2": "9.0.3",
42545
42626
  "prettier": "3.9.6",
@@ -49803,6 +49884,19 @@ var collectorsCommand = make$5("collectors").pipe(withDescription("List availabl
49803
49884
  var prettifyAuthorEmail = (email) => {
49804
49885
  return /^(?:\d+\+)?([^@]+)@users\.noreply\.github\.com$/.exec(email)?.[1] ?? email;
49805
49886
  };
49887
+ /**
49888
+ * The username an address is built around: `alice@example.com` → `alice`. What
49889
+ * a chart falls back to when nobody's name is known, so a published report
49890
+ * names people without spelling out an address anyone can scrape.
49891
+ *
49892
+ * `undefined` when there is no username to take — an identity that is not an
49893
+ * address at all (a bare `Co-authored-by: Some Name`, or an already-prettified
49894
+ * noreply handle), which is then shown as it stands.
49895
+ */
49896
+ var usernameFromEmail = (email) => {
49897
+ const at = email.indexOf("@");
49898
+ return at > 0 ? email.slice(0, at) : void 0;
49899
+ };
49806
49900
  /** Config file names, in resolution order. First match wins. */
49807
49901
  var configFileNames = [
49808
49902
  "repo-dive.config.ts",
@@ -49823,10 +49917,18 @@ var defaultCatalogDirName = ".repo-dive";
49823
49917
  var defaultDashboardPort = 2141;
49824
49918
  /** Automation bots — commits that don't reflect authored work. */
49825
49919
  var botPattern = /\brenovate\b|\bdependabot\b|github-actions|\[bot\]/i;
49920
+ /**
49921
+ * A trailing "bot" word in the display name — `Release bot`, `deploy-bot`.
49922
+ * Requires a space or hyphen before it so ordinary names that merely end in
49923
+ * those letters, like `Kate Talbot`, stay human.
49924
+ */
49925
+ var botNameSuffixPattern = /[\s-]bot$/i;
49826
49926
  /** Known AI coding agents (mirrors the co-author heuristic in indexing.ts). */
49827
49927
  var aiPattern = /claude|copilot|cursor|chatgpt|openai|gemini|aider|devin|coderabbit|codegen|sweep|windsurf/i;
49928
+ /** `"Name <email>"` → `"Name"`; identities without an email part are used as-is. */
49929
+ var identityName = (identity) => identity.replace(/\s*<[^<>]*>\s*$/, "").trim();
49828
49930
  /** Classifies a `"Name <email>"` identity when the config leaves `kind` unset. */
49829
- var deriveContributorKind = (identity) => botPattern.test(identity) ? "bot" : aiPattern.test(identity) ? "ai" : "human";
49931
+ var deriveContributorKind = (identity) => botPattern.test(identity) || botNameSuffixPattern.test(identityName(identity)) ? "bot" : aiPattern.test(identity) ? "ai" : "human";
49830
49932
  /**
49831
49933
  * Tidies an auto-derived name for display. The kind badge (🤖 / ✨) already
49832
49934
  * marks bots and AI agents, so the `[bot]` suffix GitHub bakes into author names
@@ -49844,7 +49946,7 @@ var bareResolveContributor = (aliases, email, name) => {
49844
49946
  const canonicalEmail = prettifyAuthorEmail(entry?.canonicalEmail ?? email);
49845
49947
  return {
49846
49948
  canonicalEmail,
49847
- label: entry?.displayName ?? normalizeContributorName(canonicalEmail),
49949
+ label: entry?.displayName ?? normalizeContributorName(usernameFromEmail(canonicalEmail) ?? canonicalEmail),
49848
49950
  displayName: entry?.displayName,
49849
49951
  url: entry?.url,
49850
49952
  kind: entry?.kind ?? deriveContributorKind(`${name ?? ""} <${email}>`)
@@ -51261,11 +51363,33 @@ var buildDashboardData = (repoRoot, commits, config, remoteUrl) => {
51261
51363
  rule,
51262
51364
  count
51263
51365
  })) : [];
51264
- const authorNameByEmail = /* @__PURE__ */ new Map();
51265
- for (const commit of commits) if (commit.authorName) authorNameByEmail.set(commit.authorEmail.toLowerCase(), commit.authorName);
51366
+ /**
51367
+ * The name as spelled on this commit (author line or trailer): a configured
51368
+ * displayName wins, otherwise the observed spelling, tidied so a bot's
51369
+ * `[bot]` suffix doesn't double up with its kind badge. Falls back to the
51370
+ * resolved label (the canonical email's username) for an identity git never
51371
+ * spelled a name for.
51372
+ */
51373
+ const nameOf = (resolved, observedName) => resolved.displayName ?? (observedName ? normalizeContributorName(observedName) : resolved.label);
51374
+ /** Raw email → the name git spelled beside it, for kind derivation. */
51375
+ const nameByEmail = /* @__PURE__ */ new Map();
51376
+ /**
51377
+ * Canonical email → the name that identity's chart bands carry. Keyed by the
51378
+ * canonical email so every alias of one person names the same band, and
51379
+ * written in commit order (oldest first) so the newest spelling wins — the
51380
+ * rule the contributors list below follows too.
51381
+ */
51382
+ const nameByCanonicalEmail = /* @__PURE__ */ new Map();
51383
+ for (const commit of commits) {
51384
+ if (!commit.authorName) continue;
51385
+ nameByEmail.set(commit.authorEmail.toLowerCase(), commit.authorName);
51386
+ const resolved = config.resolveContributor(commit.authorEmail, commit.authorName);
51387
+ nameByCanonicalEmail.set(resolved.canonicalEmail.toLowerCase(), nameOf(resolved, commit.authorName));
51388
+ }
51266
51389
  const survivalLabelOf = (email) => {
51267
- const resolved = config.resolveContributor(email, authorNameByEmail.get(email.toLowerCase()));
51268
- return resolved.kind === "human" ? resolved.label : kindGroupLabels[resolved.kind];
51390
+ const resolved = config.resolveContributor(email, nameByEmail.get(email.toLowerCase()));
51391
+ if (resolved.kind !== "human") return kindGroupLabels[resolved.kind];
51392
+ return nameByCanonicalEmail.get(resolved.canonicalEmail.toLowerCase()) ?? resolved.label;
51269
51393
  };
51270
51394
  const survival = commits.filter((commit) => hasMetric(commit, "survival.lines")).map((commit) => {
51271
51395
  const byContributorYear = {};
@@ -51292,12 +51416,6 @@ var buildDashboardData = (repoRoot, commits, config, remoteUrl) => {
51292
51416
  });
51293
51417
  const contributorMap = /* @__PURE__ */ new Map();
51294
51418
  /**
51295
- * The name as spelled on this commit (author line or trailer): a configured
51296
- * displayName wins, otherwise the observed spelling, tidied so a bot's
51297
- * `[bot]` suffix doesn't double up with its kind badge.
51298
- */
51299
- const nameOf = (resolved, observedName) => resolved.displayName ?? (observedName ? normalizeContributorName(observedName) : resolved.label);
51300
- /**
51301
51419
  * Fetches or creates a contributor's bucket.
51302
51420
  *
51303
51421
  * Humans key off their canonical email alone, so an alias group folds every
@@ -51509,7 +51627,7 @@ var runIndex = ({ repoPath }) => gen(function* () {
51509
51627
  //#region src/cli/index-command.ts
51510
51628
  var indexCommand = make$5("index", { repoPath: string$1("repo").pipe(withDefault("."), withDescription$1("Path to the git repository whose catalog to index (defaults to the current directory)")) }).pipe(withDescription("Normalize collected snapshots into the metrics cube (SQLite) and dashboard data (always rebuilt from raw outputs)"), withHandler((config) => runIndex({ repoPath: config.repoPath })));
51511
51629
  //#endregion
51512
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/Response.js
51630
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/Response.js
51513
51631
  /**
51514
51632
  * Schema for HTTP request details associated with an AI response.
51515
51633
  *
@@ -51625,7 +51743,7 @@ Class("effect/ai/AiResponse/Usage")({
51625
51743
  })
51626
51744
  });
51627
51745
  //#endregion
51628
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/AiError.js
51746
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/AiError.js
51629
51747
  /**
51630
51748
  * Defines shared errors for AI operations.
51631
51749
  *
@@ -52861,7 +52979,7 @@ var isAiErrorReason = (u) => hasProperty(u, ReasonTypeId);
52861
52979
  */
52862
52980
  var make$4 = (params) => new AiError(params);
52863
52981
  //#endregion
52864
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/Tool.js
52982
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/Tool.js
52865
52983
  /**
52866
52984
  * Definitions and helpers for tools that AI models can request during a
52867
52985
  * workflow.
@@ -53241,7 +53359,7 @@ var OpenWorld = /*#__PURE__*/ Reference("effect/ai/Tool/OpenWorld", { defaultVal
53241
53359
  */
53242
53360
  var EmptyParams = /*#__PURE__*/ Record(String$1, Never);
53243
53361
  //#endregion
53244
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/Toolkit.js
53362
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/Toolkit.js
53245
53363
  var TypeId$1 = "~effect/ai/Toolkit";
53246
53364
  var Proto = {
53247
53365
  .../*#__PURE__*/ Prototype({
@@ -53434,7 +53552,7 @@ var resolveInput = (...tools) => {
53434
53552
  */
53435
53553
  var make$2 = (...tools) => makeProto(resolveInput(...tools));
53436
53554
  //#endregion
53437
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/internal/mcpProtocol.js
53555
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/internal/mcpProtocol.js
53438
53556
  /** @internal */
53439
53557
  var make$1 = (options) => {
53440
53558
  const payloadCodecsCache = /* @__PURE__ */ new WeakMap();
@@ -53456,7 +53574,7 @@ var make$1 = (options) => {
53456
53574
  };
53457
53575
  };
53458
53576
  //#endregion
53459
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/rpc/RpcMiddleware.js
53577
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/rpc/RpcMiddleware.js
53460
53578
  /**
53461
53579
  * Middleware services for the unstable RPC runtime.
53462
53580
  *
@@ -53502,7 +53620,7 @@ var Service = () => (id, options) => {
53502
53620
  return ServiceClass;
53503
53621
  };
53504
53622
  //#endregion
53505
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/McpSchema.js
53623
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/McpSchema.js
53506
53624
  /**
53507
53625
  * Defines schemas for Model Context Protocol messages.
53508
53626
  *
@@ -55417,7 +55535,7 @@ var ServerNotificationRpcs = class extends make$11(CancelledNotification, Progre
55417
55535
  */
55418
55536
  var EnabledWhen = class extends Service$1()("effect/unstable/ai/McpSchema/EnabledWhen") {};
55419
55537
  //#endregion
55420
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/McpProtocol.js
55538
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/McpProtocol.js
55421
55539
  /**
55422
55540
  * The MCP 2025-06-18 protocol implementation.
55423
55541
  *
@@ -55436,7 +55554,7 @@ var v2025_06_18 = /*#__PURE__*/ make$1({
55436
55554
  serverNotificationRpcs: ServerNotificationRpcs
55437
55555
  });
55438
55556
  //#endregion
55439
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/internal/mcpProtocolRegistry.js
55557
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/internal/mcpProtocolRegistry.js
55440
55558
  var prefix = (protocol) => `@effect/mcp/${encodeURIComponent(protocol.protocolVersion)}/`;
55441
55559
  var asRpcGroup = (group) => group;
55442
55560
  /** @internal */
@@ -55461,7 +55579,7 @@ var make = /*#__PURE__*/ fnUntraced(function* (protocols) {
55461
55579
  };
55462
55580
  });
55463
55581
  //#endregion
55464
- //#region node_modules/.pnpm/effect@4.0.0-beta.104/node_modules/effect/dist/unstable/ai/McpServer.js
55582
+ //#region node_modules/.pnpm/effect@4.0.0-beta.105/node_modules/effect/dist/unstable/ai/McpServer.js
55465
55583
  /**
55466
55584
  * Builds Model Context Protocol (MCP) servers with Effect.
55467
55585
  *