effect-app 4.0.0-beta.18 → 4.0.0-beta.180
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 +760 -0
- package/dist/Array.d.ts +1 -1
- package/dist/Chunk.d.ts +1 -1
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Config/SecretURL.d.ts +1 -1
- package/dist/Config/SecretURL.d.ts.map +1 -1
- package/dist/Config/SecretURL.js +2 -2
- package/dist/Config/internal/configSecretURL.d.ts +1 -1
- package/dist/Config/internal/configSecretURL.d.ts.map +1 -1
- package/dist/Config.d.ts +7 -0
- package/dist/Config.d.ts.map +1 -0
- package/dist/Config.js +6 -0
- package/dist/ConfigProvider.d.ts +39 -0
- package/dist/ConfigProvider.d.ts.map +1 -0
- package/dist/ConfigProvider.js +42 -0
- package/dist/Context.d.ts +40 -0
- package/dist/Context.d.ts.map +1 -0
- package/dist/Context.js +67 -0
- package/dist/Effect.d.ts +9 -10
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +3 -6
- package/dist/Function.d.ts +1 -1
- package/dist/Function.d.ts.map +1 -1
- package/dist/Inputify.type.d.ts +1 -1
- package/dist/Layer.d.ts +6 -5
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +1 -1
- package/dist/NonEmptySet.d.ts +1 -1
- package/dist/NonEmptySet.d.ts.map +1 -1
- package/dist/Operations.d.ts +369 -47
- package/dist/Operations.d.ts.map +1 -1
- package/dist/Operations.js +10 -10
- package/dist/Option.d.ts +1 -1
- package/dist/Option.d.ts.map +1 -1
- package/dist/Pure.d.ts +5 -5
- package/dist/Pure.d.ts.map +1 -1
- package/dist/Pure.js +13 -13
- package/dist/Schema/Class.d.ts +69 -20
- package/dist/Schema/Class.d.ts.map +1 -1
- package/dist/Schema/Class.js +190 -22
- package/dist/Schema/FastCheck.d.ts +1 -1
- package/dist/Schema/FastCheck.d.ts.map +1 -1
- package/dist/Schema/Methods.d.ts +1 -1
- package/dist/Schema/SchemaParser.d.ts +5 -0
- package/dist/Schema/SchemaParser.d.ts.map +1 -0
- package/dist/Schema/SchemaParser.js +6 -0
- package/dist/Schema/SpecialJsonSchema.d.ts +33 -0
- package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -0
- package/dist/Schema/SpecialJsonSchema.js +122 -0
- package/dist/Schema/SpecialOpenApi.d.ts +32 -0
- package/dist/Schema/SpecialOpenApi.d.ts.map +1 -0
- package/dist/Schema/SpecialOpenApi.js +123 -0
- package/dist/Schema/brand.d.ts +7 -2
- package/dist/Schema/brand.d.ts.map +1 -1
- package/dist/Schema/brand.js +1 -1
- package/dist/Schema/email.d.ts +1 -1
- package/dist/Schema/email.d.ts.map +1 -1
- package/dist/Schema/email.js +7 -4
- package/dist/Schema/ext.d.ts +118 -45
- package/dist/Schema/ext.d.ts.map +1 -1
- package/dist/Schema/ext.js +129 -53
- package/dist/Schema/moreStrings.d.ts +111 -11
- package/dist/Schema/moreStrings.d.ts.map +1 -1
- package/dist/Schema/moreStrings.js +14 -15
- package/dist/Schema/numbers.d.ts +127 -15
- package/dist/Schema/numbers.d.ts.map +1 -1
- package/dist/Schema/numbers.js +10 -12
- package/dist/Schema/phoneNumber.d.ts +1 -1
- package/dist/Schema/phoneNumber.d.ts.map +1 -1
- package/dist/Schema/phoneNumber.js +6 -3
- package/dist/Schema/schema.d.ts +1 -1
- package/dist/Schema/strings.d.ts +37 -5
- package/dist/Schema/strings.d.ts.map +1 -1
- package/dist/Schema/strings.js +1 -5
- package/dist/Schema.d.ts +102 -56
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +128 -64
- package/dist/Set.d.ts +1 -1
- package/dist/Set.d.ts.map +1 -1
- package/dist/TypeTest.d.ts +1 -1
- package/dist/Types.d.ts +1 -1
- package/dist/Widen.type.d.ts +1 -1
- package/dist/_ext/Array.d.ts +1 -1
- package/dist/_ext/Array.d.ts.map +1 -1
- package/dist/_ext/date.d.ts +1 -1
- package/dist/_ext/misc.d.ts +1 -1
- package/dist/_ext/ord.ext.d.ts +1 -1
- package/dist/_ext/ord.ext.d.ts.map +1 -1
- package/dist/builtin.d.ts +1 -1
- package/dist/builtin.d.ts.map +1 -1
- package/dist/client/InvalidationKeys.d.ts +29 -0
- package/dist/client/InvalidationKeys.d.ts.map +1 -0
- package/dist/client/InvalidationKeys.js +33 -0
- package/dist/client/apiClientFactory.d.ts +17 -31
- package/dist/client/apiClientFactory.d.ts.map +1 -1
- package/dist/client/apiClientFactory.js +81 -26
- package/dist/client/clientFor.d.ts +63 -10
- package/dist/client/clientFor.d.ts.map +1 -1
- package/dist/client/clientFor.js +9 -1
- package/dist/client/errors.d.ts +49 -25
- package/dist/client/errors.d.ts.map +1 -1
- package/dist/client/errors.js +43 -17
- package/dist/client/makeClient.d.ts +360 -30
- package/dist/client/makeClient.d.ts.map +1 -1
- package/dist/client/makeClient.js +63 -23
- package/dist/client.d.ts +2 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +2 -1
- package/dist/faker.d.ts +1 -1
- package/dist/faker.d.ts.map +1 -1
- package/dist/http/Request.d.ts +2 -2
- package/dist/http/Request.d.ts.map +1 -1
- package/dist/http/Request.js +5 -5
- package/dist/http/internal/lib.d.ts +1 -1
- package/dist/http.d.ts +1 -1
- package/dist/ids.d.ts +3 -3
- package/dist/ids.d.ts.map +1 -1
- package/dist/ids.js +3 -2
- package/dist/index.d.ts +5 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -8
- package/dist/logger.d.ts +1 -1
- package/dist/middleware.d.ts +16 -9
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +13 -9
- package/dist/rpc/Invalidation.d.ts +490 -0
- package/dist/rpc/Invalidation.d.ts.map +1 -0
- package/dist/rpc/Invalidation.js +129 -0
- package/dist/rpc/MiddlewareMaker.d.ts +5 -4
- package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
- package/dist/rpc/MiddlewareMaker.js +26 -27
- package/dist/rpc/RpcContextMap.d.ts +3 -3
- package/dist/rpc/RpcContextMap.d.ts.map +1 -1
- package/dist/rpc/RpcContextMap.js +4 -4
- package/dist/rpc/RpcMiddleware.d.ts +5 -4
- package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/rpc/RpcMiddleware.js +1 -1
- package/dist/rpc.d.ts +2 -2
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +2 -2
- package/dist/transform.d.ts +1 -1
- package/dist/transform.d.ts.map +1 -1
- package/dist/transform.js +3 -3
- package/dist/utils/effectify.d.ts +1 -1
- package/dist/utils/extend.d.ts +1 -1
- package/dist/utils/extend.d.ts.map +1 -1
- package/dist/utils/gen.d.ts +2 -2
- package/dist/utils/gen.d.ts.map +1 -1
- package/dist/utils/logLevel.d.ts +2 -2
- package/dist/utils/logLevel.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +3 -3
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +3 -3
- package/dist/utils.d.ts +30 -10
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +10 -4
- package/dist/validation/validators.d.ts +1 -1
- package/dist/validation/validators.d.ts.map +1 -1
- package/dist/validation.d.ts +1 -1
- package/dist/validation.d.ts.map +1 -1
- package/eslint.config.mjs +2 -2
- package/package.json +47 -19
- package/src/Config/SecretURL.ts +2 -1
- package/src/Config.ts +14 -0
- package/src/ConfigProvider.ts +48 -0
- package/src/{ServiceMap.ts → Context.ts} +52 -59
- package/src/Effect.ts +12 -14
- package/src/Layer.ts +5 -4
- package/src/Operations.ts +14 -14
- package/src/Pure.ts +17 -18
- package/src/Schema/Class.ts +279 -62
- package/src/Schema/SchemaParser.ts +12 -0
- package/src/Schema/SpecialJsonSchema.ts +137 -0
- package/src/Schema/SpecialOpenApi.ts +130 -0
- package/src/Schema/brand.ts +9 -1
- package/src/Schema/email.ts +7 -2
- package/src/Schema/ext.ts +210 -80
- package/src/Schema/moreStrings.ts +22 -20
- package/src/Schema/numbers.ts +14 -16
- package/src/Schema/phoneNumber.ts +5 -1
- package/src/Schema/strings.ts +4 -8
- package/src/Schema.ts +265 -105
- package/src/client/InvalidationKeys.ts +50 -0
- package/src/client/apiClientFactory.ts +203 -119
- package/src/client/clientFor.ts +112 -23
- package/src/client/errors.ts +52 -26
- package/src/client/makeClient.ts +339 -63
- package/src/client.ts +1 -0
- package/src/http/Request.ts +7 -4
- package/src/ids.ts +2 -1
- package/src/index.ts +5 -10
- package/src/middleware.ts +12 -10
- package/src/rpc/Invalidation.ts +174 -0
- package/src/rpc/MiddlewareMaker.ts +36 -47
- package/src/rpc/README.md +2 -2
- package/src/rpc/RpcContextMap.ts +6 -5
- package/src/rpc/RpcMiddleware.ts +5 -4
- package/src/rpc.ts +1 -1
- package/src/transform.ts +2 -2
- package/src/utils/gen.ts +1 -1
- package/src/utils/logger.ts +2 -2
- package/src/utils.ts +47 -11
- package/test/dist/rpc.test.d.ts.map +1 -1
- package/test/dist/secretURL.test.d.ts.map +1 -0
- package/test/dist/special.test.d.ts.map +1 -0
- package/test/rpc.test.ts +38 -6
- package/test/schema.test.ts +591 -17
- package/test/secretURL.test.ts +157 -0
- package/test/special.test.ts +1023 -0
- package/test/utils.test.ts +6 -6
- package/tsconfig.base.json +3 -4
- package/tsconfig.json +0 -1
- package/tsconfig.json.bak +2 -2
- package/tsconfig.src.json +29 -29
- package/tsconfig.test.json +2 -2
- package/dist/ServiceMap.d.ts +0 -44
- package/dist/ServiceMap.d.ts.map +0 -1
- package/dist/ServiceMap.js +0 -91
package/dist/Schema/ext.d.ts
CHANGED
|
@@ -1,84 +1,153 @@
|
|
|
1
|
-
import { Effect,
|
|
1
|
+
import { Effect, type SchemaAST, SchemaIssue } from "effect";
|
|
2
2
|
import * as S from "effect/Schema";
|
|
3
3
|
import { type NonEmptyReadonlyArray } from "../Array.js";
|
|
4
|
+
import * as Context from "../Context.js";
|
|
4
5
|
import { type AST } from "./schema.js";
|
|
5
|
-
|
|
6
|
+
type ProvidedCodec<Self extends S.Top, R> = S.Codec<Self["Type"], Self["Encoded"], Exclude<Self["DecodingServices"], R>, Exclude<Self["EncodingServices"], R>>;
|
|
7
|
+
export declare const DefaultParseOptions: SchemaAST.ParseOptions;
|
|
8
|
+
/**
|
|
9
|
+
* Parse-options annotation used on schema constructors for decode paths where callers
|
|
10
|
+
* cannot currently pass parse options (notably some RPC / HttpApi integration paths).
|
|
11
|
+
*
|
|
12
|
+
* Keep this annotation in place so those framework-managed decodes still run with
|
|
13
|
+
* unbounded concurrency by default.
|
|
14
|
+
*/
|
|
15
|
+
export declare const concurrencyUnbounded: {
|
|
16
|
+
readonly parseOptions: SchemaAST.ParseOptions;
|
|
17
|
+
};
|
|
18
|
+
type DecodeLike = (schema: any) => (input: any, options?: SchemaAST.ParseOptions) => any;
|
|
19
|
+
export declare const withDefaultParseOptions: <Decode extends DecodeLike>(decode: Decode, defaultParseOptions?: SchemaAST.ParseOptions) => Decode;
|
|
20
|
+
/**
|
|
21
|
+
* Schema type for {@link DateFromString}.
|
|
22
|
+
*
|
|
23
|
+
* @category Schemas
|
|
24
|
+
* @since 4.0.0
|
|
25
|
+
*/
|
|
26
|
+
export interface DateFromString extends S.decodeTo<S.Date, S.String> {
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* A transformation schema that parses an ISO 8601 string into a `Date`.
|
|
30
|
+
*
|
|
31
|
+
* Decoding:
|
|
32
|
+
* - A `string` is decoded as a `Date`.
|
|
33
|
+
*
|
|
34
|
+
* Encoding:
|
|
35
|
+
* - A `Date` is encoded as a `string`.
|
|
36
|
+
*
|
|
37
|
+
* @since 4.0.0
|
|
38
|
+
*/
|
|
39
|
+
export declare const DateFromString: DateFromString;
|
|
6
40
|
/**
|
|
7
41
|
* Like the default Schema `Date` but from String with `withDefault` => now
|
|
8
42
|
*/
|
|
9
|
-
export declare const Date:
|
|
10
|
-
withDefault:
|
|
43
|
+
export declare const Date: DateFromString & {
|
|
44
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
45
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Like the default Schema `DateValid` but from String with `withDefault` => now
|
|
49
|
+
*/
|
|
50
|
+
export declare const DateValid: S.decodeTo<S.Date, S.String, never, never> & {
|
|
51
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
52
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
11
53
|
};
|
|
12
54
|
/**
|
|
13
55
|
* Like the default Schema `Boolean` but with `withDefault` => false
|
|
14
56
|
*/
|
|
15
|
-
export declare const Boolean:
|
|
16
|
-
withDefault:
|
|
57
|
+
export declare const Boolean: S.Boolean & {
|
|
58
|
+
withDefault: S.withConstructorDefault<S.Boolean>;
|
|
59
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Boolean>;
|
|
17
60
|
};
|
|
18
61
|
/**
|
|
62
|
+
* You probably want to use `Finite` instead of this.
|
|
19
63
|
* Like the default Schema `Number` but with `withDefault` => 0
|
|
20
64
|
*/
|
|
21
|
-
export declare const Number:
|
|
22
|
-
withDefault:
|
|
65
|
+
export declare const Number: S.Number & {
|
|
66
|
+
withDefault: S.withConstructorDefault<S.Number>;
|
|
67
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Number>;
|
|
23
68
|
};
|
|
24
69
|
/**
|
|
25
|
-
* Like the default Schema `
|
|
70
|
+
* Like the default Schema `Finite` but with `withDefault` => 0
|
|
26
71
|
*/
|
|
27
|
-
export declare const
|
|
28
|
-
|
|
72
|
+
export declare const Finite: S.Finite & {
|
|
73
|
+
withDefault: S.withConstructorDefault<S.Finite>;
|
|
74
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Finite>;
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Like the default Schema `Literals` but with `withDefault` => literals[0]
|
|
78
|
+
*/
|
|
79
|
+
export declare const Literals: <const Literals extends NonEmptyReadonlyArray<AST.LiteralValue>>(literals: Literals) => S.Literals<Literals> & {
|
|
80
|
+
changeDefault: <A extends Literals[number]>(a: A) => S.Literals<Literals> & {
|
|
29
81
|
Default: A;
|
|
30
|
-
withDefault:
|
|
82
|
+
withDefault: S.withConstructorDefault<S.Literals<Literals>>;
|
|
83
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Literals<Literals>>;
|
|
31
84
|
};
|
|
32
|
-
Default:
|
|
33
|
-
withDefault:
|
|
85
|
+
Default: Literals[0];
|
|
86
|
+
withDefault: S.withConstructorDefault<S.Literals<Literals>>;
|
|
87
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Literals<Literals>>;
|
|
34
88
|
};
|
|
35
89
|
/**
|
|
36
90
|
* Like the default Schema `Array` but with `withDefault` => []
|
|
37
91
|
*/
|
|
38
|
-
export declare function Array<ValueSchema extends S.Top>(value: ValueSchema):
|
|
39
|
-
withDefault:
|
|
92
|
+
export declare function Array<ValueSchema extends S.Top>(value: ValueSchema): S.$Array<ValueSchema> & {
|
|
93
|
+
withDefault: S.withConstructorDefault<S.$Array<ValueSchema>>;
|
|
94
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.$Array<ValueSchema>>;
|
|
40
95
|
};
|
|
41
96
|
/**
|
|
42
|
-
*
|
|
97
|
+
* An annotated `S.Array` of unique items that decodes to a `ReadonlySet`.
|
|
43
98
|
*/
|
|
44
|
-
declare
|
|
45
|
-
key: KeySchema;
|
|
46
|
-
value: ValueSchema;
|
|
47
|
-
}): Schema.$ReadonlyMap<KeySchema, ValueSchema> & {
|
|
48
|
-
withDefault: Schema.withConstructorDefault<Schema.$ReadonlyMap<KeySchema, ValueSchema> & Schema.WithoutConstructorDefault>;
|
|
49
|
-
};
|
|
50
|
-
export { Map_ as Map };
|
|
99
|
+
export declare const ReadonlySetFromArray: <ValueSchema extends S.Top>(value: ValueSchema) => S.decodeTo<S.instanceOf<ReadonlySet<S.Schema.Type<ValueSchema>>, ReadonlySet<S.Schema.Type<ValueSchema>>>, S.$Array<ValueSchema>, never, never>;
|
|
51
100
|
/**
|
|
52
|
-
*
|
|
101
|
+
* An annotated `S.Array` of key-value tuples that decodes to a `ReadonlyMap`.
|
|
53
102
|
*/
|
|
54
|
-
export declare const
|
|
55
|
-
|
|
103
|
+
export declare const ReadonlyMapFromArray: <KeySchema extends S.Top, ValueSchema extends S.Top>(pair: {
|
|
104
|
+
readonly key: KeySchema;
|
|
105
|
+
readonly value: ValueSchema;
|
|
106
|
+
}) => S.decodeTo<S.instanceOf<ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>, ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>>, S.$Array<S.Tuple<readonly [KeySchema, ValueSchema]>>, never, never>;
|
|
107
|
+
/**
|
|
108
|
+
* Like the default Schema `ReadonlySet` but from Array with `withDefault` => new Set()
|
|
109
|
+
*/
|
|
110
|
+
export declare const ReadonlySet: <ValueSchema extends S.Top>(value: ValueSchema) => S.decodeTo<S.instanceOf<ReadonlySet<S.Schema.Type<ValueSchema>>, ReadonlySet<S.Schema.Type<ValueSchema>>>, S.$Array<ValueSchema>, never, never> & {
|
|
111
|
+
withDefault: S.withConstructorDefault<S.decodeTo<S.instanceOf<ReadonlySet<S.Schema.Type<ValueSchema>>, ReadonlySet<S.Schema.Type<ValueSchema>>>, S.$Array<ValueSchema>, never, never>>;
|
|
112
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.decodeTo<S.instanceOf<ReadonlySet<S.Schema.Type<ValueSchema>>, ReadonlySet<S.Schema.Type<ValueSchema>>>, S.$Array<ValueSchema>, never, never>>;
|
|
56
113
|
};
|
|
57
114
|
/**
|
|
58
|
-
* Like the default Schema `ReadonlyMap` but with `withDefault` => new Map()
|
|
115
|
+
* Like the default Schema `ReadonlyMap` but from Array with `withDefault` => new Map()
|
|
59
116
|
*/
|
|
60
117
|
export declare const ReadonlyMap: <KeySchema extends S.Top, ValueSchema extends S.Top>(pair: {
|
|
61
118
|
readonly key: KeySchema;
|
|
62
119
|
readonly value: ValueSchema;
|
|
63
|
-
}) => Schema
|
|
64
|
-
withDefault:
|
|
120
|
+
}) => S.decodeTo<S.instanceOf<ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>, ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>>, S.$Array<S.Tuple<readonly [KeySchema, ValueSchema]>>, never, never> & {
|
|
121
|
+
withDefault: S.withConstructorDefault<S.decodeTo<S.instanceOf<ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>, ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>>, S.$Array<S.Tuple<readonly [KeySchema, ValueSchema]>>, never, never>>;
|
|
122
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.decodeTo<S.instanceOf<ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>, ReadonlyMap<S.Schema.Type<KeySchema>, S.Schema.Type<ValueSchema>>>, S.$Array<S.Tuple<readonly [KeySchema, ValueSchema]>>, never, never>>;
|
|
65
123
|
};
|
|
66
124
|
/**
|
|
67
125
|
* Like the default Schema `NullOr` but with `withDefault` => null
|
|
68
126
|
*/
|
|
69
|
-
export declare const NullOr: <Schema extends S.Top>(self: Schema) =>
|
|
70
|
-
withDefault:
|
|
127
|
+
export declare const NullOr: <Schema extends S.Top>(self: Schema) => S.NullOr<Schema> & {
|
|
128
|
+
withDefault: S.withConstructorDefault<S.NullOr<Schema>>;
|
|
129
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.NullOr<Schema>>;
|
|
71
130
|
};
|
|
72
|
-
export declare const defaultDate: <Schema extends S.Top>(schema: Schema) =>
|
|
73
|
-
export declare const defaultBool: <Schema extends S.Top>(schema: Schema) =>
|
|
74
|
-
export declare const defaultNullable: <Schema extends S.Top>(schema: Schema) =>
|
|
75
|
-
export declare const defaultArray: <Schema extends S.Top>(schema: Schema) =>
|
|
76
|
-
export declare const defaultMap: <Schema extends S.Top>(schema: Schema) =>
|
|
77
|
-
export declare const defaultSet: <Schema extends S.Top>(schema: Schema) =>
|
|
131
|
+
export declare const defaultDate: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
132
|
+
export declare const defaultBool: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
133
|
+
export declare const defaultNullable: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
134
|
+
export declare const defaultArray: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
135
|
+
export declare const defaultMap: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
136
|
+
export declare const defaultSet: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
78
137
|
export declare const withDefaultMake: <Self extends S.Top>(s: Self) => WithDefaults<Self> & Self;
|
|
79
138
|
export type WithDefaults<Self extends S.Top> = (i: Self["Encoded"], options?: SchemaAST.ParseOptions) => Self["Type"];
|
|
80
|
-
export declare const inputDate:
|
|
81
|
-
withDefault:
|
|
139
|
+
export declare const inputDate: S.Union<readonly [S.DateValid, DateFromString & {
|
|
140
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
141
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
142
|
+
}]> & {
|
|
143
|
+
withDefault: S.withConstructorDefault<S.Union<readonly [S.DateValid, DateFromString & {
|
|
144
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
145
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
146
|
+
}]>>;
|
|
147
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Union<readonly [S.DateValid, DateFromString & {
|
|
148
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
149
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
150
|
+
}]>>;
|
|
82
151
|
};
|
|
83
152
|
export interface UnionBrand {
|
|
84
153
|
}
|
|
@@ -89,9 +158,13 @@ export declare function makeExactOptional<NER extends S.Struct.Fields>(t: NER):
|
|
|
89
158
|
[K in keyof NER]: NER[K] extends S.Top ? ReturnType<typeof S.optionalKey<NER[K] & S.Top>> : any;
|
|
90
159
|
};
|
|
91
160
|
/** A version of transform which is only a one way mapping of From->To */
|
|
92
|
-
export declare const transformTo: <To extends S.Top, From extends S.Top>(from: From, to: To, decode: (fromA: From["Type"], options: SchemaAST.ParseOptions) => To["Encoded"]) =>
|
|
161
|
+
export declare const transformTo: <To extends S.Top, From extends S.Top>(from: From, to: To, decode: (fromA: From["Type"], options: SchemaAST.ParseOptions) => To["Encoded"]) => S.decodeTo<To, From, never, never>;
|
|
93
162
|
/** A version of transformOrFail which is only a one way mapping of From->To */
|
|
94
|
-
export declare const transformToOrFail: <To extends S.Top, From extends S.Top, RD>(from: From, to: To, decode: (fromA: From["Type"], options: SchemaAST.ParseOptions) => Effect.Effect<To["Encoded"], SchemaIssue.Issue, RD>) =>
|
|
95
|
-
export declare const provide:
|
|
96
|
-
|
|
97
|
-
|
|
163
|
+
export declare const transformToOrFail: <To extends S.Top, From extends S.Top, RD>(from: From, to: To, decode: (fromA: From["Type"], options: SchemaAST.ParseOptions) => Effect.Effect<To["Encoded"], SchemaIssue.Issue, RD>) => S.decodeTo<To, From, RD, never>;
|
|
164
|
+
export declare const provide: {
|
|
165
|
+
<R>(context: Context.Context<R>): <Self extends S.Top>(self: Self) => ProvidedCodec<Self, R>;
|
|
166
|
+
<Self extends S.Top, R>(self: Self, context: Context.Context<R>): ProvidedCodec<Self, R>;
|
|
167
|
+
};
|
|
168
|
+
export declare const contextFromServices: <Self extends S.Top, Tags extends ReadonlyArray<Context.Key<any, any>>>(self: Self, ...services: Tags) => Effect.Effect<ProvidedCodec<Self, Context.Service.Identifier<Tags[number]>>, never, Context.Service.Identifier<Tags[number]>>;
|
|
169
|
+
export {};
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU2NoZW1hL2V4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsTUFBTSxFQUEwQixLQUFLLFNBQVMsRUFBRSxXQUFXLEVBQXdCLE1BQU0sUUFBUSxDQUFBO0FBQzFHLE9BQU8sS0FBSyxDQUFDLE1BQU0sZUFBZSxDQUFBO0FBRWxDLE9BQU8sRUFBRSxLQUFLLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3hELE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFBO0FBRXhDLE9BQU8sRUFBRSxLQUFLLEdBQUcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV0QyxLQUFLLGFBQWEsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsRUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3BDLE9BQU8sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDckMsQ0FBQTtBQUVELGVBQU8sTUFBTSxtQkFBbUIsRUFBRSxTQUFTLENBQUMsWUFBMkMsQ0FBQTtBQUN2Rjs7Ozs7O0dBTUc7QUFDSCxlQUFPLE1BQU0sb0JBQW9CO2FBQUssWUFBWTtDQUFnQyxDQUFBO0FBRWxGLEtBQUssVUFBVSxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDLFlBQVksS0FBSyxHQUFHLENBQUE7QUFFeEYsZUFBTyxNQUFNLHVCQUF1QixHQUFJLE1BQU0sU0FBUyxVQUFVLFVBQ3ZELE1BQU0sd0JBQ08sU0FBUyxDQUFDLFlBQVksS0FDMUMsTUFJVyxDQUFBO0FB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
|
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,
|
|
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,80 +1,160 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
|
3
|
-
import { Effect, Option, pipe,
|
|
3
|
+
import { Effect, Function, Option, pipe, SchemaIssue, SchemaTransformation } from "effect";
|
|
4
4
|
import * as S from "effect/Schema";
|
|
5
|
+
import { isDateValid } from "effect/Schema";
|
|
6
|
+
import * as Context from "../Context.js";
|
|
5
7
|
import { extendM, typedKeysOf } from "../utils.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
export const DefaultParseOptions = { concurrency: "unbounded" };
|
|
9
|
+
/**
|
|
10
|
+
* Parse-options annotation used on schema constructors for decode paths where callers
|
|
11
|
+
* cannot currently pass parse options (notably some RPC / HttpApi integration paths).
|
|
12
|
+
*
|
|
13
|
+
* Keep this annotation in place so those framework-managed decodes still run with
|
|
14
|
+
* unbounded concurrency by default.
|
|
15
|
+
*/
|
|
16
|
+
export const concurrencyUnbounded = { parseOptions: DefaultParseOptions };
|
|
17
|
+
export const withDefaultParseOptions = (decode, defaultParseOptions = DefaultParseOptions) => ((schema) => {
|
|
18
|
+
const run = decode(schema);
|
|
19
|
+
return (input, options) => run(input, { ...defaultParseOptions, ...options });
|
|
20
|
+
});
|
|
13
21
|
// TODO: v4 migration - Date is no longer by default encoded to string.
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
22
|
+
const DateString = S.String.annotate({
|
|
23
|
+
identifier: "Date",
|
|
24
|
+
description: "a string in ISO 8601 format that will be decoded as a Date",
|
|
25
|
+
format: "date-time"
|
|
26
|
+
});
|
|
27
|
+
/**
|
|
28
|
+
* A transformation schema that parses an ISO 8601 string into a `Date`.
|
|
29
|
+
*
|
|
30
|
+
* Decoding:
|
|
31
|
+
* - A `string` is decoded as a `Date`.
|
|
32
|
+
*
|
|
33
|
+
* Encoding:
|
|
34
|
+
* - A `Date` is encoded as a `string`.
|
|
35
|
+
*
|
|
36
|
+
* @since 4.0.0
|
|
37
|
+
*/
|
|
38
|
+
export const DateFromString = DateString.pipe(S.decodeTo(S.Date, SchemaTransformation.dateFromString));
|
|
18
39
|
/**
|
|
19
40
|
* Like the default Schema `Date` but from String with `withDefault` => now
|
|
20
41
|
*/
|
|
21
42
|
export const Date = Object.assign(DateFromString, {
|
|
22
|
-
withDefault: DateFromString.pipe(
|
|
43
|
+
withDefault: DateFromString.pipe(S.withConstructorDefault(Effect.sync(() => new global.Date()))),
|
|
44
|
+
withDecodingDefaultType: DateFromString.pipe(S.withDecodingDefaultType(Effect.sync(() => new global.Date())))
|
|
45
|
+
});
|
|
46
|
+
/**
|
|
47
|
+
* Like the default Schema `DateValid` but from String with `withDefault` => now
|
|
48
|
+
*/
|
|
49
|
+
export const DateValid = Object.assign(Date.check(isDateValid()), {
|
|
50
|
+
withDefault: DateFromString.pipe(S.withConstructorDefault(Effect.sync(() => new global.Date()))),
|
|
51
|
+
withDecodingDefaultType: DateFromString.pipe(S.withDecodingDefaultType(Effect.sync(() => new global.Date())))
|
|
23
52
|
});
|
|
24
53
|
/**
|
|
25
54
|
* Like the default Schema `Boolean` but with `withDefault` => false
|
|
26
55
|
*/
|
|
27
56
|
export const Boolean = Object.assign(S.Boolean, {
|
|
28
|
-
withDefault: S.Boolean.pipe(
|
|
57
|
+
withDefault: S.Boolean.pipe(S.withConstructorDefault(Effect.succeed(false))),
|
|
58
|
+
withDecodingDefaultType: S.Boolean.pipe(S.withDecodingDefaultType(Effect.succeed(false)))
|
|
29
59
|
});
|
|
30
60
|
/**
|
|
61
|
+
* You probably want to use `Finite` instead of this.
|
|
31
62
|
* Like the default Schema `Number` but with `withDefault` => 0
|
|
32
63
|
*/
|
|
33
|
-
export const Number = Object.assign(S.Number, {
|
|
64
|
+
export const Number = Object.assign(S.Number, {
|
|
65
|
+
withDefault: S.Number.pipe(S.withConstructorDefault(Effect.succeed(0))),
|
|
66
|
+
withDecodingDefaultType: S.Number.pipe(S.withDecodingDefaultType(Effect.succeed(0)))
|
|
67
|
+
});
|
|
68
|
+
/**
|
|
69
|
+
* Like the default Schema `Finite` but with `withDefault` => 0
|
|
70
|
+
*/
|
|
71
|
+
export const Finite = Object.assign(S.Finite, {
|
|
72
|
+
withDefault: S.Finite.pipe(S.withConstructorDefault(Effect.succeed(0))),
|
|
73
|
+
withDecodingDefaultType: S.Finite.pipe(S.withDecodingDefaultType(Effect.succeed(0)))
|
|
74
|
+
});
|
|
34
75
|
/**
|
|
35
|
-
* Like the default Schema `
|
|
76
|
+
* Like the default Schema `Literals` but with `withDefault` => literals[0]
|
|
36
77
|
*/
|
|
37
|
-
export const
|
|
78
|
+
export const Literals = (literals) => pipe(S.Literals(literals), (s) => Object.assign(s, {
|
|
38
79
|
changeDefault: (a) => {
|
|
39
80
|
return Object.assign(S.Literals(literals), {
|
|
40
81
|
Default: a,
|
|
41
|
-
withDefault: s.pipe(
|
|
82
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.succeed(a))),
|
|
83
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.succeed(a)))
|
|
42
84
|
}); // todo: copy annotations from original?
|
|
43
85
|
},
|
|
86
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion -- load-bearing: Object.assign widens the field type without it, breaking `expectTypeOf(l.Default).toEqualTypeOf<"a">()` in tests
|
|
44
87
|
Default: literals[0],
|
|
45
|
-
withDefault: s.pipe(
|
|
88
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.succeed(literals[0]))),
|
|
89
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.succeed(literals[0])))
|
|
46
90
|
}));
|
|
47
91
|
/**
|
|
48
92
|
* Like the default Schema `Array` but with `withDefault` => []
|
|
49
93
|
*/
|
|
50
94
|
export function Array(value) {
|
|
51
|
-
return pipe(S.Array(value), (s) => Object.assign(s, {
|
|
95
|
+
return pipe(S.Array(value).annotate(concurrencyUnbounded), (s) => Object.assign(s, {
|
|
96
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => []))),
|
|
97
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => [])))
|
|
98
|
+
}));
|
|
52
99
|
}
|
|
53
100
|
/**
|
|
54
|
-
*
|
|
101
|
+
* An annotated `S.Array` of unique items that decodes to a `ReadonlySet`.
|
|
55
102
|
*/
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
103
|
+
export const ReadonlySetFromArray = (value) => {
|
|
104
|
+
const from = S
|
|
105
|
+
.Array(value)
|
|
106
|
+
.annotate({ ...concurrencyUnbounded, expected: "an array of unique items that will be decoded as a ReadonlySet" });
|
|
107
|
+
const to = S.instanceOf(Set);
|
|
108
|
+
const schema = from.pipe(S.decodeTo(to, SchemaTransformation.transform({
|
|
109
|
+
decode: (arr) => new Set(arr),
|
|
110
|
+
encode: (set) => [...set]
|
|
111
|
+
})));
|
|
112
|
+
return schema;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* An annotated `S.Array` of key-value tuples that decodes to a `ReadonlyMap`.
|
|
116
|
+
*/
|
|
117
|
+
export const ReadonlyMapFromArray = (pair) => {
|
|
118
|
+
const from = S
|
|
119
|
+
.Array(S.Tuple([pair.key, pair.value]))
|
|
120
|
+
.annotate({
|
|
121
|
+
...concurrencyUnbounded,
|
|
122
|
+
expected: "an array of key-value tuples that will be decoded as a ReadonlyMap"
|
|
123
|
+
});
|
|
124
|
+
const to = S.instanceOf(Map);
|
|
125
|
+
const schema = from.pipe(S.decodeTo(to, SchemaTransformation.transform({
|
|
126
|
+
decode: (arr) => new Map(arr),
|
|
127
|
+
encode: (map) => [...map.entries()] // fu
|
|
128
|
+
})));
|
|
129
|
+
return schema;
|
|
130
|
+
};
|
|
60
131
|
/**
|
|
61
|
-
* Like the default Schema `ReadonlySet` but with `withDefault` => new Set()
|
|
132
|
+
* Like the default Schema `ReadonlySet` but from Array with `withDefault` => new Set()
|
|
62
133
|
*/
|
|
63
|
-
export const ReadonlySet = (value) => pipe(
|
|
134
|
+
export const ReadonlySet = (value) => pipe(ReadonlySetFromArray(value), (s) => Object.assign(s, {
|
|
135
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => new Set()))),
|
|
136
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => new Set())))
|
|
137
|
+
}));
|
|
64
138
|
/**
|
|
65
|
-
* Like the default Schema `ReadonlyMap` but with `withDefault` => new Map()
|
|
139
|
+
* Like the default Schema `ReadonlyMap` but from Array with `withDefault` => new Map()
|
|
66
140
|
*/
|
|
67
|
-
export const ReadonlyMap = (pair) => pipe(
|
|
141
|
+
export const ReadonlyMap = (pair) => pipe(ReadonlyMapFromArray(pair), (s) => Object.assign(s, {
|
|
142
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => new Map()))),
|
|
143
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => new Map())))
|
|
144
|
+
}));
|
|
68
145
|
/**
|
|
69
146
|
* Like the default Schema `NullOr` but with `withDefault` => null
|
|
70
147
|
*/
|
|
71
|
-
export const NullOr = (self) => pipe(S.NullOr(self), (s) => Object.assign(s, {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
export const
|
|
76
|
-
export const
|
|
77
|
-
export const
|
|
148
|
+
export const NullOr = (self) => pipe(S.NullOr(self), (s) => Object.assign(s, {
|
|
149
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.succeed(null))),
|
|
150
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.succeed(null)))
|
|
151
|
+
}));
|
|
152
|
+
export const defaultDate = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => new global.Date())));
|
|
153
|
+
export const defaultBool = (schema) => schema.pipe(S.withConstructorDefault(Effect.succeed(false)));
|
|
154
|
+
export const defaultNullable = (schema) => schema.pipe(S.withConstructorDefault(Effect.succeed(null)));
|
|
155
|
+
export const defaultArray = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => [])));
|
|
156
|
+
export const defaultMap = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => new Map())));
|
|
157
|
+
export const defaultSet = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => new Set())));
|
|
78
158
|
export const withDefaultMake = (s) => {
|
|
79
159
|
const a = Object.assign(S.decodeSync(s), s);
|
|
80
160
|
Object.setPrototypeOf(a, s);
|
|
@@ -93,7 +173,10 @@ export const withDefaultMake = (s) => {
|
|
|
93
173
|
// }[keyof P[B.BrandTypeId]]
|
|
94
174
|
// export type UnionToIntersection3<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I
|
|
95
175
|
// : never
|
|
96
|
-
export const inputDate = extendM(S.Union([S.DateValid,
|
|
176
|
+
export const inputDate = extendM(S.Union([S.DateValid, Date]), (s) => ({
|
|
177
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => new globalThis.Date()))),
|
|
178
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => new globalThis.Date())))
|
|
179
|
+
}));
|
|
97
180
|
// TODO: v4 migration — makeOpt used internal PropertySignature types that are removed in v4
|
|
98
181
|
// Simplified to use v4's S.optional / S.optionalKey directly
|
|
99
182
|
export function makeOptional(t) {
|
|
@@ -115,22 +198,15 @@ export const transformTo = (from, to, decode) => from.pipe(S.decodeTo(to, Schema
|
|
|
115
198
|
})));
|
|
116
199
|
/** A version of transformOrFail which is only a one way mapping of From->To */
|
|
117
200
|
export const transformToOrFail = (from, to, decode) => from.pipe(S.decodeTo(to, SchemaTransformation.transformOrFail({
|
|
118
|
-
decode
|
|
201
|
+
decode,
|
|
119
202
|
encode: (i) => Effect.fail(new SchemaIssue.Forbidden(Option.some(i), { message: "One way schema transformation, encoding is not allowed" }))
|
|
120
203
|
})));
|
|
121
|
-
|
|
122
|
-
// Need to find v4 equivalent for contextual schema wrapping
|
|
123
|
-
export const provide = (self, context) => {
|
|
204
|
+
export const provide = Function.dual(2, (self, context) => {
|
|
124
205
|
const prov = Effect.provide(context);
|
|
125
|
-
return S
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
};
|
|
132
|
-
// TODO: v4 migration — ServiceMap.pick and S.declare pattern removed
|
|
133
|
-
export const contextFromServices = (_self, ..._services) => {
|
|
134
|
-
throw new Error("contextFromServices: not yet migrated to v4");
|
|
135
|
-
};
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1NjaGVtYS9leHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELHdEQUF3RDtBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFrQixZQUFZLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBbUIsTUFBTSxRQUFRLENBQUE7QUFDckosT0FBTyxLQUFLLENBQUMsTUFBTSxlQUFlLENBQUE7QUFFbEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFHbEQsMkZBQTJGO0FBQzNGLHFHQUFxRztBQUNyRyx1R0FBdUc7QUFDdkcsNEdBQTRHO0FBQzVHLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLENBQ3BDLFdBQTZCLEVBQzdCLEVBQUUsQ0FDSixDQUFxQixJQUFVLEVBQWdFLEVBQUU7SUFFL0YsT0FBTyxDQUFDLENBQUMsc0JBQXNCLENBQzdCLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUErQixDQUFDLENBQzlELENBQUMsSUFBZ0IsQ0FBQyxDQUFBO0FBQ3JCLENBQUMsQ0FBQTtBQUVELHVFQUF1RTtBQUN2RSxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDckMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO0lBQzdCLE1BQU0sRUFBRSxZQUFZLENBQUMsSUFBSSxFQUFFO0lBQzNCLE1BQU0sRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7Q0FDdkQsQ0FBQyxDQUNILENBQUE7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxD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
|
|
206
|
+
return self.pipe(S.middlewareDecoding((effect) => prov(effect)), S.middlewareEncoding((effect) => prov(effect)));
|
|
207
|
+
});
|
|
208
|
+
export const contextFromServices = Effect.fnUntraced(function* (self, ...services) {
|
|
209
|
+
const context = Context.pick(...services)(yield* Effect.context());
|
|
210
|
+
return provide(self, context);
|
|
211
|
+
});
|
|
212
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1NjaGVtYS9leHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELHdEQUF3RDtBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFrQixXQUFXLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDMUcsT0FBTyxLQUFLLENBQUMsTUFBTSxlQUFlLENBQUE7QUFDbEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUUzQyxPQUFPLEtBQUssT0FBTyxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQVVsRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBMkIsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLENBQUE7QUFDdkY7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQVcsQ0FBQTtBQUlsRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUNyQyxNQUFjLEVBQ2QsbUJBQW1CLEdBQTJCLG1CQUFtQixFQUN6RCxFQUFFLENBQ1YsQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFO0lBQ2YsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzFCLE9BQU8sQ0FBQyxLQUFVLEVBQUUsT0FBZ0MsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsbUJBQW1CLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFBO0FBQzdHLENBQUMsQ0FBVyxDQUFBO0FBRWQsdUVBQXVFO0FBRXZFLE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO0lBQ25DLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFdBQVcsRUFBRSw0REFBNEQ7SUFDekUsTUFBTSxFQUFFLFdBQVc7Q0FDcEIsQ0FBQyxDQUFBO0FBVUY7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBbUIsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQTtBQUV0SDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRTtJQUNoRCxXQUFXLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEcsdUJBQXVCLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7Q0FDOUcsQ0FBQyxDQUFBO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUU7SUFDaEUsV0FBVyxFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLHVCQUF1QixFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0NBQzlHLENBQUMsQ0FBQTtBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRTtJQUM5QyxXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM1RSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0NBQzFGLENBQUMsQ0FBQTtBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDNUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkUsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUNyRixDQUFDLENBQUE7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDNUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkUsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLE1B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
|