@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,330 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
4
+ exports.__esModule = true;
5
+ exports.isServersElement = exports.isServerVariableElement = exports.isServerElement = exports.isSecuritySchemeElement = exports.isSecurityRequirementElement = exports.isSchemaElement = exports.isResponsesElement = exports.isResponseElement = exports.isRequestBodyElement = exports.isReferenceElement = exports.isPathsElement = exports.isPathItemElement = exports.isParameterElement = exports.isOperationElement = exports.isOpenapiElement = exports.isOpenApi3_0Element = exports.isMediaTypeElement = exports.isLinkElement = exports.isLicenseElement = exports.isInfoElement = exports.isHeaderElement = exports.isExternalDocumentationElement = exports.isExampleElement = exports.isContactElement = exports.isComponentsElement = exports.isCallbackElement = exports.isBooleanJsonSchemaElement = void 0;
6
+ var _apidomCore = require("@speclynx/apidom-core");
7
+ var _Callback = _interopRequireDefault(require("./elements/Callback.cjs"));
8
+ var _Components = _interopRequireDefault(require("./elements/Components.cjs"));
9
+ var _Contact = _interopRequireDefault(require("./elements/Contact.cjs"));
10
+ var _Example = _interopRequireDefault(require("./elements/Example.cjs"));
11
+ var _ExternalDocumentation = _interopRequireDefault(require("./elements/ExternalDocumentation.cjs"));
12
+ var _Header = _interopRequireDefault(require("./elements/Header.cjs"));
13
+ var _Info = _interopRequireDefault(require("./elements/Info.cjs"));
14
+ var _License = _interopRequireDefault(require("./elements/License.cjs"));
15
+ var _Link = _interopRequireDefault(require("./elements/Link.cjs"));
16
+ var _Openapi = _interopRequireDefault(require("./elements/Openapi.cjs"));
17
+ var _OpenApi = _interopRequireDefault(require("./elements/OpenApi3-0.cjs"));
18
+ var _Operation = _interopRequireDefault(require("./elements/Operation.cjs"));
19
+ var _Parameter = _interopRequireDefault(require("./elements/Parameter.cjs"));
20
+ var _PathItem = _interopRequireDefault(require("./elements/PathItem.cjs"));
21
+ var _Paths = _interopRequireDefault(require("./elements/Paths.cjs"));
22
+ var _Reference = _interopRequireDefault(require("./elements/Reference.cjs"));
23
+ var _RequestBody = _interopRequireDefault(require("./elements/RequestBody.cjs"));
24
+ var _Response = _interopRequireDefault(require("./elements/Response.cjs"));
25
+ var _Responses = _interopRequireDefault(require("./elements/Responses.cjs"));
26
+ var _Schema = _interopRequireDefault(require("./elements/Schema.cjs"));
27
+ var _SecurityRequirement = _interopRequireDefault(require("./elements/SecurityRequirement.cjs"));
28
+ var _SecurityScheme = _interopRequireDefault(require("./elements/SecurityScheme.cjs"));
29
+ var _Server = _interopRequireDefault(require("./elements/Server.cjs"));
30
+ var _ServerVariable = _interopRequireDefault(require("./elements/ServerVariable.cjs"));
31
+ var _MediaType = _interopRequireDefault(require("./elements/MediaType.cjs"));
32
+ var _Servers = _interopRequireDefault(require("./elements/nces/Servers.cjs"));
33
+ // NCE types
34
+
35
+ /**
36
+ * @public
37
+ */
38
+ const isCallbackElement = exports.isCallbackElement = (0, _apidomCore.createPredicate)(({
39
+ hasBasicElementProps,
40
+ isElementType,
41
+ primitiveEq
42
+ }) => {
43
+ return element => element instanceof _Callback.default || hasBasicElementProps(element) && isElementType('callback', element) && primitiveEq('object', element);
44
+ });
45
+
46
+ /**
47
+ * @public
48
+ */
49
+ const isComponentsElement = exports.isComponentsElement = (0, _apidomCore.createPredicate)(({
50
+ hasBasicElementProps,
51
+ isElementType,
52
+ primitiveEq
53
+ }) => {
54
+ return element => element instanceof _Components.default || hasBasicElementProps(element) && isElementType('components', element) && primitiveEq('object', element);
55
+ });
56
+
57
+ /**
58
+ * @public
59
+ */
60
+ const isContactElement = exports.isContactElement = (0, _apidomCore.createPredicate)(({
61
+ hasBasicElementProps,
62
+ isElementType,
63
+ primitiveEq
64
+ }) => {
65
+ return element => element instanceof _Contact.default || hasBasicElementProps(element) && isElementType('contact', element) && primitiveEq('object', element);
66
+ });
67
+
68
+ /**
69
+ * @public
70
+ */
71
+ const isExampleElement = exports.isExampleElement = (0, _apidomCore.createPredicate)(({
72
+ hasBasicElementProps,
73
+ isElementType,
74
+ primitiveEq
75
+ }) => {
76
+ return element => element instanceof _Example.default || hasBasicElementProps(element) && isElementType('example', element) && primitiveEq('object', element);
77
+ });
78
+
79
+ /**
80
+ * @public
81
+ */
82
+ const isExternalDocumentationElement = exports.isExternalDocumentationElement = (0, _apidomCore.createPredicate)(({
83
+ hasBasicElementProps,
84
+ isElementType,
85
+ primitiveEq
86
+ }) => {
87
+ return element => element instanceof _ExternalDocumentation.default || hasBasicElementProps(element) && isElementType('externalDocumentation', element) && primitiveEq('object', element);
88
+ });
89
+
90
+ /**
91
+ * @public
92
+ */
93
+ const isHeaderElement = exports.isHeaderElement = (0, _apidomCore.createPredicate)(({
94
+ hasBasicElementProps,
95
+ isElementType,
96
+ primitiveEq
97
+ }) => {
98
+ return element => element instanceof _Header.default || hasBasicElementProps(element) && isElementType('header', element) && primitiveEq('object', element);
99
+ });
100
+
101
+ /**
102
+ * @public
103
+ */
104
+ const isInfoElement = exports.isInfoElement = (0, _apidomCore.createPredicate)(({
105
+ hasBasicElementProps,
106
+ isElementType,
107
+ primitiveEq
108
+ }) => {
109
+ return element => element instanceof _Info.default || hasBasicElementProps(element) && isElementType('info', element) && primitiveEq('object', element);
110
+ });
111
+
112
+ /**
113
+ * @public
114
+ */
115
+ const isLicenseElement = exports.isLicenseElement = (0, _apidomCore.createPredicate)(({
116
+ hasBasicElementProps,
117
+ isElementType,
118
+ primitiveEq
119
+ }) => {
120
+ return element => element instanceof _License.default || hasBasicElementProps(element) && isElementType('license', element) && primitiveEq('object', element);
121
+ });
122
+
123
+ /**
124
+ * @public
125
+ */
126
+ const isLinkElement = exports.isLinkElement = (0, _apidomCore.createPredicate)(({
127
+ hasBasicElementProps,
128
+ isElementType,
129
+ primitiveEq
130
+ }) => {
131
+ return element => element instanceof _Link.default || hasBasicElementProps(element) && isElementType('link', element) && primitiveEq('object', element);
132
+ });
133
+
134
+ /**
135
+ * @public
136
+ */
137
+ const isOpenapiElement = exports.isOpenapiElement = (0, _apidomCore.createPredicate)(({
138
+ hasBasicElementProps,
139
+ isElementType,
140
+ primitiveEq
141
+ }) => {
142
+ return element => element instanceof _Openapi.default || hasBasicElementProps(element) && isElementType('openapi', element) && primitiveEq('string', element);
143
+ });
144
+
145
+ /**
146
+ * @public
147
+ */
148
+
149
+ const isOpenApi3_0Element = exports.isOpenApi3_0Element = (0, _apidomCore.createPredicate)(({
150
+ hasBasicElementProps,
151
+ isElementType,
152
+ primitiveEq,
153
+ hasClass
154
+ }) => {
155
+ return element => element instanceof _OpenApi.default || hasBasicElementProps(element) && isElementType('openApi3_0', element) && primitiveEq('object', element) && hasClass('api', element);
156
+ });
157
+
158
+ /**
159
+ * @public
160
+ */
161
+ const isOperationElement = exports.isOperationElement = (0, _apidomCore.createPredicate)(({
162
+ hasBasicElementProps,
163
+ isElementType,
164
+ primitiveEq
165
+ }) => {
166
+ return element => element instanceof _Operation.default || hasBasicElementProps(element) && isElementType('operation', element) && primitiveEq('object', element);
167
+ });
168
+
169
+ /**
170
+ * @public
171
+ */
172
+ const isParameterElement = exports.isParameterElement = (0, _apidomCore.createPredicate)(({
173
+ hasBasicElementProps,
174
+ isElementType,
175
+ primitiveEq
176
+ }) => {
177
+ return element => element instanceof _Parameter.default || hasBasicElementProps(element) && isElementType('parameter', element) && primitiveEq('object', element);
178
+ });
179
+
180
+ /**
181
+ * @public
182
+ */
183
+ const isPathItemElement = exports.isPathItemElement = (0, _apidomCore.createPredicate)(({
184
+ hasBasicElementProps,
185
+ isElementType,
186
+ primitiveEq
187
+ }) => {
188
+ return element => element instanceof _PathItem.default || hasBasicElementProps(element) && isElementType('pathItem', element) && primitiveEq('object', element);
189
+ });
190
+
191
+ /**
192
+ * @public
193
+ */
194
+ const isPathsElement = exports.isPathsElement = (0, _apidomCore.createPredicate)(({
195
+ hasBasicElementProps,
196
+ isElementType,
197
+ primitiveEq
198
+ }) => {
199
+ return element => element instanceof _Paths.default || hasBasicElementProps(element) && isElementType('paths', element) && primitiveEq('object', element);
200
+ });
201
+
202
+ /**
203
+ * @public
204
+ */
205
+ const isReferenceElement = exports.isReferenceElement = (0, _apidomCore.createPredicate)(({
206
+ hasBasicElementProps,
207
+ isElementType,
208
+ primitiveEq
209
+ }) => {
210
+ return element => element instanceof _Reference.default || hasBasicElementProps(element) && isElementType('reference', element) && primitiveEq('object', element);
211
+ });
212
+
213
+ /**
214
+ * @public
215
+ */
216
+ const isRequestBodyElement = exports.isRequestBodyElement = (0, _apidomCore.createPredicate)(({
217
+ hasBasicElementProps,
218
+ isElementType,
219
+ primitiveEq
220
+ }) => {
221
+ return element => element instanceof _RequestBody.default || hasBasicElementProps(element) && isElementType('requestBody', element) && primitiveEq('object', element);
222
+ });
223
+
224
+ /**
225
+ * @public
226
+ */
227
+ const isResponseElement = exports.isResponseElement = (0, _apidomCore.createPredicate)(({
228
+ hasBasicElementProps,
229
+ isElementType,
230
+ primitiveEq
231
+ }) => {
232
+ return element => element instanceof _Response.default || hasBasicElementProps(element) && isElementType('response', element) && primitiveEq('object', element);
233
+ });
234
+
235
+ /**
236
+ * @public
237
+ */
238
+ const isResponsesElement = exports.isResponsesElement = (0, _apidomCore.createPredicate)(({
239
+ hasBasicElementProps,
240
+ isElementType,
241
+ primitiveEq
242
+ }) => {
243
+ return element => element instanceof _Responses.default || hasBasicElementProps(element) && isElementType('responses', element) && primitiveEq('object', element);
244
+ });
245
+
246
+ /**
247
+ * @public
248
+ */
249
+ const isSchemaElement = exports.isSchemaElement = (0, _apidomCore.createPredicate)(({
250
+ hasBasicElementProps,
251
+ isElementType,
252
+ primitiveEq
253
+ }) => {
254
+ return element => element instanceof _Schema.default || hasBasicElementProps(element) && isElementType('schema', element) && primitiveEq('object', element);
255
+ });
256
+
257
+ /**
258
+ * @public
259
+ */
260
+ const isBooleanJsonSchemaElement = element => {
261
+ return (0, _apidomCore.isBooleanElement)(element) && element.classes.includes('boolean-json-schema');
262
+ };
263
+
264
+ /**
265
+ * @public
266
+ */
267
+ exports.isBooleanJsonSchemaElement = isBooleanJsonSchemaElement;
268
+ const isSecurityRequirementElement = exports.isSecurityRequirementElement = (0, _apidomCore.createPredicate)(({
269
+ hasBasicElementProps,
270
+ isElementType,
271
+ primitiveEq
272
+ }) => {
273
+ return element => element instanceof _SecurityRequirement.default || hasBasicElementProps(element) && isElementType('securityRequirement', element) && primitiveEq('object', element);
274
+ });
275
+
276
+ /**
277
+ * @public
278
+ */
279
+ const isSecuritySchemeElement = exports.isSecuritySchemeElement = (0, _apidomCore.createPredicate)(({
280
+ hasBasicElementProps,
281
+ isElementType,
282
+ primitiveEq
283
+ }) => {
284
+ return element => element instanceof _SecurityScheme.default || hasBasicElementProps(element) && isElementType('securityScheme', element) && primitiveEq('object', element);
285
+ });
286
+
287
+ /**
288
+ * @public
289
+ */
290
+ const isServerElement = exports.isServerElement = (0, _apidomCore.createPredicate)(({
291
+ hasBasicElementProps,
292
+ isElementType,
293
+ primitiveEq
294
+ }) => {
295
+ return element => element instanceof _Server.default || hasBasicElementProps(element) && isElementType('server', element) && primitiveEq('object', element);
296
+ });
297
+
298
+ /**
299
+ * @public
300
+ */
301
+ const isServerVariableElement = exports.isServerVariableElement = (0, _apidomCore.createPredicate)(({
302
+ hasBasicElementProps,
303
+ isElementType,
304
+ primitiveEq
305
+ }) => {
306
+ return element => element instanceof _ServerVariable.default || hasBasicElementProps(element) && isElementType('serverVariable', element) && primitiveEq('object', element);
307
+ });
308
+
309
+ /**
310
+ * @public
311
+ */
312
+ const isMediaTypeElement = exports.isMediaTypeElement = (0, _apidomCore.createPredicate)(({
313
+ hasBasicElementProps,
314
+ isElementType,
315
+ primitiveEq
316
+ }) => {
317
+ return element => element instanceof _MediaType.default || hasBasicElementProps(element) && isElementType('mediaType', element) && primitiveEq('object', element);
318
+ });
319
+
320
+ /**
321
+ * @public
322
+ */
323
+ const isServersElement = exports.isServersElement = (0, _apidomCore.createPredicate)(({
324
+ hasBasicElementProps,
325
+ isElementType,
326
+ primitiveEq,
327
+ hasClass
328
+ }) => {
329
+ return element => element instanceof _Servers.default || hasBasicElementProps(element) && isElementType('array', element) && primitiveEq('array', element) && hasClass('servers', element);
330
+ });
@@ -0,0 +1,322 @@
1
+ import { createPredicate, isBooleanElement } from '@speclynx/apidom-core';
2
+ import CallbackElement from "./elements/Callback.mjs";
3
+ import ComponentsElement from "./elements/Components.mjs";
4
+ import ContactElement from "./elements/Contact.mjs";
5
+ import ExampleElement from "./elements/Example.mjs";
6
+ import ExternalDocumentationElement from "./elements/ExternalDocumentation.mjs";
7
+ import HeaderElement from "./elements/Header.mjs";
8
+ import InfoElement from "./elements/Info.mjs";
9
+ import LicenseElement from "./elements/License.mjs";
10
+ import LinkElement from "./elements/Link.mjs";
11
+ import OpenapiElement from "./elements/Openapi.mjs";
12
+ import OpenApi3_0Element from "./elements/OpenApi3-0.mjs";
13
+ import OperationElement from "./elements/Operation.mjs";
14
+ import ParameterElement from "./elements/Parameter.mjs";
15
+ import PathItemElement from "./elements/PathItem.mjs";
16
+ import PathsElement from "./elements/Paths.mjs";
17
+ import ReferenceElement from "./elements/Reference.mjs";
18
+ import RequestBodyElement from "./elements/RequestBody.mjs";
19
+ import ResponseElement from "./elements/Response.mjs";
20
+ import ResponsesElement from "./elements/Responses.mjs";
21
+ import SchemaElement from "./elements/Schema.mjs";
22
+ import SecurityRequirementElement from "./elements/SecurityRequirement.mjs";
23
+ import SecuritySchemeElement from "./elements/SecurityScheme.mjs";
24
+ import ServerElement from "./elements/Server.mjs";
25
+ import ServerVariableElement from "./elements/ServerVariable.mjs";
26
+ import MediaTypeElement from "./elements/MediaType.mjs"; // NCE types
27
+ import ServersElement from "./elements/nces/Servers.mjs";
28
+ /**
29
+ * @public
30
+ */
31
+ export const isCallbackElement = createPredicate(({
32
+ hasBasicElementProps,
33
+ isElementType,
34
+ primitiveEq
35
+ }) => {
36
+ return element => element instanceof CallbackElement || hasBasicElementProps(element) && isElementType('callback', element) && primitiveEq('object', element);
37
+ });
38
+
39
+ /**
40
+ * @public
41
+ */
42
+ export const isComponentsElement = createPredicate(({
43
+ hasBasicElementProps,
44
+ isElementType,
45
+ primitiveEq
46
+ }) => {
47
+ return element => element instanceof ComponentsElement || hasBasicElementProps(element) && isElementType('components', element) && primitiveEq('object', element);
48
+ });
49
+
50
+ /**
51
+ * @public
52
+ */
53
+ export const isContactElement = createPredicate(({
54
+ hasBasicElementProps,
55
+ isElementType,
56
+ primitiveEq
57
+ }) => {
58
+ return element => element instanceof ContactElement || hasBasicElementProps(element) && isElementType('contact', element) && primitiveEq('object', element);
59
+ });
60
+
61
+ /**
62
+ * @public
63
+ */
64
+ export const isExampleElement = createPredicate(({
65
+ hasBasicElementProps,
66
+ isElementType,
67
+ primitiveEq
68
+ }) => {
69
+ return element => element instanceof ExampleElement || hasBasicElementProps(element) && isElementType('example', element) && primitiveEq('object', element);
70
+ });
71
+
72
+ /**
73
+ * @public
74
+ */
75
+ export const isExternalDocumentationElement = createPredicate(({
76
+ hasBasicElementProps,
77
+ isElementType,
78
+ primitiveEq
79
+ }) => {
80
+ return element => element instanceof ExternalDocumentationElement || hasBasicElementProps(element) && isElementType('externalDocumentation', element) && primitiveEq('object', element);
81
+ });
82
+
83
+ /**
84
+ * @public
85
+ */
86
+ export const isHeaderElement = createPredicate(({
87
+ hasBasicElementProps,
88
+ isElementType,
89
+ primitiveEq
90
+ }) => {
91
+ return element => element instanceof HeaderElement || hasBasicElementProps(element) && isElementType('header', element) && primitiveEq('object', element);
92
+ });
93
+
94
+ /**
95
+ * @public
96
+ */
97
+ export const isInfoElement = createPredicate(({
98
+ hasBasicElementProps,
99
+ isElementType,
100
+ primitiveEq
101
+ }) => {
102
+ return element => element instanceof InfoElement || hasBasicElementProps(element) && isElementType('info', element) && primitiveEq('object', element);
103
+ });
104
+
105
+ /**
106
+ * @public
107
+ */
108
+ export const isLicenseElement = createPredicate(({
109
+ hasBasicElementProps,
110
+ isElementType,
111
+ primitiveEq
112
+ }) => {
113
+ return element => element instanceof LicenseElement || hasBasicElementProps(element) && isElementType('license', element) && primitiveEq('object', element);
114
+ });
115
+
116
+ /**
117
+ * @public
118
+ */
119
+ export const isLinkElement = createPredicate(({
120
+ hasBasicElementProps,
121
+ isElementType,
122
+ primitiveEq
123
+ }) => {
124
+ return element => element instanceof LinkElement || hasBasicElementProps(element) && isElementType('link', element) && primitiveEq('object', element);
125
+ });
126
+
127
+ /**
128
+ * @public
129
+ */
130
+ export const isOpenapiElement = createPredicate(({
131
+ hasBasicElementProps,
132
+ isElementType,
133
+ primitiveEq
134
+ }) => {
135
+ return element => element instanceof OpenapiElement || hasBasicElementProps(element) && isElementType('openapi', element) && primitiveEq('string', element);
136
+ });
137
+
138
+ /**
139
+ * @public
140
+ */
141
+
142
+ export const isOpenApi3_0Element = createPredicate(({
143
+ hasBasicElementProps,
144
+ isElementType,
145
+ primitiveEq,
146
+ hasClass
147
+ }) => {
148
+ return element => element instanceof OpenApi3_0Element || hasBasicElementProps(element) && isElementType('openApi3_0', element) && primitiveEq('object', element) && hasClass('api', element);
149
+ });
150
+
151
+ /**
152
+ * @public
153
+ */
154
+ export const isOperationElement = createPredicate(({
155
+ hasBasicElementProps,
156
+ isElementType,
157
+ primitiveEq
158
+ }) => {
159
+ return element => element instanceof OperationElement || hasBasicElementProps(element) && isElementType('operation', element) && primitiveEq('object', element);
160
+ });
161
+
162
+ /**
163
+ * @public
164
+ */
165
+ export const isParameterElement = createPredicate(({
166
+ hasBasicElementProps,
167
+ isElementType,
168
+ primitiveEq
169
+ }) => {
170
+ return element => element instanceof ParameterElement || hasBasicElementProps(element) && isElementType('parameter', element) && primitiveEq('object', element);
171
+ });
172
+
173
+ /**
174
+ * @public
175
+ */
176
+ export const isPathItemElement = createPredicate(({
177
+ hasBasicElementProps,
178
+ isElementType,
179
+ primitiveEq
180
+ }) => {
181
+ return element => element instanceof PathItemElement || hasBasicElementProps(element) && isElementType('pathItem', element) && primitiveEq('object', element);
182
+ });
183
+
184
+ /**
185
+ * @public
186
+ */
187
+ export const isPathsElement = createPredicate(({
188
+ hasBasicElementProps,
189
+ isElementType,
190
+ primitiveEq
191
+ }) => {
192
+ return element => element instanceof PathsElement || hasBasicElementProps(element) && isElementType('paths', element) && primitiveEq('object', element);
193
+ });
194
+
195
+ /**
196
+ * @public
197
+ */
198
+ export const isReferenceElement = createPredicate(({
199
+ hasBasicElementProps,
200
+ isElementType,
201
+ primitiveEq
202
+ }) => {
203
+ return element => element instanceof ReferenceElement || hasBasicElementProps(element) && isElementType('reference', element) && primitiveEq('object', element);
204
+ });
205
+
206
+ /**
207
+ * @public
208
+ */
209
+ export const isRequestBodyElement = createPredicate(({
210
+ hasBasicElementProps,
211
+ isElementType,
212
+ primitiveEq
213
+ }) => {
214
+ return element => element instanceof RequestBodyElement || hasBasicElementProps(element) && isElementType('requestBody', element) && primitiveEq('object', element);
215
+ });
216
+
217
+ /**
218
+ * @public
219
+ */
220
+ export const isResponseElement = createPredicate(({
221
+ hasBasicElementProps,
222
+ isElementType,
223
+ primitiveEq
224
+ }) => {
225
+ return element => element instanceof ResponseElement || hasBasicElementProps(element) && isElementType('response', element) && primitiveEq('object', element);
226
+ });
227
+
228
+ /**
229
+ * @public
230
+ */
231
+ export const isResponsesElement = createPredicate(({
232
+ hasBasicElementProps,
233
+ isElementType,
234
+ primitiveEq
235
+ }) => {
236
+ return element => element instanceof ResponsesElement || hasBasicElementProps(element) && isElementType('responses', element) && primitiveEq('object', element);
237
+ });
238
+
239
+ /**
240
+ * @public
241
+ */
242
+ export const isSchemaElement = createPredicate(({
243
+ hasBasicElementProps,
244
+ isElementType,
245
+ primitiveEq
246
+ }) => {
247
+ return element => element instanceof SchemaElement || hasBasicElementProps(element) && isElementType('schema', element) && primitiveEq('object', element);
248
+ });
249
+
250
+ /**
251
+ * @public
252
+ */
253
+ export const isBooleanJsonSchemaElement = element => {
254
+ return isBooleanElement(element) && element.classes.includes('boolean-json-schema');
255
+ };
256
+
257
+ /**
258
+ * @public
259
+ */
260
+ export const isSecurityRequirementElement = createPredicate(({
261
+ hasBasicElementProps,
262
+ isElementType,
263
+ primitiveEq
264
+ }) => {
265
+ return element => element instanceof SecurityRequirementElement || hasBasicElementProps(element) && isElementType('securityRequirement', element) && primitiveEq('object', element);
266
+ });
267
+
268
+ /**
269
+ * @public
270
+ */
271
+ export const isSecuritySchemeElement = createPredicate(({
272
+ hasBasicElementProps,
273
+ isElementType,
274
+ primitiveEq
275
+ }) => {
276
+ return element => element instanceof SecuritySchemeElement || hasBasicElementProps(element) && isElementType('securityScheme', element) && primitiveEq('object', element);
277
+ });
278
+
279
+ /**
280
+ * @public
281
+ */
282
+ export const isServerElement = createPredicate(({
283
+ hasBasicElementProps,
284
+ isElementType,
285
+ primitiveEq
286
+ }) => {
287
+ return element => element instanceof ServerElement || hasBasicElementProps(element) && isElementType('server', element) && primitiveEq('object', element);
288
+ });
289
+
290
+ /**
291
+ * @public
292
+ */
293
+ export const isServerVariableElement = createPredicate(({
294
+ hasBasicElementProps,
295
+ isElementType,
296
+ primitiveEq
297
+ }) => {
298
+ return element => element instanceof ServerVariableElement || hasBasicElementProps(element) && isElementType('serverVariable', element) && primitiveEq('object', element);
299
+ });
300
+
301
+ /**
302
+ * @public
303
+ */
304
+ export const isMediaTypeElement = createPredicate(({
305
+ hasBasicElementProps,
306
+ isElementType,
307
+ primitiveEq
308
+ }) => {
309
+ return element => element instanceof MediaTypeElement || hasBasicElementProps(element) && isElementType('mediaType', element) && primitiveEq('object', element);
310
+ });
311
+
312
+ /**
313
+ * @public
314
+ */
315
+ export const isServersElement = createPredicate(({
316
+ hasBasicElementProps,
317
+ isElementType,
318
+ primitiveEq,
319
+ hasClass
320
+ }) => {
321
+ return element => element instanceof ServersElement || hasBasicElementProps(element) && isElementType('array', element) && primitiveEq('array', element) && hasClass('servers', element);
322
+ });
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
4
+ exports.__esModule = true;
5
+ exports.default = exports.createRefractor = void 0;
6
+ var _apidomCore = require("@speclynx/apidom-core");
7
+ var _ramda = require("ramda");
8
+ var _specification = _interopRequireDefault(require("./specification.cjs"));
9
+ var _visitor = require("../traversal/visitor.cjs");
10
+ var _toolbox = _interopRequireDefault(require("./toolbox.cjs"));
11
+ /**
12
+ * @public
13
+ */
14
+ const refract = (value, {
15
+ specPath = ['visitors', 'document', 'objects', 'OpenApi', '$visitor'],
16
+ plugins = []
17
+ } = {}) => {
18
+ const element = (0, _apidomCore.refract)(value);
19
+ const resolvedSpec = (0, _apidomCore.dereference)(_specification.default);
20
+
21
+ /**
22
+ * This is where generic ApiDOM becomes semantic (namespace applied).
23
+ * We don't allow consumers to hook into this translation.
24
+ * Though we allow consumers to define their onw plugins on already transformed ApiDOM.
25
+ */
26
+ const RootVisitorClass = (0, _ramda.path)(specPath, resolvedSpec);
27
+ const rootVisitor = new RootVisitorClass({
28
+ specObj: resolvedSpec
29
+ });
30
+ (0, _apidomCore.visit)(element, rootVisitor);
31
+
32
+ /**
33
+ * Running plugins visitors means extra single traversal === performance hit.
34
+ */
35
+ return (0, _apidomCore.dispatchRefractorPlugins)(rootVisitor.element, plugins, {
36
+ toolboxCreator: _toolbox.default,
37
+ visitorOptions: {
38
+ keyMap: _visitor.keyMap,
39
+ nodeTypeGetter: _visitor.getNodeType
40
+ }
41
+ });
42
+ };
43
+
44
+ /**
45
+ * @public
46
+ */
47
+ const createRefractor = specPath => (value, options = {}) => refract(value, {
48
+ specPath,
49
+ ...options
50
+ });
51
+ exports.createRefractor = createRefractor;
52
+ var _default = exports.default = refract;