effect-app 4.0.0-beta.8 → 4.0.0-beta.82
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 +354 -0
- package/dist/Config/SecretURL.js +2 -2
- 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 +66 -0
- package/dist/Effect.d.ts +8 -7
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +3 -2
- package/dist/Layer.d.ts +5 -4
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +1 -1
- package/dist/Operations.d.ts +62 -25
- package/dist/Operations.d.ts.map +1 -1
- package/dist/Pure.d.ts +2 -2
- package/dist/Pure.d.ts.map +1 -1
- package/dist/Pure.js +13 -13
- package/dist/Schema/Class.d.ts +39 -1
- package/dist/Schema/Class.d.ts.map +1 -1
- package/dist/Schema/Class.js +89 -12
- package/dist/Schema/SpecialJsonSchema.d.ts +21 -0
- package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -0
- package/dist/Schema/SpecialJsonSchema.js +59 -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 +8 -5
- package/dist/Schema/brand.d.ts.map +1 -1
- package/dist/Schema/brand.js +1 -1
- package/dist/Schema/email.d.ts.map +1 -1
- package/dist/Schema/email.js +9 -4
- package/dist/Schema/ext.d.ts +103 -46
- package/dist/Schema/ext.d.ts.map +1 -1
- package/dist/Schema/ext.js +110 -51
- package/dist/Schema/moreStrings.d.ts +19 -7
- package/dist/Schema/moreStrings.d.ts.map +1 -1
- package/dist/Schema/moreStrings.js +14 -9
- package/dist/Schema/numbers.d.ts +11 -11
- package/dist/Schema/numbers.d.ts.map +1 -1
- package/dist/Schema/numbers.js +10 -9
- package/dist/Schema/phoneNumber.d.ts.map +1 -1
- package/dist/Schema/phoneNumber.js +8 -3
- package/dist/Schema/strings.d.ts +4 -4
- package/dist/Schema/strings.d.ts.map +1 -1
- package/dist/Schema.d.ts +22 -55
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +43 -64
- package/dist/client/apiClientFactory.d.ts +11 -28
- package/dist/client/apiClientFactory.d.ts.map +1 -1
- package/dist/client/apiClientFactory.js +18 -19
- package/dist/client/clientFor.d.ts +6 -5
- package/dist/client/clientFor.d.ts.map +1 -1
- package/dist/client/errors.d.ts +18 -9
- package/dist/client/errors.d.ts.map +1 -1
- package/dist/client/errors.js +35 -10
- package/dist/client/makeClient.d.ts +21 -16
- package/dist/client/makeClient.d.ts.map +1 -1
- package/dist/client/makeClient.js +32 -23
- package/dist/http/Request.d.ts.map +1 -1
- package/dist/http/Request.js +5 -5
- 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 +3 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -9
- package/dist/middleware.d.ts +2 -2
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +3 -3
- package/dist/rpc/MiddlewareMaker.d.ts +4 -3
- package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
- package/dist/rpc/MiddlewareMaker.js +7 -6
- package/dist/rpc/RpcContextMap.d.ts +2 -2
- package/dist/rpc/RpcContextMap.d.ts.map +1 -1
- package/dist/rpc/RpcContextMap.js +4 -4
- package/dist/rpc/RpcMiddleware.d.ts +4 -3
- package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/rpc/RpcMiddleware.js +1 -1
- package/dist/utils/gen.d.ts +1 -1
- package/dist/utils/gen.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +2 -2
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +3 -3
- package/dist/utils.d.ts +18 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +24 -5
- package/package.json +29 -17
- package/src/Config/SecretURL.ts +1 -1
- package/src/Config.ts +14 -0
- package/src/ConfigProvider.ts +48 -0
- package/src/{ServiceMap.ts → Context.ts} +57 -64
- package/src/Effect.ts +11 -9
- package/src/Layer.ts +5 -4
- package/src/Pure.ts +17 -18
- package/src/Schema/Class.ts +114 -16
- package/src/Schema/SpecialJsonSchema.ts +69 -0
- package/src/Schema/SpecialOpenApi.ts +130 -0
- package/src/Schema/brand.ts +13 -7
- package/src/Schema/email.ts +10 -2
- package/src/Schema/ext.ts +185 -82
- package/src/Schema/moreStrings.ts +21 -11
- package/src/Schema/numbers.ts +9 -8
- package/src/Schema/phoneNumber.ts +8 -1
- package/src/Schema.ts +79 -103
- package/src/client/apiClientFactory.ts +31 -35
- package/src/client/clientFor.ts +6 -1
- package/src/client/errors.ts +46 -12
- package/src/client/makeClient.ts +122 -62
- package/src/http/Request.ts +7 -4
- package/src/ids.ts +3 -2
- package/src/index.ts +3 -11
- package/src/middleware.ts +2 -2
- package/src/rpc/MiddlewareMaker.ts +8 -7
- package/src/rpc/RpcContextMap.ts +6 -5
- package/src/rpc/RpcMiddleware.ts +5 -4
- package/src/utils/gen.ts +1 -1
- package/src/utils/logger.ts +2 -2
- package/src/utils.ts +26 -4
- package/test/dist/moreStrings.test.d.ts.map +1 -0
- 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/moreStrings.test.ts +17 -0
- package/test/rpc.test.ts +28 -6
- package/test/schema.test.ts +397 -4
- package/test/secretURL.test.ts +157 -0
- package/test/special.test.ts +732 -0
- package/test/utils.test.ts +2 -2
- package/tsconfig.base.json +0 -1
- package/tsconfig.json +0 -1
- package/dist/ServiceMap.d.ts +0 -44
- package/dist/ServiceMap.d.ts.map +0 -1
- package/dist/ServiceMap.js +0 -91
- package/dist/Struct.d.ts +0 -44
- package/dist/Struct.d.ts.map +0 -1
- package/dist/Struct.js +0 -29
- package/src/Struct.ts +0 -54
package/dist/Schema/ext.d.ts
CHANGED
|
@@ -1,84 +1,140 @@
|
|
|
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
|
+
/**
|
|
8
|
+
* Schema type for {@link DateFromString}.
|
|
9
|
+
*
|
|
10
|
+
* @category Schemas
|
|
11
|
+
* @since 4.0.0
|
|
12
|
+
*/
|
|
13
|
+
export interface DateFromString extends S.decodeTo<S.Date, S.String> {
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A transformation schema that parses an ISO 8601 string into a `Date`.
|
|
17
|
+
*
|
|
18
|
+
* Decoding:
|
|
19
|
+
* - A `string` is decoded as a `Date`.
|
|
20
|
+
*
|
|
21
|
+
* Encoding:
|
|
22
|
+
* - A `Date` is encoded as a `string`.
|
|
23
|
+
*
|
|
24
|
+
* @since 4.0.0
|
|
25
|
+
*/
|
|
26
|
+
export declare const DateFromString: DateFromString;
|
|
6
27
|
/**
|
|
7
28
|
* Like the default Schema `Date` but from String with `withDefault` => now
|
|
8
29
|
*/
|
|
9
|
-
export declare const Date:
|
|
10
|
-
withDefault:
|
|
30
|
+
export declare const Date: DateFromString & {
|
|
31
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
32
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Like the default Schema `DateValid` but from String with `withDefault` => now
|
|
36
|
+
*/
|
|
37
|
+
export declare const DateValid: S.decodeTo<S.Date, S.String, never, never> & {
|
|
38
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
39
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
11
40
|
};
|
|
12
41
|
/**
|
|
13
42
|
* Like the default Schema `Boolean` but with `withDefault` => false
|
|
14
43
|
*/
|
|
15
|
-
export declare const Boolean:
|
|
16
|
-
withDefault:
|
|
44
|
+
export declare const Boolean: S.Boolean & {
|
|
45
|
+
withDefault: S.withConstructorDefault<S.Boolean>;
|
|
46
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Boolean>;
|
|
17
47
|
};
|
|
18
48
|
/**
|
|
49
|
+
* You probably want to use `Finite` instead of this.
|
|
19
50
|
* Like the default Schema `Number` but with `withDefault` => 0
|
|
20
51
|
*/
|
|
21
|
-
export declare const Number:
|
|
22
|
-
withDefault:
|
|
52
|
+
export declare const Number: S.Number & {
|
|
53
|
+
withDefault: S.withConstructorDefault<S.Number>;
|
|
54
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Number>;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Like the default Schema `Finite` but with `withDefault` => 0
|
|
58
|
+
*/
|
|
59
|
+
export declare const Finite: S.Finite & {
|
|
60
|
+
withDefault: S.withConstructorDefault<S.Finite>;
|
|
61
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Finite>;
|
|
23
62
|
};
|
|
24
63
|
/**
|
|
25
|
-
* Like the default Schema `
|
|
64
|
+
* Like the default Schema `Literals` but with `withDefault` => literals[0]
|
|
26
65
|
*/
|
|
27
|
-
export declare const
|
|
28
|
-
changeDefault: <A extends Literals[number]>(a: A) =>
|
|
66
|
+
export declare const Literals: <const Literals extends NonEmptyReadonlyArray<AST.LiteralValue>>(literals: Literals) => S.Literals<Literals> & {
|
|
67
|
+
changeDefault: <A extends Literals[number]>(a: A) => S.Literals<Literals> & {
|
|
29
68
|
Default: A;
|
|
30
|
-
withDefault:
|
|
69
|
+
withDefault: S.withConstructorDefault<S.Literals<Literals>>;
|
|
70
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Literals<Literals>>;
|
|
31
71
|
};
|
|
32
72
|
Default: (typeof literals)[0];
|
|
33
|
-
withDefault:
|
|
73
|
+
withDefault: S.withConstructorDefault<S.Literals<Literals>>;
|
|
74
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Literals<Literals>>;
|
|
34
75
|
};
|
|
35
76
|
/**
|
|
36
77
|
* Like the default Schema `Array` but with `withDefault` => []
|
|
37
78
|
*/
|
|
38
|
-
export declare function Array<
|
|
39
|
-
withDefault:
|
|
79
|
+
export declare function Array<ValueSchema extends S.Top>(value: ValueSchema): S.$Array<ValueSchema> & {
|
|
80
|
+
withDefault: S.withConstructorDefault<S.$Array<ValueSchema>>;
|
|
81
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.$Array<ValueSchema>>;
|
|
40
82
|
};
|
|
41
83
|
/**
|
|
42
|
-
*
|
|
84
|
+
* An annotated `S.Array` of unique items that decodes to a `ReadonlySet`.
|
|
43
85
|
*/
|
|
44
|
-
declare
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
86
|
+
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>;
|
|
87
|
+
/**
|
|
88
|
+
* An annotated `S.Array` of key-value tuples that decodes to a `ReadonlyMap`.
|
|
89
|
+
*/
|
|
90
|
+
export declare const ReadonlyMapFromArray: <KeySchema extends S.Top, ValueSchema extends S.Top>(pair: {
|
|
91
|
+
readonly key: KeySchema;
|
|
92
|
+
readonly value: ValueSchema;
|
|
93
|
+
}) => 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>;
|
|
51
94
|
/**
|
|
52
|
-
* Like the default Schema `ReadonlySet` but with `withDefault` => new Set()
|
|
95
|
+
* Like the default Schema `ReadonlySet` but from Array with `withDefault` => new Set()
|
|
53
96
|
*/
|
|
54
|
-
export declare const ReadonlySet: <
|
|
55
|
-
withDefault:
|
|
97
|
+
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> & {
|
|
98
|
+
withDefault: S.withConstructorDefault<S.decodeTo<S.instanceOf<ReadonlySet<S.Schema.Type<ValueSchema>>, ReadonlySet<S.Schema.Type<ValueSchema>>>, S.$Array<ValueSchema>, never, never>>;
|
|
99
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.decodeTo<S.instanceOf<ReadonlySet<S.Schema.Type<ValueSchema>>, ReadonlySet<S.Schema.Type<ValueSchema>>>, S.$Array<ValueSchema>, never, never>>;
|
|
56
100
|
};
|
|
57
101
|
/**
|
|
58
|
-
* Like the default Schema `ReadonlyMap` but with `withDefault` => new Map()
|
|
102
|
+
* Like the default Schema `ReadonlyMap` but from Array with `withDefault` => new Map()
|
|
59
103
|
*/
|
|
60
|
-
export declare const ReadonlyMap: <
|
|
61
|
-
readonly key:
|
|
62
|
-
readonly value:
|
|
63
|
-
}) => Schema
|
|
64
|
-
withDefault:
|
|
104
|
+
export declare const ReadonlyMap: <KeySchema extends S.Top, ValueSchema extends S.Top>(pair: {
|
|
105
|
+
readonly key: KeySchema;
|
|
106
|
+
readonly value: ValueSchema;
|
|
107
|
+
}) => 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> & {
|
|
108
|
+
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>>;
|
|
109
|
+
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
110
|
};
|
|
66
111
|
/**
|
|
67
112
|
* Like the default Schema `NullOr` but with `withDefault` => null
|
|
68
113
|
*/
|
|
69
|
-
export declare const NullOr: <
|
|
70
|
-
withDefault:
|
|
114
|
+
export declare const NullOr: <Schema extends S.Top>(self: Schema) => S.NullOr<Schema> & {
|
|
115
|
+
withDefault: S.withConstructorDefault<S.NullOr<Schema>>;
|
|
116
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.NullOr<Schema>>;
|
|
71
117
|
};
|
|
72
|
-
export declare const defaultDate:
|
|
73
|
-
export declare const defaultBool:
|
|
74
|
-
export declare const defaultNullable:
|
|
75
|
-
export declare const defaultArray:
|
|
76
|
-
export declare const defaultMap:
|
|
77
|
-
export declare const defaultSet:
|
|
118
|
+
export declare const defaultDate: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
119
|
+
export declare const defaultBool: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
120
|
+
export declare const defaultNullable: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
121
|
+
export declare const defaultArray: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
122
|
+
export declare const defaultMap: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
123
|
+
export declare const defaultSet: <Schema extends S.Top & S.WithoutConstructorDefault>(schema: Schema) => S.withConstructorDefault<Schema>;
|
|
78
124
|
export declare const withDefaultMake: <Self extends S.Top>(s: Self) => WithDefaults<Self> & Self;
|
|
79
125
|
export type WithDefaults<Self extends S.Top> = (i: Self["Encoded"], options?: SchemaAST.ParseOptions) => Self["Type"];
|
|
80
|
-
export declare const inputDate:
|
|
81
|
-
withDefault:
|
|
126
|
+
export declare const inputDate: S.Union<readonly [S.DateValid, DateFromString & {
|
|
127
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
128
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
129
|
+
}]> & {
|
|
130
|
+
withDefault: S.withConstructorDefault<S.Union<readonly [S.DateValid, DateFromString & {
|
|
131
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
132
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
133
|
+
}]>>;
|
|
134
|
+
withDecodingDefaultType: S.withDecodingDefaultType<S.Union<readonly [S.DateValid, DateFromString & {
|
|
135
|
+
withDefault: S.withConstructorDefault<DateFromString>;
|
|
136
|
+
withDecodingDefaultType: S.withDecodingDefaultType<DateFromString>;
|
|
137
|
+
}]>>;
|
|
82
138
|
};
|
|
83
139
|
export interface UnionBrand {
|
|
84
140
|
}
|
|
@@ -89,9 +145,10 @@ export declare function makeExactOptional<NER extends S.Struct.Fields>(t: NER):
|
|
|
89
145
|
[K in keyof NER]: NER[K] extends S.Top ? ReturnType<typeof S.optionalKey<NER[K] & S.Top>> : any;
|
|
90
146
|
};
|
|
91
147
|
/** 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"]) =>
|
|
148
|
+
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
149
|
/** 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: <Self extends S.Top, R>(self: Self, context:
|
|
96
|
-
export declare const contextFromServices: <Self extends S.Top, Tags extends
|
|
150
|
+
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>;
|
|
151
|
+
export declare const provide: <Self extends S.Top, R>(self: Self, context: Context.Context<R>) => ProvidedCodec<Self, R>;
|
|
152
|
+
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]>>;
|
|
153
|
+
export {};
|
|
97
154
|
//# 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,EAAgB,
|
|
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,143 @@
|
|
|
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, 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
|
-
// TODO: v4 migration — withConstructorDefault signature changed, propertySignature removed
|
|
7
|
-
// Constraint relaxed from `Self extends S.Top & S.WithoutConstructorDefault` to `Self extends S.Top`
|
|
8
|
-
// because `.pipe()` widens the schema type to `Top` which doesn't satisfy `WithoutConstructorDefault`.
|
|
9
|
-
// The narrowing assertions below are safe — we're asserting "this schema hasn't had a default applied yet".
|
|
10
|
-
export const withDefaultConstructor = (makeDefault) => (self) => {
|
|
11
|
-
return S.withConstructorDefault(() => Option.some(makeDefault()))(self);
|
|
12
|
-
};
|
|
13
8
|
// TODO: v4 migration - Date is no longer by default encoded to string.
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
9
|
+
const DateString = S.String.annotate({
|
|
10
|
+
identifier: "Date",
|
|
11
|
+
description: "a string in ISO 8601 format that will be decoded as a Date",
|
|
12
|
+
format: "date-time"
|
|
13
|
+
});
|
|
14
|
+
/**
|
|
15
|
+
* A transformation schema that parses an ISO 8601 string into a `Date`.
|
|
16
|
+
*
|
|
17
|
+
* Decoding:
|
|
18
|
+
* - A `string` is decoded as a `Date`.
|
|
19
|
+
*
|
|
20
|
+
* Encoding:
|
|
21
|
+
* - A `Date` is encoded as a `string`.
|
|
22
|
+
*
|
|
23
|
+
* @since 4.0.0
|
|
24
|
+
*/
|
|
25
|
+
export const DateFromString = DateString.pipe(S.decodeTo(S.Date, SchemaTransformation.dateFromString));
|
|
18
26
|
/**
|
|
19
27
|
* Like the default Schema `Date` but from String with `withDefault` => now
|
|
20
28
|
*/
|
|
21
29
|
export const Date = Object.assign(DateFromString, {
|
|
22
|
-
withDefault: DateFromString.pipe(
|
|
30
|
+
withDefault: DateFromString.pipe(S.withConstructorDefault(Effect.sync(() => new global.Date()))),
|
|
31
|
+
withDecodingDefaultType: DateFromString.pipe(S.withDecodingDefaultType(Effect.sync(() => new global.Date())))
|
|
32
|
+
});
|
|
33
|
+
/**
|
|
34
|
+
* Like the default Schema `DateValid` but from String with `withDefault` => now
|
|
35
|
+
*/
|
|
36
|
+
export const DateValid = Object.assign(Date.check(isDateValid()), {
|
|
37
|
+
withDefault: DateFromString.pipe(S.withConstructorDefault(Effect.sync(() => new global.Date()))),
|
|
38
|
+
withDecodingDefaultType: DateFromString.pipe(S.withDecodingDefaultType(Effect.sync(() => new global.Date())))
|
|
23
39
|
});
|
|
24
40
|
/**
|
|
25
41
|
* Like the default Schema `Boolean` but with `withDefault` => false
|
|
26
42
|
*/
|
|
27
43
|
export const Boolean = Object.assign(S.Boolean, {
|
|
28
|
-
withDefault: S.Boolean.pipe(
|
|
44
|
+
withDefault: S.Boolean.pipe(S.withConstructorDefault(Effect.succeed(false))),
|
|
45
|
+
withDecodingDefaultType: S.Boolean.pipe(S.withDecodingDefaultType(Effect.succeed(false)))
|
|
29
46
|
});
|
|
30
47
|
/**
|
|
48
|
+
* You probably want to use `Finite` instead of this.
|
|
31
49
|
* Like the default Schema `Number` but with `withDefault` => 0
|
|
32
50
|
*/
|
|
33
|
-
export const Number = Object.assign(S.Number, {
|
|
51
|
+
export const Number = Object.assign(S.Number, {
|
|
52
|
+
withDefault: S.Number.pipe(S.withConstructorDefault(Effect.succeed(0))),
|
|
53
|
+
withDecodingDefaultType: S.Number.pipe(S.withDecodingDefaultType(Effect.succeed(0)))
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* Like the default Schema `Finite` but with `withDefault` => 0
|
|
57
|
+
*/
|
|
58
|
+
export const Finite = Object.assign(S.Finite, {
|
|
59
|
+
withDefault: S.Finite.pipe(S.withConstructorDefault(Effect.succeed(0))),
|
|
60
|
+
withDecodingDefaultType: S.Finite.pipe(S.withDecodingDefaultType(Effect.succeed(0)))
|
|
61
|
+
});
|
|
34
62
|
/**
|
|
35
|
-
* Like the default Schema `
|
|
63
|
+
* Like the default Schema `Literals` but with `withDefault` => literals[0]
|
|
36
64
|
*/
|
|
37
|
-
export const
|
|
65
|
+
export const Literals = (literals) => pipe(S.Literals(literals), (s) => Object.assign(s, {
|
|
38
66
|
changeDefault: (a) => {
|
|
39
67
|
return Object.assign(S.Literals(literals), {
|
|
40
68
|
Default: a,
|
|
41
|
-
withDefault: s.pipe(
|
|
69
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.succeed(a))),
|
|
70
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.succeed(a)))
|
|
42
71
|
}); // todo: copy annotations from original?
|
|
43
72
|
},
|
|
44
73
|
Default: literals[0],
|
|
45
|
-
withDefault: s.pipe(
|
|
74
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.succeed(literals[0]))),
|
|
75
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.succeed(literals[0])))
|
|
46
76
|
}));
|
|
47
77
|
/**
|
|
48
78
|
* Like the default Schema `Array` but with `withDefault` => []
|
|
49
79
|
*/
|
|
50
80
|
export function Array(value) {
|
|
51
|
-
return pipe(S.Array(value), (s) => Object.assign(s, {
|
|
81
|
+
return pipe(S.Array(value), (s) => Object.assign(s, {
|
|
82
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => []))),
|
|
83
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => [])))
|
|
84
|
+
}));
|
|
52
85
|
}
|
|
53
86
|
/**
|
|
54
|
-
*
|
|
87
|
+
* An annotated `S.Array` of unique items that decodes to a `ReadonlySet`.
|
|
55
88
|
*/
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
89
|
+
export const ReadonlySetFromArray = (value) => {
|
|
90
|
+
const from = S
|
|
91
|
+
.Array(value)
|
|
92
|
+
.annotate({ expected: "an array of unique items that will be decoded as a ReadonlySet" });
|
|
93
|
+
const to = S.instanceOf(Set);
|
|
94
|
+
const schema = from.pipe(S.decodeTo(to, SchemaTransformation.transform({
|
|
95
|
+
decode: (arr) => new Set(arr),
|
|
96
|
+
encode: (set) => [...set]
|
|
97
|
+
})));
|
|
98
|
+
return schema;
|
|
99
|
+
};
|
|
60
100
|
/**
|
|
61
|
-
*
|
|
101
|
+
* An annotated `S.Array` of key-value tuples that decodes to a `ReadonlyMap`.
|
|
62
102
|
*/
|
|
63
|
-
export const
|
|
103
|
+
export const ReadonlyMapFromArray = (pair) => {
|
|
104
|
+
const from = S
|
|
105
|
+
.Array(S.Tuple([pair.key, pair.value]))
|
|
106
|
+
.annotate({ expected: "an array of key-value tuples that will be decoded as a ReadonlyMap" });
|
|
107
|
+
const to = S.instanceOf(Map);
|
|
108
|
+
const schema = from.pipe(S.decodeTo(to, SchemaTransformation.transform({
|
|
109
|
+
decode: (arr) => new Map(arr),
|
|
110
|
+
encode: (map) => [...map.entries()] // fu
|
|
111
|
+
})));
|
|
112
|
+
return schema;
|
|
113
|
+
};
|
|
64
114
|
/**
|
|
65
|
-
* Like the default Schema `
|
|
115
|
+
* Like the default Schema `ReadonlySet` but from Array with `withDefault` => new Set()
|
|
66
116
|
*/
|
|
67
|
-
export const
|
|
117
|
+
export const ReadonlySet = (value) => pipe(ReadonlySetFromArray(value), (s) => Object.assign(s, {
|
|
118
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => new Set()))),
|
|
119
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => new Set())))
|
|
120
|
+
}));
|
|
121
|
+
/**
|
|
122
|
+
* Like the default Schema `ReadonlyMap` but from Array with `withDefault` => new Map()
|
|
123
|
+
*/
|
|
124
|
+
export const ReadonlyMap = (pair) => pipe(ReadonlyMapFromArray(pair), (s) => Object.assign(s, {
|
|
125
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => new Map()))),
|
|
126
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => new Map())))
|
|
127
|
+
}));
|
|
68
128
|
/**
|
|
69
129
|
* Like the default Schema `NullOr` but with `withDefault` => null
|
|
70
130
|
*/
|
|
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
|
|
131
|
+
export const NullOr = (self) => pipe(S.NullOr(self), (s) => Object.assign(s, {
|
|
132
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.succeed(null))),
|
|
133
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.succeed(null)))
|
|
134
|
+
}));
|
|
135
|
+
export const defaultDate = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => new global.Date())));
|
|
136
|
+
export const defaultBool = (schema) => schema.pipe(S.withConstructorDefault(Effect.succeed(false)));
|
|
137
|
+
export const defaultNullable = (schema) => schema.pipe(S.withConstructorDefault(Effect.succeed(null)));
|
|
138
|
+
export const defaultArray = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => [])));
|
|
139
|
+
export const defaultMap = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => new Map())));
|
|
140
|
+
export const defaultSet = (schema) => schema.pipe(S.withConstructorDefault(Effect.sync(() => new Set())));
|
|
78
141
|
export const withDefaultMake = (s) => {
|
|
79
142
|
const a = Object.assign(S.decodeSync(s), s);
|
|
80
143
|
Object.setPrototypeOf(a, s);
|
|
@@ -93,7 +156,10 @@ export const withDefaultMake = (s) => {
|
|
|
93
156
|
// }[keyof P[B.BrandTypeId]]
|
|
94
157
|
// export type UnionToIntersection3<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I
|
|
95
158
|
// : never
|
|
96
|
-
export const inputDate = extendM(S.Union([S.DateValid,
|
|
159
|
+
export const inputDate = extendM(S.Union([S.DateValid, Date]), (s) => ({
|
|
160
|
+
withDefault: s.pipe(S.withConstructorDefault(Effect.sync(() => new globalThis.Date()))),
|
|
161
|
+
withDecodingDefaultType: s.pipe(S.withDecodingDefaultType(Effect.sync(() => new globalThis.Date())))
|
|
162
|
+
}));
|
|
97
163
|
// TODO: v4 migration — makeOpt used internal PropertySignature types that are removed in v4
|
|
98
164
|
// Simplified to use v4's S.optional / S.optionalKey directly
|
|
99
165
|
export function makeOptional(t) {
|
|
@@ -115,22 +181,15 @@ export const transformTo = (from, to, decode) => from.pipe(S.decodeTo(to, Schema
|
|
|
115
181
|
})));
|
|
116
182
|
/** A version of transformOrFail which is only a one way mapping of From->To */
|
|
117
183
|
export const transformToOrFail = (from, to, decode) => from.pipe(S.decodeTo(to, SchemaTransformation.transformOrFail({
|
|
118
|
-
decode
|
|
184
|
+
decode,
|
|
119
185
|
encode: (i) => Effect.fail(new SchemaIssue.Forbidden(Option.some(i), { message: "One way schema transformation, encoding is not allowed" }))
|
|
120
186
|
})));
|
|
121
|
-
// TODO: v4 migration — S.declare API changed (no [self] + decode/encode pattern)
|
|
122
|
-
// Need to find v4 equivalent for contextual schema wrapping
|
|
123
187
|
export const provide = (self, context) => {
|
|
124
188
|
const prov = Effect.provide(context);
|
|
125
|
-
return S
|
|
126
|
-
.declare((_u) => true) // placeholder — needs proper v4 declare
|
|
127
|
-
.pipe(S.decodeTo(self, SchemaTransformation.transformOrFail({
|
|
128
|
-
decode: (n) => prov(SchemaParser.decodeUnknownEffect(self)(n)),
|
|
129
|
-
encode: (n) => prov(SchemaParser.encodeUnknownEffect(self)(n))
|
|
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");
|
|
189
|
+
return self.pipe(S.middlewareDecoding((effect) => prov(effect)), S.middlewareEncoding((effect) => prov(effect)));
|
|
135
190
|
};
|
|
136
|
-
|
|
191
|
+
export const contextFromServices = (self, ...services) => Effect.gen(function* () {
|
|
192
|
+
const context = Context.pick(...services)(yield* Effect.context());
|
|
193
|
+
return provide(self, context);
|
|
194
|
+
});
|
|
195
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1NjaGVtYS9leHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELHdEQUF3RDtBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWtCLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUNoRyxPQUFPLEtBQUssQ0FBQyxNQUFNLGVBQWUsQ0FBQTtBQUNsQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRTNDLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBVWxELHVFQUF1RTtBQUV2RSxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztJQUNuQyxVQUFVLEVBQUUsTUFBTTtJQUNsQixXQUFXLEVBQUUsNERBQTREO0lBQ3pFLE1BQU0sRUFBRSxXQUFXO0NBQ3BCLENBQUMsQ0FBQTtBQVVGOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQW1CLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUE7QUFFdEg7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUU7SUFDaEQsV0FBVyxFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLHVCQUF1QixFQUFFLGNBQWMsQ0FBQyxJ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
|
|
@@ -15,7 +15,7 @@ export type NonEmptyString50 = string & NonEmptyString50Brand;
|
|
|
15
15
|
/**
|
|
16
16
|
* A string that is at least 1 character long and a maximum of 50.
|
|
17
17
|
*/
|
|
18
|
-
export declare const NonEmptyString50: WithDefaults<S.brand<S.
|
|
18
|
+
export declare const NonEmptyString50: WithDefaults<S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100">> & S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100">;
|
|
19
19
|
/**
|
|
20
20
|
* A string that is at least 1 character long and a maximum of 64.
|
|
21
21
|
*/
|
|
@@ -28,7 +28,7 @@ export type NonEmptyString64 = string & NonEmptyString64Brand;
|
|
|
28
28
|
/**
|
|
29
29
|
* A string that is at least 1 character long and a maximum of 64.
|
|
30
30
|
*/
|
|
31
|
-
export declare const NonEmptyString64: WithDefaults<S.brand<S.
|
|
31
|
+
export declare const NonEmptyString64: WithDefaults<S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100">> & S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100">;
|
|
32
32
|
/**
|
|
33
33
|
* A string that is at least 1 character long and a maximum of 80.
|
|
34
34
|
*/
|
|
@@ -41,7 +41,7 @@ export type NonEmptyString80 = string & NonEmptyString80Brand;
|
|
|
41
41
|
/**
|
|
42
42
|
* A string that is at least 1 character long and a maximum of 80.
|
|
43
43
|
*/
|
|
44
|
-
export declare const NonEmptyString80: WithDefaults<S.brand<S.
|
|
44
|
+
export declare const NonEmptyString80: WithDefaults<S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString80" | "NonEmptyString100">> & S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString80" | "NonEmptyString100">;
|
|
45
45
|
/**
|
|
46
46
|
* A string that is at least 1 character long and a maximum of 100.
|
|
47
47
|
*/
|
|
@@ -54,7 +54,7 @@ export type NonEmptyString100 = string & NonEmptyString100Brand;
|
|
|
54
54
|
/**
|
|
55
55
|
* A string that is at least 1 character long and a maximum of 100.
|
|
56
56
|
*/
|
|
57
|
-
export declare const NonEmptyString100: WithDefaults<S.brand<S.
|
|
57
|
+
export declare const NonEmptyString100: WithDefaults<S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString100">> & S.brand<S.NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString100">;
|
|
58
58
|
/**
|
|
59
59
|
* A string that is at least 3 character long and a maximum of 255.
|
|
60
60
|
*/
|
|
@@ -82,12 +82,24 @@ export type StringId = string & StringIdBrand;
|
|
|
82
82
|
*/
|
|
83
83
|
export declare const StringId: WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
|
|
84
84
|
make: () => StringId;
|
|
85
|
-
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"
|
|
85
|
+
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
|
|
86
86
|
}> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
|
|
87
87
|
make: () => StringId;
|
|
88
|
-
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"
|
|
88
|
+
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
|
|
89
89
|
};
|
|
90
|
-
export declare function prefixedStringId<Brand extends StringId>(): <Prefix extends string, Separator extends string = "-">(prefix: Prefix, name: string, separator?: Separator) => WithDefaults<S.
|
|
90
|
+
export declare function prefixedStringId<Brand extends StringId>(): <Prefix extends string, Separator extends string = "-">(prefix: Prefix, name: string, separator?: Separator) => WithDefaults<S.refine<string & Brand, WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
|
|
91
|
+
make: () => StringId;
|
|
92
|
+
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
|
|
93
|
+
}> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
|
|
94
|
+
make: () => StringId;
|
|
95
|
+
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
|
|
96
|
+
}>> & S.refine<string & Brand, WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
|
|
97
|
+
make: () => StringId;
|
|
98
|
+
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
|
|
99
|
+
}> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
|
|
100
|
+
make: () => StringId;
|
|
101
|
+
withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
|
|
102
|
+
}> & PrefixedStringUtils<Brand, Prefix, Separator>;
|
|
91
103
|
export declare const brandedStringId: <Brand extends StringIdBrand>() => WithDefaults<S.Codec<string & Brand, string, never, never> & {
|
|
92
104
|
make: () => string & Brand;
|
|
93
105
|
withDefault: S.withConstructorDefault<S.Codec<string & Brand, string> & S.WithoutConstructorDefault>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moreStrings.d.ts","sourceRoot":"","sources":["../../src/Schema/moreStrings.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,CAAC,MAAM,eAAe,CAAA;AAClC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAI5C,OAAO,
|
|
1
|
+
{"version":3,"file":"moreStrings.d.ts","sourceRoot":"","sources":["../../src/Schema/moreStrings.ts"],"names":[],"mappings":"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"}
|