@jarenjs/refs 0.8.2

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/index.js ADDED
@@ -0,0 +1,1054 @@
1
+ // ../core/src/index.js
2
+ function isStringType(data) {
3
+ return typeof data === "string";
4
+ }
5
+ var TypedArray = Object.getPrototypeOf(Uint8Array);
6
+
7
+ // src/json-schema-draft-06.json
8
+ var json_schema_draft_06_default = {
9
+ $schema: "http://json-schema.org/draft-06/schema#",
10
+ $id: "http://json-schema.org/draft-06/schema#",
11
+ title: "Core schema meta-schema",
12
+ definitions: {
13
+ schemaArray: {
14
+ type: "array",
15
+ minItems: 1,
16
+ items: { $ref: "#" }
17
+ },
18
+ nonNegativeInteger: {
19
+ type: "integer",
20
+ minimum: 0
21
+ },
22
+ nonNegativeIntegerDefault0: {
23
+ allOf: [{ $ref: "#/definitions/nonNegativeInteger" }, { default: 0 }]
24
+ },
25
+ simpleTypes: {
26
+ enum: ["array", "boolean", "integer", "null", "number", "object", "string"]
27
+ },
28
+ stringArray: {
29
+ type: "array",
30
+ items: { type: "string" },
31
+ uniqueItems: true,
32
+ default: []
33
+ }
34
+ },
35
+ type: ["object", "boolean"],
36
+ properties: {
37
+ $id: {
38
+ type: "string",
39
+ format: "uri-reference"
40
+ },
41
+ $schema: {
42
+ type: "string",
43
+ format: "uri"
44
+ },
45
+ $ref: {
46
+ type: "string",
47
+ format: "uri-reference"
48
+ },
49
+ title: {
50
+ type: "string"
51
+ },
52
+ description: {
53
+ type: "string"
54
+ },
55
+ default: {},
56
+ examples: {
57
+ type: "array",
58
+ items: {}
59
+ },
60
+ multipleOf: {
61
+ type: "number",
62
+ exclusiveMinimum: 0
63
+ },
64
+ maximum: {
65
+ type: "number"
66
+ },
67
+ exclusiveMaximum: {
68
+ type: "number"
69
+ },
70
+ minimum: {
71
+ type: "number"
72
+ },
73
+ exclusiveMinimum: {
74
+ type: "number"
75
+ },
76
+ maxLength: { $ref: "#/definitions/nonNegativeInteger" },
77
+ minLength: { $ref: "#/definitions/nonNegativeIntegerDefault0" },
78
+ pattern: {
79
+ type: "string",
80
+ format: "regex"
81
+ },
82
+ additionalItems: { $ref: "#" },
83
+ items: {
84
+ anyOf: [{ $ref: "#" }, { $ref: "#/definitions/schemaArray" }],
85
+ default: {}
86
+ },
87
+ maxItems: { $ref: "#/definitions/nonNegativeInteger" },
88
+ minItems: { $ref: "#/definitions/nonNegativeIntegerDefault0" },
89
+ uniqueItems: {
90
+ type: "boolean",
91
+ default: false
92
+ },
93
+ contains: { $ref: "#" },
94
+ maxProperties: { $ref: "#/definitions/nonNegativeInteger" },
95
+ minProperties: { $ref: "#/definitions/nonNegativeIntegerDefault0" },
96
+ required: { $ref: "#/definitions/stringArray" },
97
+ additionalProperties: { $ref: "#" },
98
+ definitions: {
99
+ type: "object",
100
+ additionalProperties: { $ref: "#" },
101
+ default: {}
102
+ },
103
+ properties: {
104
+ type: "object",
105
+ additionalProperties: { $ref: "#" },
106
+ default: {}
107
+ },
108
+ patternProperties: {
109
+ type: "object",
110
+ additionalProperties: { $ref: "#" },
111
+ default: {}
112
+ },
113
+ dependencies: {
114
+ type: "object",
115
+ additionalProperties: {
116
+ anyOf: [{ $ref: "#" }, { $ref: "#/definitions/stringArray" }]
117
+ }
118
+ },
119
+ propertyNames: { $ref: "#" },
120
+ const: {},
121
+ enum: {
122
+ type: "array",
123
+ minItems: 1,
124
+ uniqueItems: true
125
+ },
126
+ type: {
127
+ anyOf: [
128
+ { $ref: "#/definitions/simpleTypes" },
129
+ {
130
+ type: "array",
131
+ items: { $ref: "#/definitions/simpleTypes" },
132
+ minItems: 1,
133
+ uniqueItems: true
134
+ }
135
+ ]
136
+ },
137
+ format: { type: "string" },
138
+ allOf: { $ref: "#/definitions/schemaArray" },
139
+ anyOf: { $ref: "#/definitions/schemaArray" },
140
+ oneOf: { $ref: "#/definitions/schemaArray" },
141
+ not: { $ref: "#" }
142
+ },
143
+ default: {}
144
+ };
145
+
146
+ // src/json-schema-draft-07.json
147
+ var json_schema_draft_07_default = {
148
+ $schema: "http://json-schema.org/draft-07/schema#",
149
+ $id: "http://json-schema.org/draft-07/schema#",
150
+ title: "Core schema meta-schema",
151
+ definitions: {
152
+ schemaArray: {
153
+ type: "array",
154
+ minItems: 1,
155
+ items: { $ref: "#" }
156
+ },
157
+ nonNegativeInteger: {
158
+ type: "integer",
159
+ minimum: 0
160
+ },
161
+ nonNegativeIntegerDefault0: {
162
+ allOf: [{ $ref: "#/definitions/nonNegativeInteger" }, { default: 0 }]
163
+ },
164
+ simpleTypes: {
165
+ enum: ["array", "boolean", "integer", "null", "number", "object", "string"]
166
+ },
167
+ stringArray: {
168
+ type: "array",
169
+ items: { type: "string" },
170
+ uniqueItems: true,
171
+ default: []
172
+ }
173
+ },
174
+ type: ["object", "boolean"],
175
+ properties: {
176
+ $id: {
177
+ type: "string",
178
+ format: "uri-reference",
179
+ pattern: "^[^#]*#?$"
180
+ },
181
+ $schema: {
182
+ type: "string",
183
+ format: "uri"
184
+ },
185
+ $ref: {
186
+ type: "string",
187
+ format: "uri-reference"
188
+ },
189
+ $comment: {
190
+ type: "string"
191
+ },
192
+ title: {
193
+ type: "string"
194
+ },
195
+ description: {
196
+ type: "string"
197
+ },
198
+ default: true,
199
+ readOnly: {
200
+ type: "boolean",
201
+ default: false
202
+ },
203
+ examples: {
204
+ type: "array",
205
+ items: true
206
+ },
207
+ multipleOf: {
208
+ type: "number",
209
+ exclusiveMinimum: 0
210
+ },
211
+ maximum: {
212
+ type: "number"
213
+ },
214
+ exclusiveMaximum: {
215
+ type: "number"
216
+ },
217
+ minimum: {
218
+ type: "number"
219
+ },
220
+ exclusiveMinimum: {
221
+ type: "number"
222
+ },
223
+ maxLength: { $ref: "#/definitions/nonNegativeInteger" },
224
+ minLength: { $ref: "#/definitions/nonNegativeIntegerDefault0" },
225
+ pattern: {
226
+ type: "string",
227
+ format: "regex"
228
+ },
229
+ additionalItems: { $ref: "#" },
230
+ items: {
231
+ anyOf: [{ $ref: "#" }, { $ref: "#/definitions/schemaArray" }],
232
+ default: true
233
+ },
234
+ maxItems: { $ref: "#/definitions/nonNegativeInteger" },
235
+ minItems: { $ref: "#/definitions/nonNegativeIntegerDefault0" },
236
+ uniqueItems: {
237
+ type: "boolean",
238
+ default: false
239
+ },
240
+ contains: { $ref: "#" },
241
+ maxProperties: { $ref: "#/definitions/nonNegativeInteger" },
242
+ minProperties: { $ref: "#/definitions/nonNegativeIntegerDefault0" },
243
+ required: { $ref: "#/definitions/stringArray" },
244
+ additionalProperties: { $ref: "#" },
245
+ definitions: {
246
+ type: "object",
247
+ additionalProperties: { $ref: "#" },
248
+ default: {}
249
+ },
250
+ properties: {
251
+ type: "object",
252
+ additionalProperties: { $ref: "#" },
253
+ default: {}
254
+ },
255
+ patternProperties: {
256
+ type: "object",
257
+ additionalProperties: { $ref: "#" },
258
+ propertyNames: { format: "regex" },
259
+ default: {}
260
+ },
261
+ dependencies: {
262
+ type: "object",
263
+ additionalProperties: {
264
+ anyOf: [{ $ref: "#" }, { $ref: "#/definitions/stringArray" }]
265
+ }
266
+ },
267
+ propertyNames: { $ref: "#" },
268
+ const: true,
269
+ enum: {
270
+ type: "array",
271
+ items: true,
272
+ minItems: 1,
273
+ uniqueItems: true
274
+ },
275
+ type: {
276
+ anyOf: [
277
+ { $ref: "#/definitions/simpleTypes" },
278
+ {
279
+ type: "array",
280
+ items: { $ref: "#/definitions/simpleTypes" },
281
+ minItems: 1,
282
+ uniqueItems: true
283
+ }
284
+ ]
285
+ },
286
+ format: { type: "string" },
287
+ contentMediaType: { type: "string" },
288
+ contentEncoding: { type: "string" },
289
+ if: { $ref: "#" },
290
+ then: { $ref: "#" },
291
+ else: { $ref: "#" },
292
+ allOf: { $ref: "#/definitions/schemaArray" },
293
+ anyOf: { $ref: "#/definitions/schemaArray" },
294
+ oneOf: { $ref: "#/definitions/schemaArray" },
295
+ not: { $ref: "#" }
296
+ },
297
+ default: true
298
+ };
299
+
300
+ // src/index.import.no-lint.js
301
+ var _draft6 = json_schema_draft_06_default;
302
+ var _draft7 = json_schema_draft_07_default;
303
+
304
+ // src/json-schema-2019-09/schema.json
305
+ var schema_default = {
306
+ $schema: "https://json-schema.org/draft/2019-09/schema",
307
+ $id: "https://json-schema.org/draft/2019-09/schema",
308
+ $vocabulary: {
309
+ "https://json-schema.org/draft/2019-09/vocab/core": true,
310
+ "https://json-schema.org/draft/2019-09/vocab/applicator": true,
311
+ "https://json-schema.org/draft/2019-09/vocab/validation": true,
312
+ "https://json-schema.org/draft/2019-09/vocab/meta-data": true,
313
+ "https://json-schema.org/draft/2019-09/vocab/format": false,
314
+ "https://json-schema.org/draft/2019-09/vocab/content": true
315
+ },
316
+ $recursiveAnchor: true,
317
+ title: "Core and Validation specifications meta-schema",
318
+ allOf: [
319
+ { $ref: "meta/core" },
320
+ { $ref: "meta/applicator" },
321
+ { $ref: "meta/validation" },
322
+ { $ref: "meta/meta-data" },
323
+ { $ref: "meta/format" },
324
+ { $ref: "meta/content" }
325
+ ],
326
+ type: ["object", "boolean"],
327
+ properties: {
328
+ definitions: {
329
+ $comment: "While no longer an official keyword as it is replaced by $defs, this keyword is retained in the meta-schema to prevent incompatible extensions as it remains in common use.",
330
+ type: "object",
331
+ additionalProperties: { $recursiveRef: "#" },
332
+ default: {}
333
+ },
334
+ dependencies: {
335
+ $comment: '"dependencies" is no longer a keyword, but schema authors should avoid redefining it to facilitate a smooth transition to "dependentSchemas" and "dependentRequired"',
336
+ type: "object",
337
+ additionalProperties: {
338
+ anyOf: [{ $recursiveRef: "#" }, { $ref: "meta/validation#/$defs/stringArray" }]
339
+ }
340
+ }
341
+ }
342
+ };
343
+
344
+ // src/json-schema-2019-09/meta/applicator.json
345
+ var applicator_default = {
346
+ $schema: "https://json-schema.org/draft/2019-09/schema",
347
+ $id: "https://json-schema.org/draft/2019-09/meta/applicator",
348
+ $vocabulary: {
349
+ "https://json-schema.org/draft/2019-09/vocab/applicator": true
350
+ },
351
+ $recursiveAnchor: true,
352
+ title: "Applicator vocabulary meta-schema",
353
+ type: ["object", "boolean"],
354
+ properties: {
355
+ additionalItems: { $recursiveRef: "#" },
356
+ unevaluatedItems: { $recursiveRef: "#" },
357
+ items: {
358
+ anyOf: [{ $recursiveRef: "#" }, { $ref: "#/$defs/schemaArray" }]
359
+ },
360
+ contains: { $recursiveRef: "#" },
361
+ additionalProperties: { $recursiveRef: "#" },
362
+ unevaluatedProperties: { $recursiveRef: "#" },
363
+ properties: {
364
+ type: "object",
365
+ additionalProperties: { $recursiveRef: "#" },
366
+ default: {}
367
+ },
368
+ patternProperties: {
369
+ type: "object",
370
+ additionalProperties: { $recursiveRef: "#" },
371
+ propertyNames: { format: "regex" },
372
+ default: {}
373
+ },
374
+ dependentSchemas: {
375
+ type: "object",
376
+ additionalProperties: {
377
+ $recursiveRef: "#"
378
+ }
379
+ },
380
+ propertyNames: { $recursiveRef: "#" },
381
+ if: { $recursiveRef: "#" },
382
+ then: { $recursiveRef: "#" },
383
+ else: { $recursiveRef: "#" },
384
+ allOf: { $ref: "#/$defs/schemaArray" },
385
+ anyOf: { $ref: "#/$defs/schemaArray" },
386
+ oneOf: { $ref: "#/$defs/schemaArray" },
387
+ not: { $recursiveRef: "#" }
388
+ },
389
+ $defs: {
390
+ schemaArray: {
391
+ type: "array",
392
+ minItems: 1,
393
+ items: { $recursiveRef: "#" }
394
+ }
395
+ }
396
+ };
397
+
398
+ // src/json-schema-2019-09/meta/content.json
399
+ var content_default = {
400
+ $schema: "https://json-schema.org/draft/2019-09/schema",
401
+ $id: "https://json-schema.org/draft/2019-09/meta/content",
402
+ $vocabulary: {
403
+ "https://json-schema.org/draft/2019-09/vocab/content": true
404
+ },
405
+ $recursiveAnchor: true,
406
+ title: "Content vocabulary meta-schema",
407
+ type: ["object", "boolean"],
408
+ properties: {
409
+ contentMediaType: { type: "string" },
410
+ contentEncoding: { type: "string" },
411
+ contentSchema: { $recursiveRef: "#" }
412
+ }
413
+ };
414
+
415
+ // src/json-schema-2019-09/meta/core.json
416
+ var core_default = {
417
+ $schema: "https://json-schema.org/draft/2019-09/schema",
418
+ $id: "https://json-schema.org/draft/2019-09/meta/core",
419
+ $vocabulary: {
420
+ "https://json-schema.org/draft/2019-09/vocab/core": true
421
+ },
422
+ $recursiveAnchor: true,
423
+ title: "Core vocabulary meta-schema",
424
+ type: ["object", "boolean"],
425
+ properties: {
426
+ $id: {
427
+ type: "string",
428
+ format: "uri-reference",
429
+ $comment: "Non-empty fragments not allowed.",
430
+ pattern: "^[^#]*#?$"
431
+ },
432
+ $schema: {
433
+ type: "string",
434
+ format: "uri"
435
+ },
436
+ $anchor: {
437
+ type: "string",
438
+ pattern: "^[A-Za-z][-A-Za-z0-9.:_]*$"
439
+ },
440
+ $ref: {
441
+ type: "string",
442
+ format: "uri-reference"
443
+ },
444
+ $recursiveRef: {
445
+ type: "string",
446
+ format: "uri-reference"
447
+ },
448
+ $recursiveAnchor: {
449
+ type: "boolean",
450
+ default: false
451
+ },
452
+ $vocabulary: {
453
+ type: "object",
454
+ propertyNames: {
455
+ type: "string",
456
+ format: "uri"
457
+ },
458
+ additionalProperties: {
459
+ type: "boolean"
460
+ }
461
+ },
462
+ $comment: {
463
+ type: "string"
464
+ },
465
+ $defs: {
466
+ type: "object",
467
+ additionalProperties: { $recursiveRef: "#" },
468
+ default: {}
469
+ }
470
+ }
471
+ };
472
+
473
+ // src/json-schema-2019-09/meta/format.json
474
+ var format_default = {
475
+ $schema: "https://json-schema.org/draft/2019-09/schema",
476
+ $id: "https://json-schema.org/draft/2019-09/meta/format",
477
+ $vocabulary: {
478
+ "https://json-schema.org/draft/2019-09/vocab/format": true
479
+ },
480
+ $recursiveAnchor: true,
481
+ title: "Format vocabulary meta-schema",
482
+ type: ["object", "boolean"],
483
+ properties: {
484
+ format: { type: "string" }
485
+ }
486
+ };
487
+
488
+ // src/json-schema-2019-09/meta/meta-data.json
489
+ var meta_data_default = {
490
+ $schema: "https://json-schema.org/draft/2019-09/schema",
491
+ $id: "https://json-schema.org/draft/2019-09/meta/meta-data",
492
+ $vocabulary: {
493
+ "https://json-schema.org/draft/2019-09/vocab/meta-data": true
494
+ },
495
+ $recursiveAnchor: true,
496
+ title: "Meta-data vocabulary meta-schema",
497
+ type: ["object", "boolean"],
498
+ properties: {
499
+ title: {
500
+ type: "string"
501
+ },
502
+ description: {
503
+ type: "string"
504
+ },
505
+ default: true,
506
+ deprecated: {
507
+ type: "boolean",
508
+ default: false
509
+ },
510
+ readOnly: {
511
+ type: "boolean",
512
+ default: false
513
+ },
514
+ writeOnly: {
515
+ type: "boolean",
516
+ default: false
517
+ },
518
+ examples: {
519
+ type: "array",
520
+ items: true
521
+ }
522
+ }
523
+ };
524
+
525
+ // src/json-schema-2019-09/meta/validation.json
526
+ var validation_default = {
527
+ $schema: "https://json-schema.org/draft/2019-09/schema",
528
+ $id: "https://json-schema.org/draft/2019-09/meta/validation",
529
+ $vocabulary: {
530
+ "https://json-schema.org/draft/2019-09/vocab/validation": true
531
+ },
532
+ $recursiveAnchor: true,
533
+ title: "Validation vocabulary meta-schema",
534
+ type: ["object", "boolean"],
535
+ properties: {
536
+ multipleOf: {
537
+ type: "number",
538
+ exclusiveMinimum: 0
539
+ },
540
+ maximum: {
541
+ type: "number"
542
+ },
543
+ exclusiveMaximum: {
544
+ type: "number"
545
+ },
546
+ minimum: {
547
+ type: "number"
548
+ },
549
+ exclusiveMinimum: {
550
+ type: "number"
551
+ },
552
+ maxLength: { $ref: "#/$defs/nonNegativeInteger" },
553
+ minLength: { $ref: "#/$defs/nonNegativeIntegerDefault0" },
554
+ pattern: {
555
+ type: "string",
556
+ format: "regex"
557
+ },
558
+ maxItems: { $ref: "#/$defs/nonNegativeInteger" },
559
+ minItems: { $ref: "#/$defs/nonNegativeIntegerDefault0" },
560
+ uniqueItems: {
561
+ type: "boolean",
562
+ default: false
563
+ },
564
+ maxContains: { $ref: "#/$defs/nonNegativeInteger" },
565
+ minContains: {
566
+ $ref: "#/$defs/nonNegativeInteger",
567
+ default: 1
568
+ },
569
+ maxProperties: { $ref: "#/$defs/nonNegativeInteger" },
570
+ minProperties: { $ref: "#/$defs/nonNegativeIntegerDefault0" },
571
+ required: { $ref: "#/$defs/stringArray" },
572
+ dependentRequired: {
573
+ type: "object",
574
+ additionalProperties: {
575
+ $ref: "#/$defs/stringArray"
576
+ }
577
+ },
578
+ const: true,
579
+ enum: {
580
+ type: "array",
581
+ items: true
582
+ },
583
+ type: {
584
+ anyOf: [
585
+ { $ref: "#/$defs/simpleTypes" },
586
+ {
587
+ type: "array",
588
+ items: { $ref: "#/$defs/simpleTypes" },
589
+ minItems: 1,
590
+ uniqueItems: true
591
+ }
592
+ ]
593
+ }
594
+ },
595
+ $defs: {
596
+ nonNegativeInteger: {
597
+ type: "integer",
598
+ minimum: 0
599
+ },
600
+ nonNegativeIntegerDefault0: {
601
+ $ref: "#/$defs/nonNegativeInteger",
602
+ default: 0
603
+ },
604
+ simpleTypes: {
605
+ enum: ["array", "boolean", "integer", "null", "number", "object", "string"]
606
+ },
607
+ stringArray: {
608
+ type: "array",
609
+ items: { type: "string" },
610
+ uniqueItems: true,
611
+ default: []
612
+ }
613
+ }
614
+ };
615
+
616
+ // src/json-schema-2019-09/index.import.no-lint.js
617
+ var index_import_no_lint_default = {
618
+ metaSchema: schema_default,
619
+ applicator: applicator_default,
620
+ content: content_default,
621
+ core: core_default,
622
+ format: format_default,
623
+ metadata: meta_data_default,
624
+ validation: validation_default
625
+ };
626
+
627
+ // src/json-schema-2019-09/index.js
628
+ var draft2019 = [
629
+ index_import_no_lint_default.metaSchema,
630
+ index_import_no_lint_default.applicator,
631
+ index_import_no_lint_default.content,
632
+ index_import_no_lint_default.core,
633
+ index_import_no_lint_default.format,
634
+ index_import_no_lint_default.metadata,
635
+ index_import_no_lint_default.validation
636
+ ];
637
+ var json_schema_2019_09_default = draft2019;
638
+
639
+ // src/json-schema-2020-12/schema.json
640
+ var schema_default2 = {
641
+ $schema: "https://json-schema.org/draft/2020-12/schema",
642
+ $id: "https://json-schema.org/draft/2020-12/schema",
643
+ $vocabulary: {
644
+ "https://json-schema.org/draft/2020-12/vocab/core": true,
645
+ "https://json-schema.org/draft/2020-12/vocab/applicator": true,
646
+ "https://json-schema.org/draft/2020-12/vocab/unevaluated": true,
647
+ "https://json-schema.org/draft/2020-12/vocab/validation": true,
648
+ "https://json-schema.org/draft/2020-12/vocab/meta-data": true,
649
+ "https://json-schema.org/draft/2020-12/vocab/format-annotation": true,
650
+ "https://json-schema.org/draft/2020-12/vocab/content": true
651
+ },
652
+ $dynamicAnchor: "meta",
653
+ title: "Core and Validation specifications meta-schema",
654
+ allOf: [
655
+ { $ref: "meta/core" },
656
+ { $ref: "meta/applicator" },
657
+ { $ref: "meta/unevaluated" },
658
+ { $ref: "meta/validation" },
659
+ { $ref: "meta/meta-data" },
660
+ { $ref: "meta/format-annotation" },
661
+ { $ref: "meta/content" }
662
+ ],
663
+ type: ["object", "boolean"],
664
+ $comment: "This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",
665
+ properties: {
666
+ definitions: {
667
+ $comment: '"definitions" has been replaced by "$defs".',
668
+ type: "object",
669
+ additionalProperties: { $dynamicRef: "#meta" },
670
+ deprecated: true,
671
+ default: {}
672
+ },
673
+ dependencies: {
674
+ $comment: '"dependencies" has been split and replaced by "dependentSchemas" and "dependentRequired" in order to serve their differing semantics.',
675
+ type: "object",
676
+ additionalProperties: {
677
+ anyOf: [{ $dynamicRef: "#meta" }, { $ref: "meta/validation#/$defs/stringArray" }]
678
+ },
679
+ deprecated: true,
680
+ default: {}
681
+ },
682
+ $recursiveAnchor: {
683
+ $comment: '"$recursiveAnchor" has been replaced by "$dynamicAnchor".',
684
+ $ref: "meta/core#/$defs/anchorString",
685
+ deprecated: true
686
+ },
687
+ $recursiveRef: {
688
+ $comment: '"$recursiveRef" has been replaced by "$dynamicRef".',
689
+ $ref: "meta/core#/$defs/uriReferenceString",
690
+ deprecated: true
691
+ }
692
+ }
693
+ };
694
+
695
+ // src/json-schema-2020-12/meta/applicator.json
696
+ var applicator_default2 = {
697
+ $schema: "https://json-schema.org/draft/2020-12/schema",
698
+ $id: "https://json-schema.org/draft/2020-12/meta/applicator",
699
+ $vocabulary: {
700
+ "https://json-schema.org/draft/2020-12/vocab/applicator": true
701
+ },
702
+ $dynamicAnchor: "meta",
703
+ title: "Applicator vocabulary meta-schema",
704
+ type: ["object", "boolean"],
705
+ properties: {
706
+ prefixItems: { $ref: "#/$defs/schemaArray" },
707
+ items: { $dynamicRef: "#meta" },
708
+ contains: { $dynamicRef: "#meta" },
709
+ additionalProperties: { $dynamicRef: "#meta" },
710
+ properties: {
711
+ type: "object",
712
+ additionalProperties: { $dynamicRef: "#meta" },
713
+ default: {}
714
+ },
715
+ patternProperties: {
716
+ type: "object",
717
+ additionalProperties: { $dynamicRef: "#meta" },
718
+ propertyNames: { format: "regex" },
719
+ default: {}
720
+ },
721
+ dependentSchemas: {
722
+ type: "object",
723
+ additionalProperties: { $dynamicRef: "#meta" },
724
+ default: {}
725
+ },
726
+ propertyNames: { $dynamicRef: "#meta" },
727
+ if: { $dynamicRef: "#meta" },
728
+ then: { $dynamicRef: "#meta" },
729
+ else: { $dynamicRef: "#meta" },
730
+ allOf: { $ref: "#/$defs/schemaArray" },
731
+ anyOf: { $ref: "#/$defs/schemaArray" },
732
+ oneOf: { $ref: "#/$defs/schemaArray" },
733
+ not: { $dynamicRef: "#meta" }
734
+ },
735
+ $defs: {
736
+ schemaArray: {
737
+ type: "array",
738
+ minItems: 1,
739
+ items: { $dynamicRef: "#meta" }
740
+ }
741
+ }
742
+ };
743
+
744
+ // src/json-schema-2020-12/meta/unevaluated.json
745
+ var unevaluated_default = {
746
+ $schema: "https://json-schema.org/draft/2020-12/schema",
747
+ $id: "https://json-schema.org/draft/2020-12/meta/unevaluated",
748
+ $vocabulary: {
749
+ "https://json-schema.org/draft/2020-12/vocab/unevaluated": true
750
+ },
751
+ $dynamicAnchor: "meta",
752
+ title: "Unevaluated applicator vocabulary meta-schema",
753
+ type: ["object", "boolean"],
754
+ properties: {
755
+ unevaluatedItems: { $dynamicRef: "#meta" },
756
+ unevaluatedProperties: { $dynamicRef: "#meta" }
757
+ }
758
+ };
759
+
760
+ // src/json-schema-2020-12/meta/content.json
761
+ var content_default2 = {
762
+ $schema: "https://json-schema.org/draft/2020-12/schema",
763
+ $id: "https://json-schema.org/draft/2020-12/meta/content",
764
+ $vocabulary: {
765
+ "https://json-schema.org/draft/2020-12/vocab/content": true
766
+ },
767
+ $dynamicAnchor: "meta",
768
+ title: "Content vocabulary meta-schema",
769
+ type: ["object", "boolean"],
770
+ properties: {
771
+ contentEncoding: { type: "string" },
772
+ contentMediaType: { type: "string" },
773
+ contentSchema: { $dynamicRef: "#meta" }
774
+ }
775
+ };
776
+
777
+ // src/json-schema-2020-12/meta/core.json
778
+ var core_default2 = {
779
+ $schema: "https://json-schema.org/draft/2020-12/schema",
780
+ $id: "https://json-schema.org/draft/2020-12/meta/core",
781
+ $vocabulary: {
782
+ "https://json-schema.org/draft/2020-12/vocab/core": true
783
+ },
784
+ $dynamicAnchor: "meta",
785
+ title: "Core vocabulary meta-schema",
786
+ type: ["object", "boolean"],
787
+ properties: {
788
+ $id: {
789
+ $ref: "#/$defs/uriReferenceString",
790
+ $comment: "Non-empty fragments not allowed.",
791
+ pattern: "^[^#]*#?$"
792
+ },
793
+ $schema: { $ref: "#/$defs/uriString" },
794
+ $ref: { $ref: "#/$defs/uriReferenceString" },
795
+ $anchor: { $ref: "#/$defs/anchorString" },
796
+ $dynamicRef: { $ref: "#/$defs/uriReferenceString" },
797
+ $dynamicAnchor: { $ref: "#/$defs/anchorString" },
798
+ $vocabulary: {
799
+ type: "object",
800
+ propertyNames: { $ref: "#/$defs/uriString" },
801
+ additionalProperties: {
802
+ type: "boolean"
803
+ }
804
+ },
805
+ $comment: {
806
+ type: "string"
807
+ },
808
+ $defs: {
809
+ type: "object",
810
+ additionalProperties: { $dynamicRef: "#meta" }
811
+ }
812
+ },
813
+ $defs: {
814
+ anchorString: {
815
+ type: "string",
816
+ pattern: "^[A-Za-z_][-A-Za-z0-9._]*$"
817
+ },
818
+ uriString: {
819
+ type: "string",
820
+ format: "uri"
821
+ },
822
+ uriReferenceString: {
823
+ type: "string",
824
+ format: "uri-reference"
825
+ }
826
+ }
827
+ };
828
+
829
+ // src/json-schema-2020-12/meta/format-annotation.json
830
+ var format_annotation_default = {
831
+ $schema: "https://json-schema.org/draft/2020-12/schema",
832
+ $id: "https://json-schema.org/draft/2020-12/meta/format-annotation",
833
+ $vocabulary: {
834
+ "https://json-schema.org/draft/2020-12/vocab/format-annotation": true
835
+ },
836
+ $dynamicAnchor: "meta",
837
+ title: "Format vocabulary meta-schema for annotation results",
838
+ type: ["object", "boolean"],
839
+ properties: {
840
+ format: { type: "string" }
841
+ }
842
+ };
843
+
844
+ // src/json-schema-2020-12/meta/meta-data.json
845
+ var meta_data_default2 = {
846
+ $schema: "https://json-schema.org/draft/2020-12/schema",
847
+ $id: "https://json-schema.org/draft/2020-12/meta/meta-data",
848
+ $vocabulary: {
849
+ "https://json-schema.org/draft/2020-12/vocab/meta-data": true
850
+ },
851
+ $dynamicAnchor: "meta",
852
+ title: "Meta-data vocabulary meta-schema",
853
+ type: ["object", "boolean"],
854
+ properties: {
855
+ title: {
856
+ type: "string"
857
+ },
858
+ description: {
859
+ type: "string"
860
+ },
861
+ default: true,
862
+ deprecated: {
863
+ type: "boolean",
864
+ default: false
865
+ },
866
+ readOnly: {
867
+ type: "boolean",
868
+ default: false
869
+ },
870
+ writeOnly: {
871
+ type: "boolean",
872
+ default: false
873
+ },
874
+ examples: {
875
+ type: "array",
876
+ items: true
877
+ }
878
+ }
879
+ };
880
+
881
+ // src/json-schema-2020-12/meta/validation.json
882
+ var validation_default2 = {
883
+ $schema: "https://json-schema.org/draft/2020-12/schema",
884
+ $id: "https://json-schema.org/draft/2020-12/meta/validation",
885
+ $vocabulary: {
886
+ "https://json-schema.org/draft/2020-12/vocab/validation": true
887
+ },
888
+ $dynamicAnchor: "meta",
889
+ title: "Validation vocabulary meta-schema",
890
+ type: ["object", "boolean"],
891
+ properties: {
892
+ type: {
893
+ anyOf: [
894
+ { $ref: "#/$defs/simpleTypes" },
895
+ {
896
+ type: "array",
897
+ items: { $ref: "#/$defs/simpleTypes" },
898
+ minItems: 1,
899
+ uniqueItems: true
900
+ }
901
+ ]
902
+ },
903
+ const: true,
904
+ enum: {
905
+ type: "array",
906
+ items: true
907
+ },
908
+ multipleOf: {
909
+ type: "number",
910
+ exclusiveMinimum: 0
911
+ },
912
+ maximum: {
913
+ type: "number"
914
+ },
915
+ exclusiveMaximum: {
916
+ type: "number"
917
+ },
918
+ minimum: {
919
+ type: "number"
920
+ },
921
+ exclusiveMinimum: {
922
+ type: "number"
923
+ },
924
+ maxLength: { $ref: "#/$defs/nonNegativeInteger" },
925
+ minLength: { $ref: "#/$defs/nonNegativeIntegerDefault0" },
926
+ pattern: {
927
+ type: "string",
928
+ format: "regex"
929
+ },
930
+ maxItems: { $ref: "#/$defs/nonNegativeInteger" },
931
+ minItems: { $ref: "#/$defs/nonNegativeIntegerDefault0" },
932
+ uniqueItems: {
933
+ type: "boolean",
934
+ default: false
935
+ },
936
+ maxContains: { $ref: "#/$defs/nonNegativeInteger" },
937
+ minContains: {
938
+ $ref: "#/$defs/nonNegativeInteger",
939
+ default: 1
940
+ },
941
+ maxProperties: { $ref: "#/$defs/nonNegativeInteger" },
942
+ minProperties: { $ref: "#/$defs/nonNegativeIntegerDefault0" },
943
+ required: { $ref: "#/$defs/stringArray" },
944
+ dependentRequired: {
945
+ type: "object",
946
+ additionalProperties: {
947
+ $ref: "#/$defs/stringArray"
948
+ }
949
+ }
950
+ },
951
+ $defs: {
952
+ nonNegativeInteger: {
953
+ type: "integer",
954
+ minimum: 0
955
+ },
956
+ nonNegativeIntegerDefault0: {
957
+ $ref: "#/$defs/nonNegativeInteger",
958
+ default: 0
959
+ },
960
+ simpleTypes: {
961
+ enum: ["array", "boolean", "integer", "null", "number", "object", "string"]
962
+ },
963
+ stringArray: {
964
+ type: "array",
965
+ items: { type: "string" },
966
+ uniqueItems: true,
967
+ default: []
968
+ }
969
+ }
970
+ };
971
+
972
+ // src/json-schema-2020-12/index.import.no-lint.js
973
+ var index_import_no_lint_default2 = {
974
+ metaSchema: schema_default2,
975
+ applicator: applicator_default2,
976
+ unevaluated: unevaluated_default,
977
+ content: content_default2,
978
+ core: core_default2,
979
+ format: format_annotation_default,
980
+ metadata: meta_data_default2,
981
+ validation: validation_default2
982
+ };
983
+
984
+ // src/json-schema-2020-12/index.js
985
+ var draft2020 = [
986
+ index_import_no_lint_default2.metaSchema,
987
+ index_import_no_lint_default2.applicator,
988
+ index_import_no_lint_default2.unevaluated,
989
+ index_import_no_lint_default2.content,
990
+ index_import_no_lint_default2.core,
991
+ index_import_no_lint_default2.format,
992
+ index_import_no_lint_default2.metadata,
993
+ index_import_no_lint_default2.validation
994
+ ];
995
+ var json_schema_2020_12_default = draft2020;
996
+
997
+ // src/index.js
998
+ var schemaDrafts = {
999
+ 6: { draft: "http://json-schema.org/draft-06/schema", schema: [_draft6] },
1000
+ 7: { draft: "http://json-schema.org/draft-07/schema", schema: [_draft7] },
1001
+ 2019: { draft: "https://json-schema.org/draft/2019-09/schema", schema: json_schema_2019_09_default },
1002
+ 2020: { draft: "https://json-schema.org/draft/2020-12/schema", schema: json_schema_2020_12_default }
1003
+ };
1004
+ function getSchemaDraftByVersion(version) {
1005
+ if (version in schemaDrafts)
1006
+ return schemaDrafts[version];
1007
+ else
1008
+ throw new Error("Unknown reference schema version");
1009
+ }
1010
+ function getSchemaDraftByName(name) {
1011
+ switch (name) {
1012
+ case "6":
1013
+ case "draft6":
1014
+ case "draft-6":
1015
+ case "draft06":
1016
+ case "draft-06":
1017
+ return getSchemaDraftByVersion(6);
1018
+ case "7":
1019
+ case "draft7":
1020
+ case "draft-7":
1021
+ case "draft07":
1022
+ case "draft-07":
1023
+ return getSchemaDraftByVersion(7);
1024
+ case "draft2019":
1025
+ case "draft-2019":
1026
+ case "2019":
1027
+ case "2019-09":
1028
+ return getSchemaDraftByVersion(2019);
1029
+ case "draft2020":
1030
+ case "draft-2020":
1031
+ case "2020":
1032
+ case "2020-12":
1033
+ return getSchemaDraftByVersion(2020);
1034
+ default:
1035
+ throw new Error(`Unknown reference schema name: '${name}'`);
1036
+ }
1037
+ }
1038
+ function getSchemaDraftById(id) {
1039
+ if (!isStringType())
1040
+ throw new Error("The schema id must be of type string");
1041
+ const $id = id.toLowerCase();
1042
+ for (const [_, item] of Object.entries(schemaDrafts)) {
1043
+ const draft = item.draft;
1044
+ if (draft.toLowerCase() === $id)
1045
+ return item;
1046
+ }
1047
+ throw new Error(`Schema draft with id '${id}' does not exists`);
1048
+ }
1049
+ export {
1050
+ getSchemaDraftById,
1051
+ getSchemaDraftByName,
1052
+ getSchemaDraftByVersion
1053
+ };
1054
+ //# sourceMappingURL=index.js.map