@skmtc/core 0.16.3 → 0.26.0

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 (516) hide show
  1. package/README.md +0 -1
  2. package/esm/anchors/buildSidecar.js +1 -1
  3. package/esm/anchors/postPass.d.ts +1 -1
  4. package/esm/anchors/postPass.js +1 -1
  5. package/esm/anchors/sidecar.d.ts +2 -2
  6. package/esm/anchors/sidecar.js +1 -1
  7. package/esm/context/CoreContext.d.ts +7 -1
  8. package/esm/context/CoreContext.d.ts.map +1 -1
  9. package/esm/context/CoreContext.js +17 -11
  10. package/esm/context/GenerateContext.d.ts +28 -7
  11. package/esm/context/GenerateContext.d.ts.map +1 -1
  12. package/esm/context/GenerateContext.js +164 -86
  13. package/esm/context/ParseContext.d.ts +16 -0
  14. package/esm/context/ParseContext.d.ts.map +1 -1
  15. package/esm/context/ParseContext.js +16 -0
  16. package/esm/context/ParseIssue.d.ts +1 -1
  17. package/esm/context/RenderContext.d.ts +2 -6
  18. package/esm/context/RenderContext.d.ts.map +1 -1
  19. package/esm/context/RenderContext.js +4 -14
  20. package/esm/context/generateTypes.d.ts +35 -8
  21. package/esm/context/generateTypes.d.ts.map +1 -1
  22. package/{script/deps/jsr.io/@std/fs/1.0.23 → esm/deps/jsr.io/@std/fs/1.0.24}/exists.d.ts.map +1 -1
  23. package/esm/deps/jsr.io/@std/internal/1.0.14/_os.d.ts.map +1 -0
  24. package/esm/deps/jsr.io/@std/internal/1.0.14/_os.js +14 -0
  25. package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts.map +1 -1
  26. package/esm/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
  27. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts.map +1 -1
  28. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.js +1 -1
  29. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts.map +1 -1
  30. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.js +1 -1
  31. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts.map +1 -1
  32. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.js +1 -1
  33. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts.map +1 -1
  34. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.js +1 -1
  35. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts.map +1 -1
  36. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.js +1 -1
  37. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts.map +1 -1
  38. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.js +2 -2
  39. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts.map +1 -1
  40. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.js +2 -2
  41. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts.map +1 -1
  42. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.js +1 -1
  43. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts.map +1 -1
  44. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.js +1 -1
  45. package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/posix/join.d.ts.map +1 -1
  46. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.js +1 -1
  47. package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/posix/normalize.d.ts.map +1 -1
  48. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.js +1 -1
  49. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts.map +1 -1
  50. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.js +1 -1
  51. package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/windows/from_file_url.d.ts.map +1 -1
  52. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.js +1 -1
  53. package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/windows/join.d.ts.map +1 -1
  54. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.js +1 -1
  55. package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/windows/normalize.d.ts.map +1 -1
  56. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.js +1 -1
  57. package/esm/dsl/CodeFileBase.d.ts +57 -24
  58. package/esm/dsl/CodeFileBase.d.ts.map +1 -1
  59. package/esm/dsl/CodeFileBase.js +35 -53
  60. package/esm/dsl/FileBase.d.ts +21 -25
  61. package/esm/dsl/FileBase.d.ts.map +1 -1
  62. package/esm/dsl/FileBase.js +20 -29
  63. package/esm/dsl/GeneratorKeys.d.ts +19 -19
  64. package/esm/dsl/GeneratorKeys.d.ts.map +1 -1
  65. package/esm/dsl/GeneratorKeys.js +6 -5
  66. package/esm/dsl/IdentifierBase.d.ts +19 -5
  67. package/esm/dsl/IdentifierBase.d.ts.map +1 -1
  68. package/esm/dsl/IdentifierBase.js +21 -5
  69. package/esm/dsl/IdentifierType.d.ts +8 -14
  70. package/esm/dsl/IdentifierType.d.ts.map +1 -1
  71. package/esm/dsl/Lang.d.ts +18 -38
  72. package/esm/dsl/Lang.d.ts.map +1 -1
  73. package/esm/dsl/MarkdownFile.d.ts +55 -0
  74. package/esm/dsl/MarkdownFile.d.ts.map +1 -0
  75. package/esm/dsl/MarkdownFile.js +58 -0
  76. package/esm/dsl/model/ModelDriver.d.ts +3 -1
  77. package/esm/dsl/model/ModelDriver.d.ts.map +1 -1
  78. package/esm/dsl/model/ModelDriver.js +29 -2
  79. package/esm/dsl/model/toModelEntry.d.ts +24 -14
  80. package/esm/dsl/model/toModelEntry.d.ts.map +1 -1
  81. package/esm/dsl/model/toModelEntry.js +7 -3
  82. package/esm/dsl/model/toModelProjectionBase.d.ts +31 -18
  83. package/esm/dsl/model/toModelProjectionBase.d.ts.map +1 -1
  84. package/esm/dsl/model/toModelProjectionBase.js +3 -3
  85. package/esm/dsl/model/types.d.ts +23 -27
  86. package/esm/dsl/model/types.d.ts.map +1 -1
  87. package/esm/dsl/operation/gql/GqlOperationDriver.d.ts +3 -1
  88. package/esm/dsl/operation/gql/GqlOperationDriver.d.ts.map +1 -1
  89. package/esm/dsl/operation/gql/GqlOperationDriver.js +12 -9
  90. package/esm/dsl/operation/gql/toGqlOperationEntry.d.ts +20 -15
  91. package/esm/dsl/operation/gql/toGqlOperationEntry.d.ts.map +1 -1
  92. package/esm/dsl/operation/gql/toGqlOperationEntry.js +3 -25
  93. package/esm/dsl/operation/gql/toGqlOperationProjectionBase.d.ts +11 -10
  94. package/esm/dsl/operation/gql/toGqlOperationProjectionBase.d.ts.map +1 -1
  95. package/esm/dsl/operation/gql/types.d.ts +1 -28
  96. package/esm/dsl/operation/gql/types.d.ts.map +1 -1
  97. package/esm/dsl/operation/oas/OasOperationDriver.d.ts +3 -1
  98. package/esm/dsl/operation/oas/OasOperationDriver.d.ts.map +1 -1
  99. package/esm/dsl/operation/oas/OasOperationDriver.js +12 -9
  100. package/esm/dsl/operation/oas/toOasOperationEntry.d.ts +21 -17
  101. package/esm/dsl/operation/oas/toOasOperationEntry.d.ts.map +1 -1
  102. package/esm/dsl/operation/oas/toOasOperationEntry.js +3 -32
  103. package/esm/dsl/operation/oas/toOasOperationProjectionBase.d.ts +11 -10
  104. package/esm/dsl/operation/oas/toOasOperationProjectionBase.d.ts.map +1 -1
  105. package/esm/dsl/operation/oas/types.d.ts +1 -38
  106. package/esm/dsl/operation/oas/types.d.ts.map +1 -1
  107. package/esm/dsl/webhook/WebhookDriver.d.ts +3 -1
  108. package/esm/dsl/webhook/WebhookDriver.d.ts.map +1 -1
  109. package/esm/dsl/webhook/WebhookDriver.js +12 -9
  110. package/esm/dsl/webhook/toWebhookEntry.d.ts +21 -16
  111. package/esm/dsl/webhook/toWebhookEntry.d.ts.map +1 -1
  112. package/esm/dsl/webhook/toWebhookEntry.js +3 -32
  113. package/esm/dsl/webhook/toWebhookProjectionBase.d.ts +11 -10
  114. package/esm/dsl/webhook/toWebhookProjectionBase.d.ts.map +1 -1
  115. package/esm/dsl/webhook/types.d.ts +1 -36
  116. package/esm/dsl/webhook/types.d.ts.map +1 -1
  117. package/esm/enrichments/toEnrichmentDescriptor.d.ts +72 -27
  118. package/esm/enrichments/toEnrichmentDescriptor.d.ts.map +1 -1
  119. package/esm/enrichments/toEnrichmentDescriptor.js +57 -31
  120. package/esm/enrichments/validateConfig.d.ts +60 -0
  121. package/esm/enrichments/validateConfig.d.ts.map +1 -0
  122. package/esm/enrichments/validateConfig.js +176 -0
  123. package/esm/helpers/isImported.js +1 -1
  124. package/esm/helpers/toResolvedArtifactPath.js +1 -1
  125. package/esm/mod.d.ts +8 -1
  126. package/esm/mod.d.ts.map +1 -1
  127. package/esm/mod.js +8 -1
  128. package/esm/oas/array/Array.d.ts +2 -0
  129. package/esm/oas/array/Array.d.ts.map +1 -1
  130. package/esm/oas/array/Array.js +4 -0
  131. package/esm/oas/boolean/Boolean.d.ts +3 -1
  132. package/esm/oas/boolean/Boolean.d.ts.map +1 -1
  133. package/esm/oas/boolean/Boolean.js +4 -0
  134. package/esm/oas/components/Components.d.ts +5 -0
  135. package/esm/oas/components/Components.d.ts.map +1 -1
  136. package/esm/oas/components/Components.js +6 -1
  137. package/esm/oas/integer/Integer.d.ts +3 -1
  138. package/esm/oas/integer/Integer.d.ts.map +1 -1
  139. package/esm/oas/integer/Integer.js +4 -0
  140. package/esm/oas/link/Link.d.ts +68 -0
  141. package/esm/oas/link/Link.d.ts.map +1 -0
  142. package/esm/oas/link/Link.js +107 -0
  143. package/esm/oas/number/Number.d.ts +3 -1
  144. package/esm/oas/number/Number.d.ts.map +1 -1
  145. package/esm/oas/number/Number.js +4 -0
  146. package/esm/oas/object/Object.d.ts +9 -0
  147. package/esm/oas/object/Object.d.ts.map +1 -1
  148. package/esm/oas/object/Object.js +14 -0
  149. package/esm/oas/operation/Operation.d.ts +15 -0
  150. package/esm/oas/operation/Operation.d.ts.map +1 -1
  151. package/esm/oas/operation/Operation.js +33 -0
  152. package/esm/oas/ref/Ref.d.ts +23 -1
  153. package/esm/oas/ref/Ref.d.ts.map +1 -1
  154. package/esm/oas/ref/Ref.js +32 -0
  155. package/esm/oas/ref/ref-types.d.ts +18 -1
  156. package/esm/oas/ref/ref-types.d.ts.map +1 -1
  157. package/esm/oas/ref/ref-types.js +12 -1
  158. package/esm/oas/response/Response.d.ts +4 -0
  159. package/esm/oas/response/Response.d.ts.map +1 -1
  160. package/esm/oas/response/Response.js +7 -0
  161. package/esm/oas/schemaPath/traverseSchema.d.ts +31 -0
  162. package/esm/oas/schemaPath/traverseSchema.d.ts.map +1 -0
  163. package/esm/oas/schemaPath/traverseSchema.js +113 -0
  164. package/esm/oas/string/String.d.ts +3 -1
  165. package/esm/oas/string/String.d.ts.map +1 -1
  166. package/esm/oas/string/String.js +4 -0
  167. package/esm/oas/union/Union.d.ts +9 -0
  168. package/esm/oas/union/Union.d.ts.map +1 -1
  169. package/esm/oas/union/Union.js +14 -0
  170. package/esm/oas/unknown/Unknown.d.ts +3 -1
  171. package/esm/oas/unknown/Unknown.d.ts.map +1 -1
  172. package/esm/oas/unknown/Unknown.js +4 -0
  173. package/esm/parse/v3-0/_merge-all-of/decompose-union.d.ts.map +1 -1
  174. package/esm/parse/v3-0/_merge-all-of/decompose-union.js +8 -12
  175. package/esm/parse/v3-0/_merge-all-of/merge-union.d.ts.map +1 -1
  176. package/esm/parse/v3-0/_merge-all-of/merge-union.js +0 -8
  177. package/esm/parse/v3-0/components/toComponentsV3.d.ts.map +1 -1
  178. package/esm/parse/v3-0/components/toComponentsV3.js +3 -1
  179. package/esm/parse/v3-0/link/toLinksV3.d.ts +17 -0
  180. package/esm/parse/v3-0/link/toLinksV3.d.ts.map +1 -0
  181. package/esm/parse/v3-0/link/toLinksV3.js +40 -0
  182. package/esm/parse/v3-0/object/toObject.d.ts.map +1 -1
  183. package/esm/parse/v3-0/object/toObject.js +3 -1
  184. package/esm/parse/v3-0/response/toResponseV3.d.ts.map +1 -1
  185. package/esm/parse/v3-0/response/toResponseV3.js +4 -1
  186. package/esm/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
  187. package/esm/parse/v3-0/schema/toSchemasV3.js +8 -0
  188. package/esm/parse/v3-0/union/toUnion.d.ts.map +1 -1
  189. package/esm/parse/v3-0/union/toUnion.js +3 -1
  190. package/esm/parse/v3-1/_merge-all-of/decompose-union.d.ts.map +1 -1
  191. package/esm/parse/v3-1/_merge-all-of/decompose-union.js +8 -12
  192. package/esm/parse/v3-1/_merge-all-of/merge-union.d.ts.map +1 -1
  193. package/esm/parse/v3-1/_merge-all-of/merge-union.js +0 -8
  194. package/esm/parse/v3-1/components/toComponentsV3.d.ts.map +1 -1
  195. package/esm/parse/v3-1/components/toComponentsV3.js +3 -1
  196. package/esm/parse/v3-1/link/toLinksV3.d.ts +17 -0
  197. package/esm/parse/v3-1/link/toLinksV3.d.ts.map +1 -0
  198. package/esm/parse/v3-1/link/toLinksV3.js +40 -0
  199. package/esm/parse/v3-1/object/toObject.d.ts.map +1 -1
  200. package/esm/parse/v3-1/object/toObject.js +3 -1
  201. package/esm/parse/v3-1/response/toResponseV3.d.ts.map +1 -1
  202. package/esm/parse/v3-1/response/toResponseV3.js +4 -1
  203. package/esm/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
  204. package/esm/parse/v3-1/schema/toSchemasV3.js +8 -0
  205. package/esm/parse/v3-1/union/toUnion.d.ts.map +1 -1
  206. package/esm/parse/v3-1/union/toUnion.js +3 -1
  207. package/esm/run/toArtifacts.d.ts +8 -1
  208. package/esm/run/toArtifacts.d.ts.map +1 -1
  209. package/esm/run/toArtifacts.js +5 -5
  210. package/esm/run/toInspection.d.ts +8 -0
  211. package/esm/run/toInspection.d.ts.map +1 -0
  212. package/esm/run/toInspection.js +78 -0
  213. package/esm/types/Enrichments.d.ts +19 -8
  214. package/esm/types/Enrichments.d.ts.map +1 -1
  215. package/esm/types/Enrichments.js +4 -3
  216. package/esm/types/GeneratorType.d.ts +5 -5
  217. package/esm/types/GeneratorType.d.ts.map +1 -1
  218. package/esm/types/Manifest.d.ts +1 -2
  219. package/esm/types/Manifest.d.ts.map +1 -1
  220. package/esm/types/Manifest.js +1 -2
  221. package/esm/types/ModuleSelect.d.ts +81 -0
  222. package/esm/types/ModuleSelect.d.ts.map +1 -0
  223. package/esm/types/ModuleSelect.js +63 -0
  224. package/esm/types/Preview.d.ts +4 -27
  225. package/esm/types/Preview.d.ts.map +1 -1
  226. package/esm/types/Preview.js +4 -25
  227. package/esm/types/SchemaPath.d.ts +17 -0
  228. package/esm/types/SchemaPath.d.ts.map +1 -0
  229. package/esm/types/SchemaPath.js +9 -0
  230. package/esm/types/Settings.d.ts +24 -3
  231. package/esm/types/Settings.d.ts.map +1 -1
  232. package/esm/types/Settings.js +20 -13
  233. package/esm/types/SkmtcDocument.d.ts +1 -1
  234. package/esm/types/SupportedSubjects.d.ts +1 -1
  235. package/package.json +1 -1
  236. package/script/anchors/buildSidecar.js +1 -1
  237. package/script/anchors/postPass.d.ts +1 -1
  238. package/script/anchors/postPass.js +1 -1
  239. package/script/anchors/sidecar.d.ts +2 -2
  240. package/script/anchors/sidecar.js +1 -1
  241. package/script/context/CoreContext.d.ts +7 -1
  242. package/script/context/CoreContext.d.ts.map +1 -1
  243. package/script/context/CoreContext.js +17 -11
  244. package/script/context/GenerateContext.d.ts +28 -7
  245. package/script/context/GenerateContext.d.ts.map +1 -1
  246. package/script/context/GenerateContext.js +164 -86
  247. package/script/context/ParseContext.d.ts +16 -0
  248. package/script/context/ParseContext.d.ts.map +1 -1
  249. package/script/context/ParseContext.js +16 -0
  250. package/script/context/ParseIssue.d.ts +1 -1
  251. package/script/context/RenderContext.d.ts +2 -6
  252. package/script/context/RenderContext.d.ts.map +1 -1
  253. package/script/context/RenderContext.js +4 -14
  254. package/script/context/generateTypes.d.ts +35 -8
  255. package/script/context/generateTypes.d.ts.map +1 -1
  256. package/{esm/deps/jsr.io/@std/fs/1.0.23 → script/deps/jsr.io/@std/fs/1.0.24}/exists.d.ts.map +1 -1
  257. package/script/deps/jsr.io/@std/internal/1.0.14/_os.d.ts.map +1 -0
  258. package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.js +7 -5
  259. package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts.map +1 -1
  260. package/script/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
  261. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts.map +1 -1
  262. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.js +1 -1
  263. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts.map +1 -1
  264. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.js +1 -1
  265. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts.map +1 -1
  266. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.js +1 -1
  267. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts.map +1 -1
  268. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.js +1 -1
  269. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts.map +1 -1
  270. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.js +1 -1
  271. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts.map +1 -1
  272. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.js +2 -2
  273. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts.map +1 -1
  274. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.js +2 -2
  275. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts.map +1 -1
  276. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.js +1 -1
  277. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts.map +1 -1
  278. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.js +1 -1
  279. package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/posix/join.d.ts.map +1 -1
  280. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.js +1 -1
  281. package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/posix/normalize.d.ts.map +1 -1
  282. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.js +1 -1
  283. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts.map +1 -1
  284. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.js +1 -1
  285. package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/windows/from_file_url.d.ts.map +1 -1
  286. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.js +1 -1
  287. package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/windows/join.d.ts.map +1 -1
  288. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.js +1 -1
  289. package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/windows/normalize.d.ts.map +1 -1
  290. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.js +1 -1
  291. package/script/dsl/CodeFileBase.d.ts +57 -24
  292. package/script/dsl/CodeFileBase.d.ts.map +1 -1
  293. package/script/dsl/CodeFileBase.js +37 -54
  294. package/script/dsl/FileBase.d.ts +21 -25
  295. package/script/dsl/FileBase.d.ts.map +1 -1
  296. package/script/dsl/FileBase.js +20 -29
  297. package/script/dsl/GeneratorKeys.d.ts +19 -19
  298. package/script/dsl/GeneratorKeys.d.ts.map +1 -1
  299. package/script/dsl/GeneratorKeys.js +6 -5
  300. package/script/dsl/IdentifierBase.d.ts +19 -5
  301. package/script/dsl/IdentifierBase.d.ts.map +1 -1
  302. package/script/dsl/IdentifierBase.js +21 -5
  303. package/script/dsl/IdentifierType.d.ts +8 -14
  304. package/script/dsl/IdentifierType.d.ts.map +1 -1
  305. package/script/dsl/Lang.d.ts +18 -38
  306. package/script/dsl/Lang.d.ts.map +1 -1
  307. package/script/dsl/MarkdownFile.d.ts +55 -0
  308. package/script/dsl/MarkdownFile.d.ts.map +1 -0
  309. package/script/dsl/MarkdownFile.js +62 -0
  310. package/script/dsl/model/ModelDriver.d.ts +3 -1
  311. package/script/dsl/model/ModelDriver.d.ts.map +1 -1
  312. package/script/dsl/model/ModelDriver.js +29 -2
  313. package/script/dsl/model/toModelEntry.d.ts +24 -14
  314. package/script/dsl/model/toModelEntry.d.ts.map +1 -1
  315. package/script/dsl/model/toModelEntry.js +7 -3
  316. package/script/dsl/model/toModelProjectionBase.d.ts +31 -18
  317. package/script/dsl/model/toModelProjectionBase.d.ts.map +1 -1
  318. package/script/dsl/model/toModelProjectionBase.js +3 -3
  319. package/script/dsl/model/types.d.ts +23 -27
  320. package/script/dsl/model/types.d.ts.map +1 -1
  321. package/script/dsl/operation/gql/GqlOperationDriver.d.ts +3 -1
  322. package/script/dsl/operation/gql/GqlOperationDriver.d.ts.map +1 -1
  323. package/script/dsl/operation/gql/GqlOperationDriver.js +12 -9
  324. package/script/dsl/operation/gql/toGqlOperationEntry.d.ts +20 -15
  325. package/script/dsl/operation/gql/toGqlOperationEntry.d.ts.map +1 -1
  326. package/script/dsl/operation/gql/toGqlOperationEntry.js +3 -61
  327. package/script/dsl/operation/gql/toGqlOperationProjectionBase.d.ts +11 -10
  328. package/script/dsl/operation/gql/toGqlOperationProjectionBase.d.ts.map +1 -1
  329. package/script/dsl/operation/gql/types.d.ts +1 -28
  330. package/script/dsl/operation/gql/types.d.ts.map +1 -1
  331. package/script/dsl/operation/oas/OasOperationDriver.d.ts +3 -1
  332. package/script/dsl/operation/oas/OasOperationDriver.d.ts.map +1 -1
  333. package/script/dsl/operation/oas/OasOperationDriver.js +12 -9
  334. package/script/dsl/operation/oas/toOasOperationEntry.d.ts +21 -17
  335. package/script/dsl/operation/oas/toOasOperationEntry.d.ts.map +1 -1
  336. package/script/dsl/operation/oas/toOasOperationEntry.js +3 -68
  337. package/script/dsl/operation/oas/toOasOperationProjectionBase.d.ts +11 -10
  338. package/script/dsl/operation/oas/toOasOperationProjectionBase.d.ts.map +1 -1
  339. package/script/dsl/operation/oas/types.d.ts +1 -38
  340. package/script/dsl/operation/oas/types.d.ts.map +1 -1
  341. package/script/dsl/webhook/WebhookDriver.d.ts +3 -1
  342. package/script/dsl/webhook/WebhookDriver.d.ts.map +1 -1
  343. package/script/dsl/webhook/WebhookDriver.js +12 -9
  344. package/script/dsl/webhook/toWebhookEntry.d.ts +21 -16
  345. package/script/dsl/webhook/toWebhookEntry.d.ts.map +1 -1
  346. package/script/dsl/webhook/toWebhookEntry.js +3 -68
  347. package/script/dsl/webhook/toWebhookProjectionBase.d.ts +11 -10
  348. package/script/dsl/webhook/toWebhookProjectionBase.d.ts.map +1 -1
  349. package/script/dsl/webhook/types.d.ts +1 -36
  350. package/script/dsl/webhook/types.d.ts.map +1 -1
  351. package/script/enrichments/toEnrichmentDescriptor.d.ts +72 -27
  352. package/script/enrichments/toEnrichmentDescriptor.d.ts.map +1 -1
  353. package/script/enrichments/toEnrichmentDescriptor.js +57 -31
  354. package/script/enrichments/validateConfig.d.ts +60 -0
  355. package/script/enrichments/validateConfig.d.ts.map +1 -0
  356. package/script/enrichments/validateConfig.js +213 -0
  357. package/script/helpers/isImported.js +1 -1
  358. package/script/helpers/toResolvedArtifactPath.js +1 -1
  359. package/script/mod.d.ts +8 -1
  360. package/script/mod.d.ts.map +1 -1
  361. package/script/mod.js +8 -1
  362. package/script/oas/array/Array.d.ts +2 -0
  363. package/script/oas/array/Array.d.ts.map +1 -1
  364. package/script/oas/array/Array.js +4 -0
  365. package/script/oas/boolean/Boolean.d.ts +3 -1
  366. package/script/oas/boolean/Boolean.d.ts.map +1 -1
  367. package/script/oas/boolean/Boolean.js +4 -0
  368. package/script/oas/components/Components.d.ts +5 -0
  369. package/script/oas/components/Components.d.ts.map +1 -1
  370. package/script/oas/components/Components.js +6 -1
  371. package/script/oas/integer/Integer.d.ts +3 -1
  372. package/script/oas/integer/Integer.d.ts.map +1 -1
  373. package/script/oas/integer/Integer.js +4 -0
  374. package/script/oas/link/Link.d.ts +68 -0
  375. package/script/oas/link/Link.d.ts.map +1 -0
  376. package/script/oas/link/Link.js +111 -0
  377. package/script/oas/number/Number.d.ts +3 -1
  378. package/script/oas/number/Number.d.ts.map +1 -1
  379. package/script/oas/number/Number.js +4 -0
  380. package/script/oas/object/Object.d.ts +9 -0
  381. package/script/oas/object/Object.d.ts.map +1 -1
  382. package/script/oas/object/Object.js +14 -0
  383. package/script/oas/operation/Operation.d.ts +15 -0
  384. package/script/oas/operation/Operation.d.ts.map +1 -1
  385. package/script/oas/operation/Operation.js +33 -0
  386. package/script/oas/ref/Ref.d.ts +23 -1
  387. package/script/oas/ref/Ref.d.ts.map +1 -1
  388. package/script/oas/ref/Ref.js +32 -0
  389. package/script/oas/ref/ref-types.d.ts +18 -1
  390. package/script/oas/ref/ref-types.d.ts.map +1 -1
  391. package/script/oas/ref/ref-types.js +13 -2
  392. package/script/oas/response/Response.d.ts +4 -0
  393. package/script/oas/response/Response.d.ts.map +1 -1
  394. package/script/oas/response/Response.js +7 -0
  395. package/script/oas/schemaPath/traverseSchema.d.ts +31 -0
  396. package/script/oas/schemaPath/traverseSchema.d.ts.map +1 -0
  397. package/script/oas/schemaPath/traverseSchema.js +117 -0
  398. package/script/oas/string/String.d.ts +3 -1
  399. package/script/oas/string/String.d.ts.map +1 -1
  400. package/script/oas/string/String.js +4 -0
  401. package/script/oas/union/Union.d.ts +9 -0
  402. package/script/oas/union/Union.d.ts.map +1 -1
  403. package/script/oas/union/Union.js +14 -0
  404. package/script/oas/unknown/Unknown.d.ts +3 -1
  405. package/script/oas/unknown/Unknown.d.ts.map +1 -1
  406. package/script/oas/unknown/Unknown.js +4 -0
  407. package/script/parse/v3-0/_merge-all-of/decompose-union.d.ts.map +1 -1
  408. package/script/parse/v3-0/_merge-all-of/decompose-union.js +8 -12
  409. package/script/parse/v3-0/_merge-all-of/merge-union.d.ts.map +1 -1
  410. package/script/parse/v3-0/_merge-all-of/merge-union.js +0 -8
  411. package/script/parse/v3-0/components/toComponentsV3.d.ts.map +1 -1
  412. package/script/parse/v3-0/components/toComponentsV3.js +3 -1
  413. package/script/parse/v3-0/link/toLinksV3.d.ts +17 -0
  414. package/script/parse/v3-0/link/toLinksV3.d.ts.map +1 -0
  415. package/script/parse/v3-0/link/toLinksV3.js +44 -0
  416. package/script/parse/v3-0/object/toObject.d.ts.map +1 -1
  417. package/script/parse/v3-0/object/toObject.js +3 -1
  418. package/script/parse/v3-0/response/toResponseV3.d.ts.map +1 -1
  419. package/script/parse/v3-0/response/toResponseV3.js +4 -1
  420. package/script/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
  421. package/script/parse/v3-0/schema/toSchemasV3.js +8 -0
  422. package/script/parse/v3-0/union/toUnion.d.ts.map +1 -1
  423. package/script/parse/v3-0/union/toUnion.js +3 -1
  424. package/script/parse/v3-1/_merge-all-of/decompose-union.d.ts.map +1 -1
  425. package/script/parse/v3-1/_merge-all-of/decompose-union.js +8 -12
  426. package/script/parse/v3-1/_merge-all-of/merge-union.d.ts.map +1 -1
  427. package/script/parse/v3-1/_merge-all-of/merge-union.js +0 -8
  428. package/script/parse/v3-1/components/toComponentsV3.d.ts.map +1 -1
  429. package/script/parse/v3-1/components/toComponentsV3.js +3 -1
  430. package/script/parse/v3-1/link/toLinksV3.d.ts +17 -0
  431. package/script/parse/v3-1/link/toLinksV3.d.ts.map +1 -0
  432. package/script/parse/v3-1/link/toLinksV3.js +44 -0
  433. package/script/parse/v3-1/object/toObject.d.ts.map +1 -1
  434. package/script/parse/v3-1/object/toObject.js +3 -1
  435. package/script/parse/v3-1/response/toResponseV3.d.ts.map +1 -1
  436. package/script/parse/v3-1/response/toResponseV3.js +4 -1
  437. package/script/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
  438. package/script/parse/v3-1/schema/toSchemasV3.js +8 -0
  439. package/script/parse/v3-1/union/toUnion.d.ts.map +1 -1
  440. package/script/parse/v3-1/union/toUnion.js +3 -1
  441. package/script/run/toArtifacts.d.ts +8 -1
  442. package/script/run/toArtifacts.d.ts.map +1 -1
  443. package/script/run/toArtifacts.js +5 -5
  444. package/script/run/toInspection.d.ts +8 -0
  445. package/script/run/toInspection.d.ts.map +1 -0
  446. package/script/run/toInspection.js +82 -0
  447. package/script/types/Enrichments.d.ts +19 -8
  448. package/script/types/Enrichments.d.ts.map +1 -1
  449. package/script/types/Enrichments.js +5 -4
  450. package/script/types/GeneratorType.d.ts +5 -5
  451. package/script/types/GeneratorType.d.ts.map +1 -1
  452. package/script/types/Manifest.d.ts +1 -2
  453. package/script/types/Manifest.d.ts.map +1 -1
  454. package/script/types/Manifest.js +0 -1
  455. package/script/types/ModuleSelect.d.ts +81 -0
  456. package/script/types/ModuleSelect.d.ts.map +1 -0
  457. package/script/types/ModuleSelect.js +101 -0
  458. package/script/types/Preview.d.ts +4 -27
  459. package/script/types/Preview.d.ts.map +1 -1
  460. package/script/types/Preview.js +5 -26
  461. package/script/types/SchemaPath.d.ts +17 -0
  462. package/script/types/SchemaPath.d.ts.map +1 -0
  463. package/script/types/{AccessorPath.js → SchemaPath.js} +7 -7
  464. package/script/types/Settings.d.ts +24 -3
  465. package/script/types/Settings.d.ts.map +1 -1
  466. package/script/types/Settings.js +17 -10
  467. package/script/types/SkmtcDocument.d.ts +1 -1
  468. package/script/types/SupportedSubjects.d.ts +1 -1
  469. package/esm/deps/jsr.io/@std/internal/1.0.13/_os.d.ts.map +0 -1
  470. package/esm/deps/jsr.io/@std/internal/1.0.13/_os.js +0 -12
  471. package/esm/types/AccessorPath.d.ts +0 -17
  472. package/esm/types/AccessorPath.d.ts.map +0 -1
  473. package/esm/types/AccessorPath.js +0 -9
  474. package/script/deps/jsr.io/@std/internal/1.0.13/_os.d.ts.map +0 -1
  475. package/script/types/AccessorPath.d.ts +0 -17
  476. package/script/types/AccessorPath.d.ts.map +0 -1
  477. /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
  478. /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
  479. /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.d.ts +0 -0
  480. /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts +0 -0
  481. /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.js +0 -0
  482. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts +0 -0
  483. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts +0 -0
  484. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts +0 -0
  485. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts +0 -0
  486. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts +0 -0
  487. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts +0 -0
  488. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts +0 -0
  489. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts +0 -0
  490. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts +0 -0
  491. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.d.ts +0 -0
  492. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.d.ts +0 -0
  493. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts +0 -0
  494. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.d.ts +0 -0
  495. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.d.ts +0 -0
  496. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.d.ts +0 -0
  497. /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
  498. /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
  499. /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.d.ts +0 -0
  500. /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts +0 -0
  501. /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.js +0 -0
  502. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts +0 -0
  503. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts +0 -0
  504. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts +0 -0
  505. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts +0 -0
  506. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts +0 -0
  507. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts +0 -0
  508. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts +0 -0
  509. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts +0 -0
  510. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts +0 -0
  511. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.d.ts +0 -0
  512. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.d.ts +0 -0
  513. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts +0 -0
  514. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.d.ts +0 -0
  515. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.d.ts +0 -0
  516. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.d.ts +0 -0
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OasObject = void 0;
4
4
  require("../../_dnt.polyfills.js");
5
+ const traverseSchema_js_1 = require("../schemaPath/traverseSchema.js");
5
6
  const OasBase_js_1 = require("../../types/OasBase.js");
6
7
  /**
7
8
  * Represents an object schema in the OpenAPI Specification.
@@ -146,6 +147,15 @@ class OasObject extends OasBase_js_1.OasBase {
146
147
  writable: true,
147
148
  value: void 0
148
149
  });
150
+ /**
151
+ * External documentation for the object.
152
+ */
153
+ Object.defineProperty(this, "externalDocs", {
154
+ enumerable: true,
155
+ configurable: true,
156
+ writable: true,
157
+ value: void 0
158
+ });
149
159
  /**
150
160
  * Indicates whether value can be null.
151
161
  */
@@ -253,6 +263,7 @@ class OasObject extends OasBase_js_1.OasBase {
253
263
  });
254
264
  this.title = fields.title;
255
265
  this.description = fields.description;
266
+ this.externalDocs = fields.externalDocs;
256
267
  this.properties = fields.properties;
257
268
  this.required = fields.required;
258
269
  this.additionalProperties = fields.additionalProperties;
@@ -408,6 +419,9 @@ class OasObject extends OasBase_js_1.OasBase {
408
419
  isRef() {
409
420
  return false;
410
421
  }
422
+ traverse(path) {
423
+ return (0, traverseSchema_js_1.traverseSchema)(this, path);
424
+ }
411
425
  resolve() {
412
426
  return this;
413
427
  }
@@ -1,4 +1,5 @@
1
1
  import "../../_dnt.polyfills.js";
2
+ import type { SchemaPath } from '../../types/SchemaPath.js';
2
3
  import type { Method } from '../../types/Method.js';
3
4
  import type { OasPathItem } from '../pathItem/PathItem.js';
4
5
  import type { OasParameter } from '../parameter/Parameter.js';
@@ -123,6 +124,20 @@ export declare class OasOperation extends OasBase {
123
124
  * @returns Mapped value or undefined if no request body schema found
124
125
  */
125
126
  toRequestBody<V>(map: ({ schema, requestBody }: ToRequestBodyMapArgs) => V, mediaType?: string): V | undefined;
127
+ /**
128
+ * Navigate into this operation's response or request body schema along an
129
+ * {@link SchemaPath}. The first segment selects the entry point —
130
+ * `'SuccessResponse'` (the 2xx response body schema) or `'RequestBody'` (the
131
+ * request body schema) — and the rest descend through object properties,
132
+ * array `items`, and union members, resolving `$ref`s on the way. See
133
+ * {@link traverseSchema}.
134
+ *
135
+ * @param path - Schema path; `path[0]` must be `'SuccessResponse'` or `'RequestBody'`.
136
+ * @param mediaType - Media type the body schema is read from (default `application/json`).
137
+ * @returns The schema at the path (may be an unresolved `$ref`).
138
+ * @throws Error on an unknown root, a missing response/request body, or a non-navigable segment.
139
+ */
140
+ traverse(path: SchemaPath, mediaType?: string): OasSchema | OasRef<'schema'>;
126
141
  /**
127
142
  * Resolve all parameters and optionally filter by location
128
143
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/oas/operation/Operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/oas/operation/Operation.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAA;AAC3F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAA;IACd,qDAAqD;IACrD,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAA;IACjC,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IAC3B,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,4CAA4C;IAC5C,UAAU,CAAC,EAAE,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,SAAS,CAAA;IAC/D,oDAAoD;IACpD,WAAW,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,SAAS,CAAA;IAChE,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3D,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,sBAAsB,EAAE,GAAG,SAAS,CAAA;IAC/C,2CAA2C;IAC3C,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAChC,gDAAgD;IAChD,YAAY,CAAC,EAAE,eAAe,GAAG,SAAS,CAAA;IAC1C,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,CAAA;CAClC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;IACpC,WAAW,EAAE,cAAc,CAAA;CAC5B,CAAA;AAED,qBAAa,YAAa,SAAQ,OAAO;IACvC,gDAAgD;IAChD,OAAO,EAAE,WAAW,CAAc;IAElC,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAA;IACd,qDAAqD;IACrD,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAA;IACjC,0CAA0C;IAC1C,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,qCAAqC;IACrC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,sDAAsD;IACtD,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IAC1B,4CAA4C;IAC5C,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,4CAA4C;IAC5C,UAAU,EAAE,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,SAAS,CAAA;IAC9D,oDAAoD;IACpD,WAAW,EAAE,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,SAAS,CAAA;IAC/D,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3D,+CAA+C;IAC/C,QAAQ,EAAE,sBAAsB,EAAE,GAAG,SAAS,CAAA;IAC9C,2CAA2C;IAC3C,UAAU,EAAE,OAAO,GAAG,SAAS,CAAA;IAC/B,gDAAgD;IAChD,YAAY,EAAE,eAAe,GAAG,SAAS,CAAA;IACzC,uCAAuC;IACvC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IACpD,iCAAiC;IACjC,OAAO,EAAE,SAAS,EAAE,GAAG,SAAS,CAAA;IAChC;;;;OAIG;gBACS,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAmB/D;;;;;;OAMG;IACH,iBAAiB,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS;IAMjE;;;;;;OAMG;IACH,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAI3C;;;;;;OAMG;IACH,aAAa,CAAC,CAAC,EACb,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,oBAAoB,KAAK,CAAC,EACzD,SAAS,SAAqB,GAC7B,CAAC,GAAG,SAAS;IAOhB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,GAAE,MAA2B,GAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;IA2BhG;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,EAAE,GAAG,YAAY,EAAE;IAQzD;;;;;OAKG;IACH,kBAAkB,CAAC,MAAM,CAAC,EAAE,oBAAoB,EAAE,GAAG,SAAS;IAY9D;;;;;OAKG;IACH,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAAC,eAAe;IAiBrE;;;;OAIG;IACH,MAAM,IAAI,MAAM;CAcjB"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OasOperation = void 0;
4
4
  require("../../_dnt.polyfills.js");
5
+ const traverseSchema_js_1 = require("../schemaPath/traverseSchema.js");
5
6
  const Object_js_1 = require("../object/Object.js");
6
7
  const toPrimaryResponseCode_js_1 = require("../response/toPrimaryResponseCode.js");
7
8
  const OasBase_js_1 = require("../../types/OasBase.js");
@@ -174,6 +175,38 @@ class OasOperation extends OasBase_js_1.OasBase {
174
175
  const schema = requestBody?.content[mediaType]?.schema;
175
176
  return schema ? map({ schema, requestBody }) : undefined;
176
177
  }
178
+ /**
179
+ * Navigate into this operation's response or request body schema along an
180
+ * {@link SchemaPath}. The first segment selects the entry point —
181
+ * `'SuccessResponse'` (the 2xx response body schema) or `'RequestBody'` (the
182
+ * request body schema) — and the rest descend through object properties,
183
+ * array `items`, and union members, resolving `$ref`s on the way. See
184
+ * {@link traverseSchema}.
185
+ *
186
+ * @param path - Schema path; `path[0]` must be `'SuccessResponse'` or `'RequestBody'`.
187
+ * @param mediaType - Media type the body schema is read from (default `application/json`).
188
+ * @returns The schema at the path (may be an unresolved `$ref`).
189
+ * @throws Error on an unknown root, a missing response/request body, or a non-navigable segment.
190
+ */
191
+ traverse(path, mediaType = 'application/json') {
192
+ const [root, ...rest] = path;
193
+ let rootSchema;
194
+ switch (root) {
195
+ case 'SuccessResponse':
196
+ rootSchema = this.toSuccessResponse()?.resolve().toSchema(mediaType);
197
+ break;
198
+ case 'RequestBody':
199
+ rootSchema = this.toRequestBody(({ schema }) => schema, mediaType);
200
+ break;
201
+ default:
202
+ throw new Error(`Operation schema path must start with "SuccessResponse" or "RequestBody", got "${root}"`);
203
+ }
204
+ if (!rootSchema) {
205
+ const label = root === 'SuccessResponse' ? 'success response' : 'request body';
206
+ throw new Error(`Operation "${this.method} ${this.path}" has no ${label} schema for media type "${mediaType}"`);
207
+ }
208
+ return (0, traverseSchema_js_1.traverseSchema)(rootSchema, rest);
209
+ }
177
210
  /**
178
211
  * Resolve all parameters and optionally filter by location
179
212
  *
@@ -1,4 +1,5 @@
1
1
  import "../../_dnt.polyfills.js";
2
+ import type { SchemaPath } from '../../types/SchemaPath.js';
2
3
  import type { OasRefData } from './ref-types.js';
3
4
  import type { OasSchema, ToJsonSchemaOptions } from '../schema/Schema.js';
4
5
  import type { OasResponse } from '../response/Response.js';
@@ -6,6 +7,7 @@ import type { OasParameter } from '../parameter/Parameter.js';
6
7
  import type { OasExample } from '../example/Example.js';
7
8
  import type { OasRequestBody } from '../requestBody/RequestBody.js';
8
9
  import type { OasHeader } from '../header/Header.js';
10
+ import type { OasLink } from '../link/Link.js';
9
11
  import type { SkmtcParsedDocument } from '../../types/SkmtcDocument.js';
10
12
  import type { RefName } from '../../types/RefName.js';
11
13
  import type { OpenAPIV3 } from 'openapi-types';
@@ -160,6 +162,26 @@ export declare class OasRef<T extends OasRefData['refType']> extends OasBase {
160
162
  */
161
163
  resolveOnce(): OasRef<T> | ResolvedRef<T>;
162
164
  toRefName(): RefName;
165
+ /**
166
+ * Narrows this reference to a schema reference.
167
+ *
168
+ * @returns True when this reference points at a schema component.
169
+ */
170
+ isSchemaRef(): this is OasRef<'schema'>;
171
+ /**
172
+ * Navigate an {@link SchemaPath} starting from this reference, resolving it
173
+ * to descend through. See {@link traverseSchema}.
174
+ *
175
+ * Available on every `OasRef` so `.traverse()` works on the common
176
+ * `OasSchema | OasRef<'schema'>` value (an object property, array `items`).
177
+ * Schema paths only describe schemas for now, so it throws for non-schema
178
+ * refs (response/parameter/…); {@link isSchemaRef} narrows `this`, keeping the
179
+ * delegation cast-free.
180
+ *
181
+ * @returns The schema at the path (may be an unresolved `$ref`).
182
+ * @throws Error when called on a non-schema ref.
183
+ */
184
+ traverse(path: SchemaPath): OasSchema | OasRef<'schema'>;
163
185
  get $ref(): string;
164
186
  get refType(): OasRefData['refType'];
165
187
  /**
@@ -189,7 +211,7 @@ export type ResolvedRefJsonType<T extends OasRefData['refType']> = ReturnType<Re
189
211
  *
190
212
  * Includes all OpenAPI component types that support $ref resolution.
191
213
  */
192
- export type OasComponentType = OasSchema | OasResponse | OasParameter | OasExample | OasRequestBody | OasHeader | OasSecurityScheme;
214
+ export type OasComponentType = OasSchema | OasResponse | OasParameter | OasExample | OasRequestBody | OasHeader | OasSecurityScheme | OasLink;
193
215
  /**
194
216
  * Type representing a resolved reference to a specific component type.
195
217
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Ref.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/Ref.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Ref.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/Ref.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ var _OasRef_instances, _OasRef_fields, _OasRef_document, _OasRef_resolveOasOnce,
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.OasRef = void 0;
16
16
  require("../../_dnt.polyfills.js");
17
+ const traverseSchema_js_1 = require("../schemaPath/traverseSchema.js");
17
18
  const refFns_js_1 = require("../../helpers/refFns.js");
18
19
  const OasBase_js_1 = require("../../types/OasBase.js");
19
20
  const MAX_LOOKUPS = 10;
@@ -36,6 +37,8 @@ function refTypeToPluralPath(refType) {
36
37
  return 'headers';
37
38
  case 'securityScheme':
38
39
  return 'securitySchemes';
40
+ case 'link':
41
+ return 'links';
39
42
  default: {
40
43
  const _exhaustive = refType;
41
44
  throw new Error(`Unhandled ref type: ${_exhaustive}`);
@@ -215,6 +218,33 @@ class OasRef extends OasBase_js_1.OasBase {
215
218
  toRefName() {
216
219
  return (0, refFns_js_1.toRefName)(__classPrivateFieldGet(this, _OasRef_fields, "f").$ref);
217
220
  }
221
+ /**
222
+ * Narrows this reference to a schema reference.
223
+ *
224
+ * @returns True when this reference points at a schema component.
225
+ */
226
+ isSchemaRef() {
227
+ return this.refType === 'schema';
228
+ }
229
+ /**
230
+ * Navigate an {@link SchemaPath} starting from this reference, resolving it
231
+ * to descend through. See {@link traverseSchema}.
232
+ *
233
+ * Available on every `OasRef` so `.traverse()` works on the common
234
+ * `OasSchema | OasRef<'schema'>` value (an object property, array `items`).
235
+ * Schema paths only describe schemas for now, so it throws for non-schema
236
+ * refs (response/parameter/…); {@link isSchemaRef} narrows `this`, keeping the
237
+ * delegation cast-free.
238
+ *
239
+ * @returns The schema at the path (may be an unresolved `$ref`).
240
+ * @throws Error when called on a non-schema ref.
241
+ */
242
+ traverse(path) {
243
+ if (!this.isSchemaRef()) {
244
+ throw new Error(`Schema path traversal is not yet supported for "${this.refType}" refs (only schema refs)`);
245
+ }
246
+ return (0, traverseSchema_js_1.traverseSchema)(this, path);
247
+ }
218
248
  get $ref() {
219
249
  return __classPrivateFieldGet(this, _OasRef_fields, "f").$ref;
220
250
  }
@@ -273,6 +303,8 @@ _OasRef_fields = new WeakMap(), _OasRef_document = new WeakMap(), _OasRef_instan
273
303
  return c?.headers?.[refName];
274
304
  case 'securityScheme':
275
305
  return c?.securitySchemes?.[refName];
306
+ case 'link':
307
+ return c?.links?.[refName];
276
308
  default: {
277
309
  const _exhaustive = refType;
278
310
  throw new Error(`Unhandled ref type: ${_exhaustive}`);
@@ -131,13 +131,30 @@ export type OasSecuritySchemeRefData = {
131
131
  * Valibot schema for validating security scheme reference data.
132
132
  */
133
133
  export declare const oasSecuritySchemeRefData: v.GenericSchema<OasSecuritySchemeRefData>;
134
+ /**
135
+ * Data type for OpenAPI link reference objects.
136
+ *
137
+ * Represents $ref references to link objects in OpenAPI documents,
138
+ * allowing link definitions to be reused across responses.
139
+ */
140
+ export type OasLinkRefData = {
141
+ oasType: 'ref';
142
+ refType: 'link';
143
+ $ref: string;
144
+ summary?: string;
145
+ description?: string;
146
+ };
147
+ /**
148
+ * Valibot schema for validating link reference data.
149
+ */
150
+ export declare const oasLinkRefData: v.GenericSchema<OasLinkRefData>;
134
151
  /**
135
152
  * Union type representing all possible OpenAPI reference data types.
136
153
  *
137
154
  * Encompasses all supported reference types in the OpenAPI specification,
138
155
  * providing type-safe handling of references to various component types.
139
156
  */
140
- export type OasRefData = OasSchemaRefData | OasResponseRefData | OasParameterRefData | OasExampleRefData | OasRequestBodyRefData | OasHeaderRefData | OasSecuritySchemeRefData;
157
+ export type OasRefData = OasSchemaRefData | OasResponseRefData | OasParameterRefData | OasExampleRefData | OasRequestBodyRefData | OasHeaderRefData | OasSecuritySchemeRefData | OasLinkRefData;
141
158
  /**
142
159
  * Valibot schema for validating any OpenAPI reference data.
143
160
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ref-types.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/ref-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ref-types.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/ref-types.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.oasRefData = exports.oasSecuritySchemeRefData = exports.oasHeaderRefData = exports.oasRequestBodyRefData = exports.oasExampleRefData = exports.oasParameterRefData = exports.oasResponseRefData = exports.oasSchemaRefData = void 0;
36
+ exports.oasRefData = exports.oasLinkRefData = exports.oasSecuritySchemeRefData = exports.oasHeaderRefData = exports.oasRequestBodyRefData = exports.oasExampleRefData = exports.oasParameterRefData = exports.oasResponseRefData = exports.oasSchemaRefData = void 0;
37
37
  const markdown_types_js_1 = require("../markdown/markdown-types.js");
38
38
  const v = __importStar(require("valibot"));
39
39
  /**
@@ -104,6 +104,16 @@ exports.oasSecuritySchemeRefData = v.object({
104
104
  refType: v.literal('securityScheme'),
105
105
  $ref: v.string()
106
106
  });
107
+ /**
108
+ * Valibot schema for validating link reference data.
109
+ */
110
+ exports.oasLinkRefData = v.object({
111
+ oasType: v.literal('ref'),
112
+ refType: v.literal('link'),
113
+ $ref: v.string(),
114
+ summary: v.optional(v.string()),
115
+ description: v.optional(markdown_types_js_1.markdown)
116
+ });
107
117
  // OasPathItemRefData
108
118
  /**
109
119
  * Valibot schema for validating any OpenAPI reference data.
@@ -118,6 +128,7 @@ exports.oasRefData = v.union([
118
128
  exports.oasExampleRefData,
119
129
  exports.oasRequestBodyRefData,
120
130
  exports.oasHeaderRefData,
121
- exports.oasSecuritySchemeRefData
131
+ exports.oasSecuritySchemeRefData,
132
+ exports.oasLinkRefData
122
133
  // oasPathItemRefData
123
134
  ]);
@@ -1,5 +1,6 @@
1
1
  import "../../_dnt.polyfills.js";
2
2
  import type { OasHeader } from '../header/Header.js';
3
+ import type { OasLink } from '../link/Link.js';
3
4
  import type { OasMediaType } from '../mediaType/MediaType.js';
4
5
  import type { OasRef } from '../ref/Ref.js';
5
6
  import type { OasSchema } from '../schema/Schema.js';
@@ -15,6 +16,8 @@ export type ResponseFields = {
15
16
  description?: string | undefined;
16
17
  /** Response headers that can be sent */
17
18
  headers?: Record<string, OasHeader | OasRef<'header'>> | undefined;
19
+ /** Design-time links from this response to other operations */
20
+ links?: Record<string, OasLink | OasRef<'link'>> | undefined;
18
21
  /** Response content for different media types */
19
22
  content?: Record<string, OasMediaType> | undefined;
20
23
  /** Custom extension fields (x-* properties) */
@@ -207,6 +210,7 @@ export declare class OasResponse extends OasBase {
207
210
  oasType: 'response';
208
211
  description: string | undefined;
209
212
  headers: Record<string, OasHeader | OasRef<'header'>> | undefined;
213
+ links: Record<string, OasLink | OasRef<'link'>> | undefined;
210
214
  content: Record<string, OasMediaType> | undefined;
211
215
  extensionFields: Record<string, unknown> | undefined;
212
216
  constructor(fields: ResponseFields, context?: ParseContextType);
@@ -1 +1 @@
1
- {"version":3,"file":"Response.d.ts","sourceRoot":"","sources":["../../../src/oas/response/Response.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAA;IAClE,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAAA;IAClD,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1C,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsLG;AACH,qBAAa,WAAY,SAAQ,OAAO;IACtC,OAAO,EAAE,UAAU,CAAa;IAChC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAA;IACjE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAAA;IACjD,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;gBACxC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAQ9D,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC;IAInC,OAAO,IAAI,WAAW;IAItB,WAAW,IAAI,WAAW;IAI1B,QAAQ,CAAC,SAAS,GAAE,MAA2B,GAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAI1F,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAAC,cAAc;CAqBrE"}
1
+ {"version":3,"file":"Response.d.ts","sourceRoot":"","sources":["../../../src/oas/response/Response.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAA;IAClE,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;IAC5D,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAAA;IAClD,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1C,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsLG;AACH,qBAAa,WAAY,SAAQ,OAAO;IACtC,OAAO,EAAE,UAAU,CAAa;IAChC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAA;IACjE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;IAC3D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAAA;IACjD,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;gBACxC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAS9D,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC;IAInC,OAAO,IAAI,WAAW;IAItB,WAAW,IAAI,WAAW;IAI1B,QAAQ,CAAC,SAAS,GAAE,MAA2B,GAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAI1F,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAAC,cAAc;CAqBrE"}
@@ -207,6 +207,12 @@ class OasResponse extends OasBase_js_1.OasBase {
207
207
  writable: true,
208
208
  value: void 0
209
209
  });
210
+ Object.defineProperty(this, "links", {
211
+ enumerable: true,
212
+ configurable: true,
213
+ writable: true,
214
+ value: void 0
215
+ });
210
216
  Object.defineProperty(this, "content", {
211
217
  enumerable: true,
212
218
  configurable: true,
@@ -221,6 +227,7 @@ class OasResponse extends OasBase_js_1.OasBase {
221
227
  });
222
228
  this.description = fields.description;
223
229
  this.headers = fields.headers;
230
+ this.links = fields.links;
224
231
  this.content = fields.content;
225
232
  this.extensionFields = fields.extensionFields;
226
233
  }
@@ -0,0 +1,31 @@
1
+ import type { OasSchema } from '../schema/Schema.js';
2
+ import type { OasRef } from '../ref/Ref.js';
3
+ import type { SchemaPath } from '../../types/SchemaPath.js';
4
+ /**
5
+ * Walk an {@link SchemaPath} into a schema, resolving `$ref`s as it descends.
6
+ *
7
+ * The shared engine behind `OasOperation.traverse` and every `OasSchema`
8
+ * variant's `traverse`. A ref — or a `OasSchema | OasRef<'schema'>` union value —
9
+ * is passed straight to this function, which resolves refs itself, so `OasRef`
10
+ * needs no `traverse` method of its own. Navigation rules per segment, keyed by
11
+ * the schema currently under the cursor:
12
+ *
13
+ * - **empty path** → returns `value` unchanged (it may still be a ref — the
14
+ * final value is never force-resolved, so a target's refName survives).
15
+ * - **object** → the segment is a property name; descends into
16
+ * `properties[segment]`.
17
+ * - **array** → the segment must be the literal `'items'`; descends into the
18
+ * element schema.
19
+ * - **union** → the segment selects a member ({@link selectUnionMember}):
20
+ * `'$Circle'` by refName, `'{type:circle}'` by discriminator, `'[0]'` by index.
21
+ *
22
+ * A ref is resolved only when the path needs to descend *through* it. Anything
23
+ * the path cannot navigate throws a descriptive, segment-named error: a missing
24
+ * property, a {@link import('@/dsl/CustomValue.ts').CustomValue} property, a
25
+ * non-`'items'` segment on an array, a union member that doesn't match, or
26
+ * descending into a scalar.
27
+ *
28
+ * @throws Error when a segment cannot be navigated.
29
+ */
30
+ export declare const traverseSchema: (value: OasSchema | OasRef<"schema">, path: SchemaPath) => OasSchema | OasRef<"schema">;
31
+ //# sourceMappingURL=traverseSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traverseSchema.d.ts","sourceRoot":"","sources":["../../../src/oas/schemaPath/traverseSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAG3D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,cAAc,GACzB,OAAO,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,EACnC,MAAM,UAAU,KACf,SAAS,GAAG,MAAM,CAAC,QAAQ,CA+C7B,CAAA"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverseSchema = void 0;
4
+ const refFns_js_1 = require("../../helpers/refFns.js");
5
+ /**
6
+ * Walk an {@link SchemaPath} into a schema, resolving `$ref`s as it descends.
7
+ *
8
+ * The shared engine behind `OasOperation.traverse` and every `OasSchema`
9
+ * variant's `traverse`. A ref — or a `OasSchema | OasRef<'schema'>` union value —
10
+ * is passed straight to this function, which resolves refs itself, so `OasRef`
11
+ * needs no `traverse` method of its own. Navigation rules per segment, keyed by
12
+ * the schema currently under the cursor:
13
+ *
14
+ * - **empty path** → returns `value` unchanged (it may still be a ref — the
15
+ * final value is never force-resolved, so a target's refName survives).
16
+ * - **object** → the segment is a property name; descends into
17
+ * `properties[segment]`.
18
+ * - **array** → the segment must be the literal `'items'`; descends into the
19
+ * element schema.
20
+ * - **union** → the segment selects a member ({@link selectUnionMember}):
21
+ * `'$Circle'` by refName, `'{type:circle}'` by discriminator, `'[0]'` by index.
22
+ *
23
+ * A ref is resolved only when the path needs to descend *through* it. Anything
24
+ * the path cannot navigate throws a descriptive, segment-named error: a missing
25
+ * property, a {@link import('@/dsl/CustomValue.ts').CustomValue} property, a
26
+ * non-`'items'` segment on an array, a union member that doesn't match, or
27
+ * descending into a scalar.
28
+ *
29
+ * @throws Error when a segment cannot be navigated.
30
+ */
31
+ const traverseSchema = (value, path) => {
32
+ if (path.length === 0) {
33
+ return value;
34
+ }
35
+ // Resolve refs only to descend through them; the final value (path empty,
36
+ // above) is returned as-is.
37
+ const schema = value.isRef() ? value.resolve() : value;
38
+ const [segment, ...rest] = path;
39
+ switch (schema.type) {
40
+ case 'object': {
41
+ const property = schema.properties?.[segment];
42
+ if (!property) {
43
+ throw new Error(`Schema path segment "${segment}" is not a property of the object (available: ${Object.keys(schema.properties ?? {}).join(', ') || 'none'})`);
44
+ }
45
+ if (property.type === 'custom') {
46
+ throw new Error(`Schema path segment "${segment}" is a custom value and cannot be traversed`);
47
+ }
48
+ return (0, exports.traverseSchema)(property, rest);
49
+ }
50
+ case 'array': {
51
+ if (segment !== 'items') {
52
+ throw new Error(`Schema path segment "${segment}" cannot traverse an array; use "items" to descend into the element schema`);
53
+ }
54
+ return (0, exports.traverseSchema)(schema.items, rest);
55
+ }
56
+ case 'union': {
57
+ return (0, exports.traverseSchema)(selectUnionMember(schema, segment), rest);
58
+ }
59
+ default: {
60
+ throw new Error(`Schema path segment "${segment}" cannot traverse a "${schema.type}" schema`);
61
+ }
62
+ }
63
+ };
64
+ exports.traverseSchema = traverseSchema;
65
+ /**
66
+ * Pick one member of a union for an {@link SchemaPath} segment. The segment's
67
+ * notation chooses the branching strategy:
68
+ *
69
+ * - `'$Circle'` (`$`-prefixed) → by **member refName** (the schema identity).
70
+ * - `'{type:circle}'` (`{property:value}`) → by **discriminator** — the property
71
+ * must match the union's `discriminator.propertyName`, and the value is looked
72
+ * up in `discriminator.mapping` (or used as an implicit schema name).
73
+ * - `'[0]'` (bracketed) → by **member index** — the fallback for inline/anonymous
74
+ * members that have no refName.
75
+ *
76
+ * A plain (un-prefixed) segment is not a valid union selector.
77
+ *
78
+ * @throws Error when the segment is not a valid selector or selects no member.
79
+ */
80
+ const selectUnionMember = (union, segment) => {
81
+ const indexMatch = segment.match(/^\[(\d+)\]$/);
82
+ if (indexMatch) {
83
+ const index = Number(indexMatch[1]);
84
+ const member = union.members[index];
85
+ if (!member) {
86
+ throw new Error(`Schema path segment "${segment}" is out of range; the union has ${union.members.length} member(s)`);
87
+ }
88
+ return member;
89
+ }
90
+ const discriminatorMatch = segment.match(/^\{([^:]+):(.+)\}$/);
91
+ if (discriminatorMatch) {
92
+ const [, propertyName, value] = discriminatorMatch;
93
+ if (!union.discriminator) {
94
+ throw new Error(`Schema path segment "${segment}" needs a discriminated union, but this union has no discriminator`);
95
+ }
96
+ if (union.discriminator.propertyName !== propertyName) {
97
+ throw new Error(`Schema path segment "${segment}" discriminates on "${propertyName}", but this union's discriminator is "${union.discriminator.propertyName}"`);
98
+ }
99
+ const mapped = union.discriminator.mapping?.[value];
100
+ const targetRefName = mapped ? (0, refFns_js_1.toRefName)(mapped) : value;
101
+ const member = findMemberByRefName(union, targetRefName);
102
+ if (!member) {
103
+ throw new Error(`Schema path segment "${segment}" does not resolve to a union member via the discriminator`);
104
+ }
105
+ return member;
106
+ }
107
+ if (segment.startsWith('$')) {
108
+ const member = findMemberByRefName(union, segment.slice(1));
109
+ if (!member) {
110
+ const refNames = union.members.filter(member => member.isRef()).map(member => member.toRefName());
111
+ throw new Error(`Schema path segment "${segment}" does not match a union member refName (available: ${refNames.map(name => `$${name}`).join(', ') || 'none — use "[index]" for inline members'})`);
112
+ }
113
+ return member;
114
+ }
115
+ throw new Error(`Schema path segment "${segment}" is not a valid union selector; use "$RefName", "{discriminator:value}", or "[index]"`);
116
+ };
117
+ const findMemberByRefName = (union, refName) => union.members.find(member => member.isRef() && member.toRefName() === refName);
@@ -1,6 +1,7 @@
1
1
  import "../../_dnt.polyfills.js";
2
+ import type { SchemaPath } from '../../types/SchemaPath.js';
2
3
  import type { OasRef } from '../ref/Ref.js';
3
- import type { ToJsonSchemaOptions } from '../schema/Schema.js';
4
+ import type { OasSchema, ToJsonSchemaOptions } from '../schema/Schema.js';
4
5
  import type { OpenAPIV3 } from 'openapi-types';
5
6
  import { OasBase } from '../../types/OasBase.js';
6
7
  import type { ParseContextType } from '../../context/parseTypes.js';
@@ -103,6 +104,7 @@ export declare class OasString<Nullable extends boolean | undefined = boolean |
103
104
  deprecated: boolean | undefined;
104
105
  constructor(fields?: StringFields<Nullable>, context?: ParseContextType);
105
106
  isRef(): this is OasRef<'schema'>;
107
+ traverse(path: SchemaPath): OasSchema | OasRef<'schema'>;
106
108
  resolve(): OasString<Nullable>;
107
109
  resolveOnce(): OasString<Nullable>;
108
110
  toJsonSchema(options?: ToJsonSchemaOptions): OpenAPIV3.NonArraySchemaObject;
@@ -1 +1 @@
1
- {"version":3,"file":"String.d.ts","sourceRoot":"","sources":["../../../src/oas/string/String.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE;;;;GAIG;AACH,MAAM,MAAM,YAAY,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC/D,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,mCAAmC;IACnC,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAChF,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,mCAAmC;IACnC,KAAK,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;IACpF,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,mCAAmC;IACnC,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAChF,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,uCAAuC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,uCAAuC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,CAAA;AAED,qBAAa,SAAS,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAE,SAAQ,OAAO;IAChG;;;OAGG;IACH,OAAO,EAAG,QAAQ,CAAS;IAC3B;;OAEG;IACH,IAAI,EAAG,QAAQ,CAAS;IACxB;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB;;OAEG;IACH,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B;;OAEG;IACH,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;IACnF;;OAEG;IACH,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B;;OAEG;IACH,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC9B,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IACpD,gCAAgC;IAChC,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC/E;;OAEG;IACH,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B;;OAEG;IACH,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC/E;;OAEG;IACH,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B;;OAEG;IACH,SAAS,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B;;OAEG;IACH,UAAU,EAAE,OAAO,GAAG,SAAS,CAAA;gBACnB,MAAM,GAAE,YAAY,CAAC,QAAQ,CAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAkB3E,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC;IAIjC,OAAO,IAAI,SAAS,CAAC,QAAQ,CAAC;IAI9B,WAAW,IAAI,SAAS,CAAC,QAAQ,CAAC;IAKlC,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC,oBAAoB;CAiB5E"}
1
+ {"version":3,"file":"String.d.ts","sourceRoot":"","sources":["../../../src/oas/string/String.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OasString = void 0;
4
4
  require("../../_dnt.polyfills.js");
5
+ const traverseSchema_js_1 = require("../schemaPath/traverseSchema.js");
5
6
  const OasBase_js_1 = require("../../types/OasBase.js");
6
7
  class OasString extends OasBase_js_1.OasBase {
7
8
  constructor(fields = {}, context) {
@@ -165,6 +166,9 @@ class OasString extends OasBase_js_1.OasBase {
165
166
  isRef() {
166
167
  return false;
167
168
  }
169
+ traverse(path) {
170
+ return (0, traverseSchema_js_1.traverseSchema)(this, path);
171
+ }
168
172
  resolve() {
169
173
  return this;
170
174
  }
@@ -1,4 +1,6 @@
1
+ import type { SchemaPath } from '../../types/SchemaPath.js';
1
2
  import type { OasDiscriminator } from '../discriminator/Discriminator.js';
3
+ import type { OasExternalDocs } from '../externalDocs/ExternalDocs.js';
2
4
  import type { OasSchema } from '../schema/Schema.js';
3
5
  import type { OasRef } from '../ref/Ref.js';
4
6
  import type { ToJsonSchemaOptions } from '../schema/Schema.js';
@@ -13,6 +15,8 @@ export type UnionFields = {
13
15
  title?: string;
14
16
  /** A description of the union type */
15
17
  description?: string;
18
+ /** External documentation for the union type */
19
+ externalDocs?: OasExternalDocs | undefined;
16
20
  /** Whether the union value can be null */
17
21
  nullable?: boolean;
18
22
  /** Discriminator object for creating tagged unions */
@@ -156,6 +160,10 @@ export declare class OasUnion extends OasBase {
156
160
  * A description of the union.
157
161
  */
158
162
  description: string | undefined;
163
+ /**
164
+ * External documentation for the union.
165
+ */
166
+ externalDocs: OasExternalDocs | undefined;
159
167
  /**
160
168
  * Indicates whether value can be null.
161
169
  */
@@ -180,6 +188,7 @@ export declare class OasUnion extends OasBase {
180
188
  default?: unknown;
181
189
  constructor(fields: UnionFields, context?: ParseContextType);
182
190
  isRef(): this is OasRef<'schema'>;
191
+ traverse(path: SchemaPath): OasSchema | OasRef<'schema'>;
183
192
  resolve(): OasUnion;
184
193
  resolveOnce(): OasUnion;
185
194
  toJsonSchema(options: ToJsonSchemaOptions): OpenAPIV3.NonArraySchemaObject;