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