@skmtc/core 0.18.1 → 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 (482) 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 +25 -4
  11. package/esm/context/GenerateContext.d.ts.map +1 -1
  12. package/esm/context/GenerateContext.js +135 -70
  13. package/esm/context/ParseIssue.d.ts +1 -1
  14. package/esm/context/RenderContext.d.ts +2 -6
  15. package/esm/context/RenderContext.d.ts.map +1 -1
  16. package/esm/context/RenderContext.js +4 -14
  17. package/esm/context/generateTypes.d.ts +35 -8
  18. package/esm/context/generateTypes.d.ts.map +1 -1
  19. 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
  20. package/esm/deps/jsr.io/@std/internal/1.0.14/_os.d.ts.map +1 -0
  21. package/esm/deps/jsr.io/@std/internal/1.0.14/_os.js +14 -0
  22. package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts.map +1 -1
  23. package/esm/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
  24. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts.map +1 -1
  25. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.js +1 -1
  26. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts.map +1 -1
  27. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.js +1 -1
  28. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts.map +1 -1
  29. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.js +1 -1
  30. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts.map +1 -1
  31. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.js +1 -1
  32. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts.map +1 -1
  33. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.js +1 -1
  34. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts.map +1 -1
  35. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.js +2 -2
  36. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts.map +1 -1
  37. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.js +2 -2
  38. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts.map +1 -1
  39. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.js +1 -1
  40. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts.map +1 -1
  41. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.js +1 -1
  42. 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
  43. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.js +1 -1
  44. 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
  45. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.js +1 -1
  46. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts.map +1 -1
  47. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.js +1 -1
  48. 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
  49. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.js +1 -1
  50. 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
  51. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.js +1 -1
  52. 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
  53. package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.js +1 -1
  54. package/esm/dsl/CodeFileBase.d.ts +57 -24
  55. package/esm/dsl/CodeFileBase.d.ts.map +1 -1
  56. package/esm/dsl/CodeFileBase.js +35 -53
  57. package/esm/dsl/FileBase.d.ts +21 -25
  58. package/esm/dsl/FileBase.d.ts.map +1 -1
  59. package/esm/dsl/FileBase.js +20 -29
  60. package/esm/dsl/GeneratorKeys.d.ts +19 -19
  61. package/esm/dsl/GeneratorKeys.d.ts.map +1 -1
  62. package/esm/dsl/GeneratorKeys.js +6 -5
  63. package/esm/dsl/IdentifierBase.d.ts +19 -5
  64. package/esm/dsl/IdentifierBase.d.ts.map +1 -1
  65. package/esm/dsl/IdentifierBase.js +21 -5
  66. package/esm/dsl/IdentifierType.d.ts +8 -14
  67. package/esm/dsl/IdentifierType.d.ts.map +1 -1
  68. package/esm/dsl/Lang.d.ts +18 -38
  69. package/esm/dsl/Lang.d.ts.map +1 -1
  70. package/esm/dsl/MarkdownFile.d.ts +55 -0
  71. package/esm/dsl/MarkdownFile.d.ts.map +1 -0
  72. package/esm/dsl/MarkdownFile.js +58 -0
  73. package/esm/dsl/model/ModelDriver.d.ts +3 -1
  74. package/esm/dsl/model/ModelDriver.d.ts.map +1 -1
  75. package/esm/dsl/model/ModelDriver.js +6 -8
  76. package/esm/dsl/model/toModelEntry.d.ts +21 -17
  77. package/esm/dsl/model/toModelEntry.d.ts.map +1 -1
  78. package/esm/dsl/model/toModelEntry.js +3 -27
  79. package/esm/dsl/model/toModelProjectionBase.d.ts +15 -15
  80. package/esm/dsl/model/toModelProjectionBase.d.ts.map +1 -1
  81. package/esm/dsl/model/types.d.ts +2 -52
  82. package/esm/dsl/model/types.d.ts.map +1 -1
  83. package/esm/dsl/operation/gql/GqlOperationDriver.d.ts +3 -1
  84. package/esm/dsl/operation/gql/GqlOperationDriver.d.ts.map +1 -1
  85. package/esm/dsl/operation/gql/GqlOperationDriver.js +12 -9
  86. package/esm/dsl/operation/gql/toGqlOperationEntry.d.ts +20 -15
  87. package/esm/dsl/operation/gql/toGqlOperationEntry.d.ts.map +1 -1
  88. package/esm/dsl/operation/gql/toGqlOperationEntry.js +3 -25
  89. package/esm/dsl/operation/gql/toGqlOperationProjectionBase.d.ts +11 -10
  90. package/esm/dsl/operation/gql/toGqlOperationProjectionBase.d.ts.map +1 -1
  91. package/esm/dsl/operation/gql/types.d.ts +1 -33
  92. package/esm/dsl/operation/gql/types.d.ts.map +1 -1
  93. package/esm/dsl/operation/oas/OasOperationDriver.d.ts +3 -1
  94. package/esm/dsl/operation/oas/OasOperationDriver.d.ts.map +1 -1
  95. package/esm/dsl/operation/oas/OasOperationDriver.js +12 -9
  96. package/esm/dsl/operation/oas/toOasOperationEntry.d.ts +21 -17
  97. package/esm/dsl/operation/oas/toOasOperationEntry.d.ts.map +1 -1
  98. package/esm/dsl/operation/oas/toOasOperationEntry.js +3 -32
  99. package/esm/dsl/operation/oas/toOasOperationProjectionBase.d.ts +11 -10
  100. package/esm/dsl/operation/oas/toOasOperationProjectionBase.d.ts.map +1 -1
  101. package/esm/dsl/operation/oas/types.d.ts +1 -43
  102. package/esm/dsl/operation/oas/types.d.ts.map +1 -1
  103. package/esm/dsl/webhook/WebhookDriver.d.ts +3 -1
  104. package/esm/dsl/webhook/WebhookDriver.d.ts.map +1 -1
  105. package/esm/dsl/webhook/WebhookDriver.js +12 -9
  106. package/esm/dsl/webhook/toWebhookEntry.d.ts +21 -16
  107. package/esm/dsl/webhook/toWebhookEntry.d.ts.map +1 -1
  108. package/esm/dsl/webhook/toWebhookEntry.js +3 -32
  109. package/esm/dsl/webhook/toWebhookProjectionBase.d.ts +11 -10
  110. package/esm/dsl/webhook/toWebhookProjectionBase.d.ts.map +1 -1
  111. package/esm/dsl/webhook/types.d.ts +1 -36
  112. package/esm/dsl/webhook/types.d.ts.map +1 -1
  113. package/esm/enrichments/toEnrichmentDescriptor.d.ts +72 -27
  114. package/esm/enrichments/toEnrichmentDescriptor.d.ts.map +1 -1
  115. package/esm/enrichments/toEnrichmentDescriptor.js +57 -31
  116. package/esm/enrichments/validateConfig.d.ts +1 -1
  117. package/esm/enrichments/validateConfig.js +2 -2
  118. package/esm/helpers/isImported.js +1 -1
  119. package/esm/helpers/toResolvedArtifactPath.js +1 -1
  120. package/esm/mod.d.ts +7 -1
  121. package/esm/mod.d.ts.map +1 -1
  122. package/esm/mod.js +7 -1
  123. package/esm/oas/array/Array.d.ts +2 -0
  124. package/esm/oas/array/Array.d.ts.map +1 -1
  125. package/esm/oas/array/Array.js +4 -0
  126. package/esm/oas/boolean/Boolean.d.ts +3 -1
  127. package/esm/oas/boolean/Boolean.d.ts.map +1 -1
  128. package/esm/oas/boolean/Boolean.js +4 -0
  129. package/esm/oas/components/Components.d.ts +5 -0
  130. package/esm/oas/components/Components.d.ts.map +1 -1
  131. package/esm/oas/components/Components.js +6 -1
  132. package/esm/oas/integer/Integer.d.ts +3 -1
  133. package/esm/oas/integer/Integer.d.ts.map +1 -1
  134. package/esm/oas/integer/Integer.js +4 -0
  135. package/esm/oas/link/Link.d.ts +68 -0
  136. package/esm/oas/link/Link.d.ts.map +1 -0
  137. package/esm/oas/link/Link.js +107 -0
  138. package/esm/oas/number/Number.d.ts +3 -1
  139. package/esm/oas/number/Number.d.ts.map +1 -1
  140. package/esm/oas/number/Number.js +4 -0
  141. package/esm/oas/object/Object.d.ts +9 -0
  142. package/esm/oas/object/Object.d.ts.map +1 -1
  143. package/esm/oas/object/Object.js +14 -0
  144. package/esm/oas/operation/Operation.d.ts +15 -0
  145. package/esm/oas/operation/Operation.d.ts.map +1 -1
  146. package/esm/oas/operation/Operation.js +33 -0
  147. package/esm/oas/ref/Ref.d.ts +23 -1
  148. package/esm/oas/ref/Ref.d.ts.map +1 -1
  149. package/esm/oas/ref/Ref.js +32 -0
  150. package/esm/oas/ref/ref-types.d.ts +18 -1
  151. package/esm/oas/ref/ref-types.d.ts.map +1 -1
  152. package/esm/oas/ref/ref-types.js +12 -1
  153. package/esm/oas/response/Response.d.ts +4 -0
  154. package/esm/oas/response/Response.d.ts.map +1 -1
  155. package/esm/oas/response/Response.js +7 -0
  156. package/esm/oas/schemaPath/traverseSchema.d.ts +31 -0
  157. package/esm/oas/schemaPath/traverseSchema.d.ts.map +1 -0
  158. package/esm/oas/schemaPath/traverseSchema.js +113 -0
  159. package/esm/oas/string/String.d.ts +3 -1
  160. package/esm/oas/string/String.d.ts.map +1 -1
  161. package/esm/oas/string/String.js +4 -0
  162. package/esm/oas/union/Union.d.ts +9 -0
  163. package/esm/oas/union/Union.d.ts.map +1 -1
  164. package/esm/oas/union/Union.js +14 -0
  165. package/esm/oas/unknown/Unknown.d.ts +3 -1
  166. package/esm/oas/unknown/Unknown.d.ts.map +1 -1
  167. package/esm/oas/unknown/Unknown.js +4 -0
  168. package/esm/parse/v3-0/components/toComponentsV3.d.ts.map +1 -1
  169. package/esm/parse/v3-0/components/toComponentsV3.js +3 -1
  170. package/esm/parse/v3-0/link/toLinksV3.d.ts +17 -0
  171. package/esm/parse/v3-0/link/toLinksV3.d.ts.map +1 -0
  172. package/esm/parse/v3-0/link/toLinksV3.js +40 -0
  173. package/esm/parse/v3-0/object/toObject.d.ts.map +1 -1
  174. package/esm/parse/v3-0/object/toObject.js +3 -1
  175. package/esm/parse/v3-0/response/toResponseV3.d.ts.map +1 -1
  176. package/esm/parse/v3-0/response/toResponseV3.js +4 -1
  177. package/esm/parse/v3-0/union/toUnion.d.ts.map +1 -1
  178. package/esm/parse/v3-0/union/toUnion.js +3 -1
  179. package/esm/parse/v3-1/components/toComponentsV3.d.ts.map +1 -1
  180. package/esm/parse/v3-1/components/toComponentsV3.js +3 -1
  181. package/esm/parse/v3-1/link/toLinksV3.d.ts +17 -0
  182. package/esm/parse/v3-1/link/toLinksV3.d.ts.map +1 -0
  183. package/esm/parse/v3-1/link/toLinksV3.js +40 -0
  184. package/esm/parse/v3-1/object/toObject.d.ts.map +1 -1
  185. package/esm/parse/v3-1/object/toObject.js +3 -1
  186. package/esm/parse/v3-1/response/toResponseV3.d.ts.map +1 -1
  187. package/esm/parse/v3-1/response/toResponseV3.js +4 -1
  188. package/esm/parse/v3-1/union/toUnion.d.ts.map +1 -1
  189. package/esm/parse/v3-1/union/toUnion.js +3 -1
  190. package/esm/run/toArtifacts.d.ts +8 -1
  191. package/esm/run/toArtifacts.d.ts.map +1 -1
  192. package/esm/run/toArtifacts.js +5 -5
  193. package/esm/run/toInspection.d.ts +8 -0
  194. package/esm/run/toInspection.d.ts.map +1 -0
  195. package/esm/run/toInspection.js +78 -0
  196. package/esm/types/Enrichments.d.ts +19 -8
  197. package/esm/types/Enrichments.d.ts.map +1 -1
  198. package/esm/types/Enrichments.js +4 -3
  199. package/esm/types/GeneratorType.d.ts +5 -5
  200. package/esm/types/GeneratorType.d.ts.map +1 -1
  201. package/esm/types/Manifest.d.ts +1 -2
  202. package/esm/types/Manifest.d.ts.map +1 -1
  203. package/esm/types/Manifest.js +1 -2
  204. package/esm/types/ModuleSelect.d.ts +81 -0
  205. package/esm/types/ModuleSelect.d.ts.map +1 -0
  206. package/esm/types/ModuleSelect.js +63 -0
  207. package/esm/types/Preview.d.ts +4 -27
  208. package/esm/types/Preview.d.ts.map +1 -1
  209. package/esm/types/Preview.js +4 -25
  210. package/esm/types/SchemaPath.d.ts +17 -0
  211. package/esm/types/SchemaPath.d.ts.map +1 -0
  212. package/esm/types/SchemaPath.js +9 -0
  213. package/esm/types/Settings.d.ts +8 -0
  214. package/esm/types/Settings.d.ts.map +1 -1
  215. package/esm/types/Settings.js +1 -0
  216. package/esm/types/SkmtcDocument.d.ts +1 -1
  217. package/esm/types/SupportedSubjects.d.ts +1 -1
  218. package/package.json +1 -1
  219. package/script/anchors/buildSidecar.js +1 -1
  220. package/script/anchors/postPass.d.ts +1 -1
  221. package/script/anchors/postPass.js +1 -1
  222. package/script/anchors/sidecar.d.ts +2 -2
  223. package/script/anchors/sidecar.js +1 -1
  224. package/script/context/CoreContext.d.ts +7 -1
  225. package/script/context/CoreContext.d.ts.map +1 -1
  226. package/script/context/CoreContext.js +17 -11
  227. package/script/context/GenerateContext.d.ts +25 -4
  228. package/script/context/GenerateContext.d.ts.map +1 -1
  229. package/script/context/GenerateContext.js +135 -70
  230. package/script/context/ParseIssue.d.ts +1 -1
  231. package/script/context/RenderContext.d.ts +2 -6
  232. package/script/context/RenderContext.d.ts.map +1 -1
  233. package/script/context/RenderContext.js +4 -14
  234. package/script/context/generateTypes.d.ts +35 -8
  235. package/script/context/generateTypes.d.ts.map +1 -1
  236. 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
  237. package/script/deps/jsr.io/@std/internal/1.0.14/_os.d.ts.map +1 -0
  238. package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.js +7 -5
  239. package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts.map +1 -1
  240. package/script/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
  241. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts.map +1 -1
  242. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.js +1 -1
  243. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts.map +1 -1
  244. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.js +1 -1
  245. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts.map +1 -1
  246. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.js +1 -1
  247. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts.map +1 -1
  248. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.js +1 -1
  249. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts.map +1 -1
  250. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.js +1 -1
  251. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts.map +1 -1
  252. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.js +2 -2
  253. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts.map +1 -1
  254. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.js +2 -2
  255. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts.map +1 -1
  256. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.js +1 -1
  257. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts.map +1 -1
  258. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.js +1 -1
  259. 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
  260. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.js +1 -1
  261. 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
  262. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.js +1 -1
  263. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts.map +1 -1
  264. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.js +1 -1
  265. 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
  266. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.js +1 -1
  267. 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
  268. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.js +1 -1
  269. 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
  270. package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.js +1 -1
  271. package/script/dsl/CodeFileBase.d.ts +57 -24
  272. package/script/dsl/CodeFileBase.d.ts.map +1 -1
  273. package/script/dsl/CodeFileBase.js +37 -54
  274. package/script/dsl/FileBase.d.ts +21 -25
  275. package/script/dsl/FileBase.d.ts.map +1 -1
  276. package/script/dsl/FileBase.js +20 -29
  277. package/script/dsl/GeneratorKeys.d.ts +19 -19
  278. package/script/dsl/GeneratorKeys.d.ts.map +1 -1
  279. package/script/dsl/GeneratorKeys.js +6 -5
  280. package/script/dsl/IdentifierBase.d.ts +19 -5
  281. package/script/dsl/IdentifierBase.d.ts.map +1 -1
  282. package/script/dsl/IdentifierBase.js +21 -5
  283. package/script/dsl/IdentifierType.d.ts +8 -14
  284. package/script/dsl/IdentifierType.d.ts.map +1 -1
  285. package/script/dsl/Lang.d.ts +18 -38
  286. package/script/dsl/Lang.d.ts.map +1 -1
  287. package/script/dsl/MarkdownFile.d.ts +55 -0
  288. package/script/dsl/MarkdownFile.d.ts.map +1 -0
  289. package/script/dsl/MarkdownFile.js +62 -0
  290. package/script/dsl/model/ModelDriver.d.ts +3 -1
  291. package/script/dsl/model/ModelDriver.d.ts.map +1 -1
  292. package/script/dsl/model/ModelDriver.js +6 -8
  293. package/script/dsl/model/toModelEntry.d.ts +21 -17
  294. package/script/dsl/model/toModelEntry.d.ts.map +1 -1
  295. package/script/dsl/model/toModelEntry.js +3 -63
  296. package/script/dsl/model/toModelProjectionBase.d.ts +15 -15
  297. package/script/dsl/model/toModelProjectionBase.d.ts.map +1 -1
  298. package/script/dsl/model/types.d.ts +2 -52
  299. package/script/dsl/model/types.d.ts.map +1 -1
  300. package/script/dsl/operation/gql/GqlOperationDriver.d.ts +3 -1
  301. package/script/dsl/operation/gql/GqlOperationDriver.d.ts.map +1 -1
  302. package/script/dsl/operation/gql/GqlOperationDriver.js +12 -9
  303. package/script/dsl/operation/gql/toGqlOperationEntry.d.ts +20 -15
  304. package/script/dsl/operation/gql/toGqlOperationEntry.d.ts.map +1 -1
  305. package/script/dsl/operation/gql/toGqlOperationEntry.js +3 -61
  306. package/script/dsl/operation/gql/toGqlOperationProjectionBase.d.ts +11 -10
  307. package/script/dsl/operation/gql/toGqlOperationProjectionBase.d.ts.map +1 -1
  308. package/script/dsl/operation/gql/types.d.ts +1 -33
  309. package/script/dsl/operation/gql/types.d.ts.map +1 -1
  310. package/script/dsl/operation/oas/OasOperationDriver.d.ts +3 -1
  311. package/script/dsl/operation/oas/OasOperationDriver.d.ts.map +1 -1
  312. package/script/dsl/operation/oas/OasOperationDriver.js +12 -9
  313. package/script/dsl/operation/oas/toOasOperationEntry.d.ts +21 -17
  314. package/script/dsl/operation/oas/toOasOperationEntry.d.ts.map +1 -1
  315. package/script/dsl/operation/oas/toOasOperationEntry.js +3 -68
  316. package/script/dsl/operation/oas/toOasOperationProjectionBase.d.ts +11 -10
  317. package/script/dsl/operation/oas/toOasOperationProjectionBase.d.ts.map +1 -1
  318. package/script/dsl/operation/oas/types.d.ts +1 -43
  319. package/script/dsl/operation/oas/types.d.ts.map +1 -1
  320. package/script/dsl/webhook/WebhookDriver.d.ts +3 -1
  321. package/script/dsl/webhook/WebhookDriver.d.ts.map +1 -1
  322. package/script/dsl/webhook/WebhookDriver.js +12 -9
  323. package/script/dsl/webhook/toWebhookEntry.d.ts +21 -16
  324. package/script/dsl/webhook/toWebhookEntry.d.ts.map +1 -1
  325. package/script/dsl/webhook/toWebhookEntry.js +3 -68
  326. package/script/dsl/webhook/toWebhookProjectionBase.d.ts +11 -10
  327. package/script/dsl/webhook/toWebhookProjectionBase.d.ts.map +1 -1
  328. package/script/dsl/webhook/types.d.ts +1 -36
  329. package/script/dsl/webhook/types.d.ts.map +1 -1
  330. package/script/enrichments/toEnrichmentDescriptor.d.ts +72 -27
  331. package/script/enrichments/toEnrichmentDescriptor.d.ts.map +1 -1
  332. package/script/enrichments/toEnrichmentDescriptor.js +57 -31
  333. package/script/enrichments/validateConfig.d.ts +1 -1
  334. package/script/enrichments/validateConfig.js +2 -2
  335. package/script/helpers/isImported.js +1 -1
  336. package/script/helpers/toResolvedArtifactPath.js +1 -1
  337. package/script/mod.d.ts +7 -1
  338. package/script/mod.d.ts.map +1 -1
  339. package/script/mod.js +7 -1
  340. package/script/oas/array/Array.d.ts +2 -0
  341. package/script/oas/array/Array.d.ts.map +1 -1
  342. package/script/oas/array/Array.js +4 -0
  343. package/script/oas/boolean/Boolean.d.ts +3 -1
  344. package/script/oas/boolean/Boolean.d.ts.map +1 -1
  345. package/script/oas/boolean/Boolean.js +4 -0
  346. package/script/oas/components/Components.d.ts +5 -0
  347. package/script/oas/components/Components.d.ts.map +1 -1
  348. package/script/oas/components/Components.js +6 -1
  349. package/script/oas/integer/Integer.d.ts +3 -1
  350. package/script/oas/integer/Integer.d.ts.map +1 -1
  351. package/script/oas/integer/Integer.js +4 -0
  352. package/script/oas/link/Link.d.ts +68 -0
  353. package/script/oas/link/Link.d.ts.map +1 -0
  354. package/script/oas/link/Link.js +111 -0
  355. package/script/oas/number/Number.d.ts +3 -1
  356. package/script/oas/number/Number.d.ts.map +1 -1
  357. package/script/oas/number/Number.js +4 -0
  358. package/script/oas/object/Object.d.ts +9 -0
  359. package/script/oas/object/Object.d.ts.map +1 -1
  360. package/script/oas/object/Object.js +14 -0
  361. package/script/oas/operation/Operation.d.ts +15 -0
  362. package/script/oas/operation/Operation.d.ts.map +1 -1
  363. package/script/oas/operation/Operation.js +33 -0
  364. package/script/oas/ref/Ref.d.ts +23 -1
  365. package/script/oas/ref/Ref.d.ts.map +1 -1
  366. package/script/oas/ref/Ref.js +32 -0
  367. package/script/oas/ref/ref-types.d.ts +18 -1
  368. package/script/oas/ref/ref-types.d.ts.map +1 -1
  369. package/script/oas/ref/ref-types.js +13 -2
  370. package/script/oas/response/Response.d.ts +4 -0
  371. package/script/oas/response/Response.d.ts.map +1 -1
  372. package/script/oas/response/Response.js +7 -0
  373. package/script/oas/schemaPath/traverseSchema.d.ts +31 -0
  374. package/script/oas/schemaPath/traverseSchema.d.ts.map +1 -0
  375. package/script/oas/schemaPath/traverseSchema.js +117 -0
  376. package/script/oas/string/String.d.ts +3 -1
  377. package/script/oas/string/String.d.ts.map +1 -1
  378. package/script/oas/string/String.js +4 -0
  379. package/script/oas/union/Union.d.ts +9 -0
  380. package/script/oas/union/Union.d.ts.map +1 -1
  381. package/script/oas/union/Union.js +14 -0
  382. package/script/oas/unknown/Unknown.d.ts +3 -1
  383. package/script/oas/unknown/Unknown.d.ts.map +1 -1
  384. package/script/oas/unknown/Unknown.js +4 -0
  385. package/script/parse/v3-0/components/toComponentsV3.d.ts.map +1 -1
  386. package/script/parse/v3-0/components/toComponentsV3.js +3 -1
  387. package/script/parse/v3-0/link/toLinksV3.d.ts +17 -0
  388. package/script/parse/v3-0/link/toLinksV3.d.ts.map +1 -0
  389. package/script/parse/v3-0/link/toLinksV3.js +44 -0
  390. package/script/parse/v3-0/object/toObject.d.ts.map +1 -1
  391. package/script/parse/v3-0/object/toObject.js +3 -1
  392. package/script/parse/v3-0/response/toResponseV3.d.ts.map +1 -1
  393. package/script/parse/v3-0/response/toResponseV3.js +4 -1
  394. package/script/parse/v3-0/union/toUnion.d.ts.map +1 -1
  395. package/script/parse/v3-0/union/toUnion.js +3 -1
  396. package/script/parse/v3-1/components/toComponentsV3.d.ts.map +1 -1
  397. package/script/parse/v3-1/components/toComponentsV3.js +3 -1
  398. package/script/parse/v3-1/link/toLinksV3.d.ts +17 -0
  399. package/script/parse/v3-1/link/toLinksV3.d.ts.map +1 -0
  400. package/script/parse/v3-1/link/toLinksV3.js +44 -0
  401. package/script/parse/v3-1/object/toObject.d.ts.map +1 -1
  402. package/script/parse/v3-1/object/toObject.js +3 -1
  403. package/script/parse/v3-1/response/toResponseV3.d.ts.map +1 -1
  404. package/script/parse/v3-1/response/toResponseV3.js +4 -1
  405. package/script/parse/v3-1/union/toUnion.d.ts.map +1 -1
  406. package/script/parse/v3-1/union/toUnion.js +3 -1
  407. package/script/run/toArtifacts.d.ts +8 -1
  408. package/script/run/toArtifacts.d.ts.map +1 -1
  409. package/script/run/toArtifacts.js +5 -5
  410. package/script/run/toInspection.d.ts +8 -0
  411. package/script/run/toInspection.d.ts.map +1 -0
  412. package/script/run/toInspection.js +82 -0
  413. package/script/types/Enrichments.d.ts +19 -8
  414. package/script/types/Enrichments.d.ts.map +1 -1
  415. package/script/types/Enrichments.js +5 -4
  416. package/script/types/GeneratorType.d.ts +5 -5
  417. package/script/types/GeneratorType.d.ts.map +1 -1
  418. package/script/types/Manifest.d.ts +1 -2
  419. package/script/types/Manifest.d.ts.map +1 -1
  420. package/script/types/Manifest.js +0 -1
  421. package/script/types/ModuleSelect.d.ts +81 -0
  422. package/script/types/ModuleSelect.d.ts.map +1 -0
  423. package/script/types/ModuleSelect.js +101 -0
  424. package/script/types/Preview.d.ts +4 -27
  425. package/script/types/Preview.d.ts.map +1 -1
  426. package/script/types/Preview.js +5 -26
  427. package/script/types/SchemaPath.d.ts +17 -0
  428. package/script/types/SchemaPath.d.ts.map +1 -0
  429. package/script/types/{AccessorPath.js → SchemaPath.js} +7 -7
  430. package/script/types/Settings.d.ts +8 -0
  431. package/script/types/Settings.d.ts.map +1 -1
  432. package/script/types/Settings.js +1 -0
  433. package/script/types/SkmtcDocument.d.ts +1 -1
  434. package/script/types/SupportedSubjects.d.ts +1 -1
  435. package/esm/deps/jsr.io/@std/internal/1.0.13/_os.d.ts.map +0 -1
  436. package/esm/deps/jsr.io/@std/internal/1.0.13/_os.js +0 -12
  437. package/esm/types/AccessorPath.d.ts +0 -17
  438. package/esm/types/AccessorPath.d.ts.map +0 -1
  439. package/esm/types/AccessorPath.js +0 -9
  440. package/script/deps/jsr.io/@std/internal/1.0.13/_os.d.ts.map +0 -1
  441. package/script/types/AccessorPath.d.ts +0 -17
  442. package/script/types/AccessorPath.d.ts.map +0 -1
  443. /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
  444. /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
  445. /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.d.ts +0 -0
  446. /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts +0 -0
  447. /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.js +0 -0
  448. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts +0 -0
  449. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts +0 -0
  450. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts +0 -0
  451. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts +0 -0
  452. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts +0 -0
  453. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts +0 -0
  454. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts +0 -0
  455. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts +0 -0
  456. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts +0 -0
  457. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.d.ts +0 -0
  458. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.d.ts +0 -0
  459. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts +0 -0
  460. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.d.ts +0 -0
  461. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.d.ts +0 -0
  462. /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.d.ts +0 -0
  463. /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
  464. /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
  465. /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.d.ts +0 -0
  466. /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts +0 -0
  467. /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.js +0 -0
  468. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts +0 -0
  469. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts +0 -0
  470. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts +0 -0
  471. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts +0 -0
  472. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts +0 -0
  473. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts +0 -0
  474. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts +0 -0
  475. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts +0 -0
  476. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts +0 -0
  477. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.d.ts +0 -0
  478. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.d.ts +0 -0
  479. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts +0 -0
  480. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.d.ts +0 -0
  481. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.d.ts +0 -0
  482. /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.d.ts +0 -0
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Represents a Link Object in the OpenAPI Specification.
3
+ *
4
+ * A link describes a possible design-time relationship from a response to another
5
+ * operation — for example, how the `id` in a create response can be used as the
6
+ * path parameter of a subsequent fetch. It names the target operation (by
7
+ * `operationId` or `operationRef`) and how to populate its parameters and request
8
+ * body from the current response.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import { OasLink } from '@skmtc/core';
13
+ *
14
+ * const getUserByUserId = new OasLink({
15
+ * operationId: 'getUser',
16
+ * parameters: { userId: '$response.body#/id' },
17
+ * description: 'The `id` of the created user is the `userId` of GET /users/{userId}'
18
+ * });
19
+ * ```
20
+ */
21
+ export class OasLink {
22
+ constructor(fields) {
23
+ Object.defineProperty(this, "oasType", {
24
+ enumerable: true,
25
+ configurable: true,
26
+ writable: true,
27
+ value: 'link'
28
+ });
29
+ /** A URI reference to a target operation */
30
+ Object.defineProperty(this, "operationRef", {
31
+ enumerable: true,
32
+ configurable: true,
33
+ writable: true,
34
+ value: void 0
35
+ });
36
+ /** The `operationId` of a target operation */
37
+ Object.defineProperty(this, "operationId", {
38
+ enumerable: true,
39
+ configurable: true,
40
+ writable: true,
41
+ value: void 0
42
+ });
43
+ /** Parameter values or runtime expressions for the target operation */
44
+ Object.defineProperty(this, "parameters", {
45
+ enumerable: true,
46
+ configurable: true,
47
+ writable: true,
48
+ value: void 0
49
+ });
50
+ /** The request body value or runtime expression for the target operation */
51
+ Object.defineProperty(this, "requestBody", {
52
+ enumerable: true,
53
+ configurable: true,
54
+ writable: true,
55
+ value: void 0
56
+ });
57
+ /** A description of the link */
58
+ Object.defineProperty(this, "description", {
59
+ enumerable: true,
60
+ configurable: true,
61
+ writable: true,
62
+ value: void 0
63
+ });
64
+ /** A server to use for the target operation */
65
+ Object.defineProperty(this, "server", {
66
+ enumerable: true,
67
+ configurable: true,
68
+ writable: true,
69
+ value: void 0
70
+ });
71
+ /** Specification Extension fields */
72
+ Object.defineProperty(this, "extensionFields", {
73
+ enumerable: true,
74
+ configurable: true,
75
+ writable: true,
76
+ value: void 0
77
+ });
78
+ this.operationRef = fields.operationRef;
79
+ this.operationId = fields.operationId;
80
+ this.parameters = fields.parameters;
81
+ this.requestBody = fields.requestBody;
82
+ this.description = fields.description;
83
+ this.server = fields.server;
84
+ this.extensionFields = fields.extensionFields;
85
+ }
86
+ /** Returns true if object is a reference */
87
+ isRef() {
88
+ return false;
89
+ }
90
+ /** Returns itself */
91
+ resolve() {
92
+ return this;
93
+ }
94
+ resolveOnce() {
95
+ return this;
96
+ }
97
+ toJsonSchema(options) {
98
+ return {
99
+ operationRef: this.operationRef,
100
+ operationId: this.operationId,
101
+ parameters: this.parameters,
102
+ requestBody: this.requestBody,
103
+ description: this.description,
104
+ server: this.server?.toJsonSchema(options)
105
+ };
106
+ }
107
+ }
@@ -1,7 +1,8 @@
1
1
  import "../../_dnt.polyfills.js";
2
+ import type { SchemaPath } from '../../types/SchemaPath.js';
2
3
  import type { OasRef } from '../ref/Ref.js';
3
4
  import type { OpenAPIV3 } from 'openapi-types';
4
- import type { ToJsonSchemaOptions } from '../schema/Schema.js';
5
+ import type { OasSchema, ToJsonSchemaOptions } from '../schema/Schema.js';
5
6
  import { OasBase } from '../../types/OasBase.js';
6
7
  import type { ParseContextType } from '../../context/parseTypes.js';
7
8
  /**
@@ -117,6 +118,7 @@ export declare class OasNumber<Nullable extends boolean | undefined = boolean |
117
118
  deprecated: boolean | undefined;
118
119
  constructor(fields?: NumberFields<Nullable>, context?: ParseContextType);
119
120
  isRef(): this is OasRef<'schema'>;
121
+ traverse(path: SchemaPath): OasSchema | OasRef<'schema'>;
120
122
  resolve(): OasNumber<Nullable>;
121
123
  resolveOnce(): OasNumber<Nullable>;
122
124
  toJsonSchema(options?: ToJsonSchemaOptions): OpenAPIV3.NonArraySchemaObject;
@@ -1 +1 @@
1
- {"version":3,"file":"Number.d.ts","sourceRoot":"","sources":["../../../src/oas/number/Number.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Number.d.ts","sourceRoot":"","sources":["../../../src/oas/number/Number.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import "../../_dnt.polyfills.js";
2
+ import { traverseSchema } from '../schemaPath/traverseSchema.js';
2
3
  import { OasBase } from '../../types/OasBase.js';
3
4
  export class OasNumber extends OasBase {
4
5
  constructor(fields = {}, context) {
@@ -184,6 +185,9 @@ export class OasNumber extends OasBase {
184
185
  isRef() {
185
186
  return false;
186
187
  }
188
+ traverse(path) {
189
+ return traverseSchema(this, path);
190
+ }
187
191
  resolve() {
188
192
  return this;
189
193
  }
@@ -1,5 +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';
4
+ import type { OasExternalDocs } from '../externalDocs/ExternalDocs.js';
3
5
  import type { OasSchema, ToJsonSchemaOptions } from '../schema/Schema.js';
4
6
  import type { CustomValue } from '../../dsl/CustomValue.js';
5
7
  import type { OpenAPIV3 } from 'openapi-types';
@@ -15,6 +17,8 @@ export type OasObjectFields<Nullable extends boolean | undefined> = {
15
17
  title?: string;
16
18
  /** A description of the object */
17
19
  description?: string;
20
+ /** External documentation for the object */
21
+ externalDocs?: OasExternalDocs | undefined;
18
22
  /** Record mapping property names to their schemas */
19
23
  properties?: Record<string, OasSchema | OasRef<'schema'> | CustomValue> | undefined;
20
24
  /** Array of required property names */
@@ -156,6 +160,10 @@ export declare class OasObject<Nullable extends boolean | undefined = boolean |
156
160
  * A description of the object.
157
161
  */
158
162
  description: string | undefined;
163
+ /**
164
+ * External documentation for the object.
165
+ */
166
+ externalDocs: OasExternalDocs | undefined;
159
167
  /**
160
168
  * Indicates whether value can be null.
161
169
  */
@@ -319,6 +327,7 @@ export declare class OasObject<Nullable extends boolean | undefined = boolean |
319
327
  */
320
328
  removeProperty(name: string): OasObject;
321
329
  isRef(): this is OasRef<'schema'>;
330
+ traverse(path: SchemaPath): OasSchema | OasRef<'schema'>;
322
331
  resolve(): OasObject;
323
332
  resolveOnce(): OasObject;
324
333
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Object.d.ts","sourceRoot":"","sources":["../../../src/oas/object/Object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Object.d.ts","sourceRoot":"","sources":["../../../src/oas/object/Object.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import "../../_dnt.polyfills.js";
2
+ import { traverseSchema } from '../schemaPath/traverseSchema.js';
2
3
  import { OasBase } from '../../types/OasBase.js';
3
4
  /**
4
5
  * Represents an object schema in the OpenAPI Specification.
@@ -143,6 +144,15 @@ export class OasObject extends OasBase {
143
144
  writable: true,
144
145
  value: void 0
145
146
  });
147
+ /**
148
+ * External documentation for the object.
149
+ */
150
+ Object.defineProperty(this, "externalDocs", {
151
+ enumerable: true,
152
+ configurable: true,
153
+ writable: true,
154
+ value: void 0
155
+ });
146
156
  /**
147
157
  * Indicates whether value can be null.
148
158
  */
@@ -250,6 +260,7 @@ export class OasObject extends OasBase {
250
260
  });
251
261
  this.title = fields.title;
252
262
  this.description = fields.description;
263
+ this.externalDocs = fields.externalDocs;
253
264
  this.properties = fields.properties;
254
265
  this.required = fields.required;
255
266
  this.additionalProperties = fields.additionalProperties;
@@ -405,6 +416,9 @@ export class OasObject extends OasBase {
405
416
  isRef() {
406
417
  return false;
407
418
  }
419
+ traverse(path) {
420
+ return traverseSchema(this, path);
421
+ }
408
422
  resolve() {
409
423
  return this;
410
424
  }
@@ -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"}
@@ -1,4 +1,5 @@
1
1
  import "../../_dnt.polyfills.js";
2
+ import { traverseSchema } from '../schemaPath/traverseSchema.js';
2
3
  import { OasObject } from '../object/Object.js';
3
4
  import { toPrimaryResponseCode } from '../response/toPrimaryResponseCode.js';
4
5
  import { OasBase } from '../../types/OasBase.js';
@@ -171,6 +172,38 @@ export class OasOperation extends OasBase {
171
172
  const schema = requestBody?.content[mediaType]?.schema;
172
173
  return schema ? map({ schema, requestBody }) : undefined;
173
174
  }
175
+ /**
176
+ * Navigate into this operation's response or request body schema along an
177
+ * {@link SchemaPath}. The first segment selects the entry point —
178
+ * `'SuccessResponse'` (the 2xx response body schema) or `'RequestBody'` (the
179
+ * request body schema) — and the rest descend through object properties,
180
+ * array `items`, and union members, resolving `$ref`s on the way. See
181
+ * {@link traverseSchema}.
182
+ *
183
+ * @param path - Schema path; `path[0]` must be `'SuccessResponse'` or `'RequestBody'`.
184
+ * @param mediaType - Media type the body schema is read from (default `application/json`).
185
+ * @returns The schema at the path (may be an unresolved `$ref`).
186
+ * @throws Error on an unknown root, a missing response/request body, or a non-navigable segment.
187
+ */
188
+ traverse(path, mediaType = 'application/json') {
189
+ const [root, ...rest] = path;
190
+ let rootSchema;
191
+ switch (root) {
192
+ case 'SuccessResponse':
193
+ rootSchema = this.toSuccessResponse()?.resolve().toSchema(mediaType);
194
+ break;
195
+ case 'RequestBody':
196
+ rootSchema = this.toRequestBody(({ schema }) => schema, mediaType);
197
+ break;
198
+ default:
199
+ throw new Error(`Operation schema path must start with "SuccessResponse" or "RequestBody", got "${root}"`);
200
+ }
201
+ if (!rootSchema) {
202
+ const label = root === 'SuccessResponse' ? 'success response' : 'request body';
203
+ throw new Error(`Operation "${this.method} ${this.path}" has no ${label} schema for media type "${mediaType}"`);
204
+ }
205
+ return traverseSchema(rootSchema, rest);
206
+ }
174
207
  /**
175
208
  * Resolve all parameters and optionally filter by location
176
209
  *
@@ -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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"}
@@ -11,6 +11,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
11
11
  };
12
12
  var _OasRef_instances, _OasRef_fields, _OasRef_document, _OasRef_resolveOasOnce, _OasRef_resolveGqlOnce;
13
13
  import "../../_dnt.polyfills.js";
14
+ import { traverseSchema } from '../schemaPath/traverseSchema.js';
14
15
  import { toRefName } from '../../helpers/refFns.js';
15
16
  import { OasBase } from '../../types/OasBase.js';
16
17
  const MAX_LOOKUPS = 10;
@@ -33,6 +34,8 @@ function refTypeToPluralPath(refType) {
33
34
  return 'headers';
34
35
  case 'securityScheme':
35
36
  return 'securitySchemes';
37
+ case 'link':
38
+ return 'links';
36
39
  default: {
37
40
  const _exhaustive = refType;
38
41
  throw new Error(`Unhandled ref type: ${_exhaustive}`);
@@ -212,6 +215,33 @@ export class OasRef extends OasBase {
212
215
  toRefName() {
213
216
  return toRefName(__classPrivateFieldGet(this, _OasRef_fields, "f").$ref);
214
217
  }
218
+ /**
219
+ * Narrows this reference to a schema reference.
220
+ *
221
+ * @returns True when this reference points at a schema component.
222
+ */
223
+ isSchemaRef() {
224
+ return this.refType === 'schema';
225
+ }
226
+ /**
227
+ * Navigate an {@link SchemaPath} starting from this reference, resolving it
228
+ * to descend through. See {@link traverseSchema}.
229
+ *
230
+ * Available on every `OasRef` so `.traverse()` works on the common
231
+ * `OasSchema | OasRef<'schema'>` value (an object property, array `items`).
232
+ * Schema paths only describe schemas for now, so it throws for non-schema
233
+ * refs (response/parameter/…); {@link isSchemaRef} narrows `this`, keeping the
234
+ * delegation cast-free.
235
+ *
236
+ * @returns The schema at the path (may be an unresolved `$ref`).
237
+ * @throws Error when called on a non-schema ref.
238
+ */
239
+ traverse(path) {
240
+ if (!this.isSchemaRef()) {
241
+ throw new Error(`Schema path traversal is not yet supported for "${this.refType}" refs (only schema refs)`);
242
+ }
243
+ return traverseSchema(this, path);
244
+ }
215
245
  get $ref() {
216
246
  return __classPrivateFieldGet(this, _OasRef_fields, "f").$ref;
217
247
  }
@@ -269,6 +299,8 @@ _OasRef_fields = new WeakMap(), _OasRef_document = new WeakMap(), _OasRef_instan
269
299
  return c?.headers?.[refName];
270
300
  case 'securityScheme':
271
301
  return c?.securitySchemes?.[refName];
302
+ case 'link':
303
+ return c?.links?.[refName];
272
304
  default: {
273
305
  const _exhaustive = refType;
274
306
  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":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,gDAAgD;IAChD,OAAO,EAAE,KAAK,CAAA;IACd,0CAA0C;IAC1C,OAAO,EAAE,QAAQ,CAAA;IACjB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAM7D,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gDAAgD;IAChD,OAAO,EAAE,KAAK,CAAA;IACd,0CAA0C;IAC1C,OAAO,EAAE,UAAU,CAAA;IACnB,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,aAAa,CAAC,kBAAkB,CAMjE,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,gDAAgD;IAChD,OAAO,EAAE,KAAK,CAAA;IACd,0CAA0C;IAC1C,OAAO,EAAE,WAAW,CAAA;IACpB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAMnE,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,SAAS,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,CAAC,CAAC,aAAa,CAAC,iBAAiB,CAM/D,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,aAAa,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,CAAC,CAAC,aAAa,CAAC,qBAAqB,CAMvE,CAAA;AACF;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,QAAQ,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAM7D,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,gBAAgB,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,aAAa,CAAC,wBAAwB,CAI7E,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,aAAa,CAAC,cAAc,CAMzD,CAAA;AAUF;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAClB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,iBAAiB,GACjB,qBAAqB,GACrB,gBAAgB,GAChB,wBAAwB,GACxB,cAAc,CAAA;AAGlB;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,CAAC,CAAC,aAAa,CAAC,UAAU,CAUjD,CAAA"}
@@ -68,6 +68,16 @@ export const oasSecuritySchemeRefData = v.object({
68
68
  refType: v.literal('securityScheme'),
69
69
  $ref: v.string()
70
70
  });
71
+ /**
72
+ * Valibot schema for validating link reference data.
73
+ */
74
+ export const oasLinkRefData = v.object({
75
+ oasType: v.literal('ref'),
76
+ refType: v.literal('link'),
77
+ $ref: v.string(),
78
+ summary: v.optional(v.string()),
79
+ description: v.optional(markdown)
80
+ });
71
81
  // OasPathItemRefData
72
82
  /**
73
83
  * Valibot schema for validating any OpenAPI reference data.
@@ -82,6 +92,7 @@ export const oasRefData = v.union([
82
92
  oasExampleRefData,
83
93
  oasRequestBodyRefData,
84
94
  oasHeaderRefData,
85
- oasSecuritySchemeRefData
95
+ oasSecuritySchemeRefData,
96
+ oasLinkRefData
86
97
  // oasPathItemRefData
87
98
  ]);
@@ -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"}
@@ -204,6 +204,12 @@ export class OasResponse extends OasBase {
204
204
  writable: true,
205
205
  value: void 0
206
206
  });
207
+ Object.defineProperty(this, "links", {
208
+ enumerable: true,
209
+ configurable: true,
210
+ writable: true,
211
+ value: void 0
212
+ });
207
213
  Object.defineProperty(this, "content", {
208
214
  enumerable: true,
209
215
  configurable: true,
@@ -218,6 +224,7 @@ export class OasResponse extends OasBase {
218
224
  });
219
225
  this.description = fields.description;
220
226
  this.headers = fields.headers;
227
+ this.links = fields.links;
221
228
  this.content = fields.content;
222
229
  this.extensionFields = fields.extensionFields;
223
230
  }
@@ -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"}