@kubb/ast 5.0.0-beta.62 → 5.0.0-beta.64

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 (92) hide show
  1. package/dist/{defineMacro-CNkUpxia.js → defineMacro-B76LsJwO.js} +4 -4
  2. package/dist/defineMacro-B76LsJwO.js.map +1 -0
  3. package/dist/{defineMacro-Vw-xQvq7.d.ts → defineMacro-B7qm3zTd.d.ts} +5 -6
  4. package/dist/{defineMacro-BryDiuQl.cjs → defineMacro-CEZHaCXE.cjs} +5 -5
  5. package/dist/defineMacro-CEZHaCXE.cjs.map +1 -0
  6. package/dist/factory-wJLzHeXT.d.ts +27 -0
  7. package/dist/factory.cjs +56 -56
  8. package/dist/factory.cjs.map +1 -1
  9. package/dist/factory.d.ts +3 -27
  10. package/dist/factory.js +6 -6
  11. package/dist/factory.js.map +1 -1
  12. package/dist/{index-CTaN_ee_.d.ts → index-BKD4drsX.d.ts} +47 -114
  13. package/dist/index.cjs +193 -270
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.ts +31 -21
  16. package/dist/index.js +154 -236
  17. package/dist/index.js.map +1 -1
  18. package/dist/macros.cjs +12 -12
  19. package/dist/macros.cjs.map +1 -1
  20. package/dist/macros.d.ts +3 -3
  21. package/dist/macros.js +5 -5
  22. package/dist/macros.js.map +1 -1
  23. package/dist/{operationParams-B44p6EQy.d.ts → operationParams-ByVfpYr7.d.ts} +10 -3
  24. package/dist/{visitor-DepQEKyp.js → refs-Dx6U5LoE.js} +116 -121
  25. package/dist/refs-Dx6U5LoE.js.map +1 -0
  26. package/dist/{visitor-B7Zlnp4c.cjs → refs-u5SDdyV7.cjs} +139 -144
  27. package/dist/refs-u5SDdyV7.cjs.map +1 -0
  28. package/dist/{response-BeG6hq2D.cjs → schema-BkvrrOAr.cjs} +171 -153
  29. package/dist/schema-BkvrrOAr.cjs.map +1 -0
  30. package/dist/{response-Rd1uisM1.js → schema-YNbOtTCM.js} +167 -155
  31. package/dist/schema-YNbOtTCM.js.map +1 -0
  32. package/dist/{types-DQTgVSwE.d.ts → types-BP9BZoq-.d.ts} +56 -80
  33. package/dist/types.d.ts +5 -5
  34. package/dist/{utils-DW9rnfsD.js → utils-BJi0y-xg.js} +57 -50
  35. package/dist/utils-BJi0y-xg.js.map +1 -0
  36. package/dist/{utils-BDI3kXlb.cjs → utils-CEepwqmb.cjs} +74 -67
  37. package/dist/utils-CEepwqmb.cjs.map +1 -0
  38. package/dist/utils.cjs +11 -11
  39. package/dist/utils.d.ts +45 -30
  40. package/dist/utils.js +3 -3
  41. package/package.json +1 -2
  42. package/dist/defineMacro-BryDiuQl.cjs.map +0 -1
  43. package/dist/defineMacro-CNkUpxia.js.map +0 -1
  44. package/dist/response-BeG6hq2D.cjs.map +0 -1
  45. package/dist/response-Rd1uisM1.js.map +0 -1
  46. package/dist/utils-BDI3kXlb.cjs.map +0 -1
  47. package/dist/utils-DW9rnfsD.js.map +0 -1
  48. package/dist/visitor-B7Zlnp4c.cjs.map +0 -1
  49. package/dist/visitor-DepQEKyp.js.map +0 -1
  50. package/src/constants.ts +0 -153
  51. package/src/dedupe.ts +0 -231
  52. package/src/defineMacro.ts +0 -139
  53. package/src/defineNode.ts +0 -105
  54. package/src/definePrinter.ts +0 -256
  55. package/src/dialect.ts +0 -76
  56. package/src/factory.ts +0 -44
  57. package/src/guards.ts +0 -28
  58. package/src/index.ts +0 -13
  59. package/src/infer.ts +0 -132
  60. package/src/macros/index.ts +0 -3
  61. package/src/macros/macroDiscriminatorEnum.ts +0 -50
  62. package/src/macros/macroEnumName.ts +0 -33
  63. package/src/macros/macroSimplifyUnion.ts +0 -60
  64. package/src/nodes/base.ts +0 -49
  65. package/src/nodes/code.ts +0 -352
  66. package/src/nodes/content.ts +0 -51
  67. package/src/nodes/file.ts +0 -379
  68. package/src/nodes/function.ts +0 -283
  69. package/src/nodes/index.ts +0 -93
  70. package/src/nodes/input.ts +0 -144
  71. package/src/nodes/operation.ts +0 -165
  72. package/src/nodes/output.ts +0 -49
  73. package/src/nodes/parameter.ts +0 -71
  74. package/src/nodes/property.ts +0 -67
  75. package/src/nodes/requestBody.ts +0 -54
  76. package/src/nodes/response.ts +0 -173
  77. package/src/nodes/schema.ts +0 -732
  78. package/src/registry.ts +0 -75
  79. package/src/signature.ts +0 -207
  80. package/src/types.ts +0 -9
  81. package/src/utils/codegen.ts +0 -104
  82. package/src/utils/extractStringsFromNodes.ts +0 -35
  83. package/src/utils/fileMerge.ts +0 -184
  84. package/src/utils/index.ts +0 -11
  85. package/src/utils/operationParams.ts +0 -353
  86. package/src/utils/refs.ts +0 -138
  87. package/src/utils/schemaGraph.ts +0 -169
  88. package/src/utils/schemaMerge.ts +0 -34
  89. package/src/utils/schemaTraversal.ts +0 -86
  90. package/src/utils/strings.ts +0 -139
  91. package/src/visitor.ts +0 -519
  92. /package/dist/{chunk-CNktS9qV.js → rolldown-runtime-CNktS9qV.js} +0 -0
@@ -1,173 +0,0 @@
1
- import { defineNode } from '../defineNode.ts'
2
- import type { BaseNode } from './base.ts'
3
- import { type ContentNode, createContent } from './content.ts'
4
- import type { SchemaNode } from './schema.ts'
5
-
6
- /**
7
- * All supported HTTP status code literals as strings, as used in API specs
8
- * (for example, `"200"` and `"404"`).
9
- */
10
- type HttpStatusCode =
11
- // 1xx Informational
12
- | '100'
13
- | '101'
14
- | '102'
15
- | '103'
16
- // 2xx Success
17
- | '200'
18
- | '201'
19
- | '202'
20
- | '203'
21
- | '204'
22
- | '205'
23
- | '206'
24
- | '207'
25
- | '208'
26
- | '226'
27
- // 3xx Redirection
28
- | '300'
29
- | '301'
30
- | '302'
31
- | '303'
32
- | '304'
33
- | '305'
34
- | '307'
35
- | '308'
36
- // 4xx Client Error
37
- | '400'
38
- | '401'
39
- | '402'
40
- | '403'
41
- | '404'
42
- | '405'
43
- | '406'
44
- | '407'
45
- | '408'
46
- | '409'
47
- | '410'
48
- | '411'
49
- | '412'
50
- | '413'
51
- | '414'
52
- | '415'
53
- | '416'
54
- | '417'
55
- | '418'
56
- | '421'
57
- | '422'
58
- | '423'
59
- | '424'
60
- | '425'
61
- | '426'
62
- | '428'
63
- | '429'
64
- | '431'
65
- | '451'
66
- // 5xx Server Error
67
- | '500'
68
- | '501'
69
- | '502'
70
- | '503'
71
- | '504'
72
- | '505'
73
- | '506'
74
- | '507'
75
- | '508'
76
- | '510'
77
- | '511'
78
-
79
- /**
80
- * Response status code literal used by operations.
81
- *
82
- * Includes specific HTTP status code strings and `"default"` for catch-all responses.
83
- *
84
- * @example
85
- * ```ts
86
- * const status: StatusCode = '200'
87
- * const fallback: StatusCode = 'default'
88
- * ```
89
- */
90
- export type StatusCode = HttpStatusCode | 'default'
91
-
92
- /**
93
- * AST node representing one operation response variant.
94
- *
95
- * Mirrors {@link OperationNode.requestBody}: the response body schemas live exclusively inside
96
- * the `content` array (one entry per content type), so the same schema is never duplicated at the
97
- * node root and inside `content`.
98
- *
99
- * @example
100
- * ```ts
101
- * const response: ResponseNode = {
102
- * kind: 'Response',
103
- * statusCode: '200',
104
- * content: [{ kind: 'Content', contentType: 'application/json', schema: createSchema({ type: 'string' }) }],
105
- * }
106
- * ```
107
- */
108
- export type ResponseNode = BaseNode & {
109
- /**
110
- * Node kind.
111
- */
112
- kind: 'Response'
113
- /**
114
- * HTTP status code or `'default'` for a fallback response.
115
- */
116
- statusCode: StatusCode
117
- /**
118
- * Optional response description.
119
- */
120
- description?: string
121
- /**
122
- * All available content type entries for this response.
123
- *
124
- * When the adapter `contentType` option is set, this array contains exactly one entry for that
125
- * content type. Otherwise it contains one entry per content type declared in the spec, so that
126
- * plugins can generate a union of response types (e.g. `application/json` and `application/xml`).
127
- * Body-less responses keep a single entry whose `schema` is the empty/`void` placeholder.
128
- *
129
- * @example
130
- * ```ts
131
- * // spec response declares both application/json and application/xml
132
- * response.content[0].contentType // 'application/json'
133
- * response.content[1].contentType // 'application/xml'
134
- * ```
135
- */
136
- content?: Array<ContentNode>
137
- }
138
-
139
- type ResponseInput = Pick<ResponseNode, 'statusCode'> &
140
- Partial<Omit<ResponseNode, 'kind' | 'statusCode' | 'content'>> & {
141
- content?: Array<ContentNode>
142
- schema?: SchemaNode
143
- mediaType?: string | null
144
- keysToOmit?: Array<string> | null
145
- }
146
-
147
- /**
148
- * Definition for the {@link ResponseNode}. A single legacy `schema` (with optional
149
- * `mediaType`/`keysToOmit`) is normalized into one `content` entry.
150
- */
151
- export const responseDef = defineNode<ResponseNode, ResponseInput>({
152
- kind: 'Response',
153
- build: (props) => {
154
- const { schema, mediaType, keysToOmit, content, ...rest } = props
155
- const entries = content ?? (schema ? [createContent({ contentType: mediaType ?? 'application/json', schema, keysToOmit: keysToOmit ?? null })] : undefined)
156
- return { ...rest, content: entries }
157
- },
158
- children: ['content'],
159
- visitorKey: 'response',
160
- })
161
-
162
- /**
163
- * Creates a `ResponseNode`.
164
- *
165
- * @example
166
- * ```ts
167
- * const response = createResponse({
168
- * statusCode: '200',
169
- * content: [createContent({ contentType: 'application/json', schema: createSchema({ type: 'object', properties: [] }) })],
170
- * })
171
- * ```
172
- */
173
- export const createResponse = responseDef.create