effect 3.11.6 → 3.11.8
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/dist/cjs/Arbitrary.js +46 -4
- package/dist/cjs/Arbitrary.js.map +1 -1
- package/dist/cjs/JSONSchema.js +157 -38
- package/dist/cjs/JSONSchema.js.map +1 -1
- package/dist/cjs/Schema.js +63 -51
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/internal/schema/{filters.js → schemaId.js} +4 -2
- package/dist/cjs/internal/schema/schemaId.js.map +1 -0
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Arbitrary.d.ts +5 -1
- package/dist/dts/Arbitrary.d.ts.map +1 -1
- package/dist/dts/JSONSchema.d.ts +11 -2
- package/dist/dts/JSONSchema.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +16 -6
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/internal/schema/schemaId.d.ts +2 -0
- package/dist/dts/internal/schema/schemaId.d.ts.map +1 -0
- package/dist/esm/Arbitrary.js +44 -3
- package/dist/esm/Arbitrary.js.map +1 -1
- package/dist/esm/JSONSchema.js +157 -38
- package/dist/esm/JSONSchema.js.map +1 -1
- package/dist/esm/Schema.js +55 -43
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/internal/schema/{filters.js → schemaId.js} +3 -1
- package/dist/esm/internal/schema/schemaId.js.map +1 -0
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Arbitrary.ts +64 -13
- package/src/JSONSchema.ts +185 -40
- package/src/Schema.ts +65 -50
- package/src/internal/schema/{filters.ts → schemaId.ts} +5 -0
- package/src/internal/version.ts +1 -1
- package/dist/cjs/internal/schema/filters.js.map +0 -1
- package/dist/dts/internal/schema/filters.d.ts +0 -2
- package/dist/dts/internal/schema/filters.d.ts.map +0 -1
- package/dist/esm/internal/schema/filters.js.map +0 -1
package/dist/cjs/Arbitrary.js
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.toOp = exports.makeStringConstraints = exports.makeNumberConstraints = exports.makeLazy = exports.makeBigIntConstraints = exports.makeArrayConstraints = exports.make = void 0;
|
|
6
|
+
exports.toOp = exports.makeStringConstraints = exports.makeNumberConstraints = exports.makeLazy = exports.makeDateConstraints = exports.makeBigIntConstraints = exports.makeArrayConstraints = exports.make = void 0;
|
|
7
7
|
var Arr = _interopRequireWildcard(require("./Array.js"));
|
|
8
8
|
var FastCheck = _interopRequireWildcard(require("./FastCheck.js"));
|
|
9
9
|
var errors_ = _interopRequireWildcard(require("./internal/schema/errors.js"));
|
|
10
|
-
var
|
|
10
|
+
var schemaId_ = _interopRequireWildcard(require("./internal/schema/schemaId.js"));
|
|
11
11
|
var util_ = _interopRequireWildcard(require("./internal/schema/util.js"));
|
|
12
12
|
var Option = _interopRequireWildcard(require("./Option.js"));
|
|
13
13
|
var Predicate = _interopRequireWildcard(require("./Predicate.js"));
|
|
@@ -83,6 +83,8 @@ class Deferred {
|
|
|
83
83
|
}
|
|
84
84
|
case "BigIntConstraints":
|
|
85
85
|
return fc => fc.bigInt(config.constraints);
|
|
86
|
+
case "DateConstraints":
|
|
87
|
+
return fc => fc.date(config.constraints);
|
|
86
88
|
case "ArrayConstraints":
|
|
87
89
|
return goTupleType(config.ast, ctx, path, config.constraints);
|
|
88
90
|
}
|
|
@@ -163,7 +165,24 @@ const makeArrayConstraints = options => {
|
|
|
163
165
|
}
|
|
164
166
|
return out;
|
|
165
167
|
};
|
|
168
|
+
/** @internal */
|
|
166
169
|
exports.makeArrayConstraints = makeArrayConstraints;
|
|
170
|
+
const makeDateConstraints = options => {
|
|
171
|
+
const out = {
|
|
172
|
+
_tag: "DateConstraints",
|
|
173
|
+
constraints: {
|
|
174
|
+
noInvalidDate: options.noInvalidDate ?? false
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
if (Predicate.isDate(options.min)) {
|
|
178
|
+
out.constraints.min = options.min;
|
|
179
|
+
}
|
|
180
|
+
if (Predicate.isDate(options.max)) {
|
|
181
|
+
out.constraints.max = options.max;
|
|
182
|
+
}
|
|
183
|
+
return out;
|
|
184
|
+
};
|
|
185
|
+
exports.makeDateConstraints = makeDateConstraints;
|
|
167
186
|
const makeArrayConfig = (options, ast) => {
|
|
168
187
|
return {
|
|
169
188
|
ast,
|
|
@@ -190,6 +209,9 @@ const go = (ast, ctx, path) => {
|
|
|
190
209
|
return hook.value(ctx);
|
|
191
210
|
}
|
|
192
211
|
}
|
|
212
|
+
if (AST.isDeclaration(ast)) {
|
|
213
|
+
throw new Error(errors_.getArbitraryMissingAnnotationErrorMessage(path, ast));
|
|
214
|
+
}
|
|
193
215
|
const op = toOp(ast, ctx, path);
|
|
194
216
|
switch (op._tag) {
|
|
195
217
|
case "Succeed":
|
|
@@ -205,7 +227,14 @@ const constBigIntConstraints = /*#__PURE__*/makeBigIntConstraints({});
|
|
|
205
227
|
const toOp = (ast, ctx, path) => {
|
|
206
228
|
switch (ast._tag) {
|
|
207
229
|
case "Declaration":
|
|
208
|
-
|
|
230
|
+
{
|
|
231
|
+
const TypeAnnotationId = ast.annotations[AST.SchemaIdAnnotationId];
|
|
232
|
+
switch (TypeAnnotationId) {
|
|
233
|
+
case schemaId_.DateFromSelfSchemaId:
|
|
234
|
+
return new Deferred(makeDateConstraints(ast.annotations[TypeAnnotationId]));
|
|
235
|
+
}
|
|
236
|
+
return new Succeed(go(ast, ctx, path));
|
|
237
|
+
}
|
|
209
238
|
case "Literal":
|
|
210
239
|
return new Succeed(fc => fc.constant(ast.literal));
|
|
211
240
|
case "UniqueSymbol":
|
|
@@ -394,7 +423,7 @@ const getConstraints = (_tag, ast) => {
|
|
|
394
423
|
case "NumberConstraints":
|
|
395
424
|
{
|
|
396
425
|
switch (TypeAnnotationId) {
|
|
397
|
-
case
|
|
426
|
+
case schemaId_.NonNaNSchemaId:
|
|
398
427
|
return makeNumberConstraints({
|
|
399
428
|
noNaN: true
|
|
400
429
|
});
|
|
@@ -412,6 +441,8 @@ const getConstraints = (_tag, ast) => {
|
|
|
412
441
|
}
|
|
413
442
|
case "BigIntConstraints":
|
|
414
443
|
return makeBigIntConstraints(ast.annotations[TypeAnnotationId]);
|
|
444
|
+
case "DateConstraints":
|
|
445
|
+
return makeDateConstraints(ast.annotations[TypeAnnotationId]);
|
|
415
446
|
case "ArrayConstraints":
|
|
416
447
|
return makeArrayConstraints({
|
|
417
448
|
minLength: jsonSchema.minItems,
|
|
@@ -467,6 +498,17 @@ const merge = (c1, c2) => {
|
|
|
467
498
|
}
|
|
468
499
|
break;
|
|
469
500
|
}
|
|
501
|
+
case "DateConstraints":
|
|
502
|
+
{
|
|
503
|
+
if (c2._tag === "DateConstraints") {
|
|
504
|
+
return makeDateConstraints({
|
|
505
|
+
min: getMax(c1.constraints.min, c2.constraints.min),
|
|
506
|
+
max: getMin(c1.constraints.max, c2.constraints.max),
|
|
507
|
+
noInvalidDate: getOr(c1.constraints.noInvalidDate, c2.constraints.noInvalidDate)
|
|
508
|
+
});
|
|
509
|
+
}
|
|
510
|
+
break;
|
|
511
|
+
}
|
|
470
512
|
case "ArrayConstraints":
|
|
471
513
|
{
|
|
472
514
|
if (c2._tag === "ArrayConstraints") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Arbitrary.js","names":["Arr","_interopRequireWildcard","require","FastCheck","errors_","filters_","util_","Option","Predicate","AST","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","makeLazy","schema","go","ast","maxDepth","exports","make","getArbitraryAnnotation","getAnnotation","ArbitraryAnnotationId","Succeed","lazyArbitrary","filters","_tag","constructor","toLazyArbitrary","fc","out","f","filter","Deferred","config","ctx","path","pattern","undefined","stringMatching","RegExp","string","constraints","isInteger","integer","float","bigInt","goTupleType","makeStringConstraints","options","isNumber","minLength","maxLength","isString","makeNumberConstraints","min","Math","fround","isBoolean","minExcluded","max","maxExcluded","noNaN","noDefaultInfinity","makeBigIntConstraints","isBigInt","makeArrayConstraints","makeArrayConfig","hook","isSome","value","typeParameters","map","p","op","toOp","from","constStringConstraints","constNumberConstraints","constBigIntConstraints","Error","getArbitraryMissingAnnotationErrorMessage","constant","literal","symbol","anything","boolean","s","Symbol","for","oneof","object","array","enums","length","getArbitraryEmptyEnumErrorMessage","_","number","Number","isNaN","components","head","addArb","push","String","types","forEach","spans","span","type","tuple","join","isNone","defaultParseOption","merge","getConstraints","propertySignaturesTypes","propertySignatures","ps","concat","name","indexSignatures","is","parameter","arbs","requiredKeys","isOptional","output","record","key","chain","o","item","arr","depthIdentifier","getSuspendedArray","tuples","fromEntries","member","arb","memoizeThunk","getSuspendedContext","to","elements","hasOptionals","element","rest","annotatedAST","indexes","booleans","b","reverse","entries","splice","isNonEmptyReadonlyArray","tail","as","j","TypeAnnotationId","annotations","SchemaIdAnnotationId","jsonSchema","getOrElse","getJSONSchemaAnnotation","NonNaNSchemaId","exclusiveMinimum","minimum","exclusiveMaximum","maximum","minItems","maxItems","getMax","n1","n2","getMin","getOr","c1","c2","getIdentifierAnnotation","pipe","orElse"],"sources":["../../src/Arbitrary.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Arbitrary.js","names":["Arr","_interopRequireWildcard","require","FastCheck","errors_","schemaId_","util_","Option","Predicate","AST","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","makeLazy","schema","go","ast","maxDepth","exports","make","getArbitraryAnnotation","getAnnotation","ArbitraryAnnotationId","Succeed","lazyArbitrary","filters","_tag","constructor","toLazyArbitrary","fc","out","f","filter","Deferred","config","ctx","path","pattern","undefined","stringMatching","RegExp","string","constraints","isInteger","integer","float","bigInt","date","goTupleType","makeStringConstraints","options","isNumber","minLength","maxLength","isString","makeNumberConstraints","min","Math","fround","isBoolean","minExcluded","max","maxExcluded","noNaN","noDefaultInfinity","makeBigIntConstraints","isBigInt","makeArrayConstraints","makeDateConstraints","noInvalidDate","isDate","makeArrayConfig","hook","isSome","value","typeParameters","map","p","op","toOp","from","isDeclaration","Error","getArbitraryMissingAnnotationErrorMessage","constStringConstraints","constNumberConstraints","constBigIntConstraints","TypeAnnotationId","annotations","SchemaIdAnnotationId","DateFromSelfSchemaId","constant","literal","symbol","anything","boolean","s","Symbol","for","oneof","object","array","enums","length","getArbitraryEmptyEnumErrorMessage","_","number","Number","isNaN","components","head","addArb","push","String","types","forEach","spans","span","type","tuple","join","isNone","defaultParseOption","merge","getConstraints","propertySignaturesTypes","propertySignatures","ps","concat","name","indexSignatures","is","parameter","arbs","requiredKeys","isOptional","output","record","key","chain","o","item","arr","depthIdentifier","getSuspendedArray","tuples","fromEntries","member","arb","memoizeThunk","getSuspendedContext","to","elements","hasOptionals","element","rest","annotatedAST","indexes","booleans","b","reverse","entries","splice","isNonEmptyReadonlyArray","tail","as","j","jsonSchema","getOrElse","getJSONSchemaAnnotation","NonNaNSchemaId","exclusiveMinimum","minimum","exclusiveMaximum","maximum","minItems","maxItems","getMax","n1","n2","getMin","getOr","c1","c2","getIdentifierAnnotation","pipe","orElse"],"sources":["../../src/Arbitrary.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/JSONSchema.js
CHANGED
|
@@ -24,11 +24,17 @@ const make = schema => {
|
|
|
24
24
|
const ast = AST.isTransformation(schema.ast) && isParseJsonTransformation(schema.ast.from)
|
|
25
25
|
// Special case top level `parseJson` transformations
|
|
26
26
|
? schema.ast.to : schema.ast;
|
|
27
|
-
const
|
|
27
|
+
const jsonSchema = fromAST(ast, {
|
|
28
28
|
definitions
|
|
29
29
|
});
|
|
30
|
-
out
|
|
31
|
-
|
|
30
|
+
const out = {
|
|
31
|
+
$schema,
|
|
32
|
+
$defs: {},
|
|
33
|
+
...jsonSchema
|
|
34
|
+
};
|
|
35
|
+
if (Record.isEmptyRecord(definitions)) {
|
|
36
|
+
delete out.$defs;
|
|
37
|
+
} else {
|
|
32
38
|
out.$defs = definitions;
|
|
33
39
|
}
|
|
34
40
|
return out;
|
|
@@ -164,9 +170,27 @@ const isParseJsonTransformation = ast => ast.annotations[AST.SchemaIdAnnotationI
|
|
|
164
170
|
const isOverrideAnnotation = jsonSchema => {
|
|
165
171
|
return "type" in jsonSchema || "oneOf" in jsonSchema || "anyOf" in jsonSchema || "const" in jsonSchema || "enum" in jsonSchema || "$ref" in jsonSchema;
|
|
166
172
|
};
|
|
167
|
-
// Returns true if the schema is an enum with no other properties
|
|
168
|
-
// This is used to merge enums together.
|
|
169
|
-
const
|
|
173
|
+
// Returns true if the schema is an enum with no other properties other than the
|
|
174
|
+
// optional "type". This is used to merge enums together.
|
|
175
|
+
const isMergeableEnum = jsonSchema => {
|
|
176
|
+
const len = Object.keys(jsonSchema).length;
|
|
177
|
+
return "enum" in jsonSchema && (len === 1 || "type" in jsonSchema && len === 2);
|
|
178
|
+
};
|
|
179
|
+
// Some validators do not support enums without a type keyword. This function
|
|
180
|
+
// adds a type keyword to the schema if it is missing and the enum values are
|
|
181
|
+
// homogeneous.
|
|
182
|
+
const addEnumType = jsonSchema => {
|
|
183
|
+
if ("enum" in jsonSchema && !("type" in jsonSchema)) {
|
|
184
|
+
const type = jsonSchema.enum.every(Predicate.isString) ? "string" : jsonSchema.enum.every(Predicate.isNumber) ? "number" : jsonSchema.enum.every(Predicate.isBoolean) ? "boolean" : undefined;
|
|
185
|
+
if (type !== undefined) {
|
|
186
|
+
return {
|
|
187
|
+
type,
|
|
188
|
+
...jsonSchema
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
return jsonSchema;
|
|
193
|
+
};
|
|
170
194
|
const mergeRefinements = (from, jsonSchema, annotations) => {
|
|
171
195
|
const out = {
|
|
172
196
|
...from,
|
|
@@ -197,6 +221,29 @@ const mergeRefinements = (from, jsonSchema, annotations) => {
|
|
|
197
221
|
}
|
|
198
222
|
return out;
|
|
199
223
|
};
|
|
224
|
+
const isContentSchemaSupported = options => options.target !== "jsonSchema7";
|
|
225
|
+
const isNullTypeKeywordSupported = options => options.target !== "openApi3.1";
|
|
226
|
+
// https://swagger.io/docs/specification/v3_0/data-models/data-types/#null
|
|
227
|
+
const isNullableKeywordSupported = options => options.target === "openApi3.1";
|
|
228
|
+
const isNeverJSONSchema = jsonSchema => "$id" in jsonSchema && jsonSchema.$id === "/schemas/never";
|
|
229
|
+
const isAnyJSONSchema = jsonSchema => "$id" in jsonSchema && jsonSchema.$id === "/schemas/any";
|
|
230
|
+
const isUnknownJSONSchema = jsonSchema => "$id" in jsonSchema && jsonSchema.$id === "/schemas/unknown";
|
|
231
|
+
const isVoidJSONSchema = jsonSchema => "$id" in jsonSchema && jsonSchema.$id === "/schemas/void";
|
|
232
|
+
const shrink = members => {
|
|
233
|
+
let i = members.findIndex(isAnyJSONSchema);
|
|
234
|
+
if (i !== -1) {
|
|
235
|
+
members = [members[i]];
|
|
236
|
+
}
|
|
237
|
+
i = members.findIndex(isUnknownJSONSchema);
|
|
238
|
+
if (i !== -1) {
|
|
239
|
+
members = [members[i]];
|
|
240
|
+
}
|
|
241
|
+
i = members.findIndex(isVoidJSONSchema);
|
|
242
|
+
if (i !== -1) {
|
|
243
|
+
members = [members[i]];
|
|
244
|
+
}
|
|
245
|
+
return members;
|
|
246
|
+
};
|
|
200
247
|
const go = (ast, $defs, handleIdentifier, path, options) => {
|
|
201
248
|
if (handleIdentifier) {
|
|
202
249
|
const identifier = AST.getJSONIdentifier(ast);
|
|
@@ -236,12 +283,37 @@ const go = (ast, $defs, handleIdentifier, path, options) => {
|
|
|
236
283
|
{
|
|
237
284
|
const literal = ast.literal;
|
|
238
285
|
if (literal === null) {
|
|
286
|
+
if (isNullTypeKeywordSupported(options)) {
|
|
287
|
+
// https://json-schema.org/draft-07/draft-handrews-json-schema-validation-00.pdf
|
|
288
|
+
// Section 6.1.1
|
|
289
|
+
return {
|
|
290
|
+
type: "null",
|
|
291
|
+
...getJsonSchemaAnnotations(ast)
|
|
292
|
+
};
|
|
293
|
+
} else {
|
|
294
|
+
// OpenAPI 3.1 does not support the "null" type keyword
|
|
295
|
+
// https://swagger.io/docs/specification/v3_0/data-models/data-types/#null
|
|
296
|
+
return {
|
|
297
|
+
// @ts-expect-error
|
|
298
|
+
enum: [null],
|
|
299
|
+
...getJsonSchemaAnnotations(ast)
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
} else if (Predicate.isString(literal)) {
|
|
239
303
|
return {
|
|
240
|
-
|
|
304
|
+
type: "string",
|
|
305
|
+
enum: [literal],
|
|
241
306
|
...getJsonSchemaAnnotations(ast)
|
|
242
307
|
};
|
|
243
|
-
} else if (Predicate.
|
|
308
|
+
} else if (Predicate.isNumber(literal)) {
|
|
244
309
|
return {
|
|
310
|
+
type: "number",
|
|
311
|
+
enum: [literal],
|
|
312
|
+
...getJsonSchemaAnnotations(ast)
|
|
313
|
+
};
|
|
314
|
+
} else if (Predicate.isBoolean(literal)) {
|
|
315
|
+
return {
|
|
316
|
+
type: "boolean",
|
|
245
317
|
enum: [literal],
|
|
246
318
|
...getJsonSchemaAnnotations(ast)
|
|
247
319
|
};
|
|
@@ -431,46 +503,93 @@ const go = (ast, $defs, handleIdentifier, path, options) => {
|
|
|
431
503
|
}
|
|
432
504
|
case "Union":
|
|
433
505
|
{
|
|
434
|
-
const
|
|
506
|
+
const members = [];
|
|
435
507
|
for (const type of ast.types) {
|
|
436
|
-
const
|
|
437
|
-
if (
|
|
438
|
-
|
|
439
|
-
|
|
508
|
+
const jsonSchema = go(type, $defs, true, path, options);
|
|
509
|
+
if (!isNeverJSONSchema(jsonSchema)) {
|
|
510
|
+
const last = members[members.length - 1];
|
|
511
|
+
if (isMergeableEnum(jsonSchema) && last !== undefined && isMergeableEnum(last)) {
|
|
512
|
+
members[members.length - 1] = {
|
|
513
|
+
enum: last.enum.concat(jsonSchema.enum)
|
|
514
|
+
};
|
|
440
515
|
} else {
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
516
|
+
members.push(jsonSchema);
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
const anyOf = shrink(members);
|
|
521
|
+
const finalize = anyOf => {
|
|
522
|
+
switch (anyOf.length) {
|
|
523
|
+
case 0:
|
|
524
|
+
return {
|
|
525
|
+
...constNever,
|
|
526
|
+
...getJsonSchemaAnnotations(ast)
|
|
527
|
+
};
|
|
528
|
+
case 1:
|
|
529
|
+
{
|
|
530
|
+
return {
|
|
531
|
+
...addEnumType(anyOf[0]),
|
|
532
|
+
...getJsonSchemaAnnotations(ast)
|
|
533
|
+
};
|
|
534
|
+
}
|
|
535
|
+
default:
|
|
536
|
+
return {
|
|
537
|
+
anyOf: anyOf.map(addEnumType),
|
|
538
|
+
...getJsonSchemaAnnotations(ast)
|
|
539
|
+
};
|
|
540
|
+
}
|
|
541
|
+
};
|
|
542
|
+
if (isNullableKeywordSupported(options)) {
|
|
543
|
+
let nullable = false;
|
|
544
|
+
const nonNullables = [];
|
|
545
|
+
for (const s of anyOf) {
|
|
546
|
+
if ("nullable" in s) {
|
|
547
|
+
nullable = true;
|
|
548
|
+
const nn = {
|
|
549
|
+
...s
|
|
550
|
+
};
|
|
551
|
+
delete nn.nullable;
|
|
552
|
+
nonNullables.push(nn);
|
|
553
|
+
} else if (isMergeableEnum(s)) {
|
|
554
|
+
const nnes = s.enum.filter(e => e !== null);
|
|
555
|
+
if (nnes.length < s.enum.length) {
|
|
556
|
+
nullable = true;
|
|
557
|
+
if (nnes.length === 0) {
|
|
558
|
+
continue;
|
|
445
559
|
}
|
|
446
|
-
|
|
447
|
-
|
|
560
|
+
const nn = {
|
|
561
|
+
...s
|
|
562
|
+
};
|
|
563
|
+
nn.enum = nnes;
|
|
564
|
+
nonNullables.push(nn);
|
|
448
565
|
}
|
|
566
|
+
} else {
|
|
567
|
+
nonNullables.push(s);
|
|
449
568
|
}
|
|
450
|
-
}
|
|
451
|
-
|
|
569
|
+
}
|
|
570
|
+
if (nullable) {
|
|
571
|
+
const out = finalize(nonNullables);
|
|
572
|
+
if (!isAnyJSONSchema(out) && !isUnknownJSONSchema(out)) {
|
|
573
|
+
// @ts-expect-error
|
|
574
|
+
out.nullable = nullable;
|
|
575
|
+
}
|
|
576
|
+
return out;
|
|
452
577
|
}
|
|
453
578
|
}
|
|
454
|
-
|
|
455
|
-
return {
|
|
456
|
-
enum: anyOf[0].enum,
|
|
457
|
-
...getJsonSchemaAnnotations(ast)
|
|
458
|
-
};
|
|
459
|
-
} else {
|
|
460
|
-
return {
|
|
461
|
-
anyOf,
|
|
462
|
-
...getJsonSchemaAnnotations(ast)
|
|
463
|
-
};
|
|
464
|
-
}
|
|
579
|
+
return finalize(anyOf);
|
|
465
580
|
}
|
|
466
581
|
case "Enums":
|
|
467
582
|
{
|
|
468
|
-
|
|
583
|
+
const anyOf = ast.enums.map(e => addEnumType({
|
|
584
|
+
title: e[0],
|
|
585
|
+
enum: [e[1]]
|
|
586
|
+
}));
|
|
587
|
+
return anyOf.length >= 1 ? {
|
|
469
588
|
$comment: "/schemas/enums",
|
|
470
|
-
anyOf
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
589
|
+
anyOf,
|
|
590
|
+
...getJsonSchemaAnnotations(ast)
|
|
591
|
+
} : {
|
|
592
|
+
...constNever,
|
|
474
593
|
...getJsonSchemaAnnotations(ast)
|
|
475
594
|
};
|
|
476
595
|
}
|
|
@@ -508,7 +627,7 @@ const go = (ast, $defs, handleIdentifier, path, options) => {
|
|
|
508
627
|
"type": "string",
|
|
509
628
|
"contentMediaType": "application/json"
|
|
510
629
|
};
|
|
511
|
-
if (options
|
|
630
|
+
if (isContentSchemaSupported(options)) {
|
|
512
631
|
out["contentSchema"] = go(ast.to, $defs, handleIdentifier, path, options);
|
|
513
632
|
}
|
|
514
633
|
return out;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSONSchema.js","names":["errors_","_interopRequireWildcard","require","Option","Predicate","Record","AST","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","make","schema","definitions","ast","isTransformation","isParseJsonTransformation","from","to","out","fromAST","$schema","isEmptyRecord","$defs","exports","options","definitionPath","getRef","id","target","handleIdentifier","topLevelReferenceStrategy","go","constNever","constAny","constUnknown","constVoid","constAnyObject","constEmpty","getJsonSchemaAnnotations","annotated","getSomes","description","getDescriptionAnnotation","title","getTitleAnnotation","examples","getExamplesAnnotation","getDefaultAnnotation","removeDefaultJsonSchemaAnnotations","jsonSchemaAnnotations","annotations","TitleAnnotationId","DescriptionAnnotationId","getASTJsonSchemaAnnotations","_tag","stringKeyword","numberKeyword","booleanKeyword","pruneUndefinedFromPropertySignature","isNone","getJSONSchemaAnnotation","neverKeyword","types","hasUndefined","type","pruned","isNeverKeyword","push","Union","f","SchemaIdAnnotationId","ParseJsonSchemaId","isOverrideAnnotation","jsonSchema","isEnumOnly","keys","length","mergeRefinements","allOf","handle","name","filter","unshift","minLength","maxLength","pattern","minItems","maxItems","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","path","identifier","getJSONIdentifier","isSome","value","$ref","hook","handler","isRefinement","getTransformationFrom","undefined","surrogate","getSurrogateAnnotation","Error","getJSONSchemaMissingAnnotationErrorMessage","literal","enum","isString","isNumber","isBoolean","elements","map","concat","rest","annotatedAST","output","len","element","isOptional","items","restLength","head","isHomogeneous","every","additionalItems","getJSONSchemaUnsupportedPostRestElementsErrorMessage","propertySignatures","indexSignatures","patternProperties","propertyNames","is","parameter","getTemplateLiteralRegExp","source","getJSONSchemaUnsupportedParameterErrorMessage","required","properties","additionalProperties","ps","getJSONSchemaUnsupportedKeyErrorMessage","anyOf","last","$comment","enums","regex","String","orElse","getJSONSchemaMissingIdentifierAnnotationErrorMessage","next","isTypeLiteralTransformation","transformation","getIdentifierAnnotation","IdentifierAnnotationId"],"sources":["../../src/JSONSchema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"JSONSchema.js","names":["errors_","_interopRequireWildcard","require","Option","Predicate","Record","AST","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","make","schema","definitions","ast","isTransformation","isParseJsonTransformation","from","to","jsonSchema","fromAST","out","$schema","$defs","isEmptyRecord","exports","options","definitionPath","getRef","id","target","handleIdentifier","topLevelReferenceStrategy","go","constNever","constAny","constUnknown","constVoid","constAnyObject","constEmpty","getJsonSchemaAnnotations","annotated","getSomes","description","getDescriptionAnnotation","title","getTitleAnnotation","examples","getExamplesAnnotation","getDefaultAnnotation","removeDefaultJsonSchemaAnnotations","jsonSchemaAnnotations","annotations","TitleAnnotationId","DescriptionAnnotationId","getASTJsonSchemaAnnotations","_tag","stringKeyword","numberKeyword","booleanKeyword","pruneUndefinedFromPropertySignature","isNone","getJSONSchemaAnnotation","neverKeyword","types","hasUndefined","type","pruned","isNeverKeyword","push","Union","f","SchemaIdAnnotationId","ParseJsonSchemaId","isOverrideAnnotation","isMergeableEnum","len","keys","length","addEnumType","enum","every","isString","isNumber","isBoolean","undefined","mergeRefinements","allOf","handle","name","filter","unshift","minLength","maxLength","pattern","minItems","maxItems","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","isContentSchemaSupported","isNullTypeKeywordSupported","isNullableKeywordSupported","isNeverJSONSchema","$id","isAnyJSONSchema","isUnknownJSONSchema","isVoidJSONSchema","shrink","members","findIndex","path","identifier","getJSONIdentifier","isSome","value","$ref","hook","handler","isRefinement","getTransformationFrom","surrogate","getSurrogateAnnotation","Error","getJSONSchemaMissingAnnotationErrorMessage","literal","elements","map","concat","rest","annotatedAST","output","element","isOptional","items","restLength","head","isHomogeneous","additionalItems","getJSONSchemaUnsupportedPostRestElementsErrorMessage","propertySignatures","indexSignatures","patternProperties","propertyNames","is","parameter","getTemplateLiteralRegExp","source","getJSONSchemaUnsupportedParameterErrorMessage","required","properties","additionalProperties","ps","getJSONSchemaUnsupportedKeyErrorMessage","last","anyOf","finalize","nullable","nonNullables","s","nn","nnes","enums","$comment","regex","String","orElse","getJSONSchemaMissingIdentifierAnnotationErrorMessage","next","isTypeLiteralTransformation","transformation","getIdentifierAnnotation","IdentifierAnnotationId"],"sources":["../../src/JSONSchema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|