@sinclair/typebox 0.32.0-dev-20 → 0.32.0-dev-22
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/build/import/compiler/compiler.mjs +62 -62
- package/build/import/errors/errors.mjs +62 -62
- package/build/import/index.d.mts +6 -6
- package/build/import/index.mjs +1 -1
- package/build/import/type/awaited/awaited.d.mts +4 -6
- package/build/import/type/awaited/awaited.mjs +3 -3
- package/build/import/type/composite/composite.d.mts +8 -8
- package/build/import/type/const/const.d.mts +4 -7
- package/build/import/type/constructor/constructor.d.mts +4 -4
- package/build/import/type/deref/deref.d.mts +2 -2
- package/build/import/type/deref/deref.mjs +26 -36
- package/build/import/type/exclude/exclude-from-mapped-result.d.mts +4 -6
- package/build/import/type/exclude/exclude.d.mts +7 -8
- package/build/import/type/extends/extends-from-mapped-key.d.mts +5 -8
- package/build/import/type/extends/extends-from-mapped-key.mjs +3 -3
- package/build/import/type/extends/extends-from-mapped-result.d.mts +4 -6
- package/build/import/type/extends/extends.d.mts +2 -3
- package/build/import/type/extract/extract-from-mapped-result.d.mts +4 -6
- package/build/import/type/extract/extract.d.mts +8 -8
- package/build/import/type/function/function.d.mts +1 -1
- package/build/import/type/helpers/helpers.d.mts +1 -1
- package/build/import/type/index.d.mts +0 -1
- package/build/import/type/index.mjs +0 -1
- package/build/import/type/indexed/indexed-from-mapped-key.d.mts +5 -8
- package/build/import/type/indexed/indexed-from-mapped-key.mjs +3 -6
- package/build/import/type/indexed/indexed-property-keys.d.mts +5 -8
- package/build/import/type/indexed/indexed-property-keys.mjs +6 -11
- package/build/import/type/indexed/indexed.d.mts +13 -23
- package/build/import/type/indexed/indexed.mjs +13 -13
- package/build/import/type/intersect/intersect-create.mjs +0 -1
- package/build/import/type/intersect/intersect-evaluated.d.mts +7 -11
- package/build/import/type/intersect/intersect-evaluated.mjs +12 -7
- package/build/import/type/intersect/intersect-type.d.mts +2 -2
- package/build/import/type/intersect/intersect.mjs +1 -2
- package/build/import/type/intrinsic/intrinsic-from-mapped-key.d.mts +7 -9
- package/build/import/type/intrinsic/intrinsic-from-mapped-key.mjs +3 -3
- package/build/import/type/intrinsic/intrinsic.d.mts +6 -8
- package/build/import/type/intrinsic/intrinsic.mjs +8 -6
- package/build/import/type/keyof/keyof-from-mapped-result.d.mts +4 -6
- package/build/import/type/keyof/keyof-property-keys.d.mts +9 -13
- package/build/import/type/keyof/keyof-property-keys.mjs +12 -9
- package/build/import/type/keyof/keyof.d.mts +7 -8
- package/build/import/type/keyof/keyof.mjs +8 -6
- package/build/import/type/mapped/mapped.d.mts +9 -13
- package/build/import/type/mapped/mapped.mjs +9 -9
- package/build/import/type/omit/omit-from-mapped-key.d.mts +5 -8
- package/build/import/type/omit/omit-from-mapped-key.mjs +3 -3
- package/build/import/type/omit/omit.d.mts +6 -9
- package/build/import/type/omit/omit.mjs +0 -1
- package/build/import/type/operators/operators.d.mts +16 -16
- package/build/import/type/operators/operators.mjs +21 -25
- package/build/import/type/optional/optional-from-mapped-result.d.mts +4 -6
- package/build/import/type/optional/optional.d.mts +3 -7
- package/build/import/type/partial/partial-from-mapped-result.d.mts +4 -6
- package/build/import/type/partial/partial.d.mts +4 -7
- package/build/import/type/partial/partial.mjs +6 -7
- package/build/import/type/pick/pick-from-mapped-key.d.mts +5 -8
- package/build/import/type/pick/pick-from-mapped-key.mjs +3 -3
- package/build/import/type/pick/pick.d.mts +4 -4
- package/build/import/type/readonly/readonly-from-mapped-result.d.mts +4 -6
- package/build/import/type/readonly/readonly.d.mts +3 -7
- package/build/import/type/record/record.d.mts +14 -20
- package/build/import/type/record/record.mjs +2 -4
- package/build/import/type/ref/ref.mjs +3 -0
- package/build/import/type/required/required-from-mapped-result.d.mts +4 -6
- package/build/import/type/required/required.d.mts +5 -9
- package/build/import/type/required/required.mjs +6 -7
- package/build/import/type/rest/rest.d.mts +3 -3
- package/build/import/type/schema/schema.d.mts +1 -1
- package/build/import/type/static/static.d.mts +1 -1
- package/build/import/type/symbol/symbol.d.mts +1 -1
- package/build/import/type/template-literal/finite.d.mts +7 -5
- package/build/import/type/template-literal/finite.mjs +14 -5
- package/build/import/type/template-literal/generate.d.mts +14 -9
- package/build/import/type/template-literal/generate.mjs +19 -9
- package/build/import/type/template-literal/index.d.mts +1 -1
- package/build/import/type/template-literal/index.mjs +1 -1
- package/build/import/type/template-literal/{parser.mjs → parse.mjs} +7 -2
- package/build/import/type/template-literal/syntax.d.mts +3 -3
- package/build/import/type/template-literal/syntax.mjs +2 -3
- package/build/import/type/template-literal/template-literal.d.mts +2 -2
- package/build/import/type/template-literal/template-literal.mjs +1 -1
- package/build/import/type/template-literal/union.d.mts +2 -2
- package/build/import/type/template-literal/union.mjs +5 -10
- package/build/import/type/transform/transform.mjs +0 -1
- package/build/import/type/tuple/tuple.d.mts +1 -2
- package/build/import/type/type/json.d.mts +2 -2
- package/build/import/type/union/union-evaluated.d.mts +6 -10
- package/build/import/type/union/union-evaluated.mjs +7 -2
- package/build/import/value/cast/cast.mjs +20 -20
- package/build/import/value/check/check.mjs +62 -62
- package/build/import/value/clean/clean.mjs +16 -16
- package/build/import/value/convert/convert.mjs +36 -36
- package/build/import/value/create/create.mjs +66 -67
- package/build/import/value/default/default.mjs +16 -16
- package/build/import/value/transform/decode.mjs +18 -18
- package/build/import/value/transform/encode.mjs +18 -18
- package/build/import/value/transform/has.mjs +28 -28
- package/build/require/compiler/compiler.js +62 -62
- package/build/require/errors/errors.js +62 -62
- package/build/require/index.d.ts +6 -6
- package/build/require/index.js +4 -2
- package/build/require/type/awaited/awaited.d.ts +4 -6
- package/build/require/type/awaited/awaited.js +3 -3
- package/build/require/type/composite/composite.d.ts +8 -8
- package/build/require/type/const/const.d.ts +4 -7
- package/build/require/type/constructor/constructor.d.ts +4 -4
- package/build/require/type/deref/deref.d.ts +2 -2
- package/build/require/type/deref/deref.js +25 -35
- package/build/require/type/exclude/exclude-from-mapped-result.d.ts +4 -6
- package/build/require/type/exclude/exclude.d.ts +7 -8
- package/build/require/type/extends/extends-from-mapped-key.d.ts +5 -8
- package/build/require/type/extends/extends-from-mapped-key.js +3 -3
- package/build/require/type/extends/extends-from-mapped-result.d.ts +4 -6
- package/build/require/type/extends/extends.d.ts +2 -3
- package/build/require/type/extract/extract-from-mapped-result.d.ts +4 -6
- package/build/require/type/extract/extract.d.ts +8 -8
- package/build/require/type/function/function.d.ts +1 -1
- package/build/require/type/helpers/helpers.d.ts +1 -1
- package/build/require/type/index.d.ts +0 -1
- package/build/require/type/index.js +0 -1
- package/build/require/type/indexed/indexed-from-mapped-key.d.ts +5 -8
- package/build/require/type/indexed/indexed-from-mapped-key.js +3 -6
- package/build/require/type/indexed/indexed-property-keys.d.ts +5 -8
- package/build/require/type/indexed/indexed-property-keys.js +4 -9
- package/build/require/type/indexed/indexed.d.ts +13 -23
- package/build/require/type/indexed/indexed.js +13 -13
- package/build/require/type/intersect/intersect-create.js +0 -1
- package/build/require/type/intersect/intersect-evaluated.d.ts +7 -11
- package/build/require/type/intersect/intersect-evaluated.js +9 -4
- package/build/require/type/intersect/intersect-type.d.ts +2 -2
- package/build/require/type/intersect/intersect.js +0 -1
- package/build/require/type/intrinsic/intrinsic-from-mapped-key.d.ts +7 -9
- package/build/require/type/intrinsic/intrinsic-from-mapped-key.js +3 -3
- package/build/require/type/intrinsic/intrinsic.d.ts +6 -8
- package/build/require/type/intrinsic/intrinsic.js +7 -5
- package/build/require/type/keyof/keyof-from-mapped-result.d.ts +4 -6
- package/build/require/type/keyof/keyof-property-keys.d.ts +9 -13
- package/build/require/type/keyof/keyof-property-keys.js +12 -9
- package/build/require/type/keyof/keyof.d.ts +7 -8
- package/build/require/type/keyof/keyof.js +8 -6
- package/build/require/type/mapped/mapped.d.ts +9 -13
- package/build/require/type/mapped/mapped.js +9 -9
- package/build/require/type/omit/omit-from-mapped-key.d.ts +5 -8
- package/build/require/type/omit/omit-from-mapped-key.js +3 -3
- package/build/require/type/omit/omit.d.ts +6 -9
- package/build/require/type/omit/omit.js +0 -1
- package/build/require/type/operators/operators.d.ts +16 -16
- package/build/require/type/operators/operators.js +21 -25
- package/build/require/type/optional/optional-from-mapped-result.d.ts +4 -6
- package/build/require/type/optional/optional.d.ts +3 -7
- package/build/require/type/partial/partial-from-mapped-result.d.ts +4 -6
- package/build/require/type/partial/partial.d.ts +4 -7
- package/build/require/type/partial/partial.js +6 -7
- package/build/require/type/pick/pick-from-mapped-key.d.ts +5 -8
- package/build/require/type/pick/pick-from-mapped-key.js +3 -3
- package/build/require/type/pick/pick.d.ts +4 -4
- package/build/require/type/readonly/readonly-from-mapped-result.d.ts +4 -6
- package/build/require/type/readonly/readonly.d.ts +3 -7
- package/build/require/type/record/record.d.ts +14 -20
- package/build/require/type/record/record.js +1 -3
- package/build/require/type/ref/ref.js +3 -0
- package/build/require/type/required/required-from-mapped-result.d.ts +4 -6
- package/build/require/type/required/required.d.ts +5 -9
- package/build/require/type/required/required.js +6 -7
- package/build/require/type/rest/rest.d.ts +3 -3
- package/build/require/type/schema/schema.d.ts +1 -1
- package/build/require/type/static/static.d.ts +1 -1
- package/build/require/type/symbol/symbol.d.ts +1 -1
- package/build/require/type/template-literal/finite.d.ts +7 -5
- package/build/require/type/template-literal/finite.js +16 -6
- package/build/require/type/template-literal/generate.d.ts +14 -9
- package/build/require/type/template-literal/generate.js +22 -11
- package/build/require/type/template-literal/index.d.ts +1 -1
- package/build/require/type/template-literal/index.js +1 -1
- package/build/require/type/template-literal/{parser.js → parse.js} +7 -2
- package/build/require/type/template-literal/syntax.d.ts +3 -3
- package/build/require/type/template-literal/syntax.js +1 -2
- package/build/require/type/template-literal/template-literal.d.ts +2 -2
- package/build/require/type/template-literal/template-literal.js +1 -1
- package/build/require/type/template-literal/union.d.ts +2 -2
- package/build/require/type/template-literal/union.js +5 -10
- package/build/require/type/transform/transform.js +0 -1
- package/build/require/type/tuple/tuple.d.ts +1 -2
- package/build/require/type/type/json.d.ts +2 -2
- package/build/require/type/union/union-evaluated.d.ts +6 -10
- package/build/require/type/union/union-evaluated.js +7 -2
- package/build/require/value/cast/cast.js +20 -20
- package/build/require/value/check/check.js +62 -62
- package/build/require/value/clean/clean.js +16 -16
- package/build/require/value/convert/convert.js +36 -36
- package/build/require/value/create/create.js +65 -66
- package/build/require/value/default/default.js +16 -16
- package/build/require/value/transform/decode.js +18 -18
- package/build/require/value/transform/encode.js +18 -18
- package/build/require/value/transform/has.js +28 -28
- package/package.json +1 -1
- package/readme.md +47 -47
- package/build/import/type/modifiers/index.d.mts +0 -1
- package/build/import/type/modifiers/index.mjs +0 -1
- package/build/import/type/modifiers/modifiers.d.mts +0 -18
- package/build/import/type/modifiers/modifiers.mjs +0 -50
- package/build/require/type/modifiers/index.d.ts +0 -1
- package/build/require/type/modifiers/index.js +0 -18
- package/build/require/type/modifiers/modifiers.d.ts +0 -18
- package/build/require/type/modifiers/modifiers.js +0 -56
- /package/build/import/type/template-literal/{parser.d.mts → parse.d.mts} +0 -0
- /package/build/require/type/template-literal/{parser.d.ts → parse.d.ts} +0 -0
|
@@ -126,42 +126,42 @@ function Default(value) {
|
|
|
126
126
|
// ------------------------------------------------------------------
|
|
127
127
|
// Convert
|
|
128
128
|
// ------------------------------------------------------------------
|
|
129
|
-
function
|
|
129
|
+
function FromArray(schema, references, value) {
|
|
130
130
|
if ((0, index_6.IsArray)(value)) {
|
|
131
131
|
return value.map((value) => Visit(schema.items, references, value));
|
|
132
132
|
}
|
|
133
133
|
return value;
|
|
134
134
|
}
|
|
135
|
-
function
|
|
135
|
+
function FromBigInt(schema, references, value) {
|
|
136
136
|
return TryConvertBigInt(value);
|
|
137
137
|
}
|
|
138
|
-
function
|
|
138
|
+
function FromBoolean(schema, references, value) {
|
|
139
139
|
return TryConvertBoolean(value);
|
|
140
140
|
}
|
|
141
|
-
function
|
|
141
|
+
function FromDate(schema, references, value) {
|
|
142
142
|
return TryConvertDate(value);
|
|
143
143
|
}
|
|
144
|
-
function
|
|
144
|
+
function FromInteger(schema, references, value) {
|
|
145
145
|
return TryConvertInteger(value);
|
|
146
146
|
}
|
|
147
147
|
// prettier-ignore
|
|
148
|
-
function
|
|
148
|
+
function FromIntersect(schema, references, value) {
|
|
149
149
|
const allObjects = schema.allOf.every(schema => (0, type_1.IsObject)(schema));
|
|
150
150
|
if (allObjects)
|
|
151
151
|
return Visit((0, index_5.Composite)(schema.allOf), references, value);
|
|
152
152
|
return Visit(schema.allOf[0], references, value); // todo: fix this
|
|
153
153
|
}
|
|
154
|
-
function
|
|
154
|
+
function FromLiteral(schema, references, value) {
|
|
155
155
|
return TryConvertLiteral(schema, value);
|
|
156
156
|
}
|
|
157
|
-
function
|
|
157
|
+
function FromNull(schema, references, value) {
|
|
158
158
|
return TryConvertNull(value);
|
|
159
159
|
}
|
|
160
|
-
function
|
|
160
|
+
function FromNumber(schema, references, value) {
|
|
161
161
|
return TryConvertNumber(value);
|
|
162
162
|
}
|
|
163
163
|
// prettier-ignore
|
|
164
|
-
function
|
|
164
|
+
function FromObject(schema, references, value) {
|
|
165
165
|
const isConvertable = (0, index_6.IsObject)(value);
|
|
166
166
|
if (!isConvertable)
|
|
167
167
|
return value;
|
|
@@ -171,7 +171,7 @@ function TObject(schema, references, value) {
|
|
|
171
171
|
: ({ ...value });
|
|
172
172
|
}, value);
|
|
173
173
|
}
|
|
174
|
-
function
|
|
174
|
+
function FromRecord(schema, references, value) {
|
|
175
175
|
const propertyKey = Object.getOwnPropertyNames(schema.patternProperties)[0];
|
|
176
176
|
const property = schema.patternProperties[propertyKey];
|
|
177
177
|
const result = {};
|
|
@@ -180,20 +180,20 @@ function TRecord(schema, references, value) {
|
|
|
180
180
|
}
|
|
181
181
|
return result;
|
|
182
182
|
}
|
|
183
|
-
function
|
|
183
|
+
function FromRef(schema, references, value) {
|
|
184
184
|
return Visit((0, index_3.Deref)(schema, references), references, value);
|
|
185
185
|
}
|
|
186
|
-
function
|
|
186
|
+
function FromString(schema, references, value) {
|
|
187
187
|
return TryConvertString(value);
|
|
188
188
|
}
|
|
189
|
-
function
|
|
189
|
+
function FromSymbol(schema, references, value) {
|
|
190
190
|
return (0, index_6.IsString)(value) || (0, index_6.IsNumber)(value) ? Symbol(value) : value;
|
|
191
191
|
}
|
|
192
|
-
function
|
|
192
|
+
function FromThis(schema, references, value) {
|
|
193
193
|
return Visit((0, index_3.Deref)(schema, references), references, value);
|
|
194
194
|
}
|
|
195
195
|
// prettier-ignore
|
|
196
|
-
function
|
|
196
|
+
function FromTuple(schema, references, value) {
|
|
197
197
|
const isConvertable = (0, index_6.IsArray)(value) && !(0, index_6.IsUndefined)(schema.items);
|
|
198
198
|
if (!isConvertable)
|
|
199
199
|
return value;
|
|
@@ -203,10 +203,10 @@ function TTuple(schema, references, value) {
|
|
|
203
203
|
: value;
|
|
204
204
|
});
|
|
205
205
|
}
|
|
206
|
-
function
|
|
206
|
+
function FromUndefined(schema, references, value) {
|
|
207
207
|
return TryConvertUndefined(value);
|
|
208
208
|
}
|
|
209
|
-
function
|
|
209
|
+
function FromUnion(schema, references, value) {
|
|
210
210
|
for (const subschema of schema.anyOf) {
|
|
211
211
|
const converted = Visit(subschema, references, value);
|
|
212
212
|
if ((0, index_2.Check)(subschema, references, converted)) {
|
|
@@ -220,41 +220,41 @@ function Visit(schema, references, value) {
|
|
|
220
220
|
const schema_ = schema;
|
|
221
221
|
switch (schema[index_4.Kind]) {
|
|
222
222
|
case 'Array':
|
|
223
|
-
return
|
|
223
|
+
return FromArray(schema_, references_, value);
|
|
224
224
|
case 'BigInt':
|
|
225
|
-
return
|
|
225
|
+
return FromBigInt(schema_, references_, value);
|
|
226
226
|
case 'Boolean':
|
|
227
|
-
return
|
|
227
|
+
return FromBoolean(schema_, references_, value);
|
|
228
228
|
case 'Date':
|
|
229
|
-
return
|
|
229
|
+
return FromDate(schema_, references_, value);
|
|
230
230
|
case 'Integer':
|
|
231
|
-
return
|
|
231
|
+
return FromInteger(schema_, references_, value);
|
|
232
232
|
case 'Intersect':
|
|
233
|
-
return
|
|
233
|
+
return FromIntersect(schema_, references_, value);
|
|
234
234
|
case 'Literal':
|
|
235
|
-
return
|
|
235
|
+
return FromLiteral(schema_, references_, value);
|
|
236
236
|
case 'Null':
|
|
237
|
-
return
|
|
237
|
+
return FromNull(schema_, references_, value);
|
|
238
238
|
case 'Number':
|
|
239
|
-
return
|
|
239
|
+
return FromNumber(schema_, references_, value);
|
|
240
240
|
case 'Object':
|
|
241
|
-
return
|
|
241
|
+
return FromObject(schema_, references_, value);
|
|
242
242
|
case 'Record':
|
|
243
|
-
return
|
|
243
|
+
return FromRecord(schema_, references_, value);
|
|
244
244
|
case 'Ref':
|
|
245
|
-
return
|
|
245
|
+
return FromRef(schema_, references_, value);
|
|
246
246
|
case 'String':
|
|
247
|
-
return
|
|
247
|
+
return FromString(schema_, references_, value);
|
|
248
248
|
case 'Symbol':
|
|
249
|
-
return
|
|
249
|
+
return FromSymbol(schema_, references_, value);
|
|
250
250
|
case 'This':
|
|
251
|
-
return
|
|
251
|
+
return FromThis(schema_, references_, value);
|
|
252
252
|
case 'Tuple':
|
|
253
|
-
return
|
|
253
|
+
return FromTuple(schema_, references_, value);
|
|
254
254
|
case 'Undefined':
|
|
255
|
-
return
|
|
255
|
+
return FromUndefined(schema_, references_, value);
|
|
256
256
|
case 'Union':
|
|
257
|
-
return
|
|
257
|
+
return FromUnion(schema_, references_, value);
|
|
258
258
|
default:
|
|
259
259
|
return Default(value);
|
|
260
260
|
}
|
|
@@ -58,7 +58,7 @@ exports.ValueCreateRecursiveInstantiationError = ValueCreateRecursiveInstantiati
|
|
|
58
58
|
// ------------------------------------------------------------------
|
|
59
59
|
// Create
|
|
60
60
|
// ------------------------------------------------------------------
|
|
61
|
-
function
|
|
61
|
+
function FromAny(schema, references) {
|
|
62
62
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
63
63
|
return schema.default;
|
|
64
64
|
}
|
|
@@ -66,7 +66,7 @@ function TAny(schema, references) {
|
|
|
66
66
|
return {};
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
-
function
|
|
69
|
+
function FromArray(schema, references) {
|
|
70
70
|
if (schema.uniqueItems === true && !(0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
71
71
|
throw new Error('ValueCreate.Array: Array with the uniqueItems constraint requires a default value');
|
|
72
72
|
}
|
|
@@ -85,7 +85,7 @@ function TArray(schema, references) {
|
|
|
85
85
|
return [];
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
-
function
|
|
88
|
+
function FromAsyncIterator(schema, references) {
|
|
89
89
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
90
90
|
return schema.default;
|
|
91
91
|
}
|
|
@@ -93,7 +93,7 @@ function TAsyncIterator(schema, references) {
|
|
|
93
93
|
return (async function* () { })();
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
|
-
function
|
|
96
|
+
function FromBigInt(schema, references) {
|
|
97
97
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
98
98
|
return schema.default;
|
|
99
99
|
}
|
|
@@ -101,7 +101,7 @@ function TBigInt(schema, references) {
|
|
|
101
101
|
return BigInt(0);
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
|
-
function
|
|
104
|
+
function FromBoolean(schema, references) {
|
|
105
105
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
106
106
|
return schema.default;
|
|
107
107
|
}
|
|
@@ -109,7 +109,7 @@ function TBoolean(schema, references) {
|
|
|
109
109
|
return false;
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
|
-
function
|
|
112
|
+
function FromConstructor(schema, references) {
|
|
113
113
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
114
114
|
return schema.default;
|
|
115
115
|
}
|
|
@@ -131,7 +131,7 @@ function TConstructor(schema, references) {
|
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
|
-
function
|
|
134
|
+
function FromDate(schema, references) {
|
|
135
135
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
136
136
|
return schema.default;
|
|
137
137
|
}
|
|
@@ -142,7 +142,7 @@ function TDate(schema, references) {
|
|
|
142
142
|
return new Date();
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
-
function
|
|
145
|
+
function FromFunction(schema, references) {
|
|
146
146
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
147
147
|
return schema.default;
|
|
148
148
|
}
|
|
@@ -150,7 +150,7 @@ function TFunction(schema, references) {
|
|
|
150
150
|
return () => Visit(schema.returns, references);
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
|
-
function
|
|
153
|
+
function FromInteger(schema, references) {
|
|
154
154
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
155
155
|
return schema.default;
|
|
156
156
|
}
|
|
@@ -161,7 +161,7 @@ function TInteger(schema, references) {
|
|
|
161
161
|
return 0;
|
|
162
162
|
}
|
|
163
163
|
}
|
|
164
|
-
function
|
|
164
|
+
function FromIntersect(schema, references) {
|
|
165
165
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
166
166
|
return schema.default;
|
|
167
167
|
}
|
|
@@ -182,7 +182,7 @@ function TIntersect(schema, references) {
|
|
|
182
182
|
return value;
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
|
-
function
|
|
185
|
+
function FromIterator(schema, references) {
|
|
186
186
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
187
187
|
return schema.default;
|
|
188
188
|
}
|
|
@@ -190,7 +190,7 @@ function TIterator(schema, references) {
|
|
|
190
190
|
return (function* () { })();
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
|
-
function
|
|
193
|
+
function FromLiteral(schema, references) {
|
|
194
194
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
195
195
|
return schema.default;
|
|
196
196
|
}
|
|
@@ -198,10 +198,10 @@ function TLiteral(schema, references) {
|
|
|
198
198
|
return schema.const;
|
|
199
199
|
}
|
|
200
200
|
}
|
|
201
|
-
function
|
|
201
|
+
function FromNever(schema, references) {
|
|
202
202
|
throw new ValueCreateNeverTypeError(schema);
|
|
203
203
|
}
|
|
204
|
-
function
|
|
204
|
+
function FromNot(schema, references) {
|
|
205
205
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
206
206
|
return schema.default;
|
|
207
207
|
}
|
|
@@ -209,7 +209,7 @@ function TNot(schema, references) {
|
|
|
209
209
|
throw new ValueCreateNotTypeError(schema);
|
|
210
210
|
}
|
|
211
211
|
}
|
|
212
|
-
function
|
|
212
|
+
function FromNull(schema, references) {
|
|
213
213
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
214
214
|
return schema.default;
|
|
215
215
|
}
|
|
@@ -217,7 +217,7 @@ function TNull(schema, references) {
|
|
|
217
217
|
return null;
|
|
218
218
|
}
|
|
219
219
|
}
|
|
220
|
-
function
|
|
220
|
+
function FromNumber(schema, references) {
|
|
221
221
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
222
222
|
return schema.default;
|
|
223
223
|
}
|
|
@@ -228,7 +228,7 @@ function TNumber(schema, references) {
|
|
|
228
228
|
return 0;
|
|
229
229
|
}
|
|
230
230
|
}
|
|
231
|
-
function
|
|
231
|
+
function FromObject(schema, references) {
|
|
232
232
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
233
233
|
return schema.default;
|
|
234
234
|
}
|
|
@@ -240,7 +240,7 @@ function TObject(schema, references) {
|
|
|
240
240
|
}, {}));
|
|
241
241
|
}
|
|
242
242
|
}
|
|
243
|
-
function
|
|
243
|
+
function FromPromise(schema, references) {
|
|
244
244
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
245
245
|
return schema.default;
|
|
246
246
|
}
|
|
@@ -248,7 +248,7 @@ function TPromise(schema, references) {
|
|
|
248
248
|
return Promise.resolve(Visit(schema.item, references));
|
|
249
249
|
}
|
|
250
250
|
}
|
|
251
|
-
function
|
|
251
|
+
function FromRecord(schema, references) {
|
|
252
252
|
const [keyPattern, valueSchema] = Object.entries(schema.patternProperties)[0];
|
|
253
253
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
254
254
|
return schema.default;
|
|
@@ -263,7 +263,7 @@ function TRecord(schema, references) {
|
|
|
263
263
|
return {};
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
|
-
function
|
|
266
|
+
function FromRef(schema, references) {
|
|
267
267
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
268
268
|
return schema.default;
|
|
269
269
|
}
|
|
@@ -271,7 +271,7 @@ function TRef(schema, references) {
|
|
|
271
271
|
return Visit((0, index_3.Deref)(schema, references), references);
|
|
272
272
|
}
|
|
273
273
|
}
|
|
274
|
-
function
|
|
274
|
+
function FromString(schema, references) {
|
|
275
275
|
if (schema.pattern !== undefined) {
|
|
276
276
|
if (!(0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
277
277
|
throw new Error('ValueCreate.String: String types with patterns must specify a default value');
|
|
@@ -302,7 +302,7 @@ function TString(schema, references) {
|
|
|
302
302
|
}
|
|
303
303
|
}
|
|
304
304
|
}
|
|
305
|
-
function
|
|
305
|
+
function FromSymbol(schema, references) {
|
|
306
306
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
307
307
|
return schema.default;
|
|
308
308
|
}
|
|
@@ -313,17 +313,16 @@ function TSymbol(schema, references) {
|
|
|
313
313
|
return Symbol();
|
|
314
314
|
}
|
|
315
315
|
}
|
|
316
|
-
function
|
|
316
|
+
function FromTemplateLiteral(schema, references) {
|
|
317
317
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
318
318
|
return schema.default;
|
|
319
319
|
}
|
|
320
|
-
|
|
321
|
-
if (!(0, index_4.IsTemplateLiteralFinite)(expression))
|
|
320
|
+
if (!(0, index_4.IsTemplateLiteralFinite)(schema))
|
|
322
321
|
throw new ValueCreateTempateLiteralTypeError(schema);
|
|
323
|
-
const
|
|
324
|
-
return
|
|
322
|
+
const generated = (0, index_4.TemplateLiteralGenerate)(schema);
|
|
323
|
+
return generated[0];
|
|
325
324
|
}
|
|
326
|
-
function
|
|
325
|
+
function FromThis(schema, references) {
|
|
327
326
|
if (recursiveDepth++ > recursiveMaxDepth)
|
|
328
327
|
throw new ValueCreateRecursiveInstantiationError(schema, recursiveMaxDepth);
|
|
329
328
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
@@ -333,7 +332,7 @@ function TThis(schema, references) {
|
|
|
333
332
|
return Visit((0, index_3.Deref)(schema, references), references);
|
|
334
333
|
}
|
|
335
334
|
}
|
|
336
|
-
function
|
|
335
|
+
function FromTuple(schema, references) {
|
|
337
336
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
338
337
|
return schema.default;
|
|
339
338
|
}
|
|
@@ -344,7 +343,7 @@ function TTuple(schema, references) {
|
|
|
344
343
|
return Array.from({ length: schema.minItems }).map((_, index) => Visit(schema.items[index], references));
|
|
345
344
|
}
|
|
346
345
|
}
|
|
347
|
-
function
|
|
346
|
+
function FromUndefined(schema, references) {
|
|
348
347
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
349
348
|
return schema.default;
|
|
350
349
|
}
|
|
@@ -352,7 +351,7 @@ function TUndefined(schema, references) {
|
|
|
352
351
|
return undefined;
|
|
353
352
|
}
|
|
354
353
|
}
|
|
355
|
-
function
|
|
354
|
+
function FromUnion(schema, references) {
|
|
356
355
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
357
356
|
return schema.default;
|
|
358
357
|
}
|
|
@@ -363,7 +362,7 @@ function TUnion(schema, references) {
|
|
|
363
362
|
return Visit(schema.anyOf[0], references);
|
|
364
363
|
}
|
|
365
364
|
}
|
|
366
|
-
function
|
|
365
|
+
function FromUint8Array(schema, references) {
|
|
367
366
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
368
367
|
return schema.default;
|
|
369
368
|
}
|
|
@@ -374,7 +373,7 @@ function TUint8Array(schema, references) {
|
|
|
374
373
|
return new Uint8Array(0);
|
|
375
374
|
}
|
|
376
375
|
}
|
|
377
|
-
function
|
|
376
|
+
function FromUnknown(schema, references) {
|
|
378
377
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
379
378
|
return schema.default;
|
|
380
379
|
}
|
|
@@ -382,7 +381,7 @@ function TUnknown(schema, references) {
|
|
|
382
381
|
return {};
|
|
383
382
|
}
|
|
384
383
|
}
|
|
385
|
-
function
|
|
384
|
+
function FromVoid(schema, references) {
|
|
386
385
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
387
386
|
return schema.default;
|
|
388
387
|
}
|
|
@@ -390,7 +389,7 @@ function TVoid(schema, references) {
|
|
|
390
389
|
return void 0;
|
|
391
390
|
}
|
|
392
391
|
}
|
|
393
|
-
function
|
|
392
|
+
function FromKind(schema, references) {
|
|
394
393
|
if ((0, index_1.HasPropertyKey)(schema, 'default')) {
|
|
395
394
|
return schema.default;
|
|
396
395
|
}
|
|
@@ -403,69 +402,69 @@ function Visit(schema, references) {
|
|
|
403
402
|
const schema_ = schema;
|
|
404
403
|
switch (schema_[index_7.Kind]) {
|
|
405
404
|
case 'Any':
|
|
406
|
-
return
|
|
405
|
+
return FromAny(schema_, references_);
|
|
407
406
|
case 'Array':
|
|
408
|
-
return
|
|
407
|
+
return FromArray(schema_, references_);
|
|
409
408
|
case 'AsyncIterator':
|
|
410
|
-
return
|
|
409
|
+
return FromAsyncIterator(schema_, references_);
|
|
411
410
|
case 'BigInt':
|
|
412
|
-
return
|
|
411
|
+
return FromBigInt(schema_, references_);
|
|
413
412
|
case 'Boolean':
|
|
414
|
-
return
|
|
413
|
+
return FromBoolean(schema_, references_);
|
|
415
414
|
case 'Constructor':
|
|
416
|
-
return
|
|
415
|
+
return FromConstructor(schema_, references_);
|
|
417
416
|
case 'Date':
|
|
418
|
-
return
|
|
417
|
+
return FromDate(schema_, references_);
|
|
419
418
|
case 'Function':
|
|
420
|
-
return
|
|
419
|
+
return FromFunction(schema_, references_);
|
|
421
420
|
case 'Integer':
|
|
422
|
-
return
|
|
421
|
+
return FromInteger(schema_, references_);
|
|
423
422
|
case 'Intersect':
|
|
424
|
-
return
|
|
423
|
+
return FromIntersect(schema_, references_);
|
|
425
424
|
case 'Iterator':
|
|
426
|
-
return
|
|
425
|
+
return FromIterator(schema_, references_);
|
|
427
426
|
case 'Literal':
|
|
428
|
-
return
|
|
427
|
+
return FromLiteral(schema_, references_);
|
|
429
428
|
case 'Never':
|
|
430
|
-
return
|
|
429
|
+
return FromNever(schema_, references_);
|
|
431
430
|
case 'Not':
|
|
432
|
-
return
|
|
431
|
+
return FromNot(schema_, references_);
|
|
433
432
|
case 'Null':
|
|
434
|
-
return
|
|
433
|
+
return FromNull(schema_, references_);
|
|
435
434
|
case 'Number':
|
|
436
|
-
return
|
|
435
|
+
return FromNumber(schema_, references_);
|
|
437
436
|
case 'Object':
|
|
438
|
-
return
|
|
437
|
+
return FromObject(schema_, references_);
|
|
439
438
|
case 'Promise':
|
|
440
|
-
return
|
|
439
|
+
return FromPromise(schema_, references_);
|
|
441
440
|
case 'Record':
|
|
442
|
-
return
|
|
441
|
+
return FromRecord(schema_, references_);
|
|
443
442
|
case 'Ref':
|
|
444
|
-
return
|
|
443
|
+
return FromRef(schema_, references_);
|
|
445
444
|
case 'String':
|
|
446
|
-
return
|
|
445
|
+
return FromString(schema_, references_);
|
|
447
446
|
case 'Symbol':
|
|
448
|
-
return
|
|
447
|
+
return FromSymbol(schema_, references_);
|
|
449
448
|
case 'TemplateLiteral':
|
|
450
|
-
return
|
|
449
|
+
return FromTemplateLiteral(schema_, references_);
|
|
451
450
|
case 'This':
|
|
452
|
-
return
|
|
451
|
+
return FromThis(schema_, references_);
|
|
453
452
|
case 'Tuple':
|
|
454
|
-
return
|
|
453
|
+
return FromTuple(schema_, references_);
|
|
455
454
|
case 'Undefined':
|
|
456
|
-
return
|
|
455
|
+
return FromUndefined(schema_, references_);
|
|
457
456
|
case 'Union':
|
|
458
|
-
return
|
|
457
|
+
return FromUnion(schema_, references_);
|
|
459
458
|
case 'Uint8Array':
|
|
460
|
-
return
|
|
459
|
+
return FromUint8Array(schema_, references_);
|
|
461
460
|
case 'Unknown':
|
|
462
|
-
return
|
|
461
|
+
return FromUnknown(schema_, references_);
|
|
463
462
|
case 'Void':
|
|
464
|
-
return
|
|
463
|
+
return FromVoid(schema_, references_);
|
|
465
464
|
default:
|
|
466
465
|
if (!index_6.TypeRegistry.Has(schema_[index_7.Kind]))
|
|
467
466
|
throw new ValueCreateUnknownTypeError(schema_);
|
|
468
|
-
return
|
|
467
|
+
return FromKind(schema_, references_);
|
|
469
468
|
}
|
|
470
469
|
}
|
|
471
470
|
// ------------------------------------------------------------------
|
|
@@ -36,7 +36,7 @@ function IsDefaultSchema(value) {
|
|
|
36
36
|
// ------------------------------------------------------------------
|
|
37
37
|
// Types
|
|
38
38
|
// ------------------------------------------------------------------
|
|
39
|
-
function
|
|
39
|
+
function FromArray(schema, references, value) {
|
|
40
40
|
const defaulted = ValueOrDefault(schema, value);
|
|
41
41
|
if (!(0, index_4.IsArray)(defaulted))
|
|
42
42
|
return defaulted;
|
|
@@ -45,14 +45,14 @@ function TArray(schema, references, value) {
|
|
|
45
45
|
}
|
|
46
46
|
return defaulted;
|
|
47
47
|
}
|
|
48
|
-
function
|
|
48
|
+
function FromIntersect(schema, references, value) {
|
|
49
49
|
const defaulted = ValueOrDefault(schema, value);
|
|
50
50
|
return schema.allOf.reduce((acc, schema) => {
|
|
51
51
|
const next = Visit(schema, references, defaulted);
|
|
52
52
|
return (0, index_4.IsObject)(next) ? { ...acc, ...next } : next;
|
|
53
53
|
}, {});
|
|
54
54
|
}
|
|
55
|
-
function
|
|
55
|
+
function FromObject(schema, references, value) {
|
|
56
56
|
const defaulted = ValueOrDefault(schema, value);
|
|
57
57
|
if (!(0, index_4.IsObject)(defaulted))
|
|
58
58
|
return defaulted;
|
|
@@ -75,7 +75,7 @@ function TObject(schema, references, value) {
|
|
|
75
75
|
}
|
|
76
76
|
return defaulted;
|
|
77
77
|
}
|
|
78
|
-
function
|
|
78
|
+
function FromRecord(schema, references, value) {
|
|
79
79
|
const defaulted = ValueOrDefault(schema, value);
|
|
80
80
|
if (!(0, index_4.IsObject)(defaulted))
|
|
81
81
|
return defaulted;
|
|
@@ -99,13 +99,13 @@ function TRecord(schema, references, value) {
|
|
|
99
99
|
}
|
|
100
100
|
return defaulted;
|
|
101
101
|
}
|
|
102
|
-
function
|
|
102
|
+
function FromRef(schema, references, value) {
|
|
103
103
|
return Visit((0, index_2.Deref)(schema, references), references, ValueOrDefault(schema, value));
|
|
104
104
|
}
|
|
105
|
-
function
|
|
105
|
+
function FromThis(schema, references, value) {
|
|
106
106
|
return Visit((0, index_2.Deref)(schema, references), references, value);
|
|
107
107
|
}
|
|
108
|
-
function
|
|
108
|
+
function FromTuple(schema, references, value) {
|
|
109
109
|
const defaulted = ValueOrDefault(schema, value);
|
|
110
110
|
if (!(0, index_4.IsArray)(defaulted) || (0, index_4.IsUndefined)(schema.items))
|
|
111
111
|
return defaulted;
|
|
@@ -116,7 +116,7 @@ function TTuple(schema, references, value) {
|
|
|
116
116
|
}
|
|
117
117
|
return defaulted;
|
|
118
118
|
}
|
|
119
|
-
function
|
|
119
|
+
function FromUnion(schema, references, value) {
|
|
120
120
|
const defaulted = ValueOrDefault(schema, value);
|
|
121
121
|
for (const inner of schema.anyOf) {
|
|
122
122
|
const result = Visit(inner, references, defaulted);
|
|
@@ -131,21 +131,21 @@ function Visit(schema, references, value) {
|
|
|
131
131
|
const schema_ = schema;
|
|
132
132
|
switch (schema_[index_3.Kind]) {
|
|
133
133
|
case 'Array':
|
|
134
|
-
return
|
|
134
|
+
return FromArray(schema_, references_, value);
|
|
135
135
|
case 'Intersect':
|
|
136
|
-
return
|
|
136
|
+
return FromIntersect(schema_, references_, value);
|
|
137
137
|
case 'Object':
|
|
138
|
-
return
|
|
138
|
+
return FromObject(schema_, references_, value);
|
|
139
139
|
case 'Record':
|
|
140
|
-
return
|
|
140
|
+
return FromRecord(schema_, references_, value);
|
|
141
141
|
case 'Ref':
|
|
142
|
-
return
|
|
142
|
+
return FromRef(schema_, references_, value);
|
|
143
143
|
case 'This':
|
|
144
|
-
return
|
|
144
|
+
return FromThis(schema_, references_, value);
|
|
145
145
|
case 'Tuple':
|
|
146
|
-
return
|
|
146
|
+
return FromTuple(schema_, references_, value);
|
|
147
147
|
case 'Union':
|
|
148
|
-
return
|
|
148
|
+
return FromUnion(schema_, references_, value);
|
|
149
149
|
default:
|
|
150
150
|
return ValueOrDefault(schema_, value);
|
|
151
151
|
}
|