@speclynx/apidom-ns-openapi-2 4.0.2 → 4.0.4

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 (220) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/apidom-ns-openapi-2.browser.js +7 -7
  3. package/dist/apidom-ns-openapi-2.browser.min.js +1 -1
  4. package/package.json +7 -7
  5. package/src/elements/Contact.cjs +33 -0
  6. package/src/elements/Contact.mjs +30 -0
  7. package/src/elements/Definitions.cjs +15 -0
  8. package/src/elements/Definitions.mjs +12 -0
  9. package/src/elements/Example.cjs +15 -0
  10. package/src/elements/Example.mjs +12 -0
  11. package/src/elements/ExternalDocumentation.cjs +27 -0
  12. package/src/elements/ExternalDocumentation.mjs +24 -0
  13. package/src/elements/Header.cjs +185 -0
  14. package/src/elements/Header.mjs +182 -0
  15. package/src/elements/Headers.cjs +15 -0
  16. package/src/elements/Headers.mjs +12 -0
  17. package/src/elements/Info.cjs +52 -0
  18. package/src/elements/Info.mjs +48 -0
  19. package/src/elements/Items.cjs +190 -0
  20. package/src/elements/Items.mjs +187 -0
  21. package/src/elements/License.cjs +27 -0
  22. package/src/elements/License.mjs +24 -0
  23. package/src/elements/Operation.cjs +78 -0
  24. package/src/elements/Operation.mjs +74 -0
  25. package/src/elements/Parameter.cjs +230 -0
  26. package/src/elements/Parameter.mjs +226 -0
  27. package/src/elements/ParametersDefinitions.cjs +15 -0
  28. package/src/elements/ParametersDefinitions.mjs +12 -0
  29. package/src/elements/PathItem.cjs +69 -0
  30. package/src/elements/PathItem.mjs +65 -0
  31. package/src/elements/Paths.cjs +15 -0
  32. package/src/elements/Paths.mjs +12 -0
  33. package/src/elements/Reference.cjs +22 -0
  34. package/src/elements/Reference.mjs +19 -0
  35. package/src/elements/Response.cjs +39 -0
  36. package/src/elements/Response.mjs +35 -0
  37. package/src/elements/Responses.cjs +21 -0
  38. package/src/elements/Responses.mjs +17 -0
  39. package/src/elements/ResponsesDefinitions.cjs +15 -0
  40. package/src/elements/ResponsesDefinitions.mjs +12 -0
  41. package/src/elements/Schema.cjs +151 -0
  42. package/src/elements/Schema.mjs +147 -0
  43. package/src/elements/Scopes.cjs +15 -0
  44. package/src/elements/Scopes.mjs +12 -0
  45. package/src/elements/SecurityDefinitions.cjs +15 -0
  46. package/src/elements/SecurityDefinitions.mjs +12 -0
  47. package/src/elements/SecurityRequirement.cjs +15 -0
  48. package/src/elements/SecurityRequirement.mjs +12 -0
  49. package/src/elements/SecurityScheme.cjs +63 -0
  50. package/src/elements/SecurityScheme.mjs +60 -0
  51. package/src/elements/Swagger.cjs +106 -0
  52. package/src/elements/Swagger.mjs +102 -0
  53. package/src/elements/SwaggerVersion.cjs +17 -0
  54. package/src/elements/SwaggerVersion.mjs +14 -0
  55. package/src/elements/Tag.cjs +33 -0
  56. package/src/elements/Tag.mjs +29 -0
  57. package/src/elements/Xml.cjs +45 -0
  58. package/src/elements/Xml.mjs +42 -0
  59. package/src/elements/nces/OperationConsumes.cjs +16 -0
  60. package/src/elements/nces/OperationConsumes.mjs +13 -0
  61. package/src/elements/nces/OperationParameters.cjs +17 -0
  62. package/src/elements/nces/OperationParameters.mjs +14 -0
  63. package/src/elements/nces/OperationProduces.cjs +16 -0
  64. package/src/elements/nces/OperationProduces.mjs +13 -0
  65. package/src/elements/nces/OperationSchemes.cjs +16 -0
  66. package/src/elements/nces/OperationSchemes.mjs +13 -0
  67. package/src/elements/nces/OperationSecurity.cjs +17 -0
  68. package/src/elements/nces/OperationSecurity.mjs +14 -0
  69. package/src/elements/nces/OperationTags.cjs +17 -0
  70. package/src/elements/nces/OperationTags.mjs +14 -0
  71. package/src/elements/nces/PathItemParameters.cjs +17 -0
  72. package/src/elements/nces/PathItemParameters.mjs +14 -0
  73. package/src/elements/nces/SwaggerConsumes.cjs +16 -0
  74. package/src/elements/nces/SwaggerConsumes.mjs +13 -0
  75. package/src/elements/nces/SwaggerProduces.cjs +16 -0
  76. package/src/elements/nces/SwaggerProduces.mjs +13 -0
  77. package/src/elements/nces/SwaggerSchemes.cjs +16 -0
  78. package/src/elements/nces/SwaggerSchemes.mjs +13 -0
  79. package/src/elements/nces/SwaggerSecurity.cjs +17 -0
  80. package/src/elements/nces/SwaggerSecurity.mjs +14 -0
  81. package/src/elements/nces/SwaggerTags.cjs +16 -0
  82. package/src/elements/nces/SwaggerTags.mjs +13 -0
  83. package/src/index.cjs +156 -0
  84. package/src/index.mjs +32 -0
  85. package/src/media-types.cjs +34 -0
  86. package/src/media-types.mjs +30 -0
  87. package/src/namespace.cjs +71 -0
  88. package/src/namespace.mjs +66 -0
  89. package/src/predicates.cjs +193 -0
  90. package/src/predicates.mjs +161 -0
  91. package/src/refractor/index.cjs +316 -0
  92. package/src/refractor/index.mjs +283 -0
  93. package/src/refractor/inspect.cjs +157 -0
  94. package/src/refractor/inspect.mjs +126 -0
  95. package/src/refractor/plugins/replace-empty-element.cjs +366 -0
  96. package/src/refractor/plugins/replace-empty-element.mjs +358 -0
  97. package/src/refractor/predicates.cjs +26 -0
  98. package/src/refractor/predicates.mjs +21 -0
  99. package/src/refractor/specification.cjs +519 -0
  100. package/src/refractor/specification.mjs +513 -0
  101. package/src/refractor/toolbox.cjs +28 -0
  102. package/src/refractor/toolbox.mjs +21 -0
  103. package/src/refractor/visitors/FallbackVisitor.cjs +24 -0
  104. package/src/refractor/visitors/FallbackVisitor.mjs +18 -0
  105. package/src/refractor/visitors/SpecificationExtensionVisitor.cjs +18 -0
  106. package/src/refractor/visitors/SpecificationExtensionVisitor.mjs +13 -0
  107. package/src/refractor/visitors/SpecificationVisitor.cjs +75 -0
  108. package/src/refractor/visitors/SpecificationVisitor.mjs +69 -0
  109. package/src/refractor/visitors/Visitor.cjs +36 -0
  110. package/src/refractor/visitors/Visitor.mjs +33 -0
  111. package/src/refractor/visitors/generics/AlternatingVisitor.cjs +42 -0
  112. package/src/refractor/visitors/generics/AlternatingVisitor.mjs +35 -0
  113. package/src/refractor/visitors/generics/FixedFieldsVisitor.cjs +73 -0
  114. package/src/refractor/visitors/generics/FixedFieldsVisitor.mjs +66 -0
  115. package/src/refractor/visitors/generics/MapVisitor.cjs +21 -0
  116. package/src/refractor/visitors/generics/MapVisitor.mjs +15 -0
  117. package/src/refractor/visitors/generics/MixedFieldsVisitor.cjs +67 -0
  118. package/src/refractor/visitors/generics/MixedFieldsVisitor.mjs +61 -0
  119. package/src/refractor/visitors/generics/PatternedFieldsVisitor.cjs +72 -0
  120. package/src/refractor/visitors/generics/PatternedFieldsVisitor.mjs +66 -0
  121. package/src/refractor/visitors/open-api-2/BasePathVisitor.cjs +16 -0
  122. package/src/refractor/visitors/open-api-2/BasePathVisitor.mjs +11 -0
  123. package/src/refractor/visitors/open-api-2/ConsumesVisitor.cjs +23 -0
  124. package/src/refractor/visitors/open-api-2/ConsumesVisitor.mjs +18 -0
  125. package/src/refractor/visitors/open-api-2/HostVisitor.cjs +16 -0
  126. package/src/refractor/visitors/open-api-2/HostVisitor.mjs +11 -0
  127. package/src/refractor/visitors/open-api-2/ProducesVisitor.cjs +23 -0
  128. package/src/refractor/visitors/open-api-2/ProducesVisitor.mjs +18 -0
  129. package/src/refractor/visitors/open-api-2/SchemesVisitor.cjs +23 -0
  130. package/src/refractor/visitors/open-api-2/SchemesVisitor.mjs +18 -0
  131. package/src/refractor/visitors/open-api-2/SecurityVisitor.cjs +27 -0
  132. package/src/refractor/visitors/open-api-2/SecurityVisitor.mjs +22 -0
  133. package/src/refractor/visitors/open-api-2/SwaggerVisitor.cjs +21 -0
  134. package/src/refractor/visitors/open-api-2/SwaggerVisitor.mjs +16 -0
  135. package/src/refractor/visitors/open-api-2/TagsVisitor.cjs +27 -0
  136. package/src/refractor/visitors/open-api-2/TagsVisitor.mjs +22 -0
  137. package/src/refractor/visitors/open-api-2/bases.cjs +72 -0
  138. package/src/refractor/visitors/open-api-2/bases.mjs +67 -0
  139. package/src/refractor/visitors/open-api-2/contact/index.cjs +20 -0
  140. package/src/refractor/visitors/open-api-2/contact/index.mjs +15 -0
  141. package/src/refractor/visitors/open-api-2/definitions/index.cjs +31 -0
  142. package/src/refractor/visitors/open-api-2/definitions/index.mjs +26 -0
  143. package/src/refractor/visitors/open-api-2/example/index.cjs +20 -0
  144. package/src/refractor/visitors/open-api-2/example/index.mjs +15 -0
  145. package/src/refractor/visitors/open-api-2/external-documentation/index.cjs +20 -0
  146. package/src/refractor/visitors/open-api-2/external-documentation/index.mjs +15 -0
  147. package/src/refractor/visitors/open-api-2/header/index.cjs +20 -0
  148. package/src/refractor/visitors/open-api-2/header/index.mjs +15 -0
  149. package/src/refractor/visitors/open-api-2/headers/index.cjs +20 -0
  150. package/src/refractor/visitors/open-api-2/headers/index.mjs +15 -0
  151. package/src/refractor/visitors/open-api-2/index.cjs +21 -0
  152. package/src/refractor/visitors/open-api-2/index.mjs +16 -0
  153. package/src/refractor/visitors/open-api-2/info/VersionVisitor.cjs +17 -0
  154. package/src/refractor/visitors/open-api-2/info/VersionVisitor.mjs +12 -0
  155. package/src/refractor/visitors/open-api-2/info/index.cjs +20 -0
  156. package/src/refractor/visitors/open-api-2/info/index.mjs +15 -0
  157. package/src/refractor/visitors/open-api-2/items/index.cjs +22 -0
  158. package/src/refractor/visitors/open-api-2/items/index.mjs +17 -0
  159. package/src/refractor/visitors/open-api-2/license/index.cjs +20 -0
  160. package/src/refractor/visitors/open-api-2/license/index.mjs +15 -0
  161. package/src/refractor/visitors/open-api-2/operation/ConsumesVisitor.cjs +23 -0
  162. package/src/refractor/visitors/open-api-2/operation/ConsumesVisitor.mjs +18 -0
  163. package/src/refractor/visitors/open-api-2/operation/ParametersVisitor.cjs +32 -0
  164. package/src/refractor/visitors/open-api-2/operation/ParametersVisitor.mjs +27 -0
  165. package/src/refractor/visitors/open-api-2/operation/ProducesVisitor.cjs +23 -0
  166. package/src/refractor/visitors/open-api-2/operation/ProducesVisitor.mjs +18 -0
  167. package/src/refractor/visitors/open-api-2/operation/SchemesVisitor.cjs +23 -0
  168. package/src/refractor/visitors/open-api-2/operation/SchemesVisitor.mjs +18 -0
  169. package/src/refractor/visitors/open-api-2/operation/SecurityVisitor.cjs +27 -0
  170. package/src/refractor/visitors/open-api-2/operation/SecurityVisitor.mjs +22 -0
  171. package/src/refractor/visitors/open-api-2/operation/TagsVisitor.cjs +23 -0
  172. package/src/refractor/visitors/open-api-2/operation/TagsVisitor.mjs +18 -0
  173. package/src/refractor/visitors/open-api-2/operation/index.cjs +19 -0
  174. package/src/refractor/visitors/open-api-2/operation/index.mjs +14 -0
  175. package/src/refractor/visitors/open-api-2/parameter/index.cjs +20 -0
  176. package/src/refractor/visitors/open-api-2/parameter/index.mjs +15 -0
  177. package/src/refractor/visitors/open-api-2/parameters-definitions/index.cjs +19 -0
  178. package/src/refractor/visitors/open-api-2/parameters-definitions/index.mjs +14 -0
  179. package/src/refractor/visitors/open-api-2/path-item/$RefVisitor.cjs +16 -0
  180. package/src/refractor/visitors/open-api-2/path-item/$RefVisitor.mjs +11 -0
  181. package/src/refractor/visitors/open-api-2/path-item/ParametersVisitor.cjs +32 -0
  182. package/src/refractor/visitors/open-api-2/path-item/ParametersVisitor.mjs +27 -0
  183. package/src/refractor/visitors/open-api-2/path-item/index.cjs +39 -0
  184. package/src/refractor/visitors/open-api-2/path-item/index.mjs +34 -0
  185. package/src/refractor/visitors/open-api-2/paths/index.cjs +37 -0
  186. package/src/refractor/visitors/open-api-2/paths/index.mjs +32 -0
  187. package/src/refractor/visitors/open-api-2/reference/$RefVisitor.cjs +16 -0
  188. package/src/refractor/visitors/open-api-2/reference/$RefVisitor.mjs +11 -0
  189. package/src/refractor/visitors/open-api-2/reference/index.cjs +29 -0
  190. package/src/refractor/visitors/open-api-2/reference/index.mjs +24 -0
  191. package/src/refractor/visitors/open-api-2/response/index.cjs +20 -0
  192. package/src/refractor/visitors/open-api-2/response/index.mjs +15 -0
  193. package/src/refractor/visitors/open-api-2/responses/DefaultVisitor.cjs +36 -0
  194. package/src/refractor/visitors/open-api-2/responses/DefaultVisitor.mjs +31 -0
  195. package/src/refractor/visitors/open-api-2/responses/index.cjs +45 -0
  196. package/src/refractor/visitors/open-api-2/responses/index.mjs +40 -0
  197. package/src/refractor/visitors/open-api-2/responses-definitions/index.cjs +19 -0
  198. package/src/refractor/visitors/open-api-2/responses-definitions/index.mjs +14 -0
  199. package/src/refractor/visitors/open-api-2/schema/AllOfVisitor.cjs +24 -0
  200. package/src/refractor/visitors/open-api-2/schema/AllOfVisitor.mjs +20 -0
  201. package/src/refractor/visitors/open-api-2/schema/ItemsVisitor.cjs +26 -0
  202. package/src/refractor/visitors/open-api-2/schema/ItemsVisitor.mjs +23 -0
  203. package/src/refractor/visitors/open-api-2/schema/PropertiesVisitor.cjs +24 -0
  204. package/src/refractor/visitors/open-api-2/schema/PropertiesVisitor.mjs +20 -0
  205. package/src/refractor/visitors/open-api-2/schema/SchemaOrJSONReferenceVisitor.cjs +23 -0
  206. package/src/refractor/visitors/open-api-2/schema/SchemaOrJSONReferenceVisitor.mjs +19 -0
  207. package/src/refractor/visitors/open-api-2/schema/index.cjs +20 -0
  208. package/src/refractor/visitors/open-api-2/schema/index.mjs +15 -0
  209. package/src/refractor/visitors/open-api-2/scopes/index.cjs +20 -0
  210. package/src/refractor/visitors/open-api-2/scopes/index.mjs +15 -0
  211. package/src/refractor/visitors/open-api-2/security-definitions/index.cjs +20 -0
  212. package/src/refractor/visitors/open-api-2/security-definitions/index.mjs +15 -0
  213. package/src/refractor/visitors/open-api-2/security-requirement/index.cjs +19 -0
  214. package/src/refractor/visitors/open-api-2/security-requirement/index.mjs +14 -0
  215. package/src/refractor/visitors/open-api-2/security-scheme/index.cjs +20 -0
  216. package/src/refractor/visitors/open-api-2/security-scheme/index.mjs +15 -0
  217. package/src/refractor/visitors/open-api-2/tag/index.cjs +20 -0
  218. package/src/refractor/visitors/open-api-2/tag/index.mjs +15 -0
  219. package/src/refractor/visitors/open-api-2/xml/index.cjs +20 -0
  220. package/src/refractor/visitors/open-api-2/xml/index.mjs +15 -0
@@ -0,0 +1,66 @@
1
+ import { F as stubFalse } from 'ramda';
2
+ import { MemberElement, cloneDeep } from '@speclynx/apidom-datamodel';
3
+ import { toValue } from '@speclynx/apidom-core';
4
+ import SpecificationVisitor from "../SpecificationVisitor.mjs";
5
+ import { isSwaggerExtension } from "../../predicates.mjs";
6
+ /**
7
+ * @public
8
+ */
9
+ /**
10
+ * @public
11
+ */
12
+ class PatternedFieldsVisitor extends SpecificationVisitor {
13
+ specPath;
14
+ ignoredFields;
15
+ fieldPatternPredicate = stubFalse;
16
+ canSupportSpecificationExtensions = false;
17
+ specificationExtensionPredicate = isSwaggerExtension;
18
+ constructor({
19
+ specPath,
20
+ ignoredFields,
21
+ fieldPatternPredicate,
22
+ canSupportSpecificationExtensions,
23
+ specificationExtensionPredicate,
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
+ if (typeof canSupportSpecificationExtensions === 'boolean') {
35
+ this.canSupportSpecificationExtensions = canSupportSpecificationExtensions;
36
+ }
37
+ if (typeof specificationExtensionPredicate === 'function') {
38
+ this.specificationExtensionPredicate = specificationExtensionPredicate;
39
+ }
40
+ }
41
+ ObjectElement(path) {
42
+ const objectElement = path.node;
43
+ // @ts-ignore
44
+ objectElement.forEach((value, key, memberElement) => {
45
+ const keyValue = toValue(key);
46
+ if (this.canSupportSpecificationExtensions && this.specificationExtensionPredicate(memberElement)) {
47
+ const extensionElement = this.toRefractedElement(['document', 'extension'], memberElement);
48
+ this.element.content.push(extensionElement);
49
+ } else if (!this.ignoredFields.includes(keyValue) && this.fieldPatternPredicate(keyValue)) {
50
+ const specPath = this.specPath(value);
51
+ const patternedFieldElement = this.toRefractedElement(specPath, value);
52
+ const newMemberElement = new MemberElement(this.consume ? key : cloneDeep(key), patternedFieldElement);
53
+ this.copyMetaAndAttributes(memberElement, newMemberElement);
54
+ newMemberElement.classes.push('patterned-field');
55
+ this.element.content.push(newMemberElement);
56
+ // consume: release processed generic subtree
57
+ if (this.consume && this.consumeSafe && !memberElement.isFrozen) memberElement.value = undefined;
58
+ } else if (!this.ignoredFields.includes(keyValue)) {
59
+ this.element.content.push(this.consume ? memberElement : cloneDeep(memberElement));
60
+ }
61
+ });
62
+ this.copyMetaAndAttributes(objectElement, this.element);
63
+ path.stop();
64
+ }
65
+ }
66
+ export default PatternedFieldsVisitor;
@@ -0,0 +1,16 @@
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 BasePathVisitor extends _FallbackVisitor.default {
11
+ StringElement(path) {
12
+ super.enter(path);
13
+ this.element.classes.push('swagger-base-path');
14
+ }
15
+ }
16
+ var _default = exports.default = BasePathVisitor;
@@ -0,0 +1,11 @@
1
+ import FallbackVisitor from "../FallbackVisitor.mjs";
2
+ /**
3
+ * @public
4
+ */
5
+ class BasePathVisitor extends FallbackVisitor {
6
+ StringElement(path) {
7
+ super.enter(path);
8
+ this.element.classes.push('swagger-base-path');
9
+ }
10
+ }
11
+ export default BasePathVisitor;
@@ -0,0 +1,23 @@
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 _apidomDatamodel = require("@speclynx/apidom-datamodel");
7
+ var _SwaggerConsumes = _interopRequireDefault(require("../../../elements/nces/SwaggerConsumes.cjs"));
8
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
9
+ /**
10
+ * @public
11
+ */
12
+ class ConsumesVisitor extends _FallbackVisitor.default {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new _SwaggerConsumes.default();
16
+ }
17
+ ArrayElement(path) {
18
+ const arrayElement = path.node;
19
+ this.element = this.element.concat((0, _apidomDatamodel.cloneDeep)(arrayElement));
20
+ path.stop();
21
+ }
22
+ }
23
+ var _default = exports.default = ConsumesVisitor;
@@ -0,0 +1,18 @@
1
+ import { cloneDeep } from '@speclynx/apidom-datamodel';
2
+ import SwaggerConsumesElement from "../../../elements/nces/SwaggerConsumes.mjs";
3
+ import FallbackVisitor from "../FallbackVisitor.mjs";
4
+ /**
5
+ * @public
6
+ */
7
+ class ConsumesVisitor extends FallbackVisitor {
8
+ constructor(options) {
9
+ super(options);
10
+ this.element = new SwaggerConsumesElement();
11
+ }
12
+ ArrayElement(path) {
13
+ const arrayElement = path.node;
14
+ this.element = this.element.concat(cloneDeep(arrayElement));
15
+ path.stop();
16
+ }
17
+ }
18
+ export default ConsumesVisitor;
@@ -0,0 +1,16 @@
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 HostVisitor extends _FallbackVisitor.default {
11
+ StringElement(path) {
12
+ super.enter(path);
13
+ this.element.classes.push('swagger-host');
14
+ }
15
+ }
16
+ var _default = exports.default = HostVisitor;
@@ -0,0 +1,11 @@
1
+ import FallbackVisitor from "../FallbackVisitor.mjs";
2
+ /**
3
+ * @public
4
+ */
5
+ class HostVisitor extends FallbackVisitor {
6
+ StringElement(path) {
7
+ super.enter(path);
8
+ this.element.classes.push('swagger-host');
9
+ }
10
+ }
11
+ export default HostVisitor;
@@ -0,0 +1,23 @@
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 _apidomDatamodel = require("@speclynx/apidom-datamodel");
7
+ var _SwaggerProduces = _interopRequireDefault(require("../../../elements/nces/SwaggerProduces.cjs"));
8
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
9
+ /**
10
+ * @public
11
+ */
12
+ class ProducesVisitor extends _FallbackVisitor.default {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new _SwaggerProduces.default();
16
+ }
17
+ ArrayElement(path) {
18
+ const arrayElement = path.node;
19
+ this.element = this.element.concat((0, _apidomDatamodel.cloneDeep)(arrayElement));
20
+ path.stop();
21
+ }
22
+ }
23
+ var _default = exports.default = ProducesVisitor;
@@ -0,0 +1,18 @@
1
+ import { cloneDeep } from '@speclynx/apidom-datamodel';
2
+ import SwaggerProducesElement from "../../../elements/nces/SwaggerProduces.mjs";
3
+ import FallbackVisitor from "../FallbackVisitor.mjs";
4
+ /**
5
+ * @public
6
+ */
7
+ class ProducesVisitor extends FallbackVisitor {
8
+ constructor(options) {
9
+ super(options);
10
+ this.element = new SwaggerProducesElement();
11
+ }
12
+ ArrayElement(path) {
13
+ const arrayElement = path.node;
14
+ this.element = this.element.concat(cloneDeep(arrayElement));
15
+ path.stop();
16
+ }
17
+ }
18
+ export default ProducesVisitor;
@@ -0,0 +1,23 @@
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 _apidomDatamodel = require("@speclynx/apidom-datamodel");
7
+ var _SwaggerSchemes = _interopRequireDefault(require("../../../elements/nces/SwaggerSchemes.cjs"));
8
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
9
+ /**
10
+ * @public
11
+ */
12
+ class SchemesVisitor extends _FallbackVisitor.default {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new _SwaggerSchemes.default();
16
+ }
17
+ ArrayElement(path) {
18
+ const arrayElement = path.node;
19
+ this.element = this.element.concat((0, _apidomDatamodel.cloneDeep)(arrayElement));
20
+ path.stop();
21
+ }
22
+ }
23
+ var _default = exports.default = SchemesVisitor;
@@ -0,0 +1,18 @@
1
+ import { cloneDeep } from '@speclynx/apidom-datamodel';
2
+ import SwaggerSchemesElement from "../../../elements/nces/SwaggerSchemes.mjs";
3
+ import FallbackVisitor from "../FallbackVisitor.mjs";
4
+ /**
5
+ * @public
6
+ */
7
+ class SchemesVisitor extends FallbackVisitor {
8
+ constructor(options) {
9
+ super(options);
10
+ this.element = new SwaggerSchemesElement();
11
+ }
12
+ ArrayElement(path) {
13
+ const arrayElement = path.node;
14
+ this.element = this.element.concat(cloneDeep(arrayElement));
15
+ path.stop();
16
+ }
17
+ }
18
+ export default SchemesVisitor;
@@ -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 _SwaggerSecurity = _interopRequireDefault(require("../../../elements/nces/SwaggerSecurity.cjs"));
7
+ var _bases = require("./bases.cjs");
8
+ /**
9
+ * @public
10
+ */
11
+ class SecurityVisitor extends _bases.BaseSpecificationVisitor {
12
+ constructor(options) {
13
+ super(options);
14
+ this.element = new _SwaggerSecurity.default();
15
+ }
16
+ ArrayElement(path) {
17
+ const arrayElement = path.node;
18
+ arrayElement.forEach(item => {
19
+ const specPath = ['document', 'objects', 'SecurityRequirement'];
20
+ const element = this.toRefractedElement(specPath, item);
21
+ this.element.push(element);
22
+ });
23
+ this.copyMetaAndAttributes(arrayElement, this.element);
24
+ path.stop();
25
+ }
26
+ }
27
+ var _default = exports.default = SecurityVisitor;
@@ -0,0 +1,22 @@
1
+ import SwaggerSecurityElement from "../../../elements/nces/SwaggerSecurity.mjs";
2
+ import { BaseSpecificationVisitor } from "./bases.mjs";
3
+ /**
4
+ * @public
5
+ */
6
+ class SecurityVisitor extends BaseSpecificationVisitor {
7
+ constructor(options) {
8
+ super(options);
9
+ this.element = new SwaggerSecurityElement();
10
+ }
11
+ ArrayElement(path) {
12
+ const arrayElement = path.node;
13
+ arrayElement.forEach(item => {
14
+ const specPath = ['document', 'objects', 'SecurityRequirement'];
15
+ const element = this.toRefractedElement(specPath, item);
16
+ this.element.push(element);
17
+ });
18
+ this.copyMetaAndAttributes(arrayElement, this.element);
19
+ path.stop();
20
+ }
21
+ }
22
+ export default SecurityVisitor;
@@ -0,0 +1,21 @@
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 _apidomCore = require("@speclynx/apidom-core");
7
+ var _SwaggerVersion = _interopRequireDefault(require("../../../elements/SwaggerVersion.cjs"));
8
+ var _bases = require("./bases.cjs");
9
+ /**
10
+ * @public
11
+ */
12
+ class SwaggerVisitor extends _bases.BaseSpecificationVisitor {
13
+ StringElement(path) {
14
+ const stringElement = path.node;
15
+ const swaggerVersionElement = new _SwaggerVersion.default((0, _apidomCore.toValue)(stringElement));
16
+ this.copyMetaAndAttributes(stringElement, swaggerVersionElement);
17
+ this.element = swaggerVersionElement;
18
+ path.stop();
19
+ }
20
+ }
21
+ var _default = exports.default = SwaggerVisitor;
@@ -0,0 +1,16 @@
1
+ import { toValue } from '@speclynx/apidom-core';
2
+ import SwaggerVersionElement from "../../../elements/SwaggerVersion.mjs";
3
+ import { BaseSpecificationVisitor } from "./bases.mjs";
4
+ /**
5
+ * @public
6
+ */
7
+ class SwaggerVisitor extends BaseSpecificationVisitor {
8
+ StringElement(path) {
9
+ const stringElement = path.node;
10
+ const swaggerVersionElement = new SwaggerVersionElement(toValue(stringElement));
11
+ this.copyMetaAndAttributes(stringElement, swaggerVersionElement);
12
+ this.element = swaggerVersionElement;
13
+ path.stop();
14
+ }
15
+ }
16
+ export default SwaggerVisitor;
@@ -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 _SwaggerTags = _interopRequireDefault(require("../../../elements/nces/SwaggerTags.cjs"));
7
+ var _bases = require("./bases.cjs");
8
+ /**
9
+ * @public
10
+ */
11
+ class TagsVisitor extends _bases.BaseSpecificationVisitor {
12
+ constructor(options) {
13
+ super(options);
14
+ this.element = new _SwaggerTags.default();
15
+ }
16
+ ArrayElement(path) {
17
+ const arrayElement = path.node;
18
+ arrayElement.forEach(item => {
19
+ const specPath = ['document', 'objects', 'Tag'];
20
+ const element = this.toRefractedElement(specPath, item);
21
+ this.element.push(element);
22
+ });
23
+ this.copyMetaAndAttributes(arrayElement, this.element);
24
+ path.stop();
25
+ }
26
+ }
27
+ var _default = exports.default = TagsVisitor;
@@ -0,0 +1,22 @@
1
+ import SwaggerTagsElement from "../../../elements/nces/SwaggerTags.mjs";
2
+ import { BaseSpecificationVisitor } from "./bases.mjs";
3
+ /**
4
+ * @public
5
+ */
6
+ class TagsVisitor extends BaseSpecificationVisitor {
7
+ constructor(options) {
8
+ super(options);
9
+ this.element = new SwaggerTagsElement();
10
+ }
11
+ ArrayElement(path) {
12
+ const arrayElement = path.node;
13
+ arrayElement.forEach(item => {
14
+ const specPath = ['document', 'objects', 'Tag'];
15
+ const element = this.toRefractedElement(specPath, item);
16
+ this.element.push(element);
17
+ });
18
+ this.copyMetaAndAttributes(arrayElement, this.element);
19
+ path.stop();
20
+ }
21
+ }
22
+ export default TagsVisitor;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
4
+ exports.__esModule = true;
5
+ exports.BaseSpecificationVisitor = exports.BasePatternedFieldsVisitor = exports.BaseMixedFieldsVisitor = exports.BaseMapVisitor = exports.BaseFixedFieldsVisitor = exports.BaseAlternatingVisitor = void 0;
6
+ var _tsMixer = require("ts-mixer");
7
+ var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
8
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
9
+ var _FixedFieldsVisitor = _interopRequireDefault(require("../generics/FixedFieldsVisitor.cjs"));
10
+ var _PatternedFieldsVisitor = _interopRequireDefault(require("../generics/PatternedFieldsVisitor.cjs"));
11
+ var _MapVisitor = _interopRequireDefault(require("../generics/MapVisitor.cjs"));
12
+ var _AlternatingVisitor = _interopRequireDefault(require("../generics/AlternatingVisitor.cjs"));
13
+ var _MixedFieldsVisitor = _interopRequireDefault(require("../generics/MixedFieldsVisitor.cjs"));
14
+ /**
15
+ * Base class for visitors using Mixin(SpecificationVisitor, FallbackVisitor)
16
+ * @public
17
+ */
18
+ const BaseSpecificationVisitor = exports.BaseSpecificationVisitor = (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _FallbackVisitor.default);
19
+
20
+ /**
21
+ * @public
22
+ */
23
+
24
+ /**
25
+ * Base class for visitors using Mixin(FixedFieldsVisitor, FallbackVisitor)
26
+ * @public
27
+ */
28
+ const BaseFixedFieldsVisitor = exports.BaseFixedFieldsVisitor = (0, _tsMixer.Mixin)(_FixedFieldsVisitor.default, _FallbackVisitor.default);
29
+
30
+ /**
31
+ * @public
32
+ */
33
+
34
+ /**
35
+ * Base class for visitors using Mixin(PatternedFieldsVisitor, FallbackVisitor)
36
+ * @public
37
+ */
38
+ const BasePatternedFieldsVisitor = exports.BasePatternedFieldsVisitor = (0, _tsMixer.Mixin)(_PatternedFieldsVisitor.default, _FallbackVisitor.default);
39
+
40
+ /**
41
+ * @public
42
+ */
43
+
44
+ /**
45
+ * Base class for visitors using Mixin(MapVisitor, FallbackVisitor)
46
+ * @public
47
+ */
48
+ const BaseMapVisitor = exports.BaseMapVisitor = (0, _tsMixer.Mixin)(_MapVisitor.default, _FallbackVisitor.default);
49
+
50
+ /**
51
+ * @public
52
+ */
53
+
54
+ /**
55
+ * Base class for visitors using Mixin(AlternatingVisitor, FallbackVisitor)
56
+ * @public
57
+ */
58
+ const BaseAlternatingVisitor = exports.BaseAlternatingVisitor = (0, _tsMixer.Mixin)(_AlternatingVisitor.default, _FallbackVisitor.default);
59
+
60
+ /**
61
+ * @public
62
+ */
63
+
64
+ /**
65
+ * Base class for visitors using Mixin(MixedFieldsVisitor, FallbackVisitor)
66
+ * @public
67
+ */
68
+ const BaseMixedFieldsVisitor = exports.BaseMixedFieldsVisitor = (0, _tsMixer.Mixin)(_MixedFieldsVisitor.default, _FallbackVisitor.default);
69
+
70
+ /**
71
+ * @public
72
+ */
@@ -0,0 +1,67 @@
1
+ import { Mixin } from 'ts-mixer';
2
+ import SpecificationVisitor from "../SpecificationVisitor.mjs";
3
+ import FallbackVisitor from "../FallbackVisitor.mjs";
4
+ import FixedFieldsVisitor from "../generics/FixedFieldsVisitor.mjs";
5
+ import PatternedFieldsVisitor from "../generics/PatternedFieldsVisitor.mjs";
6
+ import MapVisitor from "../generics/MapVisitor.mjs";
7
+ import AlternatingVisitor from "../generics/AlternatingVisitor.mjs";
8
+ import MixedFieldsVisitor from "../generics/MixedFieldsVisitor.mjs";
9
+ /**
10
+ * Base class for visitors using Mixin(SpecificationVisitor, FallbackVisitor)
11
+ * @public
12
+ */
13
+ export const BaseSpecificationVisitor = Mixin(SpecificationVisitor, FallbackVisitor);
14
+
15
+ /**
16
+ * @public
17
+ */
18
+
19
+ /**
20
+ * Base class for visitors using Mixin(FixedFieldsVisitor, FallbackVisitor)
21
+ * @public
22
+ */
23
+ export const BaseFixedFieldsVisitor = Mixin(FixedFieldsVisitor, FallbackVisitor);
24
+
25
+ /**
26
+ * @public
27
+ */
28
+
29
+ /**
30
+ * Base class for visitors using Mixin(PatternedFieldsVisitor, FallbackVisitor)
31
+ * @public
32
+ */
33
+ export const BasePatternedFieldsVisitor = Mixin(PatternedFieldsVisitor, FallbackVisitor);
34
+
35
+ /**
36
+ * @public
37
+ */
38
+
39
+ /**
40
+ * Base class for visitors using Mixin(MapVisitor, FallbackVisitor)
41
+ * @public
42
+ */
43
+ export const BaseMapVisitor = Mixin(MapVisitor, FallbackVisitor);
44
+
45
+ /**
46
+ * @public
47
+ */
48
+
49
+ /**
50
+ * Base class for visitors using Mixin(AlternatingVisitor, FallbackVisitor)
51
+ * @public
52
+ */
53
+ export const BaseAlternatingVisitor = Mixin(AlternatingVisitor, FallbackVisitor);
54
+
55
+ /**
56
+ * @public
57
+ */
58
+
59
+ /**
60
+ * Base class for visitors using Mixin(MixedFieldsVisitor, FallbackVisitor)
61
+ * @public
62
+ */
63
+ export const BaseMixedFieldsVisitor = Mixin(MixedFieldsVisitor, FallbackVisitor);
64
+
65
+ /**
66
+ * @public
67
+ */
@@ -0,0 +1,20 @@
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 _Contact = _interopRequireDefault(require("../../../../elements/Contact.cjs"));
8
+ var _bases = require("../bases.cjs");
9
+ /**
10
+ * @public
11
+ */
12
+ class ContactVisitor extends _bases.BaseFixedFieldsVisitor {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new _Contact.default();
16
+ this.specPath = (0, _ramda.always)(['document', 'objects', 'Contact']);
17
+ this.canSupportSpecificationExtensions = true;
18
+ }
19
+ }
20
+ var _default = exports.default = ContactVisitor;
@@ -0,0 +1,15 @@
1
+ import { always } from 'ramda';
2
+ import ContactElement from "../../../../elements/Contact.mjs";
3
+ import { BaseFixedFieldsVisitor } from "../bases.mjs";
4
+ /**
5
+ * @public
6
+ */
7
+ class ContactVisitor extends BaseFixedFieldsVisitor {
8
+ constructor(options) {
9
+ super(options);
10
+ this.element = new ContactElement();
11
+ this.specPath = always(['document', 'objects', 'Contact']);
12
+ this.canSupportSpecificationExtensions = true;
13
+ }
14
+ }
15
+ export default ContactVisitor;
@@ -0,0 +1,31 @@
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 _apidomNsJsonSchemaDraft = require("@speclynx/apidom-ns-json-schema-draft-4");
7
+ var _Definitions = _interopRequireDefault(require("../../../../elements/Definitions.cjs"));
8
+ var _bases = require("../bases.cjs");
9
+ /**
10
+ * @public
11
+ */
12
+ class DefinitionsVisitor extends _bases.BaseMapVisitor {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new _Definitions.default();
16
+ this.specPath = element => {
17
+ return (0, _apidomNsJsonSchemaDraft.isJSONReferenceLikeElement)(element) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'Schema'];
18
+ };
19
+ }
20
+ ObjectElement(path) {
21
+ _bases.BaseMapVisitor.prototype.ObjectElement.call(this, path);
22
+
23
+ // decorate every JSONReferenceElement with metadata about their referencing type
24
+ this.element.filter(_apidomNsJsonSchemaDraft.isJSONReferenceElement)
25
+ // @ts-ignore
26
+ .forEach(referenceElement => {
27
+ referenceElement.meta.set('referenced-element', 'schema');
28
+ });
29
+ }
30
+ }
31
+ var _default = exports.default = DefinitionsVisitor;
@@ -0,0 +1,26 @@
1
+ import { isJSONReferenceLikeElement, isJSONReferenceElement } from '@speclynx/apidom-ns-json-schema-draft-4';
2
+ import DefinitionsElement from "../../../../elements/Definitions.mjs";
3
+ import { BaseMapVisitor } from "../bases.mjs";
4
+ /**
5
+ * @public
6
+ */
7
+ class DefinitionsVisitor extends BaseMapVisitor {
8
+ constructor(options) {
9
+ super(options);
10
+ this.element = new DefinitionsElement();
11
+ this.specPath = element => {
12
+ return isJSONReferenceLikeElement(element) ? ['document', 'objects', 'JSONReference'] : ['document', 'objects', 'Schema'];
13
+ };
14
+ }
15
+ ObjectElement(path) {
16
+ BaseMapVisitor.prototype.ObjectElement.call(this, path);
17
+
18
+ // decorate every JSONReferenceElement with metadata about their referencing type
19
+ this.element.filter(isJSONReferenceElement)
20
+ // @ts-ignore
21
+ .forEach(referenceElement => {
22
+ referenceElement.meta.set('referenced-element', 'schema');
23
+ });
24
+ }
25
+ }
26
+ export default DefinitionsVisitor;
@@ -0,0 +1,20 @@
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 _Example = _interopRequireDefault(require("../../../../elements/Example.cjs"));
8
+ var _bases = require("../bases.cjs");
9
+ /**
10
+ * @public
11
+ */
12
+ class ExampleVisitor extends _bases.BaseMapVisitor {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new _Example.default();
16
+ this.specPath = (0, _ramda.always)(['value']);
17
+ this.canSupportSpecificationExtensions = false;
18
+ }
19
+ }
20
+ var _default = exports.default = ExampleVisitor;