@speclynx/apidom-ns-json-schema-2020-12 1.12.1

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.
Files changed (41) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/LICENSE +202 -0
  3. package/LICENSES/AFL-3.0.txt +182 -0
  4. package/LICENSES/Apache-2.0.txt +202 -0
  5. package/LICENSES/BSD-3-Clause.txt +26 -0
  6. package/LICENSES/MIT.txt +9 -0
  7. package/NOTICE +65 -0
  8. package/README.md +186 -0
  9. package/dist/apidom-ns-json-schema-2020-12.browser.js +1 -0
  10. package/package.json +65 -0
  11. package/src/elements/JSONSchema.cjs +60 -0
  12. package/src/elements/JSONSchema.mjs +57 -0
  13. package/src/elements/LinkDescription.cjs +48 -0
  14. package/src/elements/LinkDescription.mjs +44 -0
  15. package/src/index.cjs +61 -0
  16. package/src/index.mjs +26 -0
  17. package/src/media-types.cjs +34 -0
  18. package/src/media-types.mjs +30 -0
  19. package/src/namespace.cjs +21 -0
  20. package/src/namespace.mjs +16 -0
  21. package/src/predicates.cjs +29 -0
  22. package/src/predicates.mjs +24 -0
  23. package/src/refractor/index.cjs +54 -0
  24. package/src/refractor/index.mjs +48 -0
  25. package/src/refractor/plugins/replace-empty-element.cjs +264 -0
  26. package/src/refractor/plugins/replace-empty-element.mjs +257 -0
  27. package/src/refractor/registration.cjs +13 -0
  28. package/src/refractor/registration.mjs +6 -0
  29. package/src/refractor/specification.cjs +16 -0
  30. package/src/refractor/specification.mjs +11 -0
  31. package/src/refractor/toolbox.cjs +21 -0
  32. package/src/refractor/toolbox.mjs +15 -0
  33. package/src/refractor/visitors/json-schema/PrefixItemsVisitor.cjs +30 -0
  34. package/src/refractor/visitors/json-schema/PrefixItemsVisitor.mjs +27 -0
  35. package/src/refractor/visitors/json-schema/index.cjs +20 -0
  36. package/src/refractor/visitors/json-schema/index.mjs +15 -0
  37. package/src/refractor/visitors/json-schema/link-description/index.cjs +17 -0
  38. package/src/refractor/visitors/json-schema/link-description/index.mjs +12 -0
  39. package/src/traversal/visitor.cjs +15 -0
  40. package/src/traversal/visitor.mjs +10 -0
  41. package/types/apidom-ns-json-schema-2020-12.d.ts +475 -0
@@ -0,0 +1,475 @@
1
+ import { $defsVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
2
+ import { $defsVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
3
+ import { $refVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
4
+ import { $refVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
5
+ import { $vocabularyVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
6
+ import { $vocabularyVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
7
+ import { AllOfVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
8
+ import { AllOfVisitor as AllOfVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
9
+ import { AllOfVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
10
+ import { AlternatingVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
11
+ import { AlternatingVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
12
+ import { AnyOfVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
13
+ import { AnyOfVisitor as AnyOfVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
14
+ import { AnyOfVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
15
+ import { ArrayElement } from '@speclynx/apidom-core';
16
+ import { Attributes } from '@speclynx/apidom-core';
17
+ import { BooleanElement } from '@speclynx/apidom-core';
18
+ import { Class } from 'ts-mixer/dist/types/types.js';
19
+ import { DefinitionsVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
20
+ import { DependenciesVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
21
+ import { DependentRequiredVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
22
+ import { DependentRequiredVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
23
+ import { DependentSchemasVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
24
+ import { DependentSchemasVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
25
+ import { Element as Element_2 } from '@speclynx/apidom-core';
26
+ import { ElementPredicate } from '@speclynx/apidom-core';
27
+ import { EnumVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
28
+ import { FallbackVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
29
+ import { FallbackVisitor as FallbackVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
30
+ import { FallbackVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
31
+ import { FixedFieldsVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
32
+ import { FixedFieldsVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
33
+ import { isArrayElement } from '@speclynx/apidom-core';
34
+ import { isBooleanElement } from '@speclynx/apidom-core';
35
+ import { isElement } from '@speclynx/apidom-core';
36
+ import { isLinkElement } from '@speclynx/apidom-core';
37
+ import { isMemberElement } from '@speclynx/apidom-core';
38
+ import { isNullElement } from '@speclynx/apidom-core';
39
+ import { isNumberElement } from '@speclynx/apidom-core';
40
+ import { isObjectElement } from '@speclynx/apidom-core';
41
+ import { isRefElement } from '@speclynx/apidom-core';
42
+ import { isStringElement } from '@speclynx/apidom-core';
43
+ import { ItemsVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
44
+ import { ItemsVisitor as ItemsVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
45
+ import { ItemsVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
46
+ import { JSONReference$RefVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
47
+ import { JSONReferenceVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
48
+ import { JSONSchemaElement as JSONSchemaElement_2 } from '@speclynx/apidom-ns-json-schema-2019-09';
49
+ import { JSONSchemaVisitor as JSONSchemaVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
50
+ import { JSONSchemaVisitor as JSONSchemaVisitor_3 } from '@speclynx/apidom-ns-json-schema-2019-09';
51
+ import { JSONSchemaVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
52
+ import { LinkDescriptionElement as LinkDescriptionElement_2 } from '@speclynx/apidom-ns-json-schema-2019-09';
53
+ import { LinkDescriptionVisitor as LinkDescriptionVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
54
+ import { LinkDescriptionVisitor as LinkDescriptionVisitor_3 } from '@speclynx/apidom-ns-json-schema-2019-09';
55
+ import { LinkDescriptionVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
56
+ import { LinksVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
57
+ import { MapVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
58
+ import { MapVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
59
+ import { MediaTypes } from '@speclynx/apidom-core';
60
+ import { MediaVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
61
+ import { Meta } from '@speclynx/apidom-core';
62
+ import { Namespace } from 'minim';
63
+ import { NamespacePluginOptions } from '@speclynx/apidom-core';
64
+ import { OneOfVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
65
+ import { OneOfVisitor as OneOfVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
66
+ import { OneOfVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
67
+ import { ParentSchemaAwareVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
68
+ import { ParentSchemaAwareVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
69
+ import { PatternedFieldsVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
70
+ import { PatternedFieldsVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
71
+ import { PatternPropertiesVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
72
+ import { PatternPropertiesVisitor as PatternPropertiesVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
73
+ import { PatternPropertiesVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
74
+ import { PropertiesVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
75
+ import { PropertiesVisitor as PropertiesVisitor_2 } from '@speclynx/apidom-ns-json-schema-draft-4';
76
+ import { PropertiesVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
77
+ import { RequiredVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
78
+ import { SchemaOrReferenceVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
79
+ import { specificationObj as specificationObj_2 } from '@speclynx/apidom-ns-json-schema-2019-09';
80
+ import { SpecificationVisitor } from '@speclynx/apidom-ns-json-schema-2019-09';
81
+ import { SpecificationVisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
82
+ import { SpecPath } from '@speclynx/apidom-ns-json-schema-2019-09';
83
+ import { StringElement } from '@speclynx/apidom-core';
84
+ import { TypeVisitor } from '@speclynx/apidom-ns-json-schema-draft-4';
85
+ import { Visitor } from '@speclynx/apidom-ns-json-schema-2019-09';
86
+ import { VisitorOptions } from '@speclynx/apidom-ns-json-schema-2019-09';
87
+
88
+ export { $defsVisitor }
89
+
90
+ export { $defsVisitorOptions }
91
+
92
+ export { $refVisitor }
93
+
94
+ export { $refVisitorOptions }
95
+
96
+ export { $vocabularyVisitor }
97
+
98
+ export { $vocabularyVisitorOptions }
99
+
100
+ export { AllOfVisitor }
101
+
102
+ export { AllOfVisitorOptions }
103
+
104
+ export { AlternatingVisitor }
105
+
106
+ export { AlternatingVisitorOptions }
107
+
108
+ export { AnyOfVisitor }
109
+
110
+ export { AnyOfVisitorOptions }
111
+
112
+ /**
113
+ * @public
114
+ */
115
+ export declare const createRefractor: (specPath: string[]) => (value: unknown, options?: {}) => Element_2;
116
+
117
+ export { DependentRequiredVisitor }
118
+
119
+ export { DependentRequiredVisitorOptions }
120
+
121
+ export { DependentSchemasVisitor }
122
+
123
+ export { DependentSchemasVisitorOptions }
124
+
125
+ export { FallbackVisitor }
126
+
127
+ export { FallbackVisitorOptions }
128
+
129
+ export { FixedFieldsVisitor }
130
+
131
+ export { FixedFieldsVisitorOptions }
132
+
133
+ /**
134
+ * @public
135
+ */
136
+ export declare type Format = 'generic' | 'json' | 'yaml';
137
+
138
+ export { isArrayElement }
139
+
140
+ export { isBooleanElement }
141
+
142
+ export { isElement }
143
+
144
+ /**
145
+ * @public
146
+ */
147
+ export declare const isJSONSchemaElement: ElementPredicate<JSONSchemaElement>;
148
+
149
+ /**
150
+ * @public
151
+ */
152
+ export declare const isLinkDescriptionElement: ElementPredicate<LinkDescriptionElement>;
153
+
154
+ export { isLinkElement }
155
+
156
+ export { isMemberElement }
157
+
158
+ export { isNullElement }
159
+
160
+ export { isNumberElement }
161
+
162
+ export { isObjectElement }
163
+
164
+ export { isRefElement }
165
+
166
+ export { isStringElement }
167
+
168
+ export { ItemsVisitor }
169
+
170
+ export { ItemsVisitorOptions }
171
+
172
+ /**
173
+ * @public
174
+ */
175
+ declare const jsonSchema202012: {
176
+ namespace: (options: NamespacePluginOptions) => Namespace;
177
+ };
178
+ export default jsonSchema202012;
179
+
180
+ /**
181
+ * @public
182
+ */
183
+ export declare class JSONSchema202012MediaTypes extends MediaTypes<string> {
184
+ filterByFormat(format?: Format): string[];
185
+ findBy(version?: string, format?: Format): string;
186
+ latest(format?: Format): string;
187
+ }
188
+
189
+ /**
190
+ * @public
191
+ */
192
+ export declare class JSONSchemaElement extends JSONSchemaElement_2 {
193
+ constructor(content?: Record<string, unknown>, meta?: Meta, attributes?: Attributes);
194
+ /**
195
+ * Core vocabulary
196
+ *
197
+ * URI: https://json-schema.org/draft/2020-12/vocab/core
198
+ */
199
+ get $dynamicAnchor(): StringElement | undefined;
200
+ set $dynamicAnchor($dynamicAnchor: StringElement | undefined);
201
+ get $recursiveAnchor(): BooleanElement | undefined;
202
+ set $recursiveAnchor($recursiveAnchor: BooleanElement | undefined);
203
+ get $dynamicRef(): StringElement | undefined;
204
+ set $dynamicRef($dynamicRef: StringElement | undefined);
205
+ get $recursiveRef(): StringElement | undefined;
206
+ set $recursiveRef($recursiveRef: StringElement | undefined);
207
+ /**
208
+ * Applicator vocabulary
209
+ *
210
+ * URI: https://json-schema.org/draft/2020-12/vocab/applicator
211
+ */
212
+ get prefixItems(): ArrayElement | undefined;
213
+ set prefixItems(prefixItems: ArrayElement | undefined);
214
+ }
215
+
216
+ /**
217
+ * @public
218
+ */
219
+ export declare class JSONSchemaVisitor extends JSONSchemaVisitor_3 {
220
+ element: JSONSchemaElement;
221
+ constructor(options: JSONSchemaVisitorOptions);
222
+ get defaultDialectIdentifier(): string;
223
+ }
224
+
225
+ export { JSONSchemaVisitorOptions }
226
+
227
+ /**
228
+ * URI: https://json-schema.org/draft/2019-09/draft-handrews-json-schema-hyperschema-02#rfc.section.6
229
+ * @public
230
+ */
231
+ export declare class LinkDescriptionElement extends LinkDescriptionElement_2 {
232
+ /**
233
+ * Link Target Attributes.
234
+ *
235
+ * URI: https://json-schema.org/draft/2019-09/draft-handrews-json-schema-hyperschema-02#rfc.section.6.5
236
+ */
237
+ get targetSchema(): JSONSchemaElement | BooleanElement | undefined;
238
+ set targetSchema(targetSchema: JSONSchemaElement | BooleanElement | undefined);
239
+ /**
240
+ * Link Input.
241
+ *
242
+ * URI: https://json-schema.org/draft/2019-09/draft-handrews-json-schema-hyperschema-02#input
243
+ */
244
+ get hrefSchema(): JSONSchemaElement | BooleanElement | undefined;
245
+ set hrefSchema(hrefSchema: JSONSchemaElement | BooleanElement | undefined);
246
+ get headerSchema(): JSONSchemaElement | BooleanElement | undefined;
247
+ set headerSchema(headerSchema: JSONSchemaElement | BooleanElement | undefined);
248
+ get submissionSchema(): JSONSchemaElement | BooleanElement | undefined;
249
+ set submissionSchema(submissionSchema: JSONSchemaElement | BooleanElement | undefined);
250
+ }
251
+
252
+ /**
253
+ * @public
254
+ */
255
+ export declare class LinkDescriptionVisitor extends LinkDescriptionVisitor_3 {
256
+ readonly element: LinkDescriptionElement;
257
+ constructor(options: LinkDescriptionVisitorOptions);
258
+ }
259
+
260
+ export { LinkDescriptionVisitorOptions }
261
+
262
+ export { MapVisitor }
263
+
264
+ export { MapVisitorOptions }
265
+
266
+ /**
267
+ * @public
268
+ */
269
+ export declare const mediaTypes: JSONSchema202012MediaTypes;
270
+
271
+ export { OneOfVisitor }
272
+
273
+ export { OneOfVisitorOptions }
274
+
275
+ export { ParentSchemaAwareVisitor }
276
+
277
+ export { ParentSchemaAwareVisitorOptions }
278
+
279
+ export { PatternedFieldsVisitor }
280
+
281
+ export { PatternedFieldsVisitorOptions }
282
+
283
+ export { PatternPropertiesVisitor }
284
+
285
+ export { PatternPropertiesVisitorOptions }
286
+
287
+ /**
288
+ * @public
289
+ */
290
+ export declare class PrefixItemsVisitor extends PrefixItemsVisitor_base {
291
+ readonly element: ArrayElement;
292
+ constructor(options: PrefixItemsVisitorOptions);
293
+ ArrayElement(arrayElement: ArrayElement): {};
294
+ }
295
+
296
+ declare const PrefixItemsVisitor_base: Class<any[], SpecificationVisitor & ParentSchemaAwareVisitor & FallbackVisitor, typeof SpecificationVisitor & typeof ParentSchemaAwareVisitor & typeof FallbackVisitor>;
297
+
298
+ /**
299
+ * @public
300
+ */
301
+ export declare interface PrefixItemsVisitorOptions extends SpecificationVisitorOptions, ParentSchemaAwareVisitorOptions, FallbackVisitorOptions {
302
+ }
303
+
304
+ export { PropertiesVisitor }
305
+
306
+ export { PropertiesVisitorOptions }
307
+
308
+ /**
309
+ * @public
310
+ */
311
+ export declare const refract: <T extends Element_2>(value: unknown, { specPath, plugins, specificationObj, }?: {
312
+ specPath?: string[] | undefined;
313
+ plugins?: never[] | undefined;
314
+ specificationObj?: {
315
+ visitors: {
316
+ value: FallbackVisitor_2;
317
+ JSONSchemaOrJSONReferenceVisitor: SchemaOrReferenceVisitor;
318
+ document: {
319
+ objects: {
320
+ JSONSchema: {
321
+ $visitor: JSONSchemaVisitor_2;
322
+ fixedFields: {
323
+ id: {
324
+ $ref: string;
325
+ };
326
+ $schema: {
327
+ $ref: string;
328
+ };
329
+ multipleOf: {
330
+ $ref: string;
331
+ };
332
+ maximum: {
333
+ $ref: string;
334
+ };
335
+ exclusiveMaximum: {
336
+ $ref: string;
337
+ };
338
+ minimum: {
339
+ $ref: string;
340
+ };
341
+ exclusiveMinimum: {
342
+ $ref: string;
343
+ };
344
+ maxLength: {
345
+ $ref: string;
346
+ };
347
+ minLength: {
348
+ $ref: string;
349
+ };
350
+ pattern: {
351
+ $ref: string;
352
+ };
353
+ additionalItems: SchemaOrReferenceVisitor;
354
+ items: ItemsVisitor_2;
355
+ maxItems: {
356
+ $ref: string;
357
+ };
358
+ minItems: {
359
+ $ref: string;
360
+ };
361
+ uniqueItems: {
362
+ $ref: string;
363
+ };
364
+ maxProperties: {
365
+ $ref: string;
366
+ };
367
+ minProperties: {
368
+ $ref: string;
369
+ };
370
+ required: RequiredVisitor;
371
+ properties: PropertiesVisitor_2;
372
+ additionalProperties: SchemaOrReferenceVisitor;
373
+ patternProperties: PatternPropertiesVisitor_2;
374
+ dependencies: DependenciesVisitor;
375
+ enum: EnumVisitor;
376
+ type: TypeVisitor;
377
+ allOf: AllOfVisitor_2;
378
+ anyOf: AnyOfVisitor_2;
379
+ oneOf: OneOfVisitor_2;
380
+ not: SchemaOrReferenceVisitor;
381
+ definitions: DefinitionsVisitor;
382
+ title: {
383
+ $ref: string;
384
+ };
385
+ description: {
386
+ $ref: string;
387
+ };
388
+ default: {
389
+ $ref: string;
390
+ };
391
+ format: {
392
+ $ref: string;
393
+ };
394
+ base: {
395
+ $ref: string;
396
+ };
397
+ links: LinksVisitor;
398
+ media: {
399
+ $ref: string;
400
+ };
401
+ readOnly: {
402
+ $ref: string;
403
+ };
404
+ };
405
+ };
406
+ JSONReference: {
407
+ $visitor: JSONReferenceVisitor;
408
+ fixedFields: {
409
+ $ref: JSONReference$RefVisitor;
410
+ };
411
+ };
412
+ Media: {
413
+ $visitor: MediaVisitor;
414
+ fixedFields: {
415
+ binaryEncoding: {
416
+ $ref: string;
417
+ };
418
+ type: {
419
+ $ref: string;
420
+ };
421
+ };
422
+ };
423
+ LinkDescription: {
424
+ $visitor: LinkDescriptionVisitor_2;
425
+ fixedFields: {
426
+ href: {
427
+ $ref: string;
428
+ };
429
+ rel: {
430
+ $ref: string;
431
+ };
432
+ title: {
433
+ $ref: string;
434
+ };
435
+ targetSchema: SchemaOrReferenceVisitor;
436
+ mediaType: {
437
+ $ref: string;
438
+ };
439
+ method: {
440
+ $ref: string;
441
+ };
442
+ encType: {
443
+ $ref: string;
444
+ };
445
+ schema: SchemaOrReferenceVisitor;
446
+ };
447
+ };
448
+ };
449
+ };
450
+ };
451
+ } | undefined;
452
+ }) => T;
453
+
454
+ /**
455
+ * @public
456
+ */
457
+ export declare const refractorPluginReplaceEmptyElement: () => () => {
458
+ visitor: {
459
+ StringElement(element: StringElement, key: any, parent: any, path: any, ancestors: any[]): any;
460
+ };
461
+ };
462
+
463
+ export declare const specificationObj: typeof specificationObj_2;
464
+
465
+ export { SpecificationVisitor }
466
+
467
+ export { SpecificationVisitorOptions }
468
+
469
+ export { SpecPath }
470
+
471
+ export { Visitor }
472
+
473
+ export { VisitorOptions }
474
+
475
+ export { }