@speclynx/apidom-ns-json-schema-draft-4 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.
- package/CHANGELOG.md +82 -0
- package/LICENSE +202 -0
- package/LICENSES/AFL-3.0.txt +182 -0
- package/LICENSES/Apache-2.0.txt +202 -0
- package/LICENSES/BSD-3-Clause.txt +26 -0
- package/LICENSES/MIT.txt +9 -0
- package/NOTICE +65 -0
- package/README.md +189 -0
- package/dist/apidom-ns-json-schema-draft-4.browser.js +1 -0
- package/package.json +64 -0
- package/src/elements/JSONReference.cjs +29 -0
- package/src/elements/JSONReference.mjs +26 -0
- package/src/elements/JSONSchema.cjs +296 -0
- package/src/elements/JSONSchema.mjs +292 -0
- package/src/elements/LinkDescription.cjs +65 -0
- package/src/elements/LinkDescription.mjs +61 -0
- package/src/elements/Media.cjs +29 -0
- package/src/elements/Media.mjs +26 -0
- package/src/index.cjs +66 -0
- package/src/index.mjs +24 -0
- package/src/media-types.cjs +34 -0
- package/src/media-types.mjs +30 -0
- package/src/namespace.cjs +25 -0
- package/src/namespace.mjs +20 -0
- package/src/predicates.cjs +53 -0
- package/src/predicates.mjs +48 -0
- package/src/refractor/index.cjs +53 -0
- package/src/refractor/index.mjs +47 -0
- package/src/refractor/plugins/replace-empty-element.cjs +200 -0
- package/src/refractor/plugins/replace-empty-element.mjs +194 -0
- package/src/refractor/predicates.cjs +16 -0
- package/src/refractor/predicates.mjs +12 -0
- package/src/refractor/registration.cjs +19 -0
- package/src/refractor/registration.mjs +10 -0
- package/src/refractor/specification.cjs +182 -0
- package/src/refractor/specification.mjs +177 -0
- package/src/refractor/toolbox.cjs +21 -0
- package/src/refractor/toolbox.mjs +15 -0
- package/src/refractor/visitors/FallbackVisitor.cjs +25 -0
- package/src/refractor/visitors/FallbackVisitor.mjs +19 -0
- package/src/refractor/visitors/SpecificationVisitor.cjs +74 -0
- package/src/refractor/visitors/SpecificationVisitor.mjs +68 -0
- package/src/refractor/visitors/Visitor.cjs +31 -0
- package/src/refractor/visitors/Visitor.mjs +28 -0
- package/src/refractor/visitors/generics/AlternatingVisitor.cjs +42 -0
- package/src/refractor/visitors/generics/AlternatingVisitor.mjs +35 -0
- package/src/refractor/visitors/generics/FixedFieldsVisitor.cjs +53 -0
- package/src/refractor/visitors/generics/FixedFieldsVisitor.mjs +46 -0
- package/src/refractor/visitors/generics/MapVisitor.cjs +21 -0
- package/src/refractor/visitors/generics/MapVisitor.mjs +15 -0
- package/src/refractor/visitors/generics/PatternedFieldsVisitor.cjs +53 -0
- package/src/refractor/visitors/generics/PatternedFieldsVisitor.mjs +47 -0
- package/src/refractor/visitors/json-schema/AllOfVisitor.cjs +35 -0
- package/src/refractor/visitors/json-schema/AllOfVisitor.mjs +29 -0
- package/src/refractor/visitors/json-schema/AnyOfVisitor.cjs +35 -0
- package/src/refractor/visitors/json-schema/AnyOfVisitor.mjs +29 -0
- package/src/refractor/visitors/json-schema/DefinitionsVisitor.cjs +27 -0
- package/src/refractor/visitors/json-schema/DefinitionsVisitor.mjs +21 -0
- package/src/refractor/visitors/json-schema/DependenciesVisitor.cjs +27 -0
- package/src/refractor/visitors/json-schema/DependenciesVisitor.mjs +21 -0
- package/src/refractor/visitors/json-schema/EnumVisitor.cjs +17 -0
- package/src/refractor/visitors/json-schema/EnumVisitor.mjs +12 -0
- package/src/refractor/visitors/json-schema/ItemsVisitor.cjs +37 -0
- package/src/refractor/visitors/json-schema/ItemsVisitor.mjs +31 -0
- package/src/refractor/visitors/json-schema/JSONSchemaOrJSONReferenceVisitor.cjs +24 -0
- package/src/refractor/visitors/json-schema/JSONSchemaOrJSONReferenceVisitor.mjs +19 -0
- package/src/refractor/visitors/json-schema/LinksVisitor.cjs +33 -0
- package/src/refractor/visitors/json-schema/LinksVisitor.mjs +27 -0
- package/src/refractor/visitors/json-schema/OneOfVisitor.cjs +35 -0
- package/src/refractor/visitors/json-schema/OneOfVisitor.mjs +29 -0
- package/src/refractor/visitors/json-schema/ParentSchemaAwareVisitor.cjs +20 -0
- package/src/refractor/visitors/json-schema/ParentSchemaAwareVisitor.mjs +16 -0
- package/src/refractor/visitors/json-schema/PatternPropertiesVisitor.cjs +27 -0
- package/src/refractor/visitors/json-schema/PatternPropertiesVisitor.mjs +21 -0
- package/src/refractor/visitors/json-schema/PropertiesVisitor.cjs +27 -0
- package/src/refractor/visitors/json-schema/PropertiesVisitor.mjs +21 -0
- package/src/refractor/visitors/json-schema/RequiredVisitor.cjs +17 -0
- package/src/refractor/visitors/json-schema/RequiredVisitor.mjs +12 -0
- package/src/refractor/visitors/json-schema/TypeVisitor.cjs +22 -0
- package/src/refractor/visitors/json-schema/TypeVisitor.mjs +17 -0
- package/src/refractor/visitors/json-schema/index.cjs +64 -0
- package/src/refractor/visitors/json-schema/index.mjs +58 -0
- package/src/refractor/visitors/json-schema/json-reference/$RefVisitor.cjs +17 -0
- package/src/refractor/visitors/json-schema/json-reference/$RefVisitor.mjs +12 -0
- package/src/refractor/visitors/json-schema/json-reference/index.cjs +35 -0
- package/src/refractor/visitors/json-schema/json-reference/index.mjs +29 -0
- package/src/refractor/visitors/json-schema/link-description/index.cjs +25 -0
- package/src/refractor/visitors/json-schema/link-description/index.mjs +19 -0
- package/src/refractor/visitors/json-schema/media/index.cjs +25 -0
- package/src/refractor/visitors/json-schema/media/index.mjs +19 -0
- package/src/traversal/visitor.cjs +26 -0
- package/src/traversal/visitor.mjs +22 -0
- package/types/apidom-ns-json-schema-draft-4.d.ts +905 -0
|
@@ -0,0 +1,53 @@
|
|
|
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 _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
class PatternedFieldsVisitor extends _SpecificationVisitor.default {
|
|
17
|
+
specPath;
|
|
18
|
+
ignoredFields;
|
|
19
|
+
fieldPatternPredicate = _ramda.F;
|
|
20
|
+
constructor({
|
|
21
|
+
specPath,
|
|
22
|
+
ignoredFields,
|
|
23
|
+
fieldPatternPredicate,
|
|
24
|
+
...rest
|
|
25
|
+
}) {
|
|
26
|
+
super({
|
|
27
|
+
...rest
|
|
28
|
+
});
|
|
29
|
+
this.specPath = specPath;
|
|
30
|
+
this.ignoredFields = ignoredFields || [];
|
|
31
|
+
if (typeof fieldPatternPredicate === 'function') {
|
|
32
|
+
this.fieldPatternPredicate = fieldPatternPredicate;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
ObjectElement(objectElement) {
|
|
36
|
+
// @ts-ignore
|
|
37
|
+
objectElement.forEach((value, key, memberElement) => {
|
|
38
|
+
if (!this.ignoredFields.includes((0, _apidomCore.toValue)(key)) && this.fieldPatternPredicate((0, _apidomCore.toValue)(key))) {
|
|
39
|
+
const specPath = this.specPath(value);
|
|
40
|
+
const patternedFieldElement = this.toRefractedElement(specPath, value);
|
|
41
|
+
const newMemberElement = new _apidomCore.MemberElement((0, _apidomCore.cloneDeep)(key), patternedFieldElement);
|
|
42
|
+
this.copyMetaAndAttributes(memberElement, newMemberElement);
|
|
43
|
+
newMemberElement.classes.push('patterned-field');
|
|
44
|
+
this.element.content.push(newMemberElement);
|
|
45
|
+
} else if (!this.ignoredFields.includes((0, _apidomCore.toValue)(key))) {
|
|
46
|
+
this.element.content.push((0, _apidomCore.cloneDeep)(memberElement));
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
this.copyMetaAndAttributes(objectElement, this.element);
|
|
50
|
+
return _apidomCore.BREAK;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
var _default = exports.default = PatternedFieldsVisitor;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { F as stubFalse } from 'ramda';
|
|
2
|
+
import { MemberElement, BREAK, cloneDeep, toValue } from '@speclynx/apidom-core';
|
|
3
|
+
import SpecificationVisitor from "../SpecificationVisitor.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
class PatternedFieldsVisitor extends SpecificationVisitor {
|
|
11
|
+
specPath;
|
|
12
|
+
ignoredFields;
|
|
13
|
+
fieldPatternPredicate = stubFalse;
|
|
14
|
+
constructor({
|
|
15
|
+
specPath,
|
|
16
|
+
ignoredFields,
|
|
17
|
+
fieldPatternPredicate,
|
|
18
|
+
...rest
|
|
19
|
+
}) {
|
|
20
|
+
super({
|
|
21
|
+
...rest
|
|
22
|
+
});
|
|
23
|
+
this.specPath = specPath;
|
|
24
|
+
this.ignoredFields = ignoredFields || [];
|
|
25
|
+
if (typeof fieldPatternPredicate === 'function') {
|
|
26
|
+
this.fieldPatternPredicate = fieldPatternPredicate;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
ObjectElement(objectElement) {
|
|
30
|
+
// @ts-ignore
|
|
31
|
+
objectElement.forEach((value, key, memberElement) => {
|
|
32
|
+
if (!this.ignoredFields.includes(toValue(key)) && this.fieldPatternPredicate(toValue(key))) {
|
|
33
|
+
const specPath = this.specPath(value);
|
|
34
|
+
const patternedFieldElement = this.toRefractedElement(specPath, value);
|
|
35
|
+
const newMemberElement = new MemberElement(cloneDeep(key), patternedFieldElement);
|
|
36
|
+
this.copyMetaAndAttributes(memberElement, newMemberElement);
|
|
37
|
+
newMemberElement.classes.push('patterned-field');
|
|
38
|
+
this.element.content.push(newMemberElement);
|
|
39
|
+
} else if (!this.ignoredFields.includes(toValue(key))) {
|
|
40
|
+
this.element.content.push(cloneDeep(memberElement));
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
this.copyMetaAndAttributes(objectElement, this.element);
|
|
44
|
+
return BREAK;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export default PatternedFieldsVisitor;
|
|
@@ -0,0 +1,35 @@
|
|
|
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 _tsMixer = require("ts-mixer");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
|
|
9
|
+
var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
|
|
10
|
+
var _ParentSchemaAwareVisitor = _interopRequireDefault(require("./ParentSchemaAwareVisitor.cjs"));
|
|
11
|
+
var _predicates = require("../../predicates.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class AllOfVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _ParentSchemaAwareVisitor.default, _FallbackVisitor.default) {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this.element = new _apidomCore.ArrayElement();
|
|
23
|
+
this.element.classes.push('json-schema-allOf');
|
|
24
|
+
}
|
|
25
|
+
ArrayElement(arrayElement) {
|
|
26
|
+
arrayElement.forEach(item => {
|
|
27
|
+
const specPath = (0, _predicates.isJSONReferenceLikeElement)(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
28
|
+
const element = this.toRefractedElement(specPath, item);
|
|
29
|
+
this.element.push(element);
|
|
30
|
+
});
|
|
31
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
32
|
+
return _apidomCore.BREAK;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
var _default = exports.default = AllOfVisitor;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { ArrayElement, BREAK } from '@speclynx/apidom-core';
|
|
3
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
4
|
+
import SpecificationVisitor from "../SpecificationVisitor.mjs";
|
|
5
|
+
import ParentSchemaAwareVisitor from "./ParentSchemaAwareVisitor.mjs";
|
|
6
|
+
import { isJSONReferenceLikeElement } from "../../predicates.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class AllOfVisitor extends Mixin(SpecificationVisitor, ParentSchemaAwareVisitor, FallbackVisitor) {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.element = new ArrayElement();
|
|
17
|
+
this.element.classes.push('json-schema-allOf');
|
|
18
|
+
}
|
|
19
|
+
ArrayElement(arrayElement) {
|
|
20
|
+
arrayElement.forEach(item => {
|
|
21
|
+
const specPath = isJSONReferenceLikeElement(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
22
|
+
const element = this.toRefractedElement(specPath, item);
|
|
23
|
+
this.element.push(element);
|
|
24
|
+
});
|
|
25
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
26
|
+
return BREAK;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export default AllOfVisitor;
|
|
@@ -0,0 +1,35 @@
|
|
|
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 _tsMixer = require("ts-mixer");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
|
|
9
|
+
var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
|
|
10
|
+
var _ParentSchemaAwareVisitor = _interopRequireDefault(require("./ParentSchemaAwareVisitor.cjs"));
|
|
11
|
+
var _predicates = require("../../predicates.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class AnyOfVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _ParentSchemaAwareVisitor.default, _FallbackVisitor.default) {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this.element = new _apidomCore.ArrayElement();
|
|
23
|
+
this.element.classes.push('json-schema-anyOf');
|
|
24
|
+
}
|
|
25
|
+
ArrayElement(arrayElement) {
|
|
26
|
+
arrayElement.forEach(item => {
|
|
27
|
+
const specPath = (0, _predicates.isJSONReferenceLikeElement)(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
28
|
+
const element = this.toRefractedElement(specPath, item);
|
|
29
|
+
this.element.push(element);
|
|
30
|
+
});
|
|
31
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
32
|
+
return _apidomCore.BREAK;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
var _default = exports.default = AnyOfVisitor;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { ArrayElement, BREAK } from '@speclynx/apidom-core';
|
|
3
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
4
|
+
import SpecificationVisitor from "../SpecificationVisitor.mjs";
|
|
5
|
+
import ParentSchemaAwareVisitor from "./ParentSchemaAwareVisitor.mjs";
|
|
6
|
+
import { isJSONReferenceLikeElement } from "../../predicates.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class AnyOfVisitor extends Mixin(SpecificationVisitor, ParentSchemaAwareVisitor, FallbackVisitor) {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.element = new ArrayElement();
|
|
17
|
+
this.element.classes.push('json-schema-anyOf');
|
|
18
|
+
}
|
|
19
|
+
ArrayElement(arrayElement) {
|
|
20
|
+
arrayElement.forEach(item => {
|
|
21
|
+
const specPath = isJSONReferenceLikeElement(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
22
|
+
const element = this.toRefractedElement(specPath, item);
|
|
23
|
+
this.element.push(element);
|
|
24
|
+
});
|
|
25
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
26
|
+
return BREAK;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export default AnyOfVisitor;
|
|
@@ -0,0 +1,27 @@
|
|
|
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 _tsMixer = require("ts-mixer");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
|
|
9
|
+
var _MapVisitor = _interopRequireDefault(require("../generics/MapVisitor.cjs"));
|
|
10
|
+
var _ParentSchemaAwareVisitor = _interopRequireDefault(require("./ParentSchemaAwareVisitor.cjs"));
|
|
11
|
+
var _predicates = require("../../predicates.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class DefinitionsVisitor extends (0, _tsMixer.Mixin)(_MapVisitor.default, _ParentSchemaAwareVisitor.default, _FallbackVisitor.default) {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this.element = new _apidomCore.ObjectElement();
|
|
23
|
+
this.element.classes.push('json-schema-definitions');
|
|
24
|
+
this.specPath = element => (0, _predicates.isJSONReferenceLikeElement)(element) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
var _default = exports.default = DefinitionsVisitor;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { ObjectElement } from '@speclynx/apidom-core';
|
|
3
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
4
|
+
import MapVisitor from "../generics/MapVisitor.mjs";
|
|
5
|
+
import ParentSchemaAwareVisitor from "./ParentSchemaAwareVisitor.mjs";
|
|
6
|
+
import { isJSONReferenceLikeElement } from "../../predicates.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class DefinitionsVisitor extends Mixin(MapVisitor, ParentSchemaAwareVisitor, FallbackVisitor) {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.element = new ObjectElement();
|
|
17
|
+
this.element.classes.push('json-schema-definitions');
|
|
18
|
+
this.specPath = element => isJSONReferenceLikeElement(element) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export default DefinitionsVisitor;
|
|
@@ -0,0 +1,27 @@
|
|
|
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 _tsMixer = require("ts-mixer");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _MapVisitor = _interopRequireDefault(require("../generics/MapVisitor.cjs"));
|
|
9
|
+
var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
|
|
10
|
+
var _ParentSchemaAwareVisitor = _interopRequireDefault(require("./ParentSchemaAwareVisitor.cjs"));
|
|
11
|
+
var _predicates = require("../../predicates.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class DependenciesVisitor extends (0, _tsMixer.Mixin)(_MapVisitor.default, _ParentSchemaAwareVisitor.default, _FallbackVisitor.default) {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this.element = new _apidomCore.ObjectElement();
|
|
23
|
+
this.element.classes.push('json-schema-dependencies');
|
|
24
|
+
this.specPath = element => (0, _predicates.isJSONReferenceLikeElement)(element) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
var _default = exports.default = DependenciesVisitor;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { ObjectElement } from '@speclynx/apidom-core';
|
|
3
|
+
import MapVisitor from "../generics/MapVisitor.mjs";
|
|
4
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
5
|
+
import ParentSchemaAwareVisitor from "./ParentSchemaAwareVisitor.mjs";
|
|
6
|
+
import { isJSONReferenceLikeElement } from "../../predicates.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class DependenciesVisitor extends Mixin(MapVisitor, ParentSchemaAwareVisitor, FallbackVisitor) {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.element = new ObjectElement();
|
|
17
|
+
this.element.classes.push('json-schema-dependencies');
|
|
18
|
+
this.specPath = element => isJSONReferenceLikeElement(element) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export default DependenciesVisitor;
|
|
@@ -0,0 +1,17 @@
|
|
|
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 EnumVisitor extends _FallbackVisitor.default {
|
|
11
|
+
ArrayElement(arrayElement) {
|
|
12
|
+
const result = this.enter(arrayElement);
|
|
13
|
+
this.element.classes.push('json-schema-enum');
|
|
14
|
+
return result;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
var _default = exports.default = EnumVisitor;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
2
|
+
/**
|
|
3
|
+
* @public
|
|
4
|
+
*/
|
|
5
|
+
class EnumVisitor extends FallbackVisitor {
|
|
6
|
+
ArrayElement(arrayElement) {
|
|
7
|
+
const result = this.enter(arrayElement);
|
|
8
|
+
this.element.classes.push('json-schema-enum');
|
|
9
|
+
return result;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export default EnumVisitor;
|
|
@@ -0,0 +1,37 @@
|
|
|
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 _tsMixer = require("ts-mixer");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
|
|
9
|
+
var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
|
|
10
|
+
var _ParentSchemaAwareVisitor = _interopRequireDefault(require("./ParentSchemaAwareVisitor.cjs"));
|
|
11
|
+
var _predicates = require("../../predicates.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class ItemsVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _ParentSchemaAwareVisitor.default, _FallbackVisitor.default) {
|
|
20
|
+
ObjectElement(objectElement) {
|
|
21
|
+
const specPath = (0, _predicates.isJSONReferenceLikeElement)(objectElement) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
22
|
+
this.element = this.toRefractedElement(specPath, objectElement);
|
|
23
|
+
return _apidomCore.BREAK;
|
|
24
|
+
}
|
|
25
|
+
ArrayElement(arrayElement) {
|
|
26
|
+
this.element = new _apidomCore.ArrayElement();
|
|
27
|
+
this.element.classes.push('json-schema-items');
|
|
28
|
+
arrayElement.forEach(item => {
|
|
29
|
+
const specPath = (0, _predicates.isJSONReferenceLikeElement)(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
30
|
+
const element = this.toRefractedElement(specPath, item);
|
|
31
|
+
this.element.push(element);
|
|
32
|
+
});
|
|
33
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
34
|
+
return _apidomCore.BREAK;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
var _default = exports.default = ItemsVisitor;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { ArrayElement, BREAK } from '@speclynx/apidom-core';
|
|
3
|
+
import SpecificationVisitor from "../SpecificationVisitor.mjs";
|
|
4
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
5
|
+
import ParentSchemaAwareVisitor from "./ParentSchemaAwareVisitor.mjs";
|
|
6
|
+
import { isJSONReferenceLikeElement } from "../../predicates.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class ItemsVisitor extends Mixin(SpecificationVisitor, ParentSchemaAwareVisitor, FallbackVisitor) {
|
|
14
|
+
ObjectElement(objectElement) {
|
|
15
|
+
const specPath = isJSONReferenceLikeElement(objectElement) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
16
|
+
this.element = this.toRefractedElement(specPath, objectElement);
|
|
17
|
+
return BREAK;
|
|
18
|
+
}
|
|
19
|
+
ArrayElement(arrayElement) {
|
|
20
|
+
this.element = new ArrayElement();
|
|
21
|
+
this.element.classes.push('json-schema-items');
|
|
22
|
+
arrayElement.forEach(item => {
|
|
23
|
+
const specPath = isJSONReferenceLikeElement(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
24
|
+
const element = this.toRefractedElement(specPath, item);
|
|
25
|
+
this.element.push(element);
|
|
26
|
+
});
|
|
27
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
28
|
+
return BREAK;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export default ItemsVisitor;
|
|
@@ -0,0 +1,24 @@
|
|
|
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 _predicates = require("../../predicates.cjs");
|
|
8
|
+
var _AlternatingVisitor = _interopRequireDefault(require("../generics/AlternatingVisitor.cjs"));
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
class SchemaOrReferenceVisitor extends _AlternatingVisitor.default {
|
|
13
|
+
constructor(options) {
|
|
14
|
+
super(options);
|
|
15
|
+
this.alternator = [{
|
|
16
|
+
predicate: _predicates.isJSONReferenceLikeElement,
|
|
17
|
+
specPath: ['document', 'objects', 'JSONReference']
|
|
18
|
+
}, {
|
|
19
|
+
predicate: _ramda.T,
|
|
20
|
+
specPath: ['document', 'objects', 'JSONSchema']
|
|
21
|
+
}];
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
var _default = exports.default = SchemaOrReferenceVisitor;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { T as stubTrue } from 'ramda';
|
|
2
|
+
import { isJSONReferenceLikeElement } from "../../predicates.mjs";
|
|
3
|
+
import AlternatingVisitor from "../generics/AlternatingVisitor.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
class SchemaOrReferenceVisitor extends AlternatingVisitor {
|
|
8
|
+
constructor(options) {
|
|
9
|
+
super(options);
|
|
10
|
+
this.alternator = [{
|
|
11
|
+
predicate: isJSONReferenceLikeElement,
|
|
12
|
+
specPath: ['document', 'objects', 'JSONReference']
|
|
13
|
+
}, {
|
|
14
|
+
predicate: stubTrue,
|
|
15
|
+
specPath: ['document', 'objects', 'JSONSchema']
|
|
16
|
+
}];
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export default SchemaOrReferenceVisitor;
|
|
@@ -0,0 +1,33 @@
|
|
|
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 _tsMixer = require("ts-mixer");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
|
|
9
|
+
var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
|
|
10
|
+
var _ParentSchemaAwareVisitor = _interopRequireDefault(require("./ParentSchemaAwareVisitor.cjs"));
|
|
11
|
+
/**
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
class LinksVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _ParentSchemaAwareVisitor.default, _FallbackVisitor.default) {
|
|
19
|
+
constructor(options) {
|
|
20
|
+
super(options);
|
|
21
|
+
this.element = new _apidomCore.ArrayElement();
|
|
22
|
+
this.element.classes.push('json-schema-links');
|
|
23
|
+
}
|
|
24
|
+
ArrayElement(arrayElement) {
|
|
25
|
+
arrayElement.forEach(item => {
|
|
26
|
+
const linkDescriptionElement = this.toRefractedElement(['document', 'objects', 'LinkDescription'], item);
|
|
27
|
+
this.element.push(linkDescriptionElement);
|
|
28
|
+
});
|
|
29
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
30
|
+
return _apidomCore.BREAK;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
var _default = exports.default = LinksVisitor;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { ArrayElement, BREAK } from '@speclynx/apidom-core';
|
|
3
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
4
|
+
import SpecificationVisitor from "../SpecificationVisitor.mjs";
|
|
5
|
+
import ParentSchemaAwareVisitor from "./ParentSchemaAwareVisitor.mjs";
|
|
6
|
+
/**
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
class LinksVisitor extends Mixin(SpecificationVisitor, ParentSchemaAwareVisitor, FallbackVisitor) {
|
|
13
|
+
constructor(options) {
|
|
14
|
+
super(options);
|
|
15
|
+
this.element = new ArrayElement();
|
|
16
|
+
this.element.classes.push('json-schema-links');
|
|
17
|
+
}
|
|
18
|
+
ArrayElement(arrayElement) {
|
|
19
|
+
arrayElement.forEach(item => {
|
|
20
|
+
const linkDescriptionElement = this.toRefractedElement(['document', 'objects', 'LinkDescription'], item);
|
|
21
|
+
this.element.push(linkDescriptionElement);
|
|
22
|
+
});
|
|
23
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
24
|
+
return BREAK;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export default LinksVisitor;
|
|
@@ -0,0 +1,35 @@
|
|
|
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 _tsMixer = require("ts-mixer");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
|
|
9
|
+
var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
|
|
10
|
+
var _ParentSchemaAwareVisitor = _interopRequireDefault(require("./ParentSchemaAwareVisitor.cjs"));
|
|
11
|
+
var _predicates = require("../../predicates.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class OneOfVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _ParentSchemaAwareVisitor.default, _FallbackVisitor.default) {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this.element = new _apidomCore.ArrayElement();
|
|
23
|
+
this.element.classes.push('json-schema-oneOf');
|
|
24
|
+
}
|
|
25
|
+
ArrayElement(arrayElement) {
|
|
26
|
+
arrayElement.forEach(item => {
|
|
27
|
+
const specPath = (0, _predicates.isJSONReferenceLikeElement)(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
28
|
+
const element = this.toRefractedElement(specPath, item);
|
|
29
|
+
this.element.push(element);
|
|
30
|
+
});
|
|
31
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
32
|
+
return _apidomCore.BREAK;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
var _default = exports.default = OneOfVisitor;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { ArrayElement, BREAK } from '@speclynx/apidom-core';
|
|
3
|
+
import FallbackVisitor from "../FallbackVisitor.mjs";
|
|
4
|
+
import SpecificationVisitor from "../SpecificationVisitor.mjs";
|
|
5
|
+
import ParentSchemaAwareVisitor from "./ParentSchemaAwareVisitor.mjs";
|
|
6
|
+
import { isJSONReferenceLikeElement } from "../../predicates.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class OneOfVisitor extends Mixin(SpecificationVisitor, ParentSchemaAwareVisitor, FallbackVisitor) {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.element = new ArrayElement();
|
|
17
|
+
this.element.classes.push('json-schema-oneOf');
|
|
18
|
+
}
|
|
19
|
+
ArrayElement(arrayElement) {
|
|
20
|
+
arrayElement.forEach(item => {
|
|
21
|
+
const specPath = isJSONReferenceLikeElement(item) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'JSONSchema'];
|
|
22
|
+
const element = this.toRefractedElement(specPath, item);
|
|
23
|
+
this.element.push(element);
|
|
24
|
+
});
|
|
25
|
+
this.copyMetaAndAttributes(arrayElement, this.element);
|
|
26
|
+
return BREAK;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export default OneOfVisitor;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
class ParentSchemaAwareVisitor {
|
|
13
|
+
parent;
|
|
14
|
+
constructor({
|
|
15
|
+
parent
|
|
16
|
+
}) {
|
|
17
|
+
this.parent = parent;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
var _default = exports.default = ParentSchemaAwareVisitor;
|