effect 4.0.0-beta.104 → 4.0.0-beta.105
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/AGENTS.md +381 -0
- package/CLAUDE.md +381 -0
- package/ai-docs/README.md +44 -0
- package/ai-docs/package.json +36 -0
- package/ai-docs/src/01_effect/01_basics/01_effect-gen.ts +30 -0
- package/ai-docs/src/01_effect/01_basics/02_effect-fn.ts +39 -0
- package/ai-docs/src/01_effect/01_basics/10_creating-effects.ts +74 -0
- package/ai-docs/src/01_effect/01_basics/index.md +5 -0
- package/ai-docs/src/01_effect/02_schema/10_schema-basics.ts +43 -0
- package/ai-docs/src/01_effect/02_schema/index.md +7 -0
- package/ai-docs/src/01_effect/03_services/01_service.ts +45 -0
- package/ai-docs/src/01_effect/03_services/10_reference.ts +10 -0
- package/ai-docs/src/01_effect/03_services/20_layer-composition.ts +70 -0
- package/ai-docs/src/01_effect/03_services/20_layer-unwrap.ts +66 -0
- package/ai-docs/src/01_effect/03_services/index.md +5 -0
- package/ai-docs/src/01_effect/04_errors/01_error-handling.ts +30 -0
- package/ai-docs/src/01_effect/04_errors/10_catch-tags.ts +24 -0
- package/ai-docs/src/01_effect/04_errors/20_reason-errors.ts +64 -0
- package/ai-docs/src/01_effect/04_errors/index.md +1 -0
- package/ai-docs/src/01_effect/05_resources/10_acquire-release.ts +105 -0
- package/ai-docs/src/01_effect/05_resources/20_layer-side-effects.ts +31 -0
- package/ai-docs/src/01_effect/05_resources/30_layer-map.ts +86 -0
- package/ai-docs/src/01_effect/05_resources/index.md +3 -0
- package/ai-docs/src/01_effect/06_running/10_run-main.ts +30 -0
- package/ai-docs/src/01_effect/06_running/20_layer-launch.ts +27 -0
- package/ai-docs/src/01_effect/06_running/index.md +1 -0
- package/ai-docs/src/01_effect/07_pubsub/10_pubsub.ts +56 -0
- package/ai-docs/src/01_effect/07_pubsub/index.md +3 -0
- package/ai-docs/src/03_stream/10_creating-streams.ts +103 -0
- package/ai-docs/src/03_stream/20_consuming-streams.ts +137 -0
- package/ai-docs/src/03_stream/30_encoding.ts +165 -0
- package/ai-docs/src/03_stream/index.md +4 -0
- package/ai-docs/src/04_integration/10_managed-runtime.ts +129 -0
- package/ai-docs/src/04_integration/index.md +5 -0
- package/ai-docs/src/05_batching/10_request-resolver.ts +89 -0
- package/ai-docs/src/05_batching/index.md +3 -0
- package/ai-docs/src/06_schedule/10_schedules.ts +110 -0
- package/ai-docs/src/06_schedule/index.md +3 -0
- package/ai-docs/src/07_datetime/10_creating-and-formatting.ts +30 -0
- package/ai-docs/src/07_datetime/20_time-zones.ts +44 -0
- package/ai-docs/src/07_datetime/index.md +5 -0
- package/ai-docs/src/08_observability/10_logging.ts +66 -0
- package/ai-docs/src/08_observability/20_otlp-tracing.ts +95 -0
- package/ai-docs/src/08_observability/index.md +7 -0
- package/ai-docs/src/09_testing/10_effect-tests.ts +55 -0
- package/ai-docs/src/09_testing/20_layer-tests.ts +138 -0
- package/ai-docs/src/09_testing/index.md +1 -0
- package/ai-docs/src/10_predicate/01_basics.ts +14 -0
- package/ai-docs/src/10_predicate/index.md +9 -0
- package/ai-docs/src/50_http-client/10_basics.ts +102 -0
- package/ai-docs/src/50_http-client/index.md +3 -0
- package/ai-docs/src/51_http-server/10_basics.ts +116 -0
- package/ai-docs/src/51_http-server/fixtures/api/Api.ts +14 -0
- package/ai-docs/src/51_http-server/fixtures/api/Authorization.ts +36 -0
- package/ai-docs/src/51_http-server/fixtures/api/System.ts +10 -0
- package/ai-docs/src/51_http-server/fixtures/api/Users.ts +91 -0
- package/ai-docs/src/51_http-server/fixtures/domain/User.ts +12 -0
- package/ai-docs/src/51_http-server/fixtures/domain/UserErrors.ts +22 -0
- package/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +36 -0
- package/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +71 -0
- package/ai-docs/src/51_http-server/fixtures/server/Users.ts +62 -0
- package/ai-docs/src/51_http-server/index.md +3 -0
- package/ai-docs/src/60_child-process/10_working-with-child-processes.ts +117 -0
- package/ai-docs/src/60_child-process/index.md +3 -0
- package/ai-docs/src/70_cli/10_basics.ts +136 -0
- package/ai-docs/src/70_cli/index.md +5 -0
- package/ai-docs/src/71_ai/10_language-model.ts +156 -0
- package/ai-docs/src/71_ai/20_tools.ts +226 -0
- package/ai-docs/src/71_ai/30_chat.ts +158 -0
- package/ai-docs/src/71_ai/fixtures/domain/LaunchPlan.ts +9 -0
- package/ai-docs/src/71_ai/index.md +5 -0
- package/ai-docs/src/80_cluster/10_entities.ts +97 -0
- package/ai-docs/src/80_cluster/index.md +4 -0
- package/ai-docs/src/index.md +10 -0
- package/ai-docs/tsconfig.json +24 -0
- package/dist/Brand.d.ts +3 -3
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +4 -3
- package/dist/Brand.js.map +1 -1
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +2 -1
- package/dist/Config.js.map +1 -1
- package/dist/Context.d.ts +0 -1
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +1 -22
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +31 -0
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +58 -2
- package/dist/Cron.js.map +1 -1
- package/dist/Optic.d.ts +35 -21
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +33 -34
- package/dist/Optic.js.map +1 -1
- package/dist/Schema.d.ts +73 -25
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +83 -50
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +30 -0
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +40 -32
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +8 -8
- package/dist/SchemaError.d.ts.map +1 -1
- package/dist/SchemaError.js +7 -6
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +8 -5
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +41 -37
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +195 -38
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +243 -68
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +30 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +39 -9
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +2 -2
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +26 -26
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Stdio.d.ts +17 -4
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +6 -3
- package/dist/Stdio.js.map +1 -1
- package/dist/internal/schema/schema.js +1 -9
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +1 -1
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +8 -7
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +4 -4
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/cluster/Reply.js +4 -4
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +6 -6
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +59 -3
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +33 -19
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +10 -10
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +9 -9
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +4 -4
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +26 -11
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +9 -22
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +3 -1
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +3 -2
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +2 -2
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/package.json +5 -2
- package/src/Brand.ts +4 -4
- package/src/Config.ts +3 -1
- package/src/Context.ts +1 -23
- package/src/Cron.ts +65 -2
- package/src/Optic.ts +59 -58
- package/src/Schema.ts +145 -71
- package/src/SchemaAST.ts +85 -48
- package/src/SchemaError.ts +9 -9
- package/src/SchemaGetter.ts +89 -30
- package/src/SchemaIssue.ts +285 -80
- package/src/SchemaParser.ts +51 -17
- package/src/SchemaTransformation.ts +66 -18
- package/src/Stdio.ts +23 -4
- package/src/internal/schema/schema.ts +1 -17
- package/src/testing/TestSchema.ts +8 -8
- package/src/unstable/ai/Prompt.ts +14 -4
- package/src/unstable/cluster/Reply.ts +4 -4
- package/src/unstable/encoding/Msgpack.ts +12 -8
- package/src/unstable/http/HttpClient.ts +132 -23
- package/src/unstable/httpapi/HttpApiBuilder.ts +32 -13
- package/src/unstable/httpapi/HttpApiClient.ts +26 -8
- package/src/unstable/reactivity/AsyncResult.ts +11 -6
- package/src/unstable/reactivity/Atom.ts +44 -25
- package/src/unstable/rpc/RpcClient.ts +4 -1
- package/src/unstable/rpc/RpcServer.ts +4 -2
- package/src/unstable/workflow/Workflow.ts +2 -5
package/dist/Optic.js
CHANGED
|
@@ -11,13 +11,13 @@
|
|
|
11
11
|
*
|
|
12
12
|
* @since 4.0.0
|
|
13
13
|
*/
|
|
14
|
-
import { format } from "./Formatter.js";
|
|
15
14
|
import { identity } from "./Function.js";
|
|
16
15
|
import * as InternalRecord from "./internal/record.js";
|
|
17
16
|
import * as Option from "./Option.js";
|
|
18
17
|
import * as Predicate from "./Predicate.js";
|
|
19
18
|
import * as Result from "./Result.js";
|
|
20
19
|
import * as SchemaAST from "./SchemaAST.js";
|
|
20
|
+
import * as SchemaIssue from "./SchemaIssue.js";
|
|
21
21
|
import * as Struct from "./Struct.js";
|
|
22
22
|
/**
|
|
23
23
|
* Creates an {@link Iso} from a pair of conversion functions.
|
|
@@ -103,17 +103,20 @@ export function makeLens(get, replace) {
|
|
|
103
103
|
*
|
|
104
104
|
* **Details**
|
|
105
105
|
*
|
|
106
|
-
* - `getResult` should return `Result.fail(
|
|
106
|
+
* - `getResult` should return `Result.fail(issue)` on mismatch.
|
|
107
|
+
* - Issues are not formatted automatically; callers choose how to render them.
|
|
107
108
|
*
|
|
108
109
|
* **Example** (Parsing a string to a number)
|
|
109
110
|
*
|
|
110
111
|
* ```ts import.meta.vitest
|
|
111
|
-
* import { Optic, Result } from "effect"
|
|
112
|
+
* import { Optic, Result, SchemaIssue } from "effect"
|
|
112
113
|
*
|
|
113
114
|
* const numeric = Optic.makePrism<string, number>(
|
|
114
115
|
* (s) => {
|
|
115
116
|
* const n = Number(s)
|
|
116
|
-
* return Number.isNaN(n)
|
|
117
|
+
* return Number.isNaN(n)
|
|
118
|
+
* ? Result.fail(new SchemaIssue.InvalidValue({ message: "not a number" }))
|
|
119
|
+
* : Result.succeed(n)
|
|
117
120
|
* },
|
|
118
121
|
* String
|
|
119
122
|
* )
|
|
@@ -143,7 +146,7 @@ export function makePrism(getResult, set) {
|
|
|
143
146
|
*
|
|
144
147
|
* **Details**
|
|
145
148
|
*
|
|
146
|
-
* - `getResult` runs all checks
|
|
149
|
+
* - `getResult` runs all checks and preserves their structured issues when
|
|
147
150
|
* any check fails.
|
|
148
151
|
* - `set` is identity — the value passes through unchanged.
|
|
149
152
|
*
|
|
@@ -221,7 +224,7 @@ class CheckNode {
|
|
|
221
224
|
set = identity;
|
|
222
225
|
constructor(checks) {
|
|
223
226
|
this.checks = checks;
|
|
224
|
-
this.get = s =>
|
|
227
|
+
this.get = s => SchemaAST.runChecks(checks, s);
|
|
225
228
|
}
|
|
226
229
|
}
|
|
227
230
|
function compose(a, b) {
|
|
@@ -251,26 +254,29 @@ function compose(a, b) {
|
|
|
251
254
|
*
|
|
252
255
|
* **Details**
|
|
253
256
|
*
|
|
254
|
-
* - `getResult` should return `Result.fail(
|
|
255
|
-
* - `set` should return `Result.fail(
|
|
257
|
+
* - `getResult` should return `Result.fail(issue)` on mismatch.
|
|
258
|
+
* - `set` should return `Result.fail(issue)` when the update cannot be
|
|
256
259
|
* applied.
|
|
260
|
+
* - Issues are not formatted automatically; callers choose how to render them.
|
|
257
261
|
*
|
|
258
262
|
* **Example** (Accessing record keys safely)
|
|
259
263
|
*
|
|
260
264
|
* ```ts import.meta.vitest
|
|
261
|
-
* import { Optic, Result } from "effect"
|
|
265
|
+
* import { Optic, Result, SchemaIssue } from "effect"
|
|
262
266
|
*
|
|
263
|
-
* const atKey = (key: string) =>
|
|
264
|
-
*
|
|
267
|
+
* const atKey = (key: string) => {
|
|
268
|
+
* const issue = new SchemaIssue.Pointer([key], new SchemaIssue.MissingKey(undefined))
|
|
269
|
+
* return Optic.makeOptional<Record<string, number>, number>(
|
|
265
270
|
* (s) =>
|
|
266
271
|
* Object.hasOwn(s, key)
|
|
267
272
|
* ? Result.succeed(s[key])
|
|
268
|
-
* : Result.fail(
|
|
273
|
+
* : Result.fail(issue),
|
|
269
274
|
* (a, s) =>
|
|
270
275
|
* Object.hasOwn(s, key)
|
|
271
276
|
* ? Result.succeed({ ...s, [key]: a })
|
|
272
|
-
* : Result.fail(
|
|
277
|
+
* : Result.fail(issue)
|
|
273
278
|
* )
|
|
279
|
+
* }
|
|
274
280
|
*
|
|
275
281
|
* atKey("x").getResult({ x: 1 }) // => Result.succeed(1)
|
|
276
282
|
* ```
|
|
@@ -329,10 +335,13 @@ class OptionalImpl {
|
|
|
329
335
|
return make(compose(this.node, [new CheckNode([SchemaAST.makeFilterByGuard(refinement, annotations)])]));
|
|
330
336
|
}
|
|
331
337
|
tag(tag) {
|
|
332
|
-
|
|
338
|
+
const err = Result.fail(new SchemaIssue.InvalidValue({
|
|
339
|
+
expected: `${JSON.stringify(tag)} tag`
|
|
340
|
+
}));
|
|
341
|
+
return make(compose(this.node, primitiveNode("Prism", s => s._tag === tag ? Result.succeed(s) : err, identity)));
|
|
333
342
|
}
|
|
334
343
|
at(key, ..._rest) {
|
|
335
|
-
const err = Result.fail(
|
|
344
|
+
const err = Result.fail(new SchemaIssue.Pointer([key], new SchemaIssue.MissingKey(undefined)));
|
|
336
345
|
return make(compose(this.node, primitiveNode("Optional", s => Object.hasOwn(s, key) ? Result.succeed(s[key]) : err, (a, s) => {
|
|
337
346
|
if (Object.hasOwn(s, key)) {
|
|
338
347
|
const copy = cloneShallow(s);
|
|
@@ -381,7 +390,9 @@ class OptionalImpl {
|
|
|
381
390
|
}
|
|
382
391
|
// 2) arity check
|
|
383
392
|
if (bs.length !== idxs.length) {
|
|
384
|
-
return Result.fail(
|
|
393
|
+
return Result.fail(new SchemaIssue.InvalidValue({
|
|
394
|
+
message: `each: replacement length mismatch: ${bs.length} !== ${idxs.length}`
|
|
395
|
+
}));
|
|
385
396
|
}
|
|
386
397
|
// 3) update those indices
|
|
387
398
|
const out = as.slice();
|
|
@@ -389,7 +400,7 @@ class OptionalImpl {
|
|
|
389
400
|
const i = idxs[k];
|
|
390
401
|
const r = inner.replaceResult(bs[k], as[i]);
|
|
391
402
|
if (Result.isFailure(r)) {
|
|
392
|
-
return Result.fail(
|
|
403
|
+
return Result.fail(new SchemaIssue.Pointer([i], r.failure));
|
|
393
404
|
}
|
|
394
405
|
out[i] = r.success;
|
|
395
406
|
}
|
|
@@ -673,7 +684,7 @@ export function entries() {
|
|
|
673
684
|
*
|
|
674
685
|
* **Details**
|
|
675
686
|
*
|
|
676
|
-
* - `getResult` fails with
|
|
687
|
+
* - `getResult` fails with a structured issue when the option is `None`.
|
|
677
688
|
* - `set(a)` wraps `a` in `Option.some(a)`.
|
|
678
689
|
*
|
|
679
690
|
* **Example** (Accessing Some value)
|
|
@@ -700,10 +711,7 @@ export function some() {
|
|
|
700
711
|
const run = runRefinement(Option.isSome, {
|
|
701
712
|
expected: "a Some value"
|
|
702
713
|
});
|
|
703
|
-
return makePrism(s => Result.
|
|
704
|
-
onFailure: String,
|
|
705
|
-
onSuccess: s => s.value
|
|
706
|
-
}), Option.some);
|
|
714
|
+
return makePrism(s => Result.map(run(s), s => s.value), Option.some);
|
|
707
715
|
}
|
|
708
716
|
/**
|
|
709
717
|
* Prism that focuses on `Option.None`, exposing `undefined`.
|
|
@@ -740,10 +748,7 @@ export function none() {
|
|
|
740
748
|
const run = runRefinement(Option.isNone, {
|
|
741
749
|
expected: "a None value"
|
|
742
750
|
});
|
|
743
|
-
return makePrism(s => Result.
|
|
744
|
-
onFailure: String,
|
|
745
|
-
onSuccess: () => undefined
|
|
746
|
-
}), () => Option.none());
|
|
751
|
+
return makePrism(s => Result.map(run(s), () => undefined), () => Option.none());
|
|
747
752
|
}
|
|
748
753
|
/**
|
|
749
754
|
* Prism that focuses on the success value of a `Result`.
|
|
@@ -780,10 +785,7 @@ export function success() {
|
|
|
780
785
|
const run = runRefinement(Result.isSuccess, {
|
|
781
786
|
expected: "a Result.Success value"
|
|
782
787
|
});
|
|
783
|
-
return makePrism(s => Result.
|
|
784
|
-
onFailure: String,
|
|
785
|
-
onSuccess: s => s.success
|
|
786
|
-
}), Result.succeed);
|
|
788
|
+
return makePrism(s => Result.map(run(s), s => s.success), Result.succeed);
|
|
787
789
|
}
|
|
788
790
|
/**
|
|
789
791
|
* Prism that focuses on the failure value of a `Result`.
|
|
@@ -820,10 +822,7 @@ export function failure() {
|
|
|
820
822
|
const run = runRefinement(Result.isFailure, {
|
|
821
823
|
expected: "a Result.Failure value"
|
|
822
824
|
});
|
|
823
|
-
return makePrism(s => Result.
|
|
824
|
-
onFailure: String,
|
|
825
|
-
onSuccess: s => s.failure
|
|
826
|
-
}), Result.fail);
|
|
825
|
+
return makePrism(s => Result.map(run(s), s => s.failure), Result.fail);
|
|
827
826
|
}
|
|
828
827
|
function runRefinement(refinement, annotations) {
|
|
829
828
|
return e => SchemaAST.runChecks([SchemaAST.makeFilterByGuard(refinement, annotations)], e);
|
package/dist/Optic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Optic.js","names":[],"sources":["../src/Optic.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Optic.js","names":[],"sources":["../src/Optic.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/Schema.d.ts
CHANGED
|
@@ -149,7 +149,9 @@ export interface BottomWithoutNew<out T, out E, out RD, out RE, out Ast extends
|
|
|
149
149
|
* **Gotchas**
|
|
150
150
|
*
|
|
151
151
|
* Throws an `Error` with the schema issue in its `cause` when validation
|
|
152
|
-
* fails.
|
|
152
|
+
* fails. Schema validation failures use the generic message
|
|
153
|
+
* `"Schema validation failed"`; format the `cause` explicitly with
|
|
154
|
+
* `SchemaIssue.makeFormatterDefault()` when human-readable details are needed.
|
|
153
155
|
* Causes that contain defects, interruptions, or other non-schema reasons
|
|
154
156
|
* throw with the underlying `Cause` attached instead.
|
|
155
157
|
*
|
|
@@ -190,10 +192,15 @@ export interface BottomWithoutNew<out T, out E, out RD, out RE, out Ast extends
|
|
|
190
192
|
* Use when constructor input may fail validation and you want to
|
|
191
193
|
* compose that failure with other `Effect` operations instead of throwing.
|
|
192
194
|
*
|
|
195
|
+
* **Details**
|
|
196
|
+
*
|
|
197
|
+
* Validation failures are returned directly as `SchemaIssue.Issue` values
|
|
198
|
+
* and are not wrapped in `SchemaError`.
|
|
199
|
+
*
|
|
193
200
|
* @see {@link BottomWithoutNew.make} — construct synchronously when validation failure should throw
|
|
194
201
|
* @see {@link BottomWithoutNew.makeOption} — construct synchronously and discard validation details
|
|
195
202
|
*/
|
|
196
|
-
makeEffect(input: this["~type.make.in"], options?: MakeOptions): Effect.Effect<this["Type"],
|
|
203
|
+
makeEffect(input: this["~type.make.in"], options?: MakeOptions): Effect.Effect<this["Type"], SchemaIssue.Issue>;
|
|
197
204
|
}
|
|
198
205
|
/**
|
|
199
206
|
* Fully-parameterized base interface for schemas that can be extended directly
|
|
@@ -299,7 +306,7 @@ export interface declareConstructor<T, E, TypeParameters extends ReadonlyArray<C
|
|
|
299
306
|
* **Example** (Schema for a parametric `Box<A>` type)
|
|
300
307
|
*
|
|
301
308
|
* ```ts import.meta.vitest
|
|
302
|
-
* import { Effect, Schema, SchemaIssue
|
|
309
|
+
* import { Effect, Schema, SchemaIssue, SchemaParser } from "effect"
|
|
303
310
|
*
|
|
304
311
|
* interface Box<A> {
|
|
305
312
|
* readonly value: A
|
|
@@ -314,7 +321,7 @@ export interface declareConstructor<T, E, TypeParameters extends ReadonlyArray<C
|
|
|
314
321
|
* ([itemCodec]) =>
|
|
315
322
|
* (u, ast, options) => {
|
|
316
323
|
* if (!isBox(u)) {
|
|
317
|
-
* return Effect.fail(new SchemaIssue.InvalidType(ast))
|
|
324
|
+
* return Effect.fail(new SchemaIssue.InvalidType(ast, u, options))
|
|
318
325
|
* }
|
|
319
326
|
* return Effect.map(
|
|
320
327
|
* SchemaParser.decodeUnknownEffect(itemCodec)(u.value, options),
|
|
@@ -915,10 +922,12 @@ isSchemaError,
|
|
|
915
922
|
*
|
|
916
923
|
* The `issue` field contains a structured {@link SchemaIssue.Issue} tree describing
|
|
917
924
|
* every validation failure, including the path to the problematic value and
|
|
918
|
-
* the expected type or constraint.
|
|
919
|
-
*
|
|
920
|
-
*
|
|
921
|
-
*
|
|
925
|
+
* the expected type or constraint. Parsing with `reportInput: true` adds an
|
|
926
|
+
* enumerable `input` field to value-bearing issues created by the parser.
|
|
927
|
+
* Built-in messages may include reported input. Other issue fields and
|
|
928
|
+
* custom annotations or messages are not sanitized.
|
|
929
|
+
* `message` renders the issue tree as a human-readable string and can disclose
|
|
930
|
+
* retained input.
|
|
922
931
|
*
|
|
923
932
|
* Use {@link isSchemaError} to narrow an unknown value to `SchemaError`.
|
|
924
933
|
*
|
|
@@ -1071,6 +1080,9 @@ export declare const is: typeof SchemaParser.is;
|
|
|
1071
1080
|
*
|
|
1072
1081
|
* The input is narrowed if the assertion succeeds. If schema validation fails,
|
|
1073
1082
|
* the assertion throws an `Error` whose cause is `SchemaIssue.Issue`.
|
|
1083
|
+
* Schema validation failures use the generic message `"Schema validation failed"`.
|
|
1084
|
+
* Format the `cause` explicitly with `SchemaIssue.makeFormatterDefault()` when
|
|
1085
|
+
* human-readable details are needed.
|
|
1074
1086
|
*
|
|
1075
1087
|
* **Gotchas**
|
|
1076
1088
|
*
|
|
@@ -4474,7 +4486,7 @@ export interface withConstructorDefault<S extends Constraint & WithoutConstructo
|
|
|
4474
4486
|
* **Details**
|
|
4475
4487
|
*
|
|
4476
4488
|
* Constructor defaults are applied only during `make*`, not during decoding or
|
|
4477
|
-
* encoding.
|
|
4489
|
+
* encoding. Failures are represented directly as `SchemaIssue.Issue` values.
|
|
4478
4490
|
*
|
|
4479
4491
|
* **Example** (Defining an optional field with a static default)
|
|
4480
4492
|
*
|
|
@@ -4494,7 +4506,7 @@ export interface withConstructorDefault<S extends Constraint & WithoutConstructo
|
|
|
4494
4506
|
* @category constructors
|
|
4495
4507
|
* @since 3.10.0
|
|
4496
4508
|
*/
|
|
4497
|
-
export declare function withConstructorDefault<S extends Constraint & WithoutConstructorDefault>(defaultValue: Effect.Effect<S["~type.make.in"],
|
|
4509
|
+
export declare function withConstructorDefault<S extends Constraint & WithoutConstructorDefault>(defaultValue: Effect.Effect<S["~type.make.in"], SchemaIssue.Issue>): (schema: S) => withConstructorDefault<S>;
|
|
4498
4510
|
/**
|
|
4499
4511
|
* Type-level representation returned by {@link withDecodingDefaultKey}.
|
|
4500
4512
|
*
|
|
@@ -5092,12 +5104,13 @@ export declare const makeFilter: <T>(filter: (input: T, ast: SchemaAST.AST, opti
|
|
|
5092
5104
|
*
|
|
5093
5105
|
* - `string`: failure with that string as the message. Produces an
|
|
5094
5106
|
* {@link SchemaIssue.InvalidValue} with the string used as the issue's
|
|
5095
|
-
* `message` annotation
|
|
5096
|
-
* - {@link SchemaIssue.Issue}: a fully-formed issue, returned as-is.
|
|
5107
|
+
* `message` annotation and honors `reportInput`.
|
|
5108
|
+
* - {@link SchemaIssue.Issue}: a fully-formed issue, returned as-is. It is not
|
|
5109
|
+
* enriched when `reportInput` is enabled.
|
|
5097
5110
|
* - `{ path, issue }`: failure attached to a nested path. `issue` is either
|
|
5098
|
-
* a `string` (wrapped in an {@link SchemaIssue.InvalidValue}
|
|
5099
|
-
*
|
|
5100
|
-
* at the given `path`.
|
|
5111
|
+
* a `string` (wrapped in an {@link SchemaIssue.InvalidValue} that honors
|
|
5112
|
+
* `reportInput`) or a full {@link SchemaIssue.Issue} (returned unchanged);
|
|
5113
|
+
* the result is wrapped in an {@link SchemaIssue.Pointer} at the given `path`.
|
|
5101
5114
|
*
|
|
5102
5115
|
* @category models
|
|
5103
5116
|
* @since 3.10.0
|
|
@@ -5118,7 +5131,7 @@ export type FilterIssue = string | SchemaIssue.Issue | {
|
|
|
5118
5131
|
* - `true`: success. Equivalent to `undefined`, useful when the predicate is
|
|
5119
5132
|
* a plain boolean expression.
|
|
5120
5133
|
* - `false`: generic failure. Produces an {@link SchemaIssue.InvalidValue}
|
|
5121
|
-
* with no custom message
|
|
5134
|
+
* with no custom message and honors `reportInput`.
|
|
5122
5135
|
* - {@link FilterIssue}: a single failure. See {@link FilterIssue} for the
|
|
5123
5136
|
* shapes (`string`, {@link SchemaIssue.Issue}, or `{ path, issue }`).
|
|
5124
5137
|
* - `ReadonlyArray<FilterIssue>`: several failures reported together. An
|
|
@@ -9201,8 +9214,8 @@ type InheritStaticMembers<C, Static> = C & Pick<Static, Exclude<keyof Static, ke
|
|
|
9201
9214
|
type MissingSelfGeneric<Usage extends string> = `Missing \`Self\` generic - use \`class Self extends ${Usage}<Self>(...)\``;
|
|
9202
9215
|
/**
|
|
9203
9216
|
* Creates a schema-backed class whose constructor validates input against a
|
|
9204
|
-
* {@link Struct} schema. Construction throws
|
|
9205
|
-
* input.
|
|
9217
|
+
* {@link Struct} schema. Construction throws an `Error` with a
|
|
9218
|
+
* `SchemaIssue.Issue` in its `cause` on invalid input.
|
|
9206
9219
|
*
|
|
9207
9220
|
* **When to use**
|
|
9208
9221
|
*
|
|
@@ -9271,8 +9284,8 @@ type MissingSelfGeneric<Usage extends string> = `Missing \`Self\` generic - use
|
|
|
9271
9284
|
export declare const Class: {
|
|
9272
9285
|
/**
|
|
9273
9286
|
* Creates a schema-backed class whose constructor validates input against a
|
|
9274
|
-
* {@link Struct} schema. Construction throws
|
|
9275
|
-
* input.
|
|
9287
|
+
* {@link Struct} schema. Construction throws an `Error` with a
|
|
9288
|
+
* `SchemaIssue.Issue` in its `cause` on invalid input.
|
|
9276
9289
|
*
|
|
9277
9290
|
* **When to use**
|
|
9278
9291
|
*
|
|
@@ -9341,8 +9354,8 @@ export declare const Class: {
|
|
|
9341
9354
|
<Self = never, Brand = {}>(identifier: string): {
|
|
9342
9355
|
/**
|
|
9343
9356
|
* Creates a schema-backed class whose constructor validates input against a
|
|
9344
|
-
* {@link Struct} schema. Construction throws
|
|
9345
|
-
* input.
|
|
9357
|
+
* {@link Struct} schema. Construction throws an `Error` with a
|
|
9358
|
+
* `SchemaIssue.Issue` in its `cause` on invalid input.
|
|
9346
9359
|
*
|
|
9347
9360
|
* **When to use**
|
|
9348
9361
|
*
|
|
@@ -9411,8 +9424,8 @@ export declare const Class: {
|
|
|
9411
9424
|
<const Fields extends Struct.Fields>(fields: Fields, annotations?: Annotations.Declaration<Self, readonly [Struct<Fields>]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.Class"> : Class<Self, Struct<Fields>, Brand>;
|
|
9412
9425
|
/**
|
|
9413
9426
|
* Creates a schema-backed class whose constructor validates input against a
|
|
9414
|
-
* {@link Struct} schema. Construction throws
|
|
9415
|
-
* input.
|
|
9427
|
+
* {@link Struct} schema. Construction throws an `Error` with a
|
|
9428
|
+
* `SchemaIssue.Issue` in its `cause` on invalid input.
|
|
9416
9429
|
*
|
|
9417
9430
|
* **When to use**
|
|
9418
9431
|
*
|
|
@@ -10360,6 +10373,18 @@ export declare const isBetweenBigIntReviver: SchemaRepresentation.FilterReviver<
|
|
|
10360
10373
|
* Derives an `Iso` optic from a schema that isomorphically converts between
|
|
10361
10374
|
* the schema's `Type` and its `Iso` (intermediate / serialized form).
|
|
10362
10375
|
*
|
|
10376
|
+
* **Details**
|
|
10377
|
+
*
|
|
10378
|
+
* Reading through the `Iso` encodes the schema value, while replacing through
|
|
10379
|
+
* it decodes the new focus.
|
|
10380
|
+
*
|
|
10381
|
+
* **Gotchas**
|
|
10382
|
+
*
|
|
10383
|
+
* Either direction can throw an `Error` with the generic message
|
|
10384
|
+
* `"Schema validation failed"` and a `SchemaIssue.Issue` in its `cause`. Format
|
|
10385
|
+
* the `cause` explicitly with `SchemaIssue.makeFormatterDefault()` when
|
|
10386
|
+
* human-readable details are needed.
|
|
10387
|
+
*
|
|
10363
10388
|
* @category converting
|
|
10364
10389
|
* @since 4.0.0
|
|
10365
10390
|
*/
|
|
@@ -10420,6 +10445,19 @@ export declare function overrideToCodecIso<S extends Constraint, Iso>(to: Constr
|
|
|
10420
10445
|
* {@link toCodecJson}), computes RFC 6902 JSON Patch operations between old
|
|
10421
10446
|
* and new values, and can apply patches back to the typed value.
|
|
10422
10447
|
*
|
|
10448
|
+
* **Details**
|
|
10449
|
+
*
|
|
10450
|
+
* `diff` encodes both values before computing the patch. `patch` encodes the old
|
|
10451
|
+
* value, applies the patch to its JSON representation, and decodes the result.
|
|
10452
|
+
*
|
|
10453
|
+
* **Gotchas**
|
|
10454
|
+
*
|
|
10455
|
+
* Schema encoding or decoding failures throw an `Error` with the generic message
|
|
10456
|
+
* `"Schema validation failed"` and a `SchemaIssue.Issue` in its `cause`. Format
|
|
10457
|
+
* the `cause` explicitly with `SchemaIssue.makeFormatterDefault()` when
|
|
10458
|
+
* human-readable details are needed. Errors produced by {@link JsonPatch.apply}
|
|
10459
|
+
* for invalid patch operations are separate from schema validation failures.
|
|
10460
|
+
*
|
|
10423
10461
|
* @category converting
|
|
10424
10462
|
* @since 4.0.0
|
|
10425
10463
|
*/
|
|
@@ -11134,12 +11172,22 @@ export declare namespace Annotations {
|
|
|
11134
11172
|
*
|
|
11135
11173
|
* **Details**
|
|
11136
11174
|
*
|
|
11137
|
-
*
|
|
11175
|
+
* For `InvalidValue` issues, `message` overrides the complete formatted
|
|
11176
|
+
* message. When `message` is absent, `expected` uses the default expected
|
|
11177
|
+
* value policy, including reported input when available. Other issue types
|
|
11178
|
+
* ignore `expected`.
|
|
11138
11179
|
*
|
|
11139
11180
|
* @category models
|
|
11140
11181
|
* @since 4.0.0
|
|
11141
11182
|
*/
|
|
11142
11183
|
interface Issue extends Annotations {
|
|
11184
|
+
/**
|
|
11185
|
+
* The expected value description for an `InvalidValue` issue.
|
|
11186
|
+
*/
|
|
11187
|
+
readonly expected?: string | undefined;
|
|
11188
|
+
/**
|
|
11189
|
+
* The complete formatted message for the issue.
|
|
11190
|
+
*/
|
|
11143
11191
|
readonly message?: string | undefined;
|
|
11144
11192
|
}
|
|
11145
11193
|
}
|