effect-app 2.0.2 → 2.1.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/CHANGELOG.md +6 -0
- package/_cjs/Prelude.cjs.map +1 -1
- package/dist/Effect.d.ts +2 -2
- package/dist/Schema/ext.d.ts +3 -1
- package/dist/Schema/ext.d.ts.map +1 -1
- package/dist/Schema/ext.js +11 -2
- package/package.json +1 -1
- package/src/Schema/ext.ts +15 -2
package/CHANGELOG.md
CHANGED
package/_cjs/Prelude.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Prelude.cjs","names":[],"sources":["../src/Prelude.
|
|
1
|
+
{"version":3,"file":"Prelude.cjs","names":["Effect","exports","Layer","Either","Order","Ref","Duration","Context","FiberRef","Cause","Exit","HashMap","Scope","Option","Equivalence","Config","Equal","Chunk","NonEmptySet","Record","Array","ReadonlySet","Schema"],"sources":["../src/Prelude.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/Effect.d.ts
CHANGED
|
@@ -34,8 +34,8 @@ export declare function tupleTap<A, B, R, E, C>(f: (b: B) => (a: A) => Effect.Ef
|
|
|
34
34
|
* taps the Effect, returning A.
|
|
35
35
|
*/
|
|
36
36
|
export declare function tupleTap_<A, B, R, E, C>(f: (a: A, b: B) => Effect.Effect<C, E, R>): (t: readonly [A, B]) => Effect.Effect<A, E, R>;
|
|
37
|
-
export declare function ifDiffR<I, R, E, A>(f: (i: I) => Effect.Effect<A, E, R>): (n: I, orig: I) => Effect.Effect<
|
|
38
|
-
export declare function ifDiff_<I, R, E, A>(n: I, orig: I, f: (i: I) => Effect.Effect<A, E, R>): Effect.Effect<
|
|
37
|
+
export declare function ifDiffR<I, R, E, A>(f: (i: I) => Effect.Effect<A, E, R>): (n: I, orig: I) => Effect.Effect<A, E, R> | Effect.Effect<void, never, never>;
|
|
38
|
+
export declare function ifDiff_<I, R, E, A>(n: I, orig: I, f: (i: I) => Effect.Effect<A, E, R>): Effect.Effect<A, E, R> | Effect.Effect<void, never, never>;
|
|
39
39
|
export declare function ifDiff<I, R, E, A>(n: I, orig: I): (f: (i: I) => Effect.Effect<A, E, R>) => Effect.Effect<void, never, never> | Effect.Effect<A, E, R>;
|
|
40
40
|
/**
|
|
41
41
|
* @tsplus static effect/io/Deferred.Ops await
|
package/dist/Schema/ext.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Effect } from "effect";
|
|
2
|
-
import
|
|
2
|
+
import { ParseResult, SchemaAST } from "effect";
|
|
3
3
|
import type { NonEmptyReadonlyArray } from "effect/Array";
|
|
4
4
|
import type { Schema } from "effect/Schema";
|
|
5
5
|
import * as S from "effect/Schema";
|
|
6
|
+
import type { Context } from "../lib.js";
|
|
6
7
|
export declare const withDefaultConstructor: <A, I, R>(makeDefault: () => NoInfer<A>) => (self: Schema<A, I, R>) => S.PropertySignature<":", A, never, ":", I, true, R>;
|
|
7
8
|
export declare const Date: typeof S.Date & {
|
|
8
9
|
withDefault: S.PropertySignature<":", Date, never, ":", string, true, never>;
|
|
@@ -86,4 +87,5 @@ export declare function makeExactOptional<NER extends S.Struct.Fields>(t: NER):
|
|
|
86
87
|
export declare const transformTo: <To extends Schema.Any, From extends Schema.Any>(from: From, to: To, decode: (fromA: Schema.Type<From>, options: SchemaAST.ParseOptions, ast: SchemaAST.Transformation, fromI: Schema.Encoded<From>) => Schema.Encoded<To>) => S.transformOrFail<From, To, never>;
|
|
87
88
|
/** A version of transformOrFail which is only a one way mapping of From->To */
|
|
88
89
|
export declare const transformToOrFail: <To extends Schema.Any, From extends Schema.Any, RD>(from: From, to: To, decode: (fromA: Schema.Type<From>, options: SchemaAST.ParseOptions, ast: SchemaAST.Transformation) => Effect.Effect<Schema.Encoded<To>, ParseResult.ParseIssue, RD>) => S.transformOrFail<From, To, RD>;
|
|
90
|
+
export declare const provide: <Self extends S.Schema.Any, R>(self: Self, context: Context.Context<R>) => S.SchemaClass<S.Schema.Type<Self>, S.Schema.Encoded<Self>, Exclude<S.Schema.Context<Self>, R>>;
|
|
89
91
|
//# sourceMappingURL=ext.d.ts.map
|
package/dist/Schema/ext.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ext.d.ts","sourceRoot":"","sources":["../../src/Schema/ext.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAA;AACrC,OAAO,
|
|
1
|
+
{"version":3,"file":"ext.d.ts","sourceRoot":"","sources":["../../src/Schema/ext.ts"],"names":[],"mappings":"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"}
|
package/dist/Schema/ext.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
|
3
3
|
import { Effect, pipe } from "effect";
|
|
4
|
+
import { ParseResult } from "effect";
|
|
4
5
|
import * as S from "effect/Schema";
|
|
5
|
-
import { extendM, typedKeysOf } from "../utils.js";
|
|
6
6
|
export const withDefaultConstructor = (makeDefault) => (self) => S.propertySignature(self).pipe(S.withConstructorDefault(makeDefault));
|
|
7
7
|
export const Date = Object.assign(S.Date, {
|
|
8
8
|
withDefault: S.Date.pipe(withDefaultConstructor(() => new global.Date()))
|
|
@@ -108,4 +108,13 @@ export function makeExactOptional(t // TODO: enforce non empty
|
|
|
108
108
|
export const transformTo = (from, to, decode) => S.transformOrFail(from, to, { decode: (...args) => Effect.sync(() => decode(...args)), encode: () => Effect.die("one way schema") });
|
|
109
109
|
/** A version of transformOrFail which is only a one way mapping of From->To */
|
|
110
110
|
export const transformToOrFail = (from, to, decode) => S.transformOrFail(from, to, { decode, encode: () => Effect.die("one way schema") });
|
|
111
|
-
|
|
111
|
+
export const provide = (self, context // TODO: support Layers?
|
|
112
|
+
) => {
|
|
113
|
+
const provide = Effect.provide(context);
|
|
114
|
+
return S
|
|
115
|
+
.declare([self], {
|
|
116
|
+
decode: (t) => (n) => provide(ParseResult.decodeUnknown(t)(n)),
|
|
117
|
+
encode: (t) => (n) => provide(ParseResult.encodeUnknown(t)(n))
|
|
118
|
+
});
|
|
119
|
+
};
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1NjaGVtYS9leHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELHdEQUF3RDtBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFhLE1BQU0sUUFBUSxDQUFBO0FBRy9DLE9BQU8sS0FBSyxDQUFDLE1BQU0sZUFBZSxDQUFBO0FBSWxDLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUVtRCxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUM5RyxDQUFDLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFBO0FBRXZFLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUU7SUFDeEMsV0FBVyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7Q0FDMUUsQ0FBQyxDQUFBO0FBQ0YsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRTtJQUM5QyxXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7Q0FDakUsQ0FBQyxDQUFBO0FBQ0YsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFB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
|
package/package.json
CHANGED
package/src/Schema/ext.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
|
3
3
|
import { Effect, pipe } from "effect"
|
|
4
|
-
import
|
|
4
|
+
import { ParseResult, SchemaAST } from "effect"
|
|
5
5
|
import type { NonEmptyReadonlyArray } from "effect/Array"
|
|
6
6
|
import type { Schema } from "effect/Schema"
|
|
7
7
|
import * as S from "effect/Schema"
|
|
8
|
-
import {
|
|
8
|
+
import type { Context } from "../lib.js"
|
|
9
|
+
import type { extendM, typedKeysOf } from "../utils.js"
|
|
9
10
|
|
|
10
11
|
export const withDefaultConstructor: <A, I, R>(
|
|
11
12
|
makeDefault: () => NoInfer<A>
|
|
@@ -271,3 +272,15 @@ export const transformToOrFail = <To extends Schema.Any, From extends Schema.Any
|
|
|
271
272
|
ast: SchemaAST.Transformation
|
|
272
273
|
) => Effect.Effect<Schema.Encoded<To>, ParseResult.ParseIssue, RD>
|
|
273
274
|
) => S.transformOrFail<To, From, RD, never>(from, to, { decode, encode: () => Effect.die("one way schema") })
|
|
275
|
+
|
|
276
|
+
export const provide = <Self extends S.Schema.Any, R>(
|
|
277
|
+
self: Self,
|
|
278
|
+
context: Context.Context<R> // TODO: support Layers?
|
|
279
|
+
): S.SchemaClass<S.Schema.Type<Self>, S.Schema.Encoded<Self>, Exclude<S.Schema.Context<Self>, R>> => {
|
|
280
|
+
const provide = Effect.provide(context)
|
|
281
|
+
return S
|
|
282
|
+
.declare([self], {
|
|
283
|
+
decode: (t) => (n) => provide(ParseResult.decodeUnknown(t)(n)),
|
|
284
|
+
encode: (t) => (n) => provide(ParseResult.encodeUnknown(t)(n))
|
|
285
|
+
}) as any
|
|
286
|
+
}
|