@speclynx/apidom-ns-json-schema-draft-4 3.2.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/apidom-ns-json-schema-draft-4.browser.js +24 -20
- package/package.json +5 -5
- package/src/elements/JSONReference.cjs +0 -29
- package/src/elements/JSONReference.mjs +0 -25
- package/src/elements/JSONSchema.cjs +0 -296
- package/src/elements/JSONSchema.mjs +0 -292
- package/src/elements/LinkDescription.cjs +0 -65
- package/src/elements/LinkDescription.mjs +0 -61
- package/src/elements/Media.cjs +0 -29
- package/src/elements/Media.mjs +0 -25
- package/src/index.cjs +0 -69
- package/src/index.mjs +0 -23
- package/src/media-types.cjs +0 -34
- package/src/media-types.mjs +0 -30
- package/src/namespace.cjs +0 -25
- package/src/namespace.mjs +0 -20
- package/src/predicates.cjs +0 -32
- package/src/predicates.mjs +0 -23
- package/src/refractor/index.cjs +0 -96
- package/src/refractor/index.mjs +0 -85
- package/src/refractor/inspect.cjs +0 -55
- package/src/refractor/inspect.mjs +0 -47
- package/src/refractor/plugins/replace-empty-element.cjs +0 -208
- package/src/refractor/plugins/replace-empty-element.mjs +0 -202
- package/src/refractor/predicates.cjs +0 -16
- package/src/refractor/predicates.mjs +0 -12
- package/src/refractor/specification.cjs +0 -193
- package/src/refractor/specification.mjs +0 -188
- package/src/refractor/toolbox.cjs +0 -28
- package/src/refractor/toolbox.mjs +0 -21
- package/src/refractor/visitors/FallbackVisitor.cjs +0 -25
- package/src/refractor/visitors/FallbackVisitor.mjs +0 -19
- package/src/refractor/visitors/SpecificationVisitor.cjs +0 -75
- package/src/refractor/visitors/SpecificationVisitor.mjs +0 -69
- package/src/refractor/visitors/Visitor.cjs +0 -36
- package/src/refractor/visitors/Visitor.mjs +0 -33
- package/src/refractor/visitors/generics/AlternatingVisitor.cjs +0 -42
- package/src/refractor/visitors/generics/AlternatingVisitor.mjs +0 -35
- package/src/refractor/visitors/generics/FixedFieldsVisitor.cjs +0 -57
- package/src/refractor/visitors/generics/FixedFieldsVisitor.mjs +0 -50
- package/src/refractor/visitors/generics/MapVisitor.cjs +0 -21
- package/src/refractor/visitors/generics/MapVisitor.mjs +0 -15
- package/src/refractor/visitors/generics/PatternedFieldsVisitor.cjs +0 -58
- package/src/refractor/visitors/generics/PatternedFieldsVisitor.mjs +0 -52
- package/src/refractor/visitors/json-schema/AllOfVisitor.cjs +0 -32
- package/src/refractor/visitors/json-schema/AllOfVisitor.mjs +0 -27
- package/src/refractor/visitors/json-schema/AnyOfVisitor.cjs +0 -32
- package/src/refractor/visitors/json-schema/AnyOfVisitor.mjs +0 -27
- package/src/refractor/visitors/json-schema/DefinitionsVisitor.cjs +0 -23
- package/src/refractor/visitors/json-schema/DefinitionsVisitor.mjs +0 -18
- package/src/refractor/visitors/json-schema/DependenciesVisitor.cjs +0 -23
- package/src/refractor/visitors/json-schema/DependenciesVisitor.mjs +0 -18
- package/src/refractor/visitors/json-schema/EnumVisitor.cjs +0 -16
- package/src/refractor/visitors/json-schema/EnumVisitor.mjs +0 -11
- package/src/refractor/visitors/json-schema/ItemsVisitor.cjs +0 -35
- package/src/refractor/visitors/json-schema/ItemsVisitor.mjs +0 -30
- package/src/refractor/visitors/json-schema/JSONSchemaOrJSONReferenceVisitor.cjs +0 -24
- package/src/refractor/visitors/json-schema/JSONSchemaOrJSONReferenceVisitor.mjs +0 -19
- package/src/refractor/visitors/json-schema/LinksVisitor.cjs +0 -30
- package/src/refractor/visitors/json-schema/LinksVisitor.mjs +0 -25
- package/src/refractor/visitors/json-schema/OneOfVisitor.cjs +0 -32
- package/src/refractor/visitors/json-schema/OneOfVisitor.mjs +0 -27
- package/src/refractor/visitors/json-schema/ParentSchemaAwareVisitor.cjs +0 -20
- package/src/refractor/visitors/json-schema/ParentSchemaAwareVisitor.mjs +0 -16
- package/src/refractor/visitors/json-schema/PatternPropertiesVisitor.cjs +0 -23
- package/src/refractor/visitors/json-schema/PatternPropertiesVisitor.mjs +0 -18
- package/src/refractor/visitors/json-schema/PropertiesVisitor.cjs +0 -23
- package/src/refractor/visitors/json-schema/PropertiesVisitor.mjs +0 -18
- package/src/refractor/visitors/json-schema/RequiredVisitor.cjs +0 -16
- package/src/refractor/visitors/json-schema/RequiredVisitor.mjs +0 -11
- package/src/refractor/visitors/json-schema/TypeVisitor.cjs +0 -20
- package/src/refractor/visitors/json-schema/TypeVisitor.mjs +0 -15
- package/src/refractor/visitors/json-schema/bases.cjs +0 -45
- package/src/refractor/visitors/json-schema/bases.mjs +0 -39
- package/src/refractor/visitors/json-schema/index.cjs +0 -65
- package/src/refractor/visitors/json-schema/index.mjs +0 -59
- package/src/refractor/visitors/json-schema/json-reference/$RefVisitor.cjs +0 -16
- package/src/refractor/visitors/json-schema/json-reference/$RefVisitor.mjs +0 -11
- package/src/refractor/visitors/json-schema/json-reference/index.cjs +0 -33
- package/src/refractor/visitors/json-schema/json-reference/index.mjs +0 -27
- package/src/refractor/visitors/json-schema/link-description/index.cjs +0 -23
- package/src/refractor/visitors/json-schema/link-description/index.mjs +0 -17
- package/src/refractor/visitors/json-schema/media/index.cjs +0 -23
- package/src/refractor/visitors/json-schema/media/index.mjs +0 -17
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.default = void 0;
|
|
6
|
-
var _ramda = require("ramda");
|
|
7
|
-
var _ramdaAdjunct = require("ramda-adjunct");
|
|
8
|
-
var _apidomDatamodel = require("@speclynx/apidom-datamodel");
|
|
9
|
-
var _apidomCore = require("@speclynx/apidom-core");
|
|
10
|
-
var _FixedFieldsVisitor = _interopRequireDefault(require("../generics/FixedFieldsVisitor.cjs"));
|
|
11
|
-
var _bases = require("./bases.cjs");
|
|
12
|
-
var _JSONSchema = _interopRequireDefault(require("../../../elements/JSONSchema.cjs"));
|
|
13
|
-
var _predicates = require("../../../predicates.cjs");
|
|
14
|
-
/**
|
|
15
|
-
* @public
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @public
|
|
20
|
-
*/
|
|
21
|
-
class JSONSchemaVisitor extends _bases.JSONSchemaVisitorBase {
|
|
22
|
-
constructor(options) {
|
|
23
|
-
super(options);
|
|
24
|
-
this.element = new _JSONSchema.default();
|
|
25
|
-
this.consumeSafe = true;
|
|
26
|
-
this.specPath = (0, _ramda.always)(['document', 'objects', 'JSONSchema']);
|
|
27
|
-
}
|
|
28
|
-
get defaultDialectIdentifier() {
|
|
29
|
-
return 'http://json-schema.org/draft-04/schema#';
|
|
30
|
-
}
|
|
31
|
-
ObjectElement(path) {
|
|
32
|
-
const objectElement = path.node;
|
|
33
|
-
this.handleDialectIdentifier(objectElement);
|
|
34
|
-
this.handleSchemaIdentifier(objectElement);
|
|
35
|
-
|
|
36
|
-
// for further processing consider this JSONSchema Element as parent for all sub-schemas
|
|
37
|
-
this.parent = this.element;
|
|
38
|
-
return _FixedFieldsVisitor.default.prototype.ObjectElement.call(this, path);
|
|
39
|
-
}
|
|
40
|
-
handleDialectIdentifier(objectElement) {
|
|
41
|
-
// handle $schema keyword in embedded resources
|
|
42
|
-
if ((0, _ramdaAdjunct.isUndefined)(this.parent) && !(0, _apidomDatamodel.isStringElement)(objectElement.get('$schema'))) {
|
|
43
|
-
// no parent available and no $schema is defined, set default $schema
|
|
44
|
-
this.element.meta.set('inheritedDialectIdentifier', this.defaultDialectIdentifier);
|
|
45
|
-
} else if ((0, _predicates.isJSONSchemaElement)(this.parent) && !(0, _apidomDatamodel.isStringElement)(objectElement.get('$schema'))) {
|
|
46
|
-
// parent is available and no $schema is defined, set parent $schema
|
|
47
|
-
const inheritedDialectIdentifier = (0, _ramda.defaultTo)(this.parent.meta.get('inheritedDialectIdentifier'), (0, _apidomCore.toValue)(this.parent.$schema));
|
|
48
|
-
this.element.meta.set('inheritedDialectIdentifier', inheritedDialectIdentifier);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
handleSchemaIdentifier(objectElement, identifierKeyword = 'id') {
|
|
52
|
-
// handle schema identifier in embedded resources
|
|
53
|
-
// fetch parent's ancestorsSchemaIdentifiers (stored as plain string[])
|
|
54
|
-
const ancestorsSchemaIdentifiers = this.parent !== undefined ? [...(this.parent.meta.get('ancestorsSchemaIdentifiers') ?? [])] : [];
|
|
55
|
-
// get current schema identifier
|
|
56
|
-
const schemaIdentifier = (0, _apidomCore.toValue)(objectElement.get(identifierKeyword));
|
|
57
|
-
|
|
58
|
-
// remember schema identifier if it's a non-empty string
|
|
59
|
-
if ((0, _ramdaAdjunct.isNonEmptyString)(schemaIdentifier)) {
|
|
60
|
-
ancestorsSchemaIdentifiers.push(schemaIdentifier);
|
|
61
|
-
}
|
|
62
|
-
this.element.meta.set('ancestorsSchemaIdentifiers', ancestorsSchemaIdentifiers);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
var _default = exports.default = JSONSchemaVisitor;
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { always, defaultTo } from 'ramda';
|
|
2
|
-
import { isNonEmptyString, isUndefined } from 'ramda-adjunct';
|
|
3
|
-
import { isStringElement } from '@speclynx/apidom-datamodel';
|
|
4
|
-
import { toValue } from '@speclynx/apidom-core';
|
|
5
|
-
import FixedFieldsVisitor from "../generics/FixedFieldsVisitor.mjs";
|
|
6
|
-
import { JSONSchemaVisitorBase } from "./bases.mjs";
|
|
7
|
-
import JSONSchemaElement from "../../../elements/JSONSchema.mjs";
|
|
8
|
-
import { isJSONSchemaElement } from "../../../predicates.mjs";
|
|
9
|
-
/**
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
/**
|
|
13
|
-
* @public
|
|
14
|
-
*/
|
|
15
|
-
class JSONSchemaVisitor extends JSONSchemaVisitorBase {
|
|
16
|
-
constructor(options) {
|
|
17
|
-
super(options);
|
|
18
|
-
this.element = new JSONSchemaElement();
|
|
19
|
-
this.consumeSafe = true;
|
|
20
|
-
this.specPath = always(['document', 'objects', 'JSONSchema']);
|
|
21
|
-
}
|
|
22
|
-
get defaultDialectIdentifier() {
|
|
23
|
-
return 'http://json-schema.org/draft-04/schema#';
|
|
24
|
-
}
|
|
25
|
-
ObjectElement(path) {
|
|
26
|
-
const objectElement = path.node;
|
|
27
|
-
this.handleDialectIdentifier(objectElement);
|
|
28
|
-
this.handleSchemaIdentifier(objectElement);
|
|
29
|
-
|
|
30
|
-
// for further processing consider this JSONSchema Element as parent for all sub-schemas
|
|
31
|
-
this.parent = this.element;
|
|
32
|
-
return FixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
33
|
-
}
|
|
34
|
-
handleDialectIdentifier(objectElement) {
|
|
35
|
-
// handle $schema keyword in embedded resources
|
|
36
|
-
if (isUndefined(this.parent) && !isStringElement(objectElement.get('$schema'))) {
|
|
37
|
-
// no parent available and no $schema is defined, set default $schema
|
|
38
|
-
this.element.meta.set('inheritedDialectIdentifier', this.defaultDialectIdentifier);
|
|
39
|
-
} else if (isJSONSchemaElement(this.parent) && !isStringElement(objectElement.get('$schema'))) {
|
|
40
|
-
// parent is available and no $schema is defined, set parent $schema
|
|
41
|
-
const inheritedDialectIdentifier = defaultTo(this.parent.meta.get('inheritedDialectIdentifier'), toValue(this.parent.$schema));
|
|
42
|
-
this.element.meta.set('inheritedDialectIdentifier', inheritedDialectIdentifier);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
handleSchemaIdentifier(objectElement, identifierKeyword = 'id') {
|
|
46
|
-
// handle schema identifier in embedded resources
|
|
47
|
-
// fetch parent's ancestorsSchemaIdentifiers (stored as plain string[])
|
|
48
|
-
const ancestorsSchemaIdentifiers = this.parent !== undefined ? [...(this.parent.meta.get('ancestorsSchemaIdentifiers') ?? [])] : [];
|
|
49
|
-
// get current schema identifier
|
|
50
|
-
const schemaIdentifier = toValue(objectElement.get(identifierKeyword));
|
|
51
|
-
|
|
52
|
-
// remember schema identifier if it's a non-empty string
|
|
53
|
-
if (isNonEmptyString(schemaIdentifier)) {
|
|
54
|
-
ancestorsSchemaIdentifiers.push(schemaIdentifier);
|
|
55
|
-
}
|
|
56
|
-
this.element.meta.set('ancestorsSchemaIdentifiers', ancestorsSchemaIdentifiers);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
export default JSONSchemaVisitor;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.default = void 0;
|
|
6
|
-
var _FallbackVisitor = _interopRequireDefault(require("../../FallbackVisitor.cjs"));
|
|
7
|
-
/**
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
class $RefVisitor extends _FallbackVisitor.default {
|
|
11
|
-
StringElement(path) {
|
|
12
|
-
super.enter(path);
|
|
13
|
-
this.element.classes.push('reference-value');
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
var _default = exports.default = $RefVisitor;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.default = void 0;
|
|
6
|
-
var _ramda = require("ramda");
|
|
7
|
-
var _apidomDatamodel = require("@speclynx/apidom-datamodel");
|
|
8
|
-
var _JSONReference = _interopRequireDefault(require("../../../../elements/JSONReference.cjs"));
|
|
9
|
-
var _FixedFieldsVisitor = _interopRequireDefault(require("../../generics/FixedFieldsVisitor.cjs"));
|
|
10
|
-
var _bases = require("../bases.cjs");
|
|
11
|
-
/**
|
|
12
|
-
* @public
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @public
|
|
17
|
-
*/
|
|
18
|
-
class JSONReferenceVisitor extends _bases.JSONReferenceVisitorBase {
|
|
19
|
-
constructor(options) {
|
|
20
|
-
super(options);
|
|
21
|
-
this.element = new _JSONReference.default();
|
|
22
|
-
this.specPath = (0, _ramda.always)(['document', 'objects', 'JSONReference']);
|
|
23
|
-
}
|
|
24
|
-
ObjectElement(path) {
|
|
25
|
-
_FixedFieldsVisitor.default.prototype.ObjectElement.call(this, path);
|
|
26
|
-
|
|
27
|
-
// mark this JSONReferenceElement with reference metadata
|
|
28
|
-
if ((0, _apidomDatamodel.isStringElement)(this.element.$ref)) {
|
|
29
|
-
this.element.classes.push('reference-element');
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
var _default = exports.default = JSONReferenceVisitor;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { always } from 'ramda';
|
|
2
|
-
import { isStringElement } from '@speclynx/apidom-datamodel';
|
|
3
|
-
import JSONReferenceElement from "../../../../elements/JSONReference.mjs";
|
|
4
|
-
import FixedFieldsVisitor from "../../generics/FixedFieldsVisitor.mjs";
|
|
5
|
-
import { JSONReferenceVisitorBase } from "../bases.mjs";
|
|
6
|
-
/**
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
/**
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
class JSONReferenceVisitor extends JSONReferenceVisitorBase {
|
|
13
|
-
constructor(options) {
|
|
14
|
-
super(options);
|
|
15
|
-
this.element = new JSONReferenceElement();
|
|
16
|
-
this.specPath = always(['document', 'objects', 'JSONReference']);
|
|
17
|
-
}
|
|
18
|
-
ObjectElement(path) {
|
|
19
|
-
FixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
20
|
-
|
|
21
|
-
// mark this JSONReferenceElement with reference metadata
|
|
22
|
-
if (isStringElement(this.element.$ref)) {
|
|
23
|
-
this.element.classes.push('reference-element');
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
export default JSONReferenceVisitor;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.default = void 0;
|
|
6
|
-
var _ramda = require("ramda");
|
|
7
|
-
var _LinkDescription = _interopRequireDefault(require("../../../../elements/LinkDescription.cjs"));
|
|
8
|
-
var _bases = require("../bases.cjs");
|
|
9
|
-
/**
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* @public
|
|
15
|
-
*/
|
|
16
|
-
class LinkDescriptionVisitor extends _bases.LinkDescriptionVisitorBase {
|
|
17
|
-
constructor(options) {
|
|
18
|
-
super(options);
|
|
19
|
-
this.element = new _LinkDescription.default();
|
|
20
|
-
this.specPath = (0, _ramda.always)(['document', 'objects', 'LinkDescription']);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
var _default = exports.default = LinkDescriptionVisitor;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { always } from 'ramda';
|
|
2
|
-
import LinkDescriptionElement from "../../../../elements/LinkDescription.mjs";
|
|
3
|
-
import { LinkDescriptionVisitorBase } from "../bases.mjs";
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
class LinkDescriptionVisitor extends LinkDescriptionVisitorBase {
|
|
11
|
-
constructor(options) {
|
|
12
|
-
super(options);
|
|
13
|
-
this.element = new LinkDescriptionElement();
|
|
14
|
-
this.specPath = always(['document', 'objects', 'LinkDescription']);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
export default LinkDescriptionVisitor;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.default = void 0;
|
|
6
|
-
var _ramda = require("ramda");
|
|
7
|
-
var _Media = _interopRequireDefault(require("../../../../elements/Media.cjs"));
|
|
8
|
-
var _bases = require("../bases.cjs");
|
|
9
|
-
/**
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* @public
|
|
15
|
-
*/
|
|
16
|
-
class MediaVisitor extends _bases.MediaVisitorBase {
|
|
17
|
-
constructor(options) {
|
|
18
|
-
super(options);
|
|
19
|
-
this.element = new _Media.default();
|
|
20
|
-
this.specPath = (0, _ramda.always)(['document', 'objects', 'Media']);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
var _default = exports.default = MediaVisitor;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { always } from 'ramda';
|
|
2
|
-
import MediaElement from "../../../../elements/Media.mjs";
|
|
3
|
-
import { MediaVisitorBase } from "../bases.mjs";
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
class MediaVisitor extends MediaVisitorBase {
|
|
11
|
-
constructor(options) {
|
|
12
|
-
super(options);
|
|
13
|
-
this.element = new MediaElement();
|
|
14
|
-
this.specPath = always(['document', 'objects', 'Media']);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
export default MediaVisitor;
|