@skmtc/core 0.0.940 → 0.0.942

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 (255) hide show
  1. package/esm/context/CoreContext.d.ts +6 -32
  2. package/esm/context/CoreContext.d.ts.map +1 -1
  3. package/esm/context/CoreContext.js +15 -60
  4. package/esm/context/GenerateContext.d.ts +4 -15
  5. package/esm/context/GenerateContext.d.ts.map +1 -1
  6. package/esm/context/GenerateContext.js +16 -35
  7. package/esm/context/ParseContext.d.ts +5 -9
  8. package/esm/context/ParseContext.d.ts.map +1 -1
  9. package/esm/context/ParseContext.js +11 -18
  10. package/esm/context/RenderContext.d.ts +6 -209
  11. package/esm/context/RenderContext.d.ts.map +1 -1
  12. package/esm/context/RenderContext.js +8 -215
  13. package/esm/context/ResultsHandler.d.ts +0 -67
  14. package/esm/context/ResultsHandler.d.ts.map +1 -1
  15. package/esm/context/ResultsHandler.js +2 -68
  16. package/esm/context/StackTrail.d.ts +2 -0
  17. package/esm/context/StackTrail.d.ts.map +1 -1
  18. package/esm/context/StackTrail.js +26 -0
  19. package/esm/context/generateTypes.d.ts +2 -2
  20. package/esm/context/generateTypes.d.ts.map +1 -1
  21. package/esm/context/parseTypes.d.ts +7 -2
  22. package/esm/context/parseTypes.d.ts.map +1 -1
  23. package/esm/oas/_helpers/parseEnum.d.ts +3 -1
  24. package/esm/oas/_helpers/parseEnum.d.ts.map +1 -1
  25. package/esm/oas/_helpers/parseEnum.js +2 -1
  26. package/esm/oas/_helpers/parseNullable.d.ts +4 -1
  27. package/esm/oas/_helpers/parseNullable.d.ts.map +1 -1
  28. package/esm/oas/_helpers/parseNullable.js +2 -1
  29. package/esm/oas/array/toArray.d.ts +5 -2
  30. package/esm/oas/array/toArray.d.ts.map +1 -1
  31. package/esm/oas/array/toArray.js +16 -9
  32. package/esm/oas/boolean/toBoolean.d.ts +5 -2
  33. package/esm/oas/boolean/toBoolean.d.ts.map +1 -1
  34. package/esm/oas/boolean/toBoolean.js +16 -8
  35. package/esm/oas/components/toComponentsV3.d.ts +3 -1
  36. package/esm/oas/components/toComponentsV3.d.ts.map +1 -1
  37. package/esm/oas/components/toComponentsV3.js +9 -8
  38. package/esm/oas/contact/toContactV3.d.ts +2 -1
  39. package/esm/oas/contact/toContactV3.d.ts.map +1 -1
  40. package/esm/oas/contact/toContactV3.js +2 -1
  41. package/esm/oas/discriminator/toDiscriminatorV3.d.ts +3 -1
  42. package/esm/oas/discriminator/toDiscriminatorV3.d.ts.map +1 -1
  43. package/esm/oas/discriminator/toDiscriminatorV3.js +7 -2
  44. package/esm/oas/document/toDocumentFieldsV3.d.ts +3 -1
  45. package/esm/oas/document/toDocumentFieldsV3.d.ts.map +1 -1
  46. package/esm/oas/document/toDocumentFieldsV3.js +10 -9
  47. package/esm/oas/example/toExamplesV3.d.ts +10 -2
  48. package/esm/oas/example/toExamplesV3.d.ts.map +1 -1
  49. package/esm/oas/example/toExamplesV3.js +8 -7
  50. package/esm/oas/externalDocs/toExternalDocs.d.ts +3 -1
  51. package/esm/oas/externalDocs/toExternalDocs.d.ts.map +1 -1
  52. package/esm/oas/externalDocs/toExternalDocs.js +1 -1
  53. package/esm/oas/header/toHeadersV3.d.ts +3 -1
  54. package/esm/oas/header/toHeadersV3.d.ts.map +1 -1
  55. package/esm/oas/header/toHeadersV3.js +8 -7
  56. package/esm/oas/info/toInfoV3.d.ts +3 -1
  57. package/esm/oas/info/toInfoV3.d.ts.map +1 -1
  58. package/esm/oas/info/toInfoV3.js +4 -3
  59. package/esm/oas/integer/toInteger.d.ts +5 -2
  60. package/esm/oas/integer/toInteger.d.ts.map +1 -1
  61. package/esm/oas/integer/toInteger.js +17 -9
  62. package/esm/oas/license/toLicenseV3.d.ts +2 -1
  63. package/esm/oas/license/toLicenseV3.d.ts.map +1 -1
  64. package/esm/oas/license/toLicenseV3.js +2 -1
  65. package/esm/oas/mediaType/toMediaTypeItemV3.d.ts +10 -3
  66. package/esm/oas/mediaType/toMediaTypeItemV3.d.ts.map +1 -1
  67. package/esm/oas/mediaType/toMediaTypeItemV3.js +9 -8
  68. package/esm/oas/number/toNumber.d.ts +3 -1
  69. package/esm/oas/number/toNumber.d.ts.map +1 -1
  70. package/esm/oas/number/toNumber.js +15 -7
  71. package/esm/oas/object/toAdditionalPropertiesV3.d.ts +3 -1
  72. package/esm/oas/object/toAdditionalPropertiesV3.d.ts.map +1 -1
  73. package/esm/oas/object/toAdditionalPropertiesV3.js +2 -2
  74. package/esm/oas/object/toObject.d.ts +3 -1
  75. package/esm/oas/object/toObject.d.ts.map +1 -1
  76. package/esm/oas/object/toObject.js +15 -9
  77. package/esm/oas/operation/toOperationsV3.d.ts +5 -2
  78. package/esm/oas/operation/toOperationsV3.d.ts.map +1 -1
  79. package/esm/oas/operation/toOperationsV3.js +14 -12
  80. package/esm/oas/parameter/toParameterV3.d.ts +7 -3
  81. package/esm/oas/parameter/toParameterV3.d.ts.map +1 -1
  82. package/esm/oas/parameter/toParameterV3.js +18 -16
  83. package/esm/oas/pathItem/toPathItemV3.d.ts +3 -1
  84. package/esm/oas/pathItem/toPathItemV3.d.ts.map +1 -1
  85. package/esm/oas/pathItem/toPathItemV3.js +3 -3
  86. package/esm/oas/ref/toRefV31.d.ts +3 -1
  87. package/esm/oas/ref/toRefV31.d.ts.map +1 -1
  88. package/esm/oas/ref/toRefV31.js +3 -3
  89. package/esm/oas/requestBody/toRequestBodiesV3.d.ts +5 -2
  90. package/esm/oas/requestBody/toRequestBodiesV3.d.ts.map +1 -1
  91. package/esm/oas/requestBody/toRequestBodiesV3.js +7 -7
  92. package/esm/oas/response/toResponseV3.d.ts +7 -3
  93. package/esm/oas/response/toResponseV3.d.ts.map +1 -1
  94. package/esm/oas/response/toResponseV3.js +10 -9
  95. package/esm/oas/schema/toSchemasV3.d.ts +9 -4
  96. package/esm/oas/schema/toSchemasV3.d.ts.map +1 -1
  97. package/esm/oas/schema/toSchemasV3.js +33 -25
  98. package/esm/oas/securityRequirement/toSecurityRequirement.d.ts +3 -1
  99. package/esm/oas/securityRequirement/toSecurityRequirement.d.ts.map +1 -1
  100. package/esm/oas/securityRequirement/toSecurityRequirement.js +1 -1
  101. package/esm/oas/securitySchemes/toSecuritySchemes.d.ts +3 -1
  102. package/esm/oas/securitySchemes/toSecuritySchemes.d.ts.map +1 -1
  103. package/esm/oas/securitySchemes/toSecuritySchemes.js +23 -8
  104. package/esm/oas/server/toServerV3.d.ts +7 -3
  105. package/esm/oas/server/toServerV3.d.ts.map +1 -1
  106. package/esm/oas/server/toServerV3.js +7 -7
  107. package/esm/oas/serverVariable/toServerVariableV3.d.ts +7 -3
  108. package/esm/oas/serverVariable/toServerVariableV3.d.ts.map +1 -1
  109. package/esm/oas/serverVariable/toServerVariableV3.js +6 -5
  110. package/esm/oas/specificationExtensions/toSpecificationExtensionsV3.d.ts +3 -1
  111. package/esm/oas/specificationExtensions/toSpecificationExtensionsV3.d.ts.map +1 -1
  112. package/esm/oas/specificationExtensions/toSpecificationExtensionsV3.js +2 -2
  113. package/esm/oas/string/toString.d.ts +6 -2
  114. package/esm/oas/string/toString.d.ts.map +1 -1
  115. package/esm/oas/string/toString.js +18 -9
  116. package/esm/oas/tag/toTagsV3.d.ts +5 -2
  117. package/esm/oas/tag/toTagsV3.d.ts.map +1 -1
  118. package/esm/oas/tag/toTagsV3.js +4 -3
  119. package/esm/oas/union/toUnion.d.ts +3 -1
  120. package/esm/oas/union/toUnion.d.ts.map +1 -1
  121. package/esm/oas/union/toUnion.js +4 -4
  122. package/esm/oas/unknown/toUnknown.d.ts +3 -1
  123. package/esm/oas/unknown/toUnknown.d.ts.map +1 -1
  124. package/esm/oas/unknown/toUnknown.js +2 -1
  125. package/esm/run/toArtifacts.d.ts +4 -1
  126. package/esm/run/toArtifacts.d.ts.map +1 -1
  127. package/esm/run/toArtifacts.js +2 -1
  128. package/package.json +1 -1
  129. package/script/context/CoreContext.d.ts +6 -32
  130. package/script/context/CoreContext.d.ts.map +1 -1
  131. package/script/context/CoreContext.js +15 -60
  132. package/script/context/GenerateContext.d.ts +4 -15
  133. package/script/context/GenerateContext.d.ts.map +1 -1
  134. package/script/context/GenerateContext.js +16 -35
  135. package/script/context/ParseContext.d.ts +5 -9
  136. package/script/context/ParseContext.d.ts.map +1 -1
  137. package/script/context/ParseContext.js +11 -18
  138. package/script/context/RenderContext.d.ts +6 -209
  139. package/script/context/RenderContext.d.ts.map +1 -1
  140. package/script/context/RenderContext.js +8 -215
  141. package/script/context/ResultsHandler.d.ts +0 -67
  142. package/script/context/ResultsHandler.d.ts.map +1 -1
  143. package/script/context/ResultsHandler.js +2 -68
  144. package/script/context/StackTrail.d.ts +2 -0
  145. package/script/context/StackTrail.d.ts.map +1 -1
  146. package/script/context/StackTrail.js +26 -0
  147. package/script/context/generateTypes.d.ts +2 -2
  148. package/script/context/generateTypes.d.ts.map +1 -1
  149. package/script/context/parseTypes.d.ts +7 -2
  150. package/script/context/parseTypes.d.ts.map +1 -1
  151. package/script/oas/_helpers/parseEnum.d.ts +3 -1
  152. package/script/oas/_helpers/parseEnum.d.ts.map +1 -1
  153. package/script/oas/_helpers/parseEnum.js +2 -1
  154. package/script/oas/_helpers/parseNullable.d.ts +4 -1
  155. package/script/oas/_helpers/parseNullable.d.ts.map +1 -1
  156. package/script/oas/_helpers/parseNullable.js +2 -1
  157. package/script/oas/array/toArray.d.ts +5 -2
  158. package/script/oas/array/toArray.d.ts.map +1 -1
  159. package/script/oas/array/toArray.js +16 -9
  160. package/script/oas/boolean/toBoolean.d.ts +5 -2
  161. package/script/oas/boolean/toBoolean.d.ts.map +1 -1
  162. package/script/oas/boolean/toBoolean.js +16 -8
  163. package/script/oas/components/toComponentsV3.d.ts +3 -1
  164. package/script/oas/components/toComponentsV3.d.ts.map +1 -1
  165. package/script/oas/components/toComponentsV3.js +9 -8
  166. package/script/oas/contact/toContactV3.d.ts +2 -1
  167. package/script/oas/contact/toContactV3.d.ts.map +1 -1
  168. package/script/oas/contact/toContactV3.js +2 -1
  169. package/script/oas/discriminator/toDiscriminatorV3.d.ts +3 -1
  170. package/script/oas/discriminator/toDiscriminatorV3.d.ts.map +1 -1
  171. package/script/oas/discriminator/toDiscriminatorV3.js +7 -2
  172. package/script/oas/document/toDocumentFieldsV3.d.ts +3 -1
  173. package/script/oas/document/toDocumentFieldsV3.d.ts.map +1 -1
  174. package/script/oas/document/toDocumentFieldsV3.js +10 -9
  175. package/script/oas/example/toExamplesV3.d.ts +10 -2
  176. package/script/oas/example/toExamplesV3.d.ts.map +1 -1
  177. package/script/oas/example/toExamplesV3.js +8 -7
  178. package/script/oas/externalDocs/toExternalDocs.d.ts +3 -1
  179. package/script/oas/externalDocs/toExternalDocs.d.ts.map +1 -1
  180. package/script/oas/externalDocs/toExternalDocs.js +1 -1
  181. package/script/oas/header/toHeadersV3.d.ts +3 -1
  182. package/script/oas/header/toHeadersV3.d.ts.map +1 -1
  183. package/script/oas/header/toHeadersV3.js +8 -7
  184. package/script/oas/info/toInfoV3.d.ts +3 -1
  185. package/script/oas/info/toInfoV3.d.ts.map +1 -1
  186. package/script/oas/info/toInfoV3.js +4 -3
  187. package/script/oas/integer/toInteger.d.ts +5 -2
  188. package/script/oas/integer/toInteger.d.ts.map +1 -1
  189. package/script/oas/integer/toInteger.js +17 -9
  190. package/script/oas/license/toLicenseV3.d.ts +2 -1
  191. package/script/oas/license/toLicenseV3.d.ts.map +1 -1
  192. package/script/oas/license/toLicenseV3.js +2 -1
  193. package/script/oas/mediaType/toMediaTypeItemV3.d.ts +10 -3
  194. package/script/oas/mediaType/toMediaTypeItemV3.d.ts.map +1 -1
  195. package/script/oas/mediaType/toMediaTypeItemV3.js +9 -8
  196. package/script/oas/number/toNumber.d.ts +3 -1
  197. package/script/oas/number/toNumber.d.ts.map +1 -1
  198. package/script/oas/number/toNumber.js +15 -7
  199. package/script/oas/object/toAdditionalPropertiesV3.d.ts +3 -1
  200. package/script/oas/object/toAdditionalPropertiesV3.d.ts.map +1 -1
  201. package/script/oas/object/toAdditionalPropertiesV3.js +2 -2
  202. package/script/oas/object/toObject.d.ts +3 -1
  203. package/script/oas/object/toObject.d.ts.map +1 -1
  204. package/script/oas/object/toObject.js +15 -9
  205. package/script/oas/operation/toOperationsV3.d.ts +5 -2
  206. package/script/oas/operation/toOperationsV3.d.ts.map +1 -1
  207. package/script/oas/operation/toOperationsV3.js +14 -12
  208. package/script/oas/parameter/toParameterV3.d.ts +7 -3
  209. package/script/oas/parameter/toParameterV3.d.ts.map +1 -1
  210. package/script/oas/parameter/toParameterV3.js +18 -16
  211. package/script/oas/pathItem/toPathItemV3.d.ts +3 -1
  212. package/script/oas/pathItem/toPathItemV3.d.ts.map +1 -1
  213. package/script/oas/pathItem/toPathItemV3.js +3 -3
  214. package/script/oas/ref/toRefV31.d.ts +3 -1
  215. package/script/oas/ref/toRefV31.d.ts.map +1 -1
  216. package/script/oas/ref/toRefV31.js +3 -3
  217. package/script/oas/requestBody/toRequestBodiesV3.d.ts +5 -2
  218. package/script/oas/requestBody/toRequestBodiesV3.d.ts.map +1 -1
  219. package/script/oas/requestBody/toRequestBodiesV3.js +7 -7
  220. package/script/oas/response/toResponseV3.d.ts +7 -3
  221. package/script/oas/response/toResponseV3.d.ts.map +1 -1
  222. package/script/oas/response/toResponseV3.js +10 -9
  223. package/script/oas/schema/toSchemasV3.d.ts +9 -4
  224. package/script/oas/schema/toSchemasV3.d.ts.map +1 -1
  225. package/script/oas/schema/toSchemasV3.js +33 -25
  226. package/script/oas/securityRequirement/toSecurityRequirement.d.ts +3 -1
  227. package/script/oas/securityRequirement/toSecurityRequirement.d.ts.map +1 -1
  228. package/script/oas/securityRequirement/toSecurityRequirement.js +1 -1
  229. package/script/oas/securitySchemes/toSecuritySchemes.d.ts +3 -1
  230. package/script/oas/securitySchemes/toSecuritySchemes.d.ts.map +1 -1
  231. package/script/oas/securitySchemes/toSecuritySchemes.js +23 -8
  232. package/script/oas/server/toServerV3.d.ts +7 -3
  233. package/script/oas/server/toServerV3.d.ts.map +1 -1
  234. package/script/oas/server/toServerV3.js +7 -7
  235. package/script/oas/serverVariable/toServerVariableV3.d.ts +7 -3
  236. package/script/oas/serverVariable/toServerVariableV3.d.ts.map +1 -1
  237. package/script/oas/serverVariable/toServerVariableV3.js +6 -5
  238. package/script/oas/specificationExtensions/toSpecificationExtensionsV3.d.ts +3 -1
  239. package/script/oas/specificationExtensions/toSpecificationExtensionsV3.d.ts.map +1 -1
  240. package/script/oas/specificationExtensions/toSpecificationExtensionsV3.js +2 -2
  241. package/script/oas/string/toString.d.ts +6 -2
  242. package/script/oas/string/toString.d.ts.map +1 -1
  243. package/script/oas/string/toString.js +18 -9
  244. package/script/oas/tag/toTagsV3.d.ts +5 -2
  245. package/script/oas/tag/toTagsV3.d.ts.map +1 -1
  246. package/script/oas/tag/toTagsV3.js +4 -3
  247. package/script/oas/union/toUnion.d.ts +3 -1
  248. package/script/oas/union/toUnion.d.ts.map +1 -1
  249. package/script/oas/union/toUnion.js +4 -4
  250. package/script/oas/unknown/toUnknown.d.ts +3 -1
  251. package/script/oas/unknown/toUnknown.d.ts.map +1 -1
  252. package/script/oas/unknown/toUnknown.js +2 -1
  253. package/script/run/toArtifacts.d.ts +4 -1
  254. package/script/run/toArtifacts.d.ts.map +1 -1
  255. package/script/run/toArtifacts.js +2 -1
@@ -7,73 +7,7 @@ var _ResultsHandler_instances, _ResultsHandler_unloadCallback, _ResultsHandler_r
7
7
  import { LogLevels } from '../deps/jsr.io/@std/log/0.224.14/levels.js';
8
8
  import { BaseHandler } from '../deps/jsr.io/@std/log/0.224.14/base_handler.js';
9
9
  import { match } from 'ts-pattern';
10
- /**
11
- * Custom log handler that captures warning and error results for SKMTC processing.
12
- *
13
- * The `ResultsHandler` extends Deno's standard library BaseHandler to provide
14
- * specialized logging behavior for the SKMTC pipeline. It integrates with the
15
- * CoreContext to capture warnings and errors as structured results that can be
16
- * analyzed and reported after processing completes.
17
- *
18
- * This handler ensures that important processing issues are captured and stored
19
- * in the context's results system rather than just being logged to the console.
20
- *
21
- * ## Key Features
22
- *
23
- * - **Result Capture**: Automatically captures WARN and ERROR logs as results
24
- * - **Immediate Flushing**: Critical errors trigger immediate flush
25
- * - **Lifecycle Management**: Proper setup and cleanup with event handlers
26
- * - **Context Integration**: Seamlessly integrates with CoreContext results system
27
- *
28
- * @example Setting up the handler
29
- * ```typescript
30
- * import { getLogger } from '@std/log';
31
- * import { ResultsHandler, CoreContext } from '@skmtc/core';
32
- *
33
- * const context = new CoreContext({
34
- * // ... context options
35
- * });
36
- *
37
- * const handler = new ResultsHandler('WARN', {
38
- * context: context,
39
- * formatter: '[{levelName}] {msg}'
40
- * });
41
- *
42
- * const logger = getLogger();
43
- * logger.addHandler(handler);
44
- *
45
- * // Now warnings and errors will be captured as results
46
- * logger.warning('Schema validation issue detected');
47
- * logger.error('Failed to process operation');
48
- * ```
49
- *
50
- * @example Integration in pipeline
51
- * ```typescript
52
- * class ProcessingPipeline {
53
- * async process(document: OasDocument) {
54
- * const context = new CoreContext(options);
55
- *
56
- * // Set up results handler
57
- * const handler = new ResultsHandler('WARN', { context });
58
- * const logger = getLogger();
59
- * logger.addHandler(handler);
60
- *
61
- * try {
62
- * const result = await this.processDocument(document, context);
63
- *
64
- * // Check captured results
65
- * if (context.results.hasWarnings()) {
66
- * console.log('Processing completed with warnings');
67
- * }
68
- *
69
- * return result;
70
- * } finally {
71
- * handler.destroy();
72
- * }
73
- * }
74
- * }
75
- * ```
76
- */
10
+ import { StackTrail } from './StackTrail.js';
77
11
  export class ResultsHandler extends BaseHandler {
78
12
  /**
79
13
  * Creates a new ResultsHandler instance.
@@ -174,7 +108,7 @@ export class ResultsHandler extends BaseHandler {
174
108
  .with('ERROR', () => 'error')
175
109
  .otherwise(() => {
176
110
  throw new Error(`Unexpected log level name: ${levelName}`);
177
- }));
111
+ }), new StackTrail(['SKIPPED']));
178
112
  }
179
113
  /**
180
114
  * Flushes any buffered content.
@@ -53,6 +53,8 @@ export declare class StackTrail {
53
53
  * ```
54
54
  */
55
55
  append(frame: string | string[]): StackTrail;
56
+ trace<T>(key: string, fn: (st: StackTrail) => T): T;
57
+ traceAsync<T>(key: string, fn: (st: StackTrail) => Promise<T>): Promise<T>;
56
58
  /**
57
59
  * Converts the trail to an OpenAPI reference string if applicable.
58
60
  *
@@ -1 +1 @@
1
- {"version":3,"file":"StackTrail.d.ts","sourceRoot":"","sources":["../../src/context/StackTrail.ts"],"names":[],"mappings":"AAEA,qBAAa,UAAU;;gBAIT,KAAK,GAAE,MAAM,EAAO;IAIhC;;;;;;;;;;;;;;OAcG;IACH,KAAK,IAAI,UAAU;IAInB;;;;;;;;;;;OAWG;IACH,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,UAAU;IAgB5C;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,UAAU,IAAI,MAAM,GAAG,SAAS;IAkBhC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,UAAU;IAoB5C;;;;;;;;;;;;;;OAcG;IACH,MAAM,IAAI,MAAM;IAIhB;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,IAAI,MAAM;CAOnB"}
1
+ {"version":3,"file":"StackTrail.d.ts","sourceRoot":"","sources":["../../src/context/StackTrail.ts"],"names":[],"mappings":"AAEA,qBAAa,UAAU;;gBAIT,KAAK,GAAE,MAAM,EAAO;IAIhC;;;;;;;;;;;;;;OAcG;IACH,KAAK,IAAI,UAAU;IAInB;;;;;;;;;;;OAWG;IACH,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,UAAU;IAgB5C,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,CAAC,GAAG,CAAC;IAgB7C,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAgBhF;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,UAAU,IAAI,MAAM,GAAG,SAAS;IAkBhC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,UAAU;IAoB5C;;;;;;;;;;;;;;OAcG;IACH,MAAM,IAAI,MAAM;IAIhB;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,IAAI,MAAM;CAOnB"}
@@ -83,6 +83,32 @@ export class StackTrail {
83
83
  }
84
84
  throw new Error(`Unexpected stack frame: ${frame}`);
85
85
  }
86
+ trace(key, fn) {
87
+ const stackTrail = this.clone();
88
+ stackTrail.append(key);
89
+ try {
90
+ const result = fn(stackTrail);
91
+ stackTrail.remove(key);
92
+ return result;
93
+ }
94
+ catch (error) {
95
+ stackTrail.remove(key);
96
+ throw error;
97
+ }
98
+ }
99
+ async traceAsync(key, fn) {
100
+ const stackTrail = this.clone();
101
+ stackTrail.append(key);
102
+ try {
103
+ const result = await fn(stackTrail);
104
+ stackTrail.remove(key);
105
+ return result;
106
+ }
107
+ catch (error) {
108
+ stackTrail.remove(key);
109
+ throw error;
110
+ }
111
+ }
86
112
  /**
87
113
  * Converts the trail to an OpenAPI reference string if applicable.
88
114
  *
@@ -19,6 +19,7 @@ import type { RefName } from '../types/RefName.js';
19
19
  import type { SchemaToNonRef, TypeSystemOutput } from '../types/TypeSystem.js';
20
20
  import type { File } from '../dsl/File.js';
21
21
  import type { ClientSettings } from '../types/Settings.js';
22
+ import type { StackTrail } from './StackTrail.js';
22
23
  /**
23
24
  * Options for inserting an operation into the generation context.
24
25
  *
@@ -228,8 +229,7 @@ export type InsertNormalisedModelReturn<V extends GeneratedValue, Schema extends
228
229
  export type GenerateContextType = {
229
230
  settings: ClientSettings | undefined;
230
231
  modelDepth: Record<string, number>;
231
- toArtifacts: () => GenerateResult;
232
- trace: <T>(token: string, fn: () => T) => T;
232
+ toArtifacts: (stackTrail: StackTrail) => GenerateResult;
233
233
  defineAndRegister: <V extends GeneratedValue>({ identifier, value, destinationPath, noExport }: DefineAndRegisterArgs<V>) => Definition<V>;
234
234
  registerJson: ({ destinationPath, json }: RegisterJsonArgs) => void;
235
235
  register: ({ imports, definitions, destinationPath, reExports }: RegisterArgs) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"generateTypes.d.ts","sourceRoot":"","sources":["../../src/context/generateTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateTypes.d.ts","sourceRoot":"","sources":["../../src/context/generateTypes.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ export type LogIssueNoKeyArgs = ParseIssueBase & {
19
19
  parent: unknown;
20
20
  /** The type of issue for categorization */
21
21
  type: IssueType;
22
+ /** Stack trail for tracking current parsing context */
23
+ stackTrail: StackTrail;
22
24
  };
23
25
  /**
24
26
  * Base type for parse warning messages.
@@ -37,6 +39,8 @@ export type ParseIssueBase = ParseErrorBase | ParseWarningBase;
37
39
  * Arguments for logging issues with a specific key.
38
40
  */
39
41
  export type LogIssueArgs = ParseIssueBase & {
42
+ /** Stack trail for tracking current parsing context */
43
+ stackTrail: StackTrail;
40
44
  /** The key where the issue occurred */
41
45
  key: string;
42
46
  /** The parent object containing the issue */
@@ -48,6 +52,8 @@ export type LogIssueArgs = ParseIssueBase & {
48
52
  * Arguments for logging skipped values during parsing.
49
53
  */
50
54
  export type LogSkippedValuesArgs = {
55
+ /** Stack trail for tracking current parsing context */
56
+ stackTrail: StackTrail;
51
57
  /** Record of skipped key-value pairs */
52
58
  skipped: Record<string, unknown>;
53
59
  /** The parent object context */
@@ -58,8 +64,7 @@ export type LogSkippedValuesArgs = {
58
64
  export type ParseContextType = {
59
65
  oasDocument: OasDocument;
60
66
  documentObject: OpenAPIV3.Document;
61
- stackTrail: StackTrail;
62
- parse: () => OasDocument;
67
+ parse: (stackTrail: StackTrail) => OasDocument;
63
68
  removeErroredItems: () => void;
64
69
  registerRef: (stackTrail: StackTrail, $ref: string) => void;
65
70
  registerRefError: (error: Error, $ref: string | undefined) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"parseTypes.d.ts","sourceRoot":"","sources":["../../src/context/parseTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,2BAA2B;IAC3B,KAAK,EAAE,OAAO,CAAA;IACd,8BAA8B;IAC9B,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG;IAC/C,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAA;IACf,2CAA2C;IAC3C,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,2BAA2B;IAC3B,KAAK,EAAE,SAAS,CAAA;IAChB,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,gBAAgB,CAAA;AAE9D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG;IAC1C,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAA;IACX,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAA;IACf,2CAA2C;IAC3C,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,gCAAgC;IAChC,MAAM,EAAE,OAAO,CAAA;IACf,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,EAAE,WAAW,CAAA;IACxB,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAA;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,EAAE,MAAM,WAAW,CAAA;IACxB,kBAAkB,EAAE,MAAM,IAAI,CAAA;IAC9B,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3D,gBAAgB,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAA;IAClE,gBAAgB,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACtD,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAA;IACtC,aAAa,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAA;CACjD,CAAA"}
1
+ {"version":3,"file":"parseTypes.d.ts","sourceRoot":"","sources":["../../src/context/parseTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,2BAA2B;IAC3B,KAAK,EAAE,OAAO,CAAA;IACd,8BAA8B;IAC9B,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG;IAC/C,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAA;IACf,2CAA2C;IAC3C,IAAI,EAAE,SAAS,CAAA;IACf,uDAAuD;IACvD,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,2BAA2B;IAC3B,KAAK,EAAE,SAAS,CAAA;IAChB,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,gBAAgB,CAAA;AAE9D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG;IAC1C,uDAAuD;IACvD,UAAU,EAAE,UAAU,CAAA;IACtB,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAA;IACX,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAA;IACf,2CAA2C;IAC3C,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,uDAAuD;IACvD,UAAU,EAAE,UAAU,CAAA;IACtB,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,gCAAgC;IAChC,MAAM,EAAE,OAAO,CAAA;IACf,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,EAAE,WAAW,CAAA;IACxB,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAA;IAClC,KAAK,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,WAAW,CAAA;IAC9C,kBAAkB,EAAE,MAAM,IAAI,CAAA;IAC9B,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3D,gBAAgB,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAA;IAClE,gBAAgB,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACtD,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAA;IACtC,aAAa,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAA;CACjD,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import type { ParseContextType } from '../../context/parseTypes.js';
2
+ import type { StackTrail } from '../../context/StackTrail.js';
2
3
  type ParseEnumArgs = {
3
4
  value: unknown;
4
5
  nullable: boolean | undefined;
@@ -6,7 +7,8 @@ type ParseEnumArgs = {
6
7
  check: (item: unknown) => boolean;
7
8
  toMessage: (item: unknown) => string;
8
9
  context: ParseContextType;
10
+ stackTrail: StackTrail;
9
11
  };
10
- export declare const parseEnum: ({ value, nullable, parent, context, check, toMessage }: ParseEnumArgs) => any[] | undefined;
12
+ export declare const parseEnum: ({ value, nullable, parent, context, check, toMessage, stackTrail }: ParseEnumArgs) => any[] | undefined;
11
13
  export {};
12
14
  //# sourceMappingURL=parseEnum.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parseEnum.d.ts","sourceRoot":"","sources":["../../../src/oas/_helpers/parseEnum.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAA;IACjC,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,MAAM,CAAA;IACpC,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,wDAOvB,aAAa,sBA0Bf,CAAA"}
1
+ {"version":3,"file":"parseEnum.d.ts","sourceRoot":"","sources":["../../../src/oas/_helpers/parseEnum.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAA;IACjC,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,MAAM,CAAA;IACpC,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,oEAQvB,aAAa,sBA2Bf,CAAA"}
@@ -1,4 +1,4 @@
1
- export const parseEnum = ({ value, nullable, parent, context, check, toMessage }) => {
1
+ export const parseEnum = ({ value, nullable, parent, context, check, toMessage, stackTrail }) => {
2
2
  if (Array.isArray(value)) {
3
3
  for (const item of value) {
4
4
  if (nullable && item === null) {
@@ -12,6 +12,7 @@ export const parseEnum = ({ value, nullable, parent, context, check, toMessage }
12
12
  level: 'warning',
13
13
  message: toMessage(item),
14
14
  parent,
15
+ stackTrail,
15
16
  type: 'INVALID_DEFAULT'
16
17
  });
17
18
  return undefined;
@@ -1,5 +1,6 @@
1
1
  import type { OpenAPIV3 } from 'openapi-types';
2
2
  import type { ParseContextType } from '../../context/parseTypes.js';
3
+ import type { StackTrail } from '../../context/StackTrail.js';
3
4
  /**
4
5
  * Arguments for parsing the nullable property from OpenAPI schemas.
5
6
  *
@@ -8,6 +9,8 @@ import type { ParseContextType } from '../../context/parseTypes.js';
8
9
  export type ParseNullableArgs<Value extends OpenAPIV3.SchemaObject> = {
9
10
  /** The OpenAPI schema object containing the nullable property */
10
11
  value: Value;
12
+ /** Stack trail for tracking current parsing context */
13
+ stackTrail: StackTrail;
11
14
  /** Parse context for error handling */
12
15
  context: ParseContextType;
13
16
  };
@@ -135,5 +138,5 @@ export type ParseNullableReturn<Value extends OpenAPIV3.SchemaObject> = {
135
138
  * // Generated type might be: { name: string; age?: number } | null
136
139
  * ```
137
140
  */
138
- export declare const parseNullable: <Value extends OpenAPIV3.SchemaObject>({ value, context }: ParseNullableArgs<Value>) => ParseNullableReturn<Value>;
141
+ export declare const parseNullable: <Value extends OpenAPIV3.SchemaObject>({ value, stackTrail, context }: ParseNullableArgs<Value>) => ParseNullableReturn<Value>;
139
142
  //# sourceMappingURL=parseNullable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parseNullable.d.ts","sourceRoot":"","sources":["../../../src/oas/_helpers/parseNullable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,SAAS,CAAC,YAAY,IAAI;IACpE,iEAAiE;IACjE,KAAK,EAAE,KAAK,CAAA;IACZ,uCAAuC;IACvC,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAAC,KAAK,SAAS,SAAS,CAAC,YAAY,IAAI;IACtE,8DAA8D;IAC9D,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B,sDAAsD;IACtD,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;CAC/B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgHG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,SAAS,SAAS,CAAC,YAAY,EAAE,oBAGjE,iBAAiB,CAAC,KAAK,CAAC,KAAG,mBAAmB,CAAC,KAAK,CA6BtD,CAAA"}
1
+ {"version":3,"file":"parseNullable.d.ts","sourceRoot":"","sources":["../../../src/oas/_helpers/parseNullable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,SAAS,CAAC,YAAY,IAAI;IACpE,iEAAiE;IACjE,KAAK,EAAE,KAAK,CAAA;IACZ,uDAAuD;IACvD,UAAU,EAAE,UAAU,CAAA;IACtB,uCAAuC;IACvC,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAAC,KAAK,SAAS,SAAS,CAAC,YAAY,IAAI;IACtE,8DAA8D;IAC9D,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B,sDAAsD;IACtD,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;CAC/B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgHG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,SAAS,SAAS,CAAC,YAAY,EAAE,gCAIjE,iBAAiB,CAAC,KAAK,CAAC,KAAG,mBAAmB,CAAC,KAAK,CA8BtD,CAAA"}
@@ -111,7 +111,7 @@
111
111
  * // Generated type might be: { name: string; age?: number } | null
112
112
  * ```
113
113
  */
114
- export const parseNullable = ({ value, context }) => {
114
+ export const parseNullable = ({ value, stackTrail, context }) => {
115
115
  if (value.nullable === undefined) {
116
116
  return {
117
117
  nullable: undefined,
@@ -127,6 +127,7 @@ export const parseNullable = ({ value, context }) => {
127
127
  }
128
128
  context.logIssue({
129
129
  key: 'nullable',
130
+ stackTrail,
130
131
  parent: value,
131
132
  level: 'warning',
132
133
  message: `Invalid nullable: ${value}`,
@@ -1,8 +1,10 @@
1
1
  import type { OpenAPIV3 } from 'openapi-types';
2
2
  import { OasArray } from './Array.js';
3
3
  import type { ParseContextType } from '../../context/parseTypes.js';
4
+ import type { StackTrail } from '../../context/StackTrail.js';
4
5
  type ToArrayArgs = {
5
6
  value: OpenAPIV3.ArraySchemaObject;
7
+ stackTrail: StackTrail;
6
8
  context: ParseContextType;
7
9
  };
8
10
  /**
@@ -64,15 +66,16 @@ type ToArrayArgs = {
64
66
  * console.log(oasArray.example); // [1, 2, 3]
65
67
  * ```
66
68
  */
67
- export declare const toArray: ({ value, context }: ToArrayArgs) => OasArray;
69
+ export declare const toArray: ({ value, context, stackTrail }: ToArrayArgs) => OasArray;
68
70
  type ToParsedArrayArgs<Nullable extends boolean | undefined> = {
69
71
  value: Omit<OpenAPIV3.ArraySchemaObject, 'nullable' | 'example' | 'enums' | 'default'>;
72
+ stackTrail: StackTrail;
70
73
  context: ParseContextType;
71
74
  nullable: Nullable;
72
75
  example: Nullable extends true ? unknown[] | null | undefined : unknown[] | undefined;
73
76
  enums: Nullable extends true ? (unknown[] | null)[] | undefined : unknown[] | undefined;
74
77
  defaultValue: Nullable extends true ? unknown[] | null | undefined : unknown[] | undefined;
75
78
  };
76
- export declare const toParsedArray: <Nullable extends boolean | undefined>({ context, nullable, example, enums, defaultValue, value }: ToParsedArrayArgs<Nullable>) => OasArray<Nullable>;
79
+ export declare const toParsedArray: <Nullable extends boolean | undefined>({ context, stackTrail, nullable, example, enums, defaultValue, value }: ToParsedArrayArgs<Nullable>) => OasArray<Nullable>;
77
80
  export {};
78
81
  //# sourceMappingURL=toArray.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toArray.d.ts","sourceRoot":"","sources":["../../../src/oas/array/toArray.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAOnE,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAA;IAClC,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,OAAO,GAAI,oBAAoB,WAAW,KAAG,QA8CzD,CAAA;AAED,KAAK,iBAAiB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC7D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;IACtF,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACvF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;CAC3F,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,4DAOjE,iBAAiB,CAAC,QAAQ,CAAC,KAAG,QAAQ,CAAC,QAAQ,CAkDjD,CAAA"}
1
+ {"version":3,"file":"toArray.d.ts","sourceRoot":"","sources":["../../../src/oas/array/toArray.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAOnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAA;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,OAAO,GAAI,gCAAgC,WAAW,KAAG,QAmDrE,CAAA;AAED,KAAK,iBAAiB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC7D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;IACtF,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACvF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;CAC3F,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,wEAQjE,iBAAiB,CAAC,QAAQ,CAAC,KAAG,QAAQ,CAAC,QAAQ,CAmDjD,CAAA"}
@@ -5,7 +5,6 @@ import { parseNullable } from '../_helpers/parseNullable.js';
5
5
  import { parseEnum } from '../_helpers/parseEnum.js';
6
6
  import * as v from 'valibot';
7
7
  import { oasArrayDataWithoutItems } from './array-types.js';
8
- import { tracer } from '../../helpers/tracer.js';
9
8
  /**
10
9
  * Transforms an OpenAPI v3 array schema object into an internal OAS array representation.
11
10
  *
@@ -65,22 +64,25 @@ import { tracer } from '../../helpers/tracer.js';
65
64
  * console.log(oasArray.example); // [1, 2, 3]
66
65
  * ```
67
66
  */
68
- export const toArray = ({ value, context }) => {
67
+ export const toArray = ({ value, context, stackTrail }) => {
69
68
  const { nullable, value: valueWithoutNullable } = parseNullable({
70
69
  value,
71
- context
70
+ context,
71
+ stackTrail
72
72
  });
73
73
  const { example: unparsedExample, ...valueWithoutExample } = valueWithoutNullable;
74
74
  const example = parseExample({
75
75
  example: unparsedExample,
76
76
  context,
77
77
  parent: valueWithoutNullable,
78
- nullable
78
+ nullable,
79
+ stackTrail
79
80
  });
80
81
  const { enum: unparsedEnums, ...valueWithoutEnums } = valueWithoutExample;
81
82
  const enums = parseEnum({
82
83
  value: unparsedEnums,
83
84
  nullable,
85
+ stackTrail,
84
86
  parent: valueWithoutExample,
85
87
  context,
86
88
  check: Array.isArray,
@@ -91,7 +93,8 @@ export const toArray = ({ value, context }) => {
91
93
  defaultValue: unparsedDefaultValue,
92
94
  context,
93
95
  parent: valueWithoutEnums,
94
- nullable
96
+ nullable,
97
+ stackTrail
95
98
  });
96
99
  return toParsedArray({
97
100
  context,
@@ -99,10 +102,11 @@ export const toArray = ({ value, context }) => {
99
102
  example,
100
103
  enums,
101
104
  defaultValue,
105
+ stackTrail,
102
106
  value: valueWithoutDefault
103
107
  });
104
108
  };
105
- export const toParsedArray = ({ context, nullable, example, enums, defaultValue, value }) => {
109
+ export const toParsedArray = ({ context, stackTrail, nullable, example, enums, defaultValue, value }) => {
106
110
  // We only want parse non-items fields here since items is handled below
107
111
  const { items, ...rest } = value;
108
112
  // Parse the object without items field
@@ -114,6 +118,7 @@ export const toParsedArray = ({ context, nullable, example, enums, defaultValue,
114
118
  skipped,
115
119
  parent: value,
116
120
  context,
121
+ stackTrail,
117
122
  parentType: 'schema:array'
118
123
  });
119
124
  // if (!items) {
@@ -125,7 +130,7 @@ export const toParsedArray = ({ context, nullable, example, enums, defaultValue,
125
130
  description,
126
131
  nullable,
127
132
  defaultValue,
128
- items: tracer(context.stackTrail, 'items', () => toSchemaV3({ schema: items, context })),
133
+ items: stackTrail.trace('items', st => toSchemaV3({ schema: items, stackTrail: st, context })),
129
134
  extensionFields,
130
135
  example,
131
136
  uniqueItems,
@@ -137,7 +142,7 @@ export const toParsedArray = ({ context, nullable, example, enums, defaultValue,
137
142
  deprecated
138
143
  });
139
144
  };
140
- const parseExample = ({ example, context, parent, nullable }) => {
145
+ const parseExample = ({ example, context, parent, nullable, stackTrail }) => {
141
146
  if (example === undefined) {
142
147
  return undefined;
143
148
  }
@@ -150,13 +155,14 @@ const parseExample = ({ example, context, parent, nullable }) => {
150
155
  level: 'warning',
151
156
  message: `Removed invalid example. Expected "array", got: ${example}`,
152
157
  parent,
158
+ stackTrail,
153
159
  type: 'INVALID_EXAMPLE'
154
160
  });
155
161
  return undefined;
156
162
  }
157
163
  return example;
158
164
  };
159
- const parseDefault = ({ defaultValue, context, parent, nullable }) => {
165
+ const parseDefault = ({ defaultValue, context, parent, nullable, stackTrail }) => {
160
166
  if (defaultValue === undefined) {
161
167
  return undefined;
162
168
  }
@@ -169,6 +175,7 @@ const parseDefault = ({ defaultValue, context, parent, nullable }) => {
169
175
  level: 'warning',
170
176
  message: `Invalid default: ${defaultValue}`,
171
177
  parent,
178
+ stackTrail,
172
179
  type: 'INVALID_DEFAULT'
173
180
  });
174
181
  return undefined;
@@ -1,8 +1,10 @@
1
1
  import type { OpenAPIV3 } from 'openapi-types';
2
2
  import type { ParseContextType } from '../../context/parseTypes.js';
3
3
  import { OasBoolean } from './Boolean.js';
4
+ import type { StackTrail } from '../../context/StackTrail.js';
4
5
  type ToBooleanArgs = {
5
6
  value: OpenAPIV3.SchemaObject;
7
+ stackTrail: StackTrail;
6
8
  context: ParseContextType;
7
9
  };
8
10
  /**
@@ -62,7 +64,7 @@ type ToBooleanArgs = {
62
64
  * console.log(oasBoolean.enums); // [true, null]
63
65
  * ```
64
66
  */
65
- export declare const toBoolean: ({ value, context }: ToBooleanArgs) => OasBoolean;
67
+ export declare const toBoolean: ({ value, stackTrail, context }: ToBooleanArgs) => OasBoolean;
66
68
  type ToParsedBooleanArgs<Nullable extends boolean | undefined> = {
67
69
  value: Omit<OpenAPIV3.SchemaObject, 'nullable' | 'example' | 'enums'>;
68
70
  context: ParseContextType;
@@ -70,7 +72,8 @@ type ToParsedBooleanArgs<Nullable extends boolean | undefined> = {
70
72
  example: Nullable extends true ? boolean | null | undefined : boolean | undefined;
71
73
  enums: Nullable extends true ? (boolean | null)[] | undefined : boolean[] | undefined;
72
74
  defaultValue: Nullable extends true ? boolean | null | undefined : boolean | undefined;
75
+ stackTrail: StackTrail;
73
76
  };
74
- export declare const toParsedBoolean: <Nullable extends boolean | undefined>({ context, nullable, example, enums, defaultValue, value }: ToParsedBooleanArgs<Nullable>) => OasBoolean<Nullable>;
77
+ export declare const toParsedBoolean: <Nullable extends boolean | undefined>({ context, nullable, example, enums, defaultValue, value, stackTrail }: ToParsedBooleanArgs<Nullable>) => OasBoolean<Nullable>;
75
78
  export {};
76
79
  //# sourceMappingURL=toBoolean.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toBoolean.d.ts","sourceRoot":"","sources":["../../../src/oas/boolean/toBoolean.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAOzC,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,eAAO,MAAM,SAAS,GAAI,oBAAoB,aAAa,KAAG,UAiD7D,CAAA;AAED,KAAK,mBAAmB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC/D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC,CAAA;IACrE,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IACjF,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;CACvF,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,4DAOnE,mBAAmB,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,QAAQ,CA0BrD,CAAA"}
1
+ {"version":3,"file":"toBoolean.d.ts","sourceRoot":"","sources":["../../../src/oas/boolean/toBoolean.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAMzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,eAAO,MAAM,SAAS,GAAI,gCAAgC,aAAa,KAAG,UAsDzE,CAAA;AAED,KAAK,mBAAmB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC/D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC,CAAA;IACrE,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IACjF,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IACtF,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,wEAQnE,mBAAmB,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,QAAQ,CA2BrD,CAAA"}
@@ -61,17 +61,19 @@ import * as v from 'valibot';
61
61
  * console.log(oasBoolean.enums); // [true, null]
62
62
  * ```
63
63
  */
64
- export const toBoolean = ({ value, context }) => {
64
+ export const toBoolean = ({ value, stackTrail, context }) => {
65
65
  const { nullable, value: valueWithoutNullable } = parseNullable({
66
66
  value,
67
- context
67
+ context,
68
+ stackTrail
68
69
  });
69
70
  const { example: unparsedExample, ...valueWithoutExample } = valueWithoutNullable;
70
71
  const example = parseExample({
71
72
  example: unparsedExample,
72
73
  context,
73
74
  parent: valueWithoutNullable,
74
- nullable
75
+ nullable,
76
+ stackTrail
75
77
  });
76
78
  // const { enum: enums, value: valueWithoutEnums } = parseEnum({
77
79
  // value: valueWithoutExample,
@@ -84,6 +86,7 @@ export const toBoolean = ({ value, context }) => {
84
86
  value: unparsedEnums,
85
87
  nullable,
86
88
  parent: valueWithoutExample,
89
+ stackTrail,
87
90
  context,
88
91
  check: isBoolean,
89
92
  toMessage: item => `Removed invalid enum. Expected "boolean", got: ${item}`
@@ -93,7 +96,8 @@ export const toBoolean = ({ value, context }) => {
93
96
  defaultValue: unparsedDefaultValue,
94
97
  context,
95
98
  parent: valueWithoutEnums,
96
- nullable
99
+ nullable,
100
+ stackTrail
97
101
  });
98
102
  return toParsedBoolean({
99
103
  context,
@@ -101,10 +105,11 @@ export const toBoolean = ({ value, context }) => {
101
105
  example,
102
106
  enums,
103
107
  defaultValue,
104
- value: valueWithoutDefault
108
+ value: valueWithoutDefault,
109
+ stackTrail
105
110
  });
106
111
  };
107
- export const toParsedBoolean = ({ context, nullable, example, enums, defaultValue, value }) => {
112
+ export const toParsedBoolean = ({ context, nullable, example, enums, defaultValue, value, stackTrail }) => {
108
113
  if (!v.is(oasBooleanData, value)) {
109
114
  v.parse(oasBooleanData, value);
110
115
  }
@@ -113,6 +118,7 @@ export const toParsedBoolean = ({ context, nullable, example, enums, defaultValu
113
118
  skipped,
114
119
  parent: value,
115
120
  context,
121
+ stackTrail,
116
122
  parentType: 'schema:boolean'
117
123
  });
118
124
  return new OasBoolean({
@@ -128,7 +134,7 @@ export const toParsedBoolean = ({ context, nullable, example, enums, defaultValu
128
134
  deprecated
129
135
  });
130
136
  };
131
- const parseExample = ({ example, context, parent, nullable }) => {
137
+ const parseExample = ({ example, context, parent, nullable, stackTrail }) => {
132
138
  if (example === undefined) {
133
139
  return undefined;
134
140
  }
@@ -141,13 +147,14 @@ const parseExample = ({ example, context, parent, nullable }) => {
141
147
  level: 'warning',
142
148
  message: `Removed invalid example. Expected "boolean", got: ${example}`,
143
149
  parent,
150
+ stackTrail,
144
151
  type: 'INVALID_EXAMPLE'
145
152
  });
146
153
  return undefined;
147
154
  }
148
155
  return example;
149
156
  };
150
- const parseDefault = ({ defaultValue, context, parent, nullable }) => {
157
+ const parseDefault = ({ defaultValue, context, parent, nullable, stackTrail }) => {
151
158
  if (defaultValue === undefined) {
152
159
  return undefined;
153
160
  }
@@ -160,6 +167,7 @@ const parseDefault = ({ defaultValue, context, parent, nullable }) => {
160
167
  level: 'warning',
161
168
  message: `Removed invalid default. Expected "boolean", got: ${defaultValue}`,
162
169
  parent,
170
+ stackTrail,
163
171
  type: 'INVALID_DEFAULT'
164
172
  });
165
173
  return undefined;
@@ -1,10 +1,12 @@
1
1
  import type { OpenAPIV3 } from 'openapi-types';
2
2
  import type { ParseContextType } from '../../context/parseTypes.js';
3
3
  import { OasComponents } from './Components.js';
4
+ import type { StackTrail } from '../../context/StackTrail.js';
4
5
  type ToComponentsV3Args = {
5
6
  components: OpenAPIV3.ComponentsObject | undefined;
7
+ stackTrail: StackTrail;
6
8
  context: ParseContextType;
7
9
  };
8
- export declare const toComponentsV3: ({ components, context }: ToComponentsV3Args) => OasComponents | undefined;
10
+ export declare const toComponentsV3: ({ components, stackTrail, context }: ToComponentsV3Args) => OasComponents | undefined;
9
11
  export {};
10
12
  //# sourceMappingURL=toComponentsV3.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toComponentsV3.d.ts","sourceRoot":"","sources":["../../../src/oas/components/toComponentsV3.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAGnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAM/C,KAAK,kBAAkB,GAAG;IACxB,UAAU,EAAE,SAAS,CAAC,gBAAgB,GAAG,SAAS,CAAA;IAClD,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,yBAG5B,kBAAkB,KAAG,aAAa,GAAG,SAgDvC,CAAA"}
1
+ {"version":3,"file":"toComponentsV3.d.ts","sourceRoot":"","sources":["../../../src/oas/components/toComponentsV3.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAGnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAI/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D,KAAK,kBAAkB,GAAG;IACxB,UAAU,EAAE,SAAS,CAAC,gBAAgB,GAAG,SAAS,CAAA;IAClD,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,qCAI5B,kBAAkB,KAAG,aAAa,GAAG,SAoDvC,CAAA"}