@speclynx/apidom-ns-openapi-3-0 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 (356) hide show
  1. package/CHANGELOG.md +88 -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 +221 -0
  9. package/dist/apidom-ns-openapi-3-0.browser.js +25840 -0
  10. package/dist/apidom-ns-openapi-3-0.browser.min.js +1 -0
  11. package/package.json +65 -0
  12. package/src/elements/Callback.cjs +15 -0
  13. package/src/elements/Callback.mjs +12 -0
  14. package/src/elements/Components.cjs +69 -0
  15. package/src/elements/Components.mjs +66 -0
  16. package/src/elements/Contact.cjs +33 -0
  17. package/src/elements/Contact.mjs +30 -0
  18. package/src/elements/Discriminator.cjs +27 -0
  19. package/src/elements/Discriminator.mjs +24 -0
  20. package/src/elements/Encoding.cjs +45 -0
  21. package/src/elements/Encoding.mjs +42 -0
  22. package/src/elements/Example.cjs +39 -0
  23. package/src/elements/Example.mjs +36 -0
  24. package/src/elements/ExternalDocumentation.cjs +27 -0
  25. package/src/elements/ExternalDocumentation.mjs +24 -0
  26. package/src/elements/Header.cjs +90 -0
  27. package/src/elements/Header.mjs +86 -0
  28. package/src/elements/Info.cjs +52 -0
  29. package/src/elements/Info.mjs +48 -0
  30. package/src/elements/License.cjs +27 -0
  31. package/src/elements/License.mjs +24 -0
  32. package/src/elements/Link.cjs +63 -0
  33. package/src/elements/Link.mjs +59 -0
  34. package/src/elements/MediaType.cjs +39 -0
  35. package/src/elements/MediaType.mjs +35 -0
  36. package/src/elements/OAuthFlow.cjs +39 -0
  37. package/src/elements/OAuthFlow.mjs +36 -0
  38. package/src/elements/OAuthFlows.cjs +39 -0
  39. package/src/elements/OAuthFlows.mjs +35 -0
  40. package/src/elements/OpenApi3-0.cjs +65 -0
  41. package/src/elements/OpenApi3-0.mjs +61 -0
  42. package/src/elements/Openapi.cjs +17 -0
  43. package/src/elements/Openapi.mjs +14 -0
  44. package/src/elements/Operation.cjs +90 -0
  45. package/src/elements/Operation.mjs +86 -0
  46. package/src/elements/Parameter.cjs +102 -0
  47. package/src/elements/Parameter.mjs +98 -0
  48. package/src/elements/PathItem.cjs +93 -0
  49. package/src/elements/PathItem.mjs +89 -0
  50. package/src/elements/Paths.cjs +15 -0
  51. package/src/elements/Paths.mjs +12 -0
  52. package/src/elements/Reference.cjs +22 -0
  53. package/src/elements/Reference.mjs +19 -0
  54. package/src/elements/RequestBody.cjs +36 -0
  55. package/src/elements/RequestBody.mjs +33 -0
  56. package/src/elements/Response.cjs +39 -0
  57. package/src/elements/Response.mjs +36 -0
  58. package/src/elements/Responses.cjs +21 -0
  59. package/src/elements/Responses.mjs +17 -0
  60. package/src/elements/Schema.cjs +170 -0
  61. package/src/elements/Schema.mjs +166 -0
  62. package/src/elements/SecurityRequirement.cjs +15 -0
  63. package/src/elements/SecurityRequirement.mjs +12 -0
  64. package/src/elements/SecurityScheme.cjs +63 -0
  65. package/src/elements/SecurityScheme.mjs +59 -0
  66. package/src/elements/Server.cjs +33 -0
  67. package/src/elements/Server.mjs +30 -0
  68. package/src/elements/ServerVariable.cjs +33 -0
  69. package/src/elements/ServerVariable.mjs +30 -0
  70. package/src/elements/Tag.cjs +33 -0
  71. package/src/elements/Tag.mjs +29 -0
  72. package/src/elements/Xml.cjs +45 -0
  73. package/src/elements/Xml.mjs +42 -0
  74. package/src/elements/nces/ComponentsCallbacks.cjs +16 -0
  75. package/src/elements/nces/ComponentsCallbacks.mjs +13 -0
  76. package/src/elements/nces/ComponentsExamples.cjs +17 -0
  77. package/src/elements/nces/ComponentsExamples.mjs +14 -0
  78. package/src/elements/nces/ComponentsHeaders.cjs +16 -0
  79. package/src/elements/nces/ComponentsHeaders.mjs +13 -0
  80. package/src/elements/nces/ComponentsLinks.cjs +16 -0
  81. package/src/elements/nces/ComponentsLinks.mjs +13 -0
  82. package/src/elements/nces/ComponentsParameters.cjs +17 -0
  83. package/src/elements/nces/ComponentsParameters.mjs +14 -0
  84. package/src/elements/nces/ComponentsRequestBodies.cjs +16 -0
  85. package/src/elements/nces/ComponentsRequestBodies.mjs +13 -0
  86. package/src/elements/nces/ComponentsResponses.cjs +16 -0
  87. package/src/elements/nces/ComponentsResponses.mjs +13 -0
  88. package/src/elements/nces/ComponentsSchemas.cjs +16 -0
  89. package/src/elements/nces/ComponentsSchemas.mjs +13 -0
  90. package/src/elements/nces/ComponentsSecuritySchemes.cjs +16 -0
  91. package/src/elements/nces/ComponentsSecuritySchemes.mjs +13 -0
  92. package/src/elements/nces/DiscriminatorMapping.cjs +16 -0
  93. package/src/elements/nces/DiscriminatorMapping.mjs +13 -0
  94. package/src/elements/nces/EncodingHeaders.cjs +16 -0
  95. package/src/elements/nces/EncodingHeaders.mjs +13 -0
  96. package/src/elements/nces/HeaderContent.cjs +17 -0
  97. package/src/elements/nces/HeaderContent.mjs +14 -0
  98. package/src/elements/nces/HeaderExamples.cjs +17 -0
  99. package/src/elements/nces/HeaderExamples.mjs +14 -0
  100. package/src/elements/nces/LinkParameters.cjs +16 -0
  101. package/src/elements/nces/LinkParameters.mjs +13 -0
  102. package/src/elements/nces/MediaTypeEncoding.cjs +16 -0
  103. package/src/elements/nces/MediaTypeEncoding.mjs +13 -0
  104. package/src/elements/nces/MediaTypeExamples.cjs +17 -0
  105. package/src/elements/nces/MediaTypeExamples.mjs +14 -0
  106. package/src/elements/nces/OAuthFlowScopes.cjs +16 -0
  107. package/src/elements/nces/OAuthFlowScopes.mjs +13 -0
  108. package/src/elements/nces/OperationCallbacks.cjs +16 -0
  109. package/src/elements/nces/OperationCallbacks.mjs +13 -0
  110. package/src/elements/nces/OperationParameters.cjs +17 -0
  111. package/src/elements/nces/OperationParameters.mjs +14 -0
  112. package/src/elements/nces/OperationSecurity.cjs +17 -0
  113. package/src/elements/nces/OperationSecurity.mjs +14 -0
  114. package/src/elements/nces/OperationServers.cjs +17 -0
  115. package/src/elements/nces/OperationServers.mjs +14 -0
  116. package/src/elements/nces/OperationTags.cjs +16 -0
  117. package/src/elements/nces/OperationTags.mjs +13 -0
  118. package/src/elements/nces/ParameterContent.cjs +17 -0
  119. package/src/elements/nces/ParameterContent.mjs +14 -0
  120. package/src/elements/nces/ParameterExamples.cjs +17 -0
  121. package/src/elements/nces/ParameterExamples.mjs +14 -0
  122. package/src/elements/nces/PathItemParameters.cjs +17 -0
  123. package/src/elements/nces/PathItemParameters.mjs +14 -0
  124. package/src/elements/nces/PathItemServers.cjs +17 -0
  125. package/src/elements/nces/PathItemServers.mjs +14 -0
  126. package/src/elements/nces/RequestBodyContent.cjs +17 -0
  127. package/src/elements/nces/RequestBodyContent.mjs +14 -0
  128. package/src/elements/nces/ResponseContent.cjs +17 -0
  129. package/src/elements/nces/ResponseContent.mjs +14 -0
  130. package/src/elements/nces/ResponseHeaders.cjs +16 -0
  131. package/src/elements/nces/ResponseHeaders.mjs +13 -0
  132. package/src/elements/nces/ResponseLinks.cjs +16 -0
  133. package/src/elements/nces/ResponseLinks.mjs +13 -0
  134. package/src/elements/nces/Security.cjs +16 -0
  135. package/src/elements/nces/Security.mjs +13 -0
  136. package/src/elements/nces/ServerVariables.cjs +16 -0
  137. package/src/elements/nces/ServerVariables.mjs +13 -0
  138. package/src/elements/nces/Servers.cjs +16 -0
  139. package/src/elements/nces/Servers.mjs +13 -0
  140. package/src/elements/nces/Tags.cjs +16 -0
  141. package/src/elements/nces/Tags.mjs +13 -0
  142. package/src/index.cjs +185 -0
  143. package/src/index.mjs +54 -0
  144. package/src/media-types.cjs +34 -0
  145. package/src/media-types.mjs +30 -0
  146. package/src/namespace.cjs +80 -0
  147. package/src/namespace.mjs +74 -0
  148. package/src/predicates.cjs +330 -0
  149. package/src/predicates.mjs +322 -0
  150. package/src/refractor/index.cjs +52 -0
  151. package/src/refractor/index.mjs +46 -0
  152. package/src/refractor/plugins/replace-empty-element.cjs +627 -0
  153. package/src/refractor/plugins/replace-empty-element.mjs +619 -0
  154. package/src/refractor/predicates.cjs +36 -0
  155. package/src/refractor/predicates.mjs +31 -0
  156. package/src/refractor/registration.cjs +99 -0
  157. package/src/refractor/registration.mjs +64 -0
  158. package/src/refractor/specification.cjs +644 -0
  159. package/src/refractor/specification.mjs +639 -0
  160. package/src/refractor/toolbox.cjs +38 -0
  161. package/src/refractor/toolbox.mjs +30 -0
  162. package/src/refractor/visitors/FallbackVisitor.cjs +24 -0
  163. package/src/refractor/visitors/FallbackVisitor.mjs +18 -0
  164. package/src/refractor/visitors/SpecificationExtensionVisitor.cjs +18 -0
  165. package/src/refractor/visitors/SpecificationExtensionVisitor.mjs +13 -0
  166. package/src/refractor/visitors/SpecificationVisitor.cjs +84 -0
  167. package/src/refractor/visitors/SpecificationVisitor.mjs +78 -0
  168. package/src/refractor/visitors/Visitor.cjs +31 -0
  169. package/src/refractor/visitors/Visitor.mjs +28 -0
  170. package/src/refractor/visitors/generics/AlternatingVisitor.cjs +42 -0
  171. package/src/refractor/visitors/generics/AlternatingVisitor.mjs +35 -0
  172. package/src/refractor/visitors/generics/FixedFieldsVisitor.cjs +67 -0
  173. package/src/refractor/visitors/generics/FixedFieldsVisitor.mjs +60 -0
  174. package/src/refractor/visitors/generics/MapVisitor.cjs +21 -0
  175. package/src/refractor/visitors/generics/MapVisitor.mjs +15 -0
  176. package/src/refractor/visitors/generics/MixedFieldsVisitor.cjs +60 -0
  177. package/src/refractor/visitors/generics/MixedFieldsVisitor.mjs +54 -0
  178. package/src/refractor/visitors/generics/PatternedFieldsVisitor.cjs +67 -0
  179. package/src/refractor/visitors/generics/PatternedFieldsVisitor.mjs +61 -0
  180. package/src/refractor/visitors/open-api-3-0/ContentVisitor.cjs +26 -0
  181. package/src/refractor/visitors/open-api-3-0/ContentVisitor.mjs +20 -0
  182. package/src/refractor/visitors/open-api-3-0/ExamplesVisitor.cjs +37 -0
  183. package/src/refractor/visitors/open-api-3-0/ExamplesVisitor.mjs +31 -0
  184. package/src/refractor/visitors/open-api-3-0/OpenapiVisitor.cjs +26 -0
  185. package/src/refractor/visitors/open-api-3-0/OpenapiVisitor.mjs +20 -0
  186. package/src/refractor/visitors/open-api-3-0/ParametersVisitor.cjs +38 -0
  187. package/src/refractor/visitors/open-api-3-0/ParametersVisitor.mjs +32 -0
  188. package/src/refractor/visitors/open-api-3-0/SecurityVisitor.cjs +36 -0
  189. package/src/refractor/visitors/open-api-3-0/SecurityVisitor.mjs +30 -0
  190. package/src/refractor/visitors/open-api-3-0/ServersVisitor.cjs +34 -0
  191. package/src/refractor/visitors/open-api-3-0/ServersVisitor.mjs +28 -0
  192. package/src/refractor/visitors/open-api-3-0/TagsVisitor.cjs +34 -0
  193. package/src/refractor/visitors/open-api-3-0/TagsVisitor.mjs +28 -0
  194. package/src/refractor/visitors/open-api-3-0/callback/index.cjs +41 -0
  195. package/src/refractor/visitors/open-api-3-0/callback/index.mjs +35 -0
  196. package/src/refractor/visitors/open-api-3-0/components/CallbacksVisitor.cjs +35 -0
  197. package/src/refractor/visitors/open-api-3-0/components/CallbacksVisitor.mjs +29 -0
  198. package/src/refractor/visitors/open-api-3-0/components/ExamplesVisitor.cjs +36 -0
  199. package/src/refractor/visitors/open-api-3-0/components/ExamplesVisitor.mjs +30 -0
  200. package/src/refractor/visitors/open-api-3-0/components/HeadersVisitor.cjs +43 -0
  201. package/src/refractor/visitors/open-api-3-0/components/HeadersVisitor.mjs +37 -0
  202. package/src/refractor/visitors/open-api-3-0/components/LinksVisitor.cjs +35 -0
  203. package/src/refractor/visitors/open-api-3-0/components/LinksVisitor.mjs +29 -0
  204. package/src/refractor/visitors/open-api-3-0/components/ParametersVisitor.cjs +36 -0
  205. package/src/refractor/visitors/open-api-3-0/components/ParametersVisitor.mjs +30 -0
  206. package/src/refractor/visitors/open-api-3-0/components/RequestBodiesVisitor.cjs +35 -0
  207. package/src/refractor/visitors/open-api-3-0/components/RequestBodiesVisitor.mjs +29 -0
  208. package/src/refractor/visitors/open-api-3-0/components/ResponsesVisitor.cjs +43 -0
  209. package/src/refractor/visitors/open-api-3-0/components/ResponsesVisitor.mjs +37 -0
  210. package/src/refractor/visitors/open-api-3-0/components/SchemasVisitor.cjs +36 -0
  211. package/src/refractor/visitors/open-api-3-0/components/SchemasVisitor.mjs +30 -0
  212. package/src/refractor/visitors/open-api-3-0/components/SecuritySchemesVisitor.cjs +35 -0
  213. package/src/refractor/visitors/open-api-3-0/components/SecuritySchemesVisitor.mjs +29 -0
  214. package/src/refractor/visitors/open-api-3-0/components/index.cjs +26 -0
  215. package/src/refractor/visitors/open-api-3-0/components/index.mjs +20 -0
  216. package/src/refractor/visitors/open-api-3-0/contact/index.cjs +26 -0
  217. package/src/refractor/visitors/open-api-3-0/contact/index.mjs +20 -0
  218. package/src/refractor/visitors/open-api-3-0/distriminator/MappingVisitor.cjs +25 -0
  219. package/src/refractor/visitors/open-api-3-0/distriminator/MappingVisitor.mjs +19 -0
  220. package/src/refractor/visitors/open-api-3-0/distriminator/index.cjs +26 -0
  221. package/src/refractor/visitors/open-api-3-0/distriminator/index.mjs +20 -0
  222. package/src/refractor/visitors/open-api-3-0/encoding/HeadersVisitor.cjs +44 -0
  223. package/src/refractor/visitors/open-api-3-0/encoding/HeadersVisitor.mjs +38 -0
  224. package/src/refractor/visitors/open-api-3-0/encoding/index.cjs +41 -0
  225. package/src/refractor/visitors/open-api-3-0/encoding/index.mjs +35 -0
  226. package/src/refractor/visitors/open-api-3-0/example/ExternalValueVisitor.cjs +17 -0
  227. package/src/refractor/visitors/open-api-3-0/example/ExternalValueVisitor.mjs +12 -0
  228. package/src/refractor/visitors/open-api-3-0/example/index.cjs +36 -0
  229. package/src/refractor/visitors/open-api-3-0/example/index.mjs +30 -0
  230. package/src/refractor/visitors/open-api-3-0/external-documentation/index.cjs +26 -0
  231. package/src/refractor/visitors/open-api-3-0/external-documentation/index.mjs +20 -0
  232. package/src/refractor/visitors/open-api-3-0/header/ContentVisitor.cjs +17 -0
  233. package/src/refractor/visitors/open-api-3-0/header/ContentVisitor.mjs +12 -0
  234. package/src/refractor/visitors/open-api-3-0/header/ExamplesVisitor.cjs +17 -0
  235. package/src/refractor/visitors/open-api-3-0/header/ExamplesVisitor.mjs +12 -0
  236. package/src/refractor/visitors/open-api-3-0/header/SchemaVisitor.cjs +38 -0
  237. package/src/refractor/visitors/open-api-3-0/header/SchemaVisitor.mjs +32 -0
  238. package/src/refractor/visitors/open-api-3-0/header/index.cjs +26 -0
  239. package/src/refractor/visitors/open-api-3-0/header/index.mjs +20 -0
  240. package/src/refractor/visitors/open-api-3-0/index.cjs +30 -0
  241. package/src/refractor/visitors/open-api-3-0/index.mjs +24 -0
  242. package/src/refractor/visitors/open-api-3-0/info/VersionVisitor.cjs +18 -0
  243. package/src/refractor/visitors/open-api-3-0/info/VersionVisitor.mjs +13 -0
  244. package/src/refractor/visitors/open-api-3-0/info/index.cjs +26 -0
  245. package/src/refractor/visitors/open-api-3-0/info/index.mjs +20 -0
  246. package/src/refractor/visitors/open-api-3-0/license/index.cjs +26 -0
  247. package/src/refractor/visitors/open-api-3-0/license/index.mjs +20 -0
  248. package/src/refractor/visitors/open-api-3-0/link/OperationIdVisitor.cjs +17 -0
  249. package/src/refractor/visitors/open-api-3-0/link/OperationIdVisitor.mjs +12 -0
  250. package/src/refractor/visitors/open-api-3-0/link/OperationRefVisitor.cjs +17 -0
  251. package/src/refractor/visitors/open-api-3-0/link/OperationRefVisitor.mjs +12 -0
  252. package/src/refractor/visitors/open-api-3-0/link/ParametersVisitor.cjs +25 -0
  253. package/src/refractor/visitors/open-api-3-0/link/ParametersVisitor.mjs +19 -0
  254. package/src/refractor/visitors/open-api-3-0/link/index.cjs +36 -0
  255. package/src/refractor/visitors/open-api-3-0/link/index.mjs +30 -0
  256. package/src/refractor/visitors/open-api-3-0/media-type/EncodingVisitor.cjs +25 -0
  257. package/src/refractor/visitors/open-api-3-0/media-type/EncodingVisitor.mjs +19 -0
  258. package/src/refractor/visitors/open-api-3-0/media-type/ExamplesVisitor.cjs +17 -0
  259. package/src/refractor/visitors/open-api-3-0/media-type/ExamplesVisitor.mjs +12 -0
  260. package/src/refractor/visitors/open-api-3-0/media-type/SchemaVisitor.cjs +38 -0
  261. package/src/refractor/visitors/open-api-3-0/media-type/SchemaVisitor.mjs +32 -0
  262. package/src/refractor/visitors/open-api-3-0/media-type/index.cjs +26 -0
  263. package/src/refractor/visitors/open-api-3-0/media-type/index.mjs +20 -0
  264. package/src/refractor/visitors/open-api-3-0/oauth-flow/ScopesVisitor.cjs +25 -0
  265. package/src/refractor/visitors/open-api-3-0/oauth-flow/ScopesVisitor.mjs +19 -0
  266. package/src/refractor/visitors/open-api-3-0/oauth-flow/index.cjs +26 -0
  267. package/src/refractor/visitors/open-api-3-0/oauth-flow/index.mjs +20 -0
  268. package/src/refractor/visitors/open-api-3-0/oauth-flows/index.cjs +26 -0
  269. package/src/refractor/visitors/open-api-3-0/oauth-flows/index.mjs +20 -0
  270. package/src/refractor/visitors/open-api-3-0/operation/CallbacksVisitor.cjs +36 -0
  271. package/src/refractor/visitors/open-api-3-0/operation/CallbacksVisitor.mjs +30 -0
  272. package/src/refractor/visitors/open-api-3-0/operation/ParametersVisitor.cjs +17 -0
  273. package/src/refractor/visitors/open-api-3-0/operation/ParametersVisitor.mjs +12 -0
  274. package/src/refractor/visitors/open-api-3-0/operation/RequestBodyVisitor.cjs +36 -0
  275. package/src/refractor/visitors/open-api-3-0/operation/RequestBodyVisitor.mjs +30 -0
  276. package/src/refractor/visitors/open-api-3-0/operation/SecurityVisitor.cjs +33 -0
  277. package/src/refractor/visitors/open-api-3-0/operation/SecurityVisitor.mjs +27 -0
  278. package/src/refractor/visitors/open-api-3-0/operation/ServersVisitor.cjs +17 -0
  279. package/src/refractor/visitors/open-api-3-0/operation/ServersVisitor.mjs +12 -0
  280. package/src/refractor/visitors/open-api-3-0/operation/TagsVisitor.cjs +26 -0
  281. package/src/refractor/visitors/open-api-3-0/operation/TagsVisitor.mjs +20 -0
  282. package/src/refractor/visitors/open-api-3-0/operation/index.cjs +25 -0
  283. package/src/refractor/visitors/open-api-3-0/operation/index.mjs +19 -0
  284. package/src/refractor/visitors/open-api-3-0/parameter/ContentVisitor.cjs +17 -0
  285. package/src/refractor/visitors/open-api-3-0/parameter/ContentVisitor.mjs +12 -0
  286. package/src/refractor/visitors/open-api-3-0/parameter/ExamplesVisitor.cjs +17 -0
  287. package/src/refractor/visitors/open-api-3-0/parameter/ExamplesVisitor.mjs +12 -0
  288. package/src/refractor/visitors/open-api-3-0/parameter/SchemaVisitor.cjs +38 -0
  289. package/src/refractor/visitors/open-api-3-0/parameter/SchemaVisitor.mjs +32 -0
  290. package/src/refractor/visitors/open-api-3-0/parameter/index.cjs +41 -0
  291. package/src/refractor/visitors/open-api-3-0/parameter/index.mjs +35 -0
  292. package/src/refractor/visitors/open-api-3-0/path-item/$RefVisitor.cjs +17 -0
  293. package/src/refractor/visitors/open-api-3-0/path-item/$RefVisitor.mjs +12 -0
  294. package/src/refractor/visitors/open-api-3-0/path-item/ParametersVisitor.cjs +17 -0
  295. package/src/refractor/visitors/open-api-3-0/path-item/ParametersVisitor.mjs +12 -0
  296. package/src/refractor/visitors/open-api-3-0/path-item/ServersVisitor.cjs +17 -0
  297. package/src/refractor/visitors/open-api-3-0/path-item/ServersVisitor.mjs +12 -0
  298. package/src/refractor/visitors/open-api-3-0/path-item/index.cjs +45 -0
  299. package/src/refractor/visitors/open-api-3-0/path-item/index.mjs +39 -0
  300. package/src/refractor/visitors/open-api-3-0/paths/index.cjs +42 -0
  301. package/src/refractor/visitors/open-api-3-0/paths/index.mjs +36 -0
  302. package/src/refractor/visitors/open-api-3-0/reference/$RefVisitor.cjs +17 -0
  303. package/src/refractor/visitors/open-api-3-0/reference/$RefVisitor.mjs +12 -0
  304. package/src/refractor/visitors/open-api-3-0/reference/index.cjs +36 -0
  305. package/src/refractor/visitors/open-api-3-0/reference/index.mjs +30 -0
  306. package/src/refractor/visitors/open-api-3-0/request-body/ContentVisitor.cjs +17 -0
  307. package/src/refractor/visitors/open-api-3-0/request-body/ContentVisitor.mjs +12 -0
  308. package/src/refractor/visitors/open-api-3-0/request-body/index.cjs +40 -0
  309. package/src/refractor/visitors/open-api-3-0/request-body/index.mjs +34 -0
  310. package/src/refractor/visitors/open-api-3-0/response/ContentVisitor.cjs +17 -0
  311. package/src/refractor/visitors/open-api-3-0/response/ContentVisitor.mjs +12 -0
  312. package/src/refractor/visitors/open-api-3-0/response/HeadersVisitor.cjs +44 -0
  313. package/src/refractor/visitors/open-api-3-0/response/HeadersVisitor.mjs +38 -0
  314. package/src/refractor/visitors/open-api-3-0/response/LinksVisitor.cjs +35 -0
  315. package/src/refractor/visitors/open-api-3-0/response/LinksVisitor.mjs +29 -0
  316. package/src/refractor/visitors/open-api-3-0/response/index.cjs +49 -0
  317. package/src/refractor/visitors/open-api-3-0/response/index.mjs +43 -0
  318. package/src/refractor/visitors/open-api-3-0/responses/DefaultVisitor.cjs +42 -0
  319. package/src/refractor/visitors/open-api-3-0/responses/DefaultVisitor.mjs +36 -0
  320. package/src/refractor/visitors/open-api-3-0/responses/index.cjs +49 -0
  321. package/src/refractor/visitors/open-api-3-0/responses/index.mjs +43 -0
  322. package/src/refractor/visitors/open-api-3-0/schema/AllOfVisitor.cjs +26 -0
  323. package/src/refractor/visitors/open-api-3-0/schema/AllOfVisitor.mjs +22 -0
  324. package/src/refractor/visitors/open-api-3-0/schema/AnyOfVisitor.cjs +26 -0
  325. package/src/refractor/visitors/open-api-3-0/schema/AnyOfVisitor.mjs +22 -0
  326. package/src/refractor/visitors/open-api-3-0/schema/ItemsVisitor.cjs +28 -0
  327. package/src/refractor/visitors/open-api-3-0/schema/ItemsVisitor.mjs +24 -0
  328. package/src/refractor/visitors/open-api-3-0/schema/OneOfVisitor.cjs +26 -0
  329. package/src/refractor/visitors/open-api-3-0/schema/OneOfVisitor.mjs +22 -0
  330. package/src/refractor/visitors/open-api-3-0/schema/PropertiesVisitor.cjs +26 -0
  331. package/src/refractor/visitors/open-api-3-0/schema/PropertiesVisitor.mjs +22 -0
  332. package/src/refractor/visitors/open-api-3-0/schema/SchemaOrReferenceVisitor.cjs +25 -0
  333. package/src/refractor/visitors/open-api-3-0/schema/SchemaOrReferenceVisitor.mjs +21 -0
  334. package/src/refractor/visitors/open-api-3-0/schema/TypeVisitor.cjs +20 -0
  335. package/src/refractor/visitors/open-api-3-0/schema/TypeVisitor.mjs +16 -0
  336. package/src/refractor/visitors/open-api-3-0/schema/index.cjs +26 -0
  337. package/src/refractor/visitors/open-api-3-0/schema/index.mjs +20 -0
  338. package/src/refractor/visitors/open-api-3-0/security-requirement/index.cjs +25 -0
  339. package/src/refractor/visitors/open-api-3-0/security-requirement/index.mjs +19 -0
  340. package/src/refractor/visitors/open-api-3-0/security-scheme/index.cjs +26 -0
  341. package/src/refractor/visitors/open-api-3-0/security-scheme/index.mjs +20 -0
  342. package/src/refractor/visitors/open-api-3-0/server/UrlVisitor.cjs +17 -0
  343. package/src/refractor/visitors/open-api-3-0/server/UrlVisitor.mjs +12 -0
  344. package/src/refractor/visitors/open-api-3-0/server/VariablesVisitor.cjs +25 -0
  345. package/src/refractor/visitors/open-api-3-0/server/VariablesVisitor.mjs +19 -0
  346. package/src/refractor/visitors/open-api-3-0/server/index.cjs +26 -0
  347. package/src/refractor/visitors/open-api-3-0/server/index.mjs +20 -0
  348. package/src/refractor/visitors/open-api-3-0/server-variable/index.cjs +26 -0
  349. package/src/refractor/visitors/open-api-3-0/server-variable/index.mjs +20 -0
  350. package/src/refractor/visitors/open-api-3-0/tag/index.cjs +26 -0
  351. package/src/refractor/visitors/open-api-3-0/tag/index.mjs +20 -0
  352. package/src/refractor/visitors/open-api-3-0/xml/index.cjs +26 -0
  353. package/src/refractor/visitors/open-api-3-0/xml/index.mjs +20 -0
  354. package/src/traversal/visitor.cjs +57 -0
  355. package/src/traversal/visitor.mjs +54 -0
  356. package/types/apidom-ns-openapi-3-0.d.ts +3383 -0
@@ -0,0 +1,54 @@
1
+ import { Mixin } from 'ts-mixer';
2
+ import { difference } from 'ramda';
3
+ import { BREAK, toValue } from '@speclynx/apidom-core';
4
+ import FixedFieldsVisitor from "./FixedFieldsVisitor.mjs";
5
+ import PatternedFieldsVisitor from "./PatternedFieldsVisitor.mjs";
6
+ /**
7
+ * @public
8
+ */
9
+ /**
10
+ * @public
11
+ */
12
+ class MixedFieldsVisitor extends Mixin(FixedFieldsVisitor, PatternedFieldsVisitor) {
13
+ specPathFixedFields;
14
+ specPathPatternedFields;
15
+ constructor({
16
+ specPathFixedFields,
17
+ specPathPatternedFields,
18
+ ...rest
19
+ }) {
20
+ super({
21
+ ...rest
22
+ });
23
+ this.specPathFixedFields = specPathFixedFields;
24
+ this.specPathPatternedFields = specPathPatternedFields;
25
+ }
26
+ ObjectElement(objectElement) {
27
+ const {
28
+ specPath,
29
+ ignoredFields
30
+ } = this;
31
+ try {
32
+ this.specPath = this.specPathFixedFields;
33
+ const fixedFields = this.retrieveFixedFields(this.specPath(objectElement));
34
+ // let FixedFieldsVisitor only process fixed fields and leave rest to PatternedFieldsVisitor
35
+ // @ts-ignore
36
+ this.ignoredFields = [...ignoredFields, ...difference(objectElement.keys(), fixedFields)];
37
+ FixedFieldsVisitor.prototype.ObjectElement.call(this, objectElement);
38
+ this.specPath = this.specPathPatternedFields;
39
+ this.ignoredFields = fixedFields;
40
+ PatternedFieldsVisitor.prototype.ObjectElement.call(this, objectElement);
41
+
42
+ // reorder this.element members by original objectElement keys
43
+ const objectElementKeys = objectElement.keys();
44
+ this.element.content.sort((a, b) => {
45
+ return objectElementKeys.indexOf(toValue(a.key)) - objectElementKeys.indexOf(toValue(b.key));
46
+ });
47
+ } catch (e) {
48
+ this.specPath = specPath;
49
+ throw e;
50
+ }
51
+ return BREAK;
52
+ }
53
+ }
54
+ export default MixedFieldsVisitor;
@@ -0,0 +1,67 @@
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
+ var _predicates = require("../../predicates.cjs");
10
+ /**
11
+ * @public
12
+ */
13
+
14
+ /**
15
+ * @public
16
+ */
17
+ class PatternedFieldsVisitor extends _SpecificationVisitor.default {
18
+ specPath;
19
+ ignoredFields;
20
+ fieldPatternPredicate = _ramda.F;
21
+ canSupportSpecificationExtensions = false;
22
+ specificationExtensionPredicate = _predicates.isOpenApiExtension;
23
+ constructor({
24
+ specPath,
25
+ ignoredFields,
26
+ fieldPatternPredicate,
27
+ canSupportSpecificationExtensions,
28
+ specificationExtensionPredicate,
29
+ ...rest
30
+ }) {
31
+ super({
32
+ ...rest
33
+ });
34
+ this.specPath = specPath;
35
+ this.ignoredFields = ignoredFields || [];
36
+ if (typeof fieldPatternPredicate === 'function') {
37
+ this.fieldPatternPredicate = fieldPatternPredicate;
38
+ }
39
+ if (typeof canSupportSpecificationExtensions === 'boolean') {
40
+ this.canSupportSpecificationExtensions = canSupportSpecificationExtensions;
41
+ }
42
+ if (typeof specificationExtensionPredicate === 'function') {
43
+ this.specificationExtensionPredicate = specificationExtensionPredicate;
44
+ }
45
+ }
46
+ ObjectElement(objectElement) {
47
+ // @ts-ignore
48
+ objectElement.forEach((value, key, memberElement) => {
49
+ if (this.canSupportSpecificationExtensions && this.specificationExtensionPredicate(memberElement)) {
50
+ const extensionElement = this.toRefractedElement(['document', 'extension'], memberElement);
51
+ this.element.content.push(extensionElement);
52
+ } else if (!this.ignoredFields.includes((0, _apidomCore.toValue)(key)) && this.fieldPatternPredicate((0, _apidomCore.toValue)(key))) {
53
+ const specPath = this.specPath(value);
54
+ const patternedFieldElement = this.toRefractedElement(specPath, value);
55
+ const newMemberElement = new _apidomCore.MemberElement((0, _apidomCore.cloneDeep)(key), patternedFieldElement);
56
+ this.copyMetaAndAttributes(memberElement, newMemberElement);
57
+ newMemberElement.classes.push('patterned-field');
58
+ this.element.content.push(newMemberElement);
59
+ } else if (!this.ignoredFields.includes((0, _apidomCore.toValue)(key))) {
60
+ this.element.content.push((0, _apidomCore.cloneDeep)(memberElement));
61
+ }
62
+ });
63
+ this.copyMetaAndAttributes(objectElement, this.element);
64
+ return _apidomCore.BREAK;
65
+ }
66
+ }
67
+ var _default = exports.default = PatternedFieldsVisitor;
@@ -0,0 +1,61 @@
1
+ import { F as stubFalse } from 'ramda';
2
+ import { MemberElement, BREAK, cloneDeep, toValue } from '@speclynx/apidom-core';
3
+ import SpecificationVisitor from "../SpecificationVisitor.mjs";
4
+ import { isOpenApiExtension } from "../../predicates.mjs";
5
+ /**
6
+ * @public
7
+ */
8
+ /**
9
+ * @public
10
+ */
11
+ class PatternedFieldsVisitor extends SpecificationVisitor {
12
+ specPath;
13
+ ignoredFields;
14
+ fieldPatternPredicate = stubFalse;
15
+ canSupportSpecificationExtensions = false;
16
+ specificationExtensionPredicate = isOpenApiExtension;
17
+ constructor({
18
+ specPath,
19
+ ignoredFields,
20
+ fieldPatternPredicate,
21
+ canSupportSpecificationExtensions,
22
+ specificationExtensionPredicate,
23
+ ...rest
24
+ }) {
25
+ super({
26
+ ...rest
27
+ });
28
+ this.specPath = specPath;
29
+ this.ignoredFields = ignoredFields || [];
30
+ if (typeof fieldPatternPredicate === 'function') {
31
+ this.fieldPatternPredicate = fieldPatternPredicate;
32
+ }
33
+ if (typeof canSupportSpecificationExtensions === 'boolean') {
34
+ this.canSupportSpecificationExtensions = canSupportSpecificationExtensions;
35
+ }
36
+ if (typeof specificationExtensionPredicate === 'function') {
37
+ this.specificationExtensionPredicate = specificationExtensionPredicate;
38
+ }
39
+ }
40
+ ObjectElement(objectElement) {
41
+ // @ts-ignore
42
+ objectElement.forEach((value, key, memberElement) => {
43
+ if (this.canSupportSpecificationExtensions && this.specificationExtensionPredicate(memberElement)) {
44
+ const extensionElement = this.toRefractedElement(['document', 'extension'], memberElement);
45
+ this.element.content.push(extensionElement);
46
+ } else if (!this.ignoredFields.includes(toValue(key)) && this.fieldPatternPredicate(toValue(key))) {
47
+ const specPath = this.specPath(value);
48
+ const patternedFieldElement = this.toRefractedElement(specPath, value);
49
+ const newMemberElement = new MemberElement(cloneDeep(key), patternedFieldElement);
50
+ this.copyMetaAndAttributes(memberElement, newMemberElement);
51
+ newMemberElement.classes.push('patterned-field');
52
+ this.element.content.push(newMemberElement);
53
+ } else if (!this.ignoredFields.includes(toValue(key))) {
54
+ this.element.content.push(cloneDeep(memberElement));
55
+ }
56
+ });
57
+ this.copyMetaAndAttributes(objectElement, this.element);
58
+ return BREAK;
59
+ }
60
+ }
61
+ export default PatternedFieldsVisitor;
@@ -0,0 +1,26 @@
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 _ramda = require("ramda");
8
+ var _apidomCore = require("@speclynx/apidom-core");
9
+ var _MapVisitor = _interopRequireDefault(require("../generics/MapVisitor.cjs"));
10
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
11
+ /**
12
+ * @public
13
+ */
14
+
15
+ /**
16
+ * @public
17
+ */
18
+ class ContentVisitor extends (0, _tsMixer.Mixin)(_MapVisitor.default, _FallbackVisitor.default) {
19
+ constructor(options) {
20
+ super(options);
21
+ this.element = new _apidomCore.ObjectElement();
22
+ this.element.classes.push('content');
23
+ this.specPath = (0, _ramda.always)(['document', 'objects', 'MediaType']);
24
+ }
25
+ }
26
+ var _default = exports.default = ContentVisitor;
@@ -0,0 +1,20 @@
1
+ import { Mixin } from 'ts-mixer';
2
+ import { always } from 'ramda';
3
+ import { ObjectElement } from '@speclynx/apidom-core';
4
+ import MapVisitor from "../generics/MapVisitor.mjs";
5
+ import FallbackVisitor from "../FallbackVisitor.mjs";
6
+ /**
7
+ * @public
8
+ */
9
+ /**
10
+ * @public
11
+ */
12
+ class ContentVisitor extends Mixin(MapVisitor, FallbackVisitor) {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new ObjectElement();
16
+ this.element.classes.push('content');
17
+ this.specPath = always(['document', 'objects', 'MediaType']);
18
+ }
19
+ }
20
+ export default ContentVisitor;
@@ -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 _MapVisitor = _interopRequireDefault(require("../generics/MapVisitor.cjs"));
9
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
10
+ var _predicates = require("../../predicates.cjs");
11
+ var _predicates2 = require("../../../predicates.cjs");
12
+ /**
13
+ * @public
14
+ */
15
+
16
+ /**
17
+ * @public
18
+ */
19
+ class ExamplesVisitor extends (0, _tsMixer.Mixin)(_MapVisitor.default, _FallbackVisitor.default) {
20
+ constructor(options) {
21
+ super(options);
22
+ this.element = new _apidomCore.ObjectElement();
23
+ this.element.classes.push('examples');
24
+ this.specPath = element => (0, _predicates.isReferenceLikeElement)(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Example'];
25
+ this.canSupportSpecificationExtensions = true;
26
+ }
27
+ ObjectElement(objectElement) {
28
+ const result = _MapVisitor.default.prototype.ObjectElement.call(this, objectElement);
29
+
30
+ // @ts-ignore
31
+ this.element.filter(_predicates2.isReferenceElement).forEach(referenceElement => {
32
+ referenceElement.setMetaProperty('referenced-element', 'example');
33
+ });
34
+ return result;
35
+ }
36
+ }
37
+ var _default = exports.default = ExamplesVisitor;
@@ -0,0 +1,31 @@
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 { isReferenceLikeElement } from "../../predicates.mjs";
6
+ import { isReferenceElement } from "../../../predicates.mjs";
7
+ /**
8
+ * @public
9
+ */
10
+ /**
11
+ * @public
12
+ */
13
+ class ExamplesVisitor extends Mixin(MapVisitor, FallbackVisitor) {
14
+ constructor(options) {
15
+ super(options);
16
+ this.element = new ObjectElement();
17
+ this.element.classes.push('examples');
18
+ this.specPath = element => isReferenceLikeElement(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Example'];
19
+ this.canSupportSpecificationExtensions = true;
20
+ }
21
+ ObjectElement(objectElement) {
22
+ const result = MapVisitor.prototype.ObjectElement.call(this, objectElement);
23
+
24
+ // @ts-ignore
25
+ this.element.filter(isReferenceElement).forEach(referenceElement => {
26
+ referenceElement.setMetaProperty('referenced-element', 'example');
27
+ });
28
+ return result;
29
+ }
30
+ }
31
+ export default ExamplesVisitor;
@@ -0,0 +1,26 @@
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 _Openapi = _interopRequireDefault(require("../../../elements/Openapi.cjs"));
11
+ /**
12
+ * @public
13
+ */
14
+
15
+ /**
16
+ * @public
17
+ */
18
+ class OpenapiVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _FallbackVisitor.default) {
19
+ StringElement(stringElement) {
20
+ const openapiElement = new _Openapi.default((0, _apidomCore.toValue)(stringElement));
21
+ this.copyMetaAndAttributes(stringElement, openapiElement);
22
+ this.element = openapiElement;
23
+ return _apidomCore.BREAK;
24
+ }
25
+ }
26
+ var _default = exports.default = OpenapiVisitor;
@@ -0,0 +1,20 @@
1
+ import { Mixin } from 'ts-mixer';
2
+ import { BREAK, toValue } from '@speclynx/apidom-core';
3
+ import SpecificationVisitor from "../SpecificationVisitor.mjs";
4
+ import FallbackVisitor from "../FallbackVisitor.mjs";
5
+ import OpenapiElement from "../../../elements/Openapi.mjs";
6
+ /**
7
+ * @public
8
+ */
9
+ /**
10
+ * @public
11
+ */
12
+ class OpenapiVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
13
+ StringElement(stringElement) {
14
+ const openapiElement = new OpenapiElement(toValue(stringElement));
15
+ this.copyMetaAndAttributes(stringElement, openapiElement);
16
+ this.element = openapiElement;
17
+ return BREAK;
18
+ }
19
+ }
20
+ export default OpenapiVisitor;
@@ -0,0 +1,38 @@
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 _predicates = require("../../predicates.cjs");
11
+ var _predicates2 = require("../../../predicates.cjs");
12
+ /**
13
+ * @public
14
+ */
15
+
16
+ /**
17
+ * @public
18
+ */
19
+ class ParametersVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _FallbackVisitor.default) {
20
+ constructor(options) {
21
+ super(options);
22
+ this.element = new _apidomCore.ArrayElement();
23
+ this.element.classes.push('parameters');
24
+ }
25
+ ArrayElement(arrayElement) {
26
+ arrayElement.forEach(item => {
27
+ const specPath = (0, _predicates.isReferenceLikeElement)(item) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Parameter'];
28
+ const element = this.toRefractedElement(specPath, item);
29
+ if ((0, _predicates2.isReferenceElement)(element)) {
30
+ element.setMetaProperty('referenced-element', 'parameter');
31
+ }
32
+ this.element.push(element);
33
+ });
34
+ this.copyMetaAndAttributes(arrayElement, this.element);
35
+ return _apidomCore.BREAK;
36
+ }
37
+ }
38
+ var _default = exports.default = ParametersVisitor;
@@ -0,0 +1,32 @@
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 { isReferenceLikeElement } from "../../predicates.mjs";
6
+ import { isReferenceElement } from "../../../predicates.mjs";
7
+ /**
8
+ * @public
9
+ */
10
+ /**
11
+ * @public
12
+ */
13
+ class ParametersVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
14
+ constructor(options) {
15
+ super(options);
16
+ this.element = new ArrayElement();
17
+ this.element.classes.push('parameters');
18
+ }
19
+ ArrayElement(arrayElement) {
20
+ arrayElement.forEach(item => {
21
+ const specPath = isReferenceLikeElement(item) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Parameter'];
22
+ const element = this.toRefractedElement(specPath, item);
23
+ if (isReferenceElement(element)) {
24
+ element.setMetaProperty('referenced-element', 'parameter');
25
+ }
26
+ this.element.push(element);
27
+ });
28
+ this.copyMetaAndAttributes(arrayElement, this.element);
29
+ return BREAK;
30
+ }
31
+ }
32
+ export default ParametersVisitor;
@@ -0,0 +1,36 @@
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 _Security = _interopRequireDefault(require("../../../elements/nces/Security.cjs"));
9
+ var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
10
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
11
+ /**
12
+ * @public
13
+ */
14
+
15
+ /**
16
+ * @public
17
+ */
18
+ class SecurityVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _FallbackVisitor.default) {
19
+ constructor(options) {
20
+ super(options);
21
+ this.element = new _Security.default();
22
+ }
23
+ ArrayElement(arrayElement) {
24
+ arrayElement.forEach(item => {
25
+ if ((0, _apidomCore.isObjectElement)(item)) {
26
+ const element = this.toRefractedElement(['document', 'objects', 'SecurityRequirement'], item);
27
+ this.element.push(element);
28
+ } else {
29
+ this.element.push((0, _apidomCore.cloneDeep)(item));
30
+ }
31
+ });
32
+ this.copyMetaAndAttributes(arrayElement, this.element);
33
+ return _apidomCore.BREAK;
34
+ }
35
+ }
36
+ var _default = exports.default = SecurityVisitor;
@@ -0,0 +1,30 @@
1
+ import { Mixin } from 'ts-mixer';
2
+ import { isObjectElement, BREAK, cloneDeep } from '@speclynx/apidom-core';
3
+ import SecurityElement from "../../../elements/nces/Security.mjs";
4
+ import SpecificationVisitor from "../SpecificationVisitor.mjs";
5
+ import FallbackVisitor from "../FallbackVisitor.mjs";
6
+ /**
7
+ * @public
8
+ */
9
+ /**
10
+ * @public
11
+ */
12
+ class SecurityVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
13
+ constructor(options) {
14
+ super(options);
15
+ this.element = new SecurityElement();
16
+ }
17
+ ArrayElement(arrayElement) {
18
+ arrayElement.forEach(item => {
19
+ if (isObjectElement(item)) {
20
+ const element = this.toRefractedElement(['document', 'objects', 'SecurityRequirement'], item);
21
+ this.element.push(element);
22
+ } else {
23
+ this.element.push(cloneDeep(item));
24
+ }
25
+ });
26
+ this.copyMetaAndAttributes(arrayElement, this.element);
27
+ return BREAK;
28
+ }
29
+ }
30
+ export default SecurityVisitor;
@@ -0,0 +1,34 @@
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 _Servers = _interopRequireDefault(require("../../../elements/nces/Servers.cjs"));
9
+ var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
10
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
11
+ var _predicates = require("../../predicates.cjs");
12
+ /**
13
+ * @public
14
+ */
15
+
16
+ /**
17
+ * @public
18
+ */
19
+ class ServersVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _FallbackVisitor.default) {
20
+ constructor(options) {
21
+ super(options);
22
+ this.element = new _Servers.default();
23
+ }
24
+ ArrayElement(arrayElement) {
25
+ arrayElement.forEach(item => {
26
+ const specPath = (0, _predicates.isServerLikeElement)(item) ? ['document', 'objects', 'Server'] : ['value'];
27
+ const element = this.toRefractedElement(specPath, item);
28
+ this.element.push(element);
29
+ });
30
+ this.copyMetaAndAttributes(arrayElement, this.element);
31
+ return _apidomCore.BREAK;
32
+ }
33
+ }
34
+ var _default = exports.default = ServersVisitor;
@@ -0,0 +1,28 @@
1
+ import { Mixin } from 'ts-mixer';
2
+ import { BREAK } from '@speclynx/apidom-core';
3
+ import ServersElement from "../../../elements/nces/Servers.mjs";
4
+ import SpecificationVisitor from "../SpecificationVisitor.mjs";
5
+ import FallbackVisitor from "../FallbackVisitor.mjs";
6
+ import { isServerLikeElement } from "../../predicates.mjs";
7
+ /**
8
+ * @public
9
+ */
10
+ /**
11
+ * @public
12
+ */
13
+ class ServersVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
14
+ constructor(options) {
15
+ super(options);
16
+ this.element = new ServersElement();
17
+ }
18
+ ArrayElement(arrayElement) {
19
+ arrayElement.forEach(item => {
20
+ const specPath = isServerLikeElement(item) ? ['document', 'objects', 'Server'] : ['value'];
21
+ const element = this.toRefractedElement(specPath, item);
22
+ this.element.push(element);
23
+ });
24
+ this.copyMetaAndAttributes(arrayElement, this.element);
25
+ return BREAK;
26
+ }
27
+ }
28
+ export default ServersVisitor;
@@ -0,0 +1,34 @@
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 _Tags = _interopRequireDefault(require("../../../elements/nces/Tags.cjs"));
9
+ var _SpecificationVisitor = _interopRequireDefault(require("../SpecificationVisitor.cjs"));
10
+ var _FallbackVisitor = _interopRequireDefault(require("../FallbackVisitor.cjs"));
11
+ var _predicates = require("../../predicates.cjs");
12
+ /**
13
+ * @public
14
+ */
15
+
16
+ /**
17
+ * @public
18
+ */
19
+ class TagsVisitor extends (0, _tsMixer.Mixin)(_SpecificationVisitor.default, _FallbackVisitor.default) {
20
+ constructor(options) {
21
+ super(options);
22
+ this.element = new _Tags.default();
23
+ }
24
+ ArrayElement(arrayElement) {
25
+ arrayElement.forEach(item => {
26
+ const specPath = (0, _predicates.isTagLikeElement)(item) ? ['document', 'objects', 'Tag'] : ['value'];
27
+ const element = this.toRefractedElement(specPath, item);
28
+ this.element.push(element);
29
+ });
30
+ this.copyMetaAndAttributes(arrayElement, this.element);
31
+ return _apidomCore.BREAK;
32
+ }
33
+ }
34
+ var _default = exports.default = TagsVisitor;
@@ -0,0 +1,28 @@
1
+ import { Mixin } from 'ts-mixer';
2
+ import { BREAK } from '@speclynx/apidom-core';
3
+ import TagsElement from "../../../elements/nces/Tags.mjs";
4
+ import SpecificationVisitor from "../SpecificationVisitor.mjs";
5
+ import FallbackVisitor from "../FallbackVisitor.mjs";
6
+ import { isTagLikeElement } from "../../predicates.mjs";
7
+ /**
8
+ * @public
9
+ */
10
+ /**
11
+ * @public
12
+ */
13
+ class TagsVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
14
+ constructor(options) {
15
+ super(options);
16
+ this.element = new TagsElement();
17
+ }
18
+ ArrayElement(arrayElement) {
19
+ arrayElement.forEach(item => {
20
+ const specPath = isTagLikeElement(item) ? ['document', 'objects', 'Tag'] : ['value'];
21
+ const element = this.toRefractedElement(specPath, item);
22
+ this.element.push(element);
23
+ });
24
+ this.copyMetaAndAttributes(arrayElement, this.element);
25
+ return BREAK;
26
+ }
27
+ }
28
+ export default TagsVisitor;
@@ -0,0 +1,41 @@
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 _ramda = require("ramda");
8
+ var _apidomCore = require("@speclynx/apidom-core");
9
+ var _Callback = _interopRequireDefault(require("../../../../elements/Callback.cjs"));
10
+ var _PatternedFieldsVisitor = _interopRequireDefault(require("../../generics/PatternedFieldsVisitor.cjs"));
11
+ var _FallbackVisitor = _interopRequireDefault(require("../../FallbackVisitor.cjs"));
12
+ var _MapVisitor = _interopRequireDefault(require("../../generics/MapVisitor.cjs"));
13
+ var _predicates = require("../../../../predicates.cjs");
14
+ /**
15
+ * @public
16
+ */
17
+
18
+ /**
19
+ * @public
20
+ */
21
+ class CallbackVisitor extends (0, _tsMixer.Mixin)(_PatternedFieldsVisitor.default, _FallbackVisitor.default) {
22
+ constructor(options) {
23
+ super(options);
24
+ this.element = new _Callback.default();
25
+ this.specPath = (0, _ramda.always)(['document', 'objects', 'PathItem']);
26
+ this.canSupportSpecificationExtensions = true;
27
+ this.fieldPatternPredicate = value => /{(?<expression>[^}]{1,2083})}/.test(String(value)); // 2,083 characters is the maximum length of a URL in Chrome
28
+ }
29
+ ObjectElement(objectElement) {
30
+ const result = _MapVisitor.default.prototype.ObjectElement.call(this, objectElement);
31
+
32
+ // decorate every PathItemElement with Callback Object expression metadata
33
+ this.element.filter(_predicates.isPathItemElement)
34
+ // @ts-ignore
35
+ .forEach((pathItemElement, key) => {
36
+ pathItemElement.setMetaProperty('runtime-expression', (0, _apidomCore.toValue)(key));
37
+ });
38
+ return result;
39
+ }
40
+ }
41
+ var _default = exports.default = CallbackVisitor;