@kubb/plugin-ts 5.0.0-alpha.2 → 5.0.0-alpha.21

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 (76) hide show
  1. package/dist/Type-B6fo0gSk.js +120 -0
  2. package/dist/Type-B6fo0gSk.js.map +1 -0
  3. package/dist/Type-oFwUfkZv.cjs +131 -0
  4. package/dist/Type-oFwUfkZv.cjs.map +1 -0
  5. package/dist/builderTs-Cd3juc2G.cjs +120 -0
  6. package/dist/builderTs-Cd3juc2G.cjs.map +1 -0
  7. package/dist/builderTs-DausqHpc.js +116 -0
  8. package/dist/builderTs-DausqHpc.js.map +1 -0
  9. package/dist/builders.cjs +3 -0
  10. package/dist/builders.d.ts +8 -0
  11. package/dist/builders.js +2 -0
  12. package/dist/casing-BJHFg-zZ.js +84 -0
  13. package/dist/casing-BJHFg-zZ.js.map +1 -0
  14. package/dist/casing-DHfdqpLi.cjs +107 -0
  15. package/dist/casing-DHfdqpLi.cjs.map +1 -0
  16. package/dist/chunk-ByKO4r7w.cjs +38 -0
  17. package/dist/components.cjs +3 -2
  18. package/dist/components.d.ts +40 -11
  19. package/dist/components.js +2 -2
  20. package/dist/generators-ByK18qUn.js +551 -0
  21. package/dist/generators-ByK18qUn.js.map +1 -0
  22. package/dist/generators-aSsiTfUO.cjs +563 -0
  23. package/dist/generators-aSsiTfUO.cjs.map +1 -0
  24. package/dist/generators.cjs +3 -2
  25. package/dist/generators.d.ts +7 -492
  26. package/dist/generators.js +2 -2
  27. package/dist/index.cjs +148 -3
  28. package/dist/index.cjs.map +1 -0
  29. package/dist/index.d.ts +1 -1
  30. package/dist/index.js +146 -1
  31. package/dist/index.js.map +1 -0
  32. package/dist/printerTs-BgZucv4T.js +559 -0
  33. package/dist/printerTs-BgZucv4T.js.map +1 -0
  34. package/dist/printerTs-CFXc_LpP.cjs +595 -0
  35. package/dist/printerTs-CFXc_LpP.cjs.map +1 -0
  36. package/dist/printers.cjs +3 -0
  37. package/dist/printers.d.ts +75 -0
  38. package/dist/printers.js +2 -0
  39. package/dist/resolverTsLegacy-DLl854-P.js +185 -0
  40. package/dist/resolverTsLegacy-DLl854-P.js.map +1 -0
  41. package/dist/resolverTsLegacy-sJ16Iqrl.cjs +196 -0
  42. package/dist/resolverTsLegacy-sJ16Iqrl.cjs.map +1 -0
  43. package/dist/resolvers.cjs +4 -0
  44. package/dist/resolvers.d.ts +52 -0
  45. package/dist/resolvers.js +2 -0
  46. package/dist/types-BcyuFDn9.d.ts +344 -0
  47. package/package.json +27 -8
  48. package/src/builders/builderTs.ts +92 -0
  49. package/src/builders/index.ts +1 -0
  50. package/src/components/Enum.tsx +83 -0
  51. package/src/components/Type.tsx +24 -145
  52. package/src/components/index.ts +1 -0
  53. package/src/constants.ts +29 -0
  54. package/src/factory.ts +14 -48
  55. package/src/generators/index.ts +1 -0
  56. package/src/generators/typeGenerator.tsx +119 -403
  57. package/src/generators/typeGeneratorLegacy.tsx +345 -0
  58. package/src/plugin.ts +80 -122
  59. package/src/presets.ts +26 -0
  60. package/src/printers/index.ts +1 -0
  61. package/src/printers/printerTs.ts +389 -0
  62. package/src/resolvers/index.ts +2 -0
  63. package/src/resolvers/resolverTs.ts +107 -0
  64. package/src/resolvers/resolverTsLegacy.ts +87 -0
  65. package/src/types.ts +261 -72
  66. package/dist/components-9wydyqUx.cjs +0 -848
  67. package/dist/components-9wydyqUx.cjs.map +0 -1
  68. package/dist/components-LmqJfxMv.js +0 -721
  69. package/dist/components-LmqJfxMv.js.map +0 -1
  70. package/dist/plugin-CNkzbtpl.cjs +0 -508
  71. package/dist/plugin-CNkzbtpl.cjs.map +0 -1
  72. package/dist/plugin-DoLrDl9P.js +0 -476
  73. package/dist/plugin-DoLrDl9P.js.map +0 -1
  74. package/dist/types-BpeKGgCn.d.ts +0 -170
  75. package/src/parser.ts +0 -396
  76. package/src/printer.ts +0 -221
@@ -0,0 +1,563 @@
1
+ const require_chunk = require("./chunk-ByKO4r7w.cjs");
2
+ const require_builderTs = require("./builderTs-Cd3juc2G.cjs");
3
+ const require_casing = require("./casing-DHfdqpLi.cjs");
4
+ const require_printerTs = require("./printerTs-CFXc_LpP.cjs");
5
+ const require_Type = require("./Type-oFwUfkZv.cjs");
6
+ const require_resolverTsLegacy = require("./resolverTsLegacy-sJ16Iqrl.cjs");
7
+ let node_path = require("node:path");
8
+ node_path = require_chunk.__toESM(node_path);
9
+ let _kubb_ast = require("@kubb/ast");
10
+ let _kubb_core = require("@kubb/core");
11
+ let _kubb_react_fabric = require("@kubb/react-fabric");
12
+ let _kubb_react_fabric_jsx_runtime = require("@kubb/react-fabric/jsx-runtime");
13
+ //#region src/generators/typeGenerator.tsx
14
+ const typeGenerator = (0, _kubb_core.defineGenerator)({
15
+ name: "typescript",
16
+ type: "react",
17
+ Operation({ node, adapter, options, config }) {
18
+ const { enumType, enumKeyCasing, optionalType, arrayType, syntaxType, paramsCasing, group, output, resolver, transformers = [] } = options;
19
+ const root = node_path.default.resolve(config.root, config.output.path);
20
+ const mode = (0, _kubb_core.getMode)(node_path.default.resolve(root, output.path));
21
+ const file = resolver.resolveFile({
22
+ name: node.operationId,
23
+ extname: ".ts",
24
+ tag: node.tags[0] ?? "default",
25
+ path: node.path
26
+ }, {
27
+ root,
28
+ output,
29
+ group
30
+ });
31
+ const params = (0, _kubb_ast.caseParams)(node.parameters, paramsCasing);
32
+ function renderSchemaType({ node: schemaNode, name, typedName, description, keysToOmit }) {
33
+ if (!schemaNode) return null;
34
+ const transformedNode = (0, _kubb_ast.transform)(schemaNode, (0, _kubb_ast.composeTransformers)(...transformers));
35
+ const imports = adapter.getImports(transformedNode, (schemaName) => ({
36
+ name: resolver.default(schemaName, "type"),
37
+ path: resolver.resolveFile({
38
+ name: schemaName,
39
+ extname: ".ts"
40
+ }, {
41
+ root,
42
+ output,
43
+ group
44
+ }).path
45
+ }));
46
+ return /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsxs)(_kubb_react_fabric_jsx_runtime.Fragment, { children: [mode === "split" && imports.map((imp) => /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(_kubb_react_fabric.File.Import, {
47
+ root: file.path,
48
+ path: imp.path,
49
+ name: imp.name,
50
+ isTypeOnly: true
51
+ }, [
52
+ name,
53
+ imp.path,
54
+ imp.isTypeOnly
55
+ ].join("-"))), /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(require_Type.Type, {
56
+ name,
57
+ typedName,
58
+ node: transformedNode,
59
+ description,
60
+ enumType,
61
+ enumKeyCasing,
62
+ optionalType,
63
+ arrayType,
64
+ syntaxType,
65
+ resolver,
66
+ keysToOmit
67
+ })] });
68
+ }
69
+ const paramTypes = params.map((param) => renderSchemaType({
70
+ node: param.schema,
71
+ name: resolver.resolveParamName(node, param),
72
+ typedName: resolver.resolveParamTypedName(node, param)
73
+ }));
74
+ const requestType = node.requestBody?.schema ? renderSchemaType({
75
+ node: node.requestBody.schema,
76
+ name: resolver.resolveDataName(node),
77
+ typedName: resolver.resolveDataTypedName(node),
78
+ description: node.requestBody.description ?? node.requestBody.schema.description,
79
+ keysToOmit: node.requestBody.keysToOmit
80
+ }) : null;
81
+ const responseTypes = node.responses.map((res) => renderSchemaType({
82
+ node: res.schema,
83
+ name: resolver.resolveResponseStatusName(node, res.statusCode),
84
+ typedName: resolver.resolveResponseStatusTypedName(node, res.statusCode),
85
+ description: res.description,
86
+ keysToOmit: res.keysToOmit
87
+ }));
88
+ const dataType = renderSchemaType({
89
+ node: require_builderTs.builderTs.buildData({
90
+ node: {
91
+ ...node,
92
+ parameters: params
93
+ },
94
+ resolver
95
+ }),
96
+ name: resolver.resolveRequestConfigName(node),
97
+ typedName: resolver.resolveRequestConfigTypedName(node)
98
+ });
99
+ const responsesType = renderSchemaType({
100
+ node: require_builderTs.builderTs.buildResponses({
101
+ node,
102
+ resolver
103
+ }),
104
+ name: resolver.resolveResponsesName(node),
105
+ typedName: resolver.resolveResponsesTypedName(node)
106
+ });
107
+ const responseType = renderSchemaType({
108
+ node: require_builderTs.builderTs.buildResponseUnion({
109
+ node,
110
+ resolver
111
+ }),
112
+ name: resolver.resolveResponseName(node),
113
+ typedName: resolver.resolveResponseTypedName(node),
114
+ description: "Union of all possible responses"
115
+ });
116
+ return /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsxs)(_kubb_react_fabric.File, {
117
+ baseName: file.baseName,
118
+ path: file.path,
119
+ meta: file.meta,
120
+ banner: resolver.resolveBanner(adapter.rootNode, {
121
+ output,
122
+ config
123
+ }),
124
+ footer: resolver.resolveFooter(adapter.rootNode, {
125
+ output,
126
+ config
127
+ }),
128
+ children: [
129
+ paramTypes,
130
+ responseTypes,
131
+ requestType,
132
+ dataType,
133
+ responsesType,
134
+ responseType
135
+ ]
136
+ });
137
+ },
138
+ Schema({ node, adapter, options, config }) {
139
+ const { enumType, enumKeyCasing, syntaxType, optionalType, arrayType, output, group, resolver, transformers = [] } = options;
140
+ const root = node_path.default.resolve(config.root, config.output.path);
141
+ const mode = (0, _kubb_core.getMode)(node_path.default.resolve(root, output.path));
142
+ if (!node.name) return;
143
+ const transformedNode = (0, _kubb_ast.transform)(node, (0, _kubb_ast.composeTransformers)(...transformers));
144
+ const imports = adapter.getImports(transformedNode, (schemaName) => ({
145
+ name: resolver.default(schemaName, "type"),
146
+ path: resolver.resolveFile({
147
+ name: schemaName,
148
+ extname: ".ts"
149
+ }, {
150
+ root,
151
+ output,
152
+ group
153
+ }).path
154
+ }));
155
+ const isEnumSchema = !!(0, _kubb_ast.narrowSchema)(node, _kubb_ast.schemaTypes.enum);
156
+ const typedName = require_printerTs.ENUM_TYPES_WITH_KEY_SUFFIX.has(enumType) && isEnumSchema ? resolver.resolveEnumKeyTypedName(node) : resolver.resolveTypedName(node.name);
157
+ const type = {
158
+ name: resolver.resolveName(node.name),
159
+ typedName,
160
+ file: resolver.resolveFile({
161
+ name: node.name,
162
+ extname: ".ts"
163
+ }, {
164
+ root,
165
+ output,
166
+ group
167
+ })
168
+ };
169
+ return /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsxs)(_kubb_react_fabric.File, {
170
+ baseName: type.file.baseName,
171
+ path: type.file.path,
172
+ meta: type.file.meta,
173
+ banner: resolver.resolveBanner(adapter.rootNode, {
174
+ output,
175
+ config
176
+ }),
177
+ footer: resolver.resolveFooter(adapter.rootNode, {
178
+ output,
179
+ config
180
+ }),
181
+ children: [mode === "split" && imports.map((imp) => /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(_kubb_react_fabric.File.Import, {
182
+ root: type.file.path,
183
+ path: imp.path,
184
+ name: imp.name,
185
+ isTypeOnly: true
186
+ }, [
187
+ node.name,
188
+ imp.path,
189
+ imp.isTypeOnly
190
+ ].join("-"))), /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(require_Type.Type, {
191
+ name: type.name,
192
+ typedName: type.typedName,
193
+ node: transformedNode,
194
+ enumType,
195
+ enumKeyCasing,
196
+ optionalType,
197
+ arrayType,
198
+ syntaxType,
199
+ resolver
200
+ })]
201
+ });
202
+ }
203
+ });
204
+ //#endregion
205
+ //#region src/generators/typeGeneratorLegacy.tsx
206
+ function buildGroupedParamsSchema({ params, parentName }) {
207
+ return (0, _kubb_ast.createSchema)({
208
+ type: "object",
209
+ properties: params.map((param) => {
210
+ let schema = param.schema;
211
+ if ((0, _kubb_ast.narrowSchema)(schema, "enum") && !schema.name && parentName) schema = {
212
+ ...schema,
213
+ name: require_casing.pascalCase([
214
+ parentName,
215
+ param.name,
216
+ "enum"
217
+ ].join(" "))
218
+ };
219
+ return (0, _kubb_ast.createProperty)({
220
+ name: param.name,
221
+ required: param.required,
222
+ schema
223
+ });
224
+ })
225
+ });
226
+ }
227
+ function buildLegacyResponsesSchemaNode({ node, resolver }) {
228
+ const isGet = node.method.toLowerCase() === "get";
229
+ const successResponses = node.responses.filter((res) => {
230
+ const code = Number(res.statusCode);
231
+ return !Number.isNaN(code) && code >= 200 && code < 300;
232
+ });
233
+ const errorResponses = node.responses.filter((res) => res.statusCode === "default" || Number(res.statusCode) >= 400);
234
+ const responseSchema = successResponses.length > 0 ? successResponses.length === 1 ? (0, _kubb_ast.createSchema)({
235
+ type: "ref",
236
+ name: resolver.resolveResponseStatusTypedName(node, successResponses[0].statusCode)
237
+ }) : (0, _kubb_ast.createSchema)({
238
+ type: "union",
239
+ members: successResponses.map((res) => (0, _kubb_ast.createSchema)({
240
+ type: "ref",
241
+ name: resolver.resolveResponseStatusTypedName(node, res.statusCode)
242
+ }))
243
+ }) : (0, _kubb_ast.createSchema)({ type: "any" });
244
+ const errorsSchema = errorResponses.length > 0 ? errorResponses.length === 1 ? (0, _kubb_ast.createSchema)({
245
+ type: "ref",
246
+ name: resolver.resolveResponseStatusTypedName(node, errorResponses[0].statusCode)
247
+ }) : (0, _kubb_ast.createSchema)({
248
+ type: "union",
249
+ members: errorResponses.map((res) => (0, _kubb_ast.createSchema)({
250
+ type: "ref",
251
+ name: resolver.resolveResponseStatusTypedName(node, res.statusCode)
252
+ }))
253
+ }) : (0, _kubb_ast.createSchema)({ type: "any" });
254
+ const properties = [(0, _kubb_ast.createProperty)({
255
+ name: "Response",
256
+ required: true,
257
+ schema: responseSchema
258
+ })];
259
+ if (!isGet && node.requestBody?.schema) properties.push((0, _kubb_ast.createProperty)({
260
+ name: "Request",
261
+ required: true,
262
+ schema: (0, _kubb_ast.createSchema)({
263
+ type: "ref",
264
+ name: resolver.resolveDataTypedName(node)
265
+ })
266
+ }));
267
+ if (node.parameters.some((p) => p.in === "query") && resolver.resolveQueryParamsTypedName) properties.push((0, _kubb_ast.createProperty)({
268
+ name: "QueryParams",
269
+ required: true,
270
+ schema: (0, _kubb_ast.createSchema)({
271
+ type: "ref",
272
+ name: resolver.resolveQueryParamsTypedName(node)
273
+ })
274
+ }));
275
+ if (node.parameters.some((p) => p.in === "path") && resolver.resolvePathParamsTypedName) properties.push((0, _kubb_ast.createProperty)({
276
+ name: "PathParams",
277
+ required: true,
278
+ schema: (0, _kubb_ast.createSchema)({
279
+ type: "ref",
280
+ name: resolver.resolvePathParamsTypedName(node)
281
+ })
282
+ }));
283
+ if (node.parameters.some((p) => p.in === "header") && resolver.resolveHeaderParamsTypedName) properties.push((0, _kubb_ast.createProperty)({
284
+ name: "HeaderParams",
285
+ required: true,
286
+ schema: (0, _kubb_ast.createSchema)({
287
+ type: "ref",
288
+ name: resolver.resolveHeaderParamsTypedName(node)
289
+ })
290
+ }));
291
+ properties.push((0, _kubb_ast.createProperty)({
292
+ name: "Errors",
293
+ required: true,
294
+ schema: errorsSchema
295
+ }));
296
+ return (0, _kubb_ast.createSchema)({
297
+ type: "object",
298
+ properties
299
+ });
300
+ }
301
+ function buildLegacyResponseUnionSchemaNode({ node, resolver }) {
302
+ const successResponses = node.responses.filter((res) => {
303
+ const code = Number(res.statusCode);
304
+ return !Number.isNaN(code) && code >= 200 && code < 300;
305
+ });
306
+ if (successResponses.length === 0) return (0, _kubb_ast.createSchema)({ type: "any" });
307
+ if (successResponses.length === 1) return (0, _kubb_ast.createSchema)({
308
+ type: "ref",
309
+ name: resolver.resolveResponseStatusTypedName(node, successResponses[0].statusCode)
310
+ });
311
+ return (0, _kubb_ast.createSchema)({
312
+ type: "union",
313
+ members: successResponses.map((res) => (0, _kubb_ast.createSchema)({
314
+ type: "ref",
315
+ name: resolver.resolveResponseStatusTypedName(node, res.statusCode)
316
+ }))
317
+ });
318
+ }
319
+ function nameUnnamedEnums(node, parentName) {
320
+ return (0, _kubb_ast.transform)(node, {
321
+ schema(n) {
322
+ const enumNode = (0, _kubb_ast.narrowSchema)(n, "enum");
323
+ if (enumNode && !enumNode.name) return {
324
+ ...enumNode,
325
+ name: require_casing.pascalCase([parentName, "enum"].join(" "))
326
+ };
327
+ },
328
+ property(p) {
329
+ const enumNode = (0, _kubb_ast.narrowSchema)(p.schema, "enum");
330
+ if (enumNode && !enumNode.name) return {
331
+ ...p,
332
+ schema: {
333
+ ...enumNode,
334
+ name: require_casing.pascalCase([
335
+ parentName,
336
+ p.name,
337
+ "enum"
338
+ ].join(" "))
339
+ }
340
+ };
341
+ }
342
+ });
343
+ }
344
+ const typeGeneratorLegacy = (0, _kubb_core.defineGenerator)({
345
+ name: "typescript-legacy",
346
+ type: "react",
347
+ Operation({ node, adapter, options, config }) {
348
+ const { enumType, enumKeyCasing, optionalType, arrayType, syntaxType, paramsCasing, group, output, resolver, transformers = [] } = options;
349
+ const root = node_path.default.resolve(config.root, config.output.path);
350
+ const mode = (0, _kubb_core.getMode)(node_path.default.resolve(root, output.path));
351
+ const file = resolver.resolveFile({
352
+ name: node.operationId,
353
+ extname: ".ts",
354
+ tag: node.tags[0] ?? "default",
355
+ path: node.path
356
+ }, {
357
+ root,
358
+ output,
359
+ group
360
+ });
361
+ const params = (0, _kubb_ast.caseParams)(node.parameters, paramsCasing);
362
+ function renderSchemaType({ node: schemaNode, name, typedName, description, keysToOmit }) {
363
+ if (!schemaNode) return null;
364
+ const transformedNode = (0, _kubb_ast.transform)(schemaNode, (0, _kubb_ast.composeTransformers)(...transformers));
365
+ const imports = adapter.getImports(transformedNode, (schemaName) => ({
366
+ name: resolver.default(schemaName, "type"),
367
+ path: resolver.resolveFile({
368
+ name: schemaName,
369
+ extname: ".ts"
370
+ }, {
371
+ root,
372
+ output,
373
+ group
374
+ }).path
375
+ }));
376
+ return /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsxs)(_kubb_react_fabric_jsx_runtime.Fragment, { children: [mode === "split" && imports.map((imp) => /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(_kubb_react_fabric.File.Import, {
377
+ root: file.path,
378
+ path: imp.path,
379
+ name: imp.name,
380
+ isTypeOnly: true
381
+ }, [
382
+ name,
383
+ imp.path,
384
+ imp.isTypeOnly
385
+ ].join("-"))), /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(require_Type.Type, {
386
+ name,
387
+ typedName,
388
+ node: transformedNode,
389
+ description,
390
+ enumType,
391
+ enumKeyCasing,
392
+ optionalType,
393
+ arrayType,
394
+ syntaxType,
395
+ resolver,
396
+ keysToOmit
397
+ })] });
398
+ }
399
+ const pathParams = params.filter((p) => p.in === "path");
400
+ const queryParams = params.filter((p) => p.in === "query");
401
+ const headerParams = params.filter((p) => p.in === "header");
402
+ const responseTypes = node.responses.map((res) => {
403
+ const responseName = resolver.resolveResponseStatusName(node, res.statusCode);
404
+ const baseResponseName = require_resolverTsLegacy.resolverTsLegacy.resolveResponseStatusName(node, res.statusCode);
405
+ return renderSchemaType({
406
+ node: res.schema ? nameUnnamedEnums(res.schema, baseResponseName) : res.schema,
407
+ name: responseName,
408
+ typedName: resolver.resolveResponseStatusTypedName(node, res.statusCode),
409
+ description: res.description,
410
+ keysToOmit: res.keysToOmit
411
+ });
412
+ });
413
+ const requestType = node.requestBody?.schema ? renderSchemaType({
414
+ node: nameUnnamedEnums(node.requestBody.schema, require_resolverTsLegacy.resolverTsLegacy.resolveDataName(node)),
415
+ name: resolver.resolveDataName(node),
416
+ typedName: resolver.resolveDataTypedName(node),
417
+ description: node.requestBody.description ?? node.requestBody.schema.description,
418
+ keysToOmit: node.requestBody.keysToOmit
419
+ }) : null;
420
+ const legacyParamTypes = [
421
+ pathParams.length > 0 ? renderSchemaType({
422
+ node: buildGroupedParamsSchema({
423
+ params: pathParams,
424
+ parentName: require_resolverTsLegacy.resolverTsLegacy.resolvePathParamsName(node)
425
+ }),
426
+ name: resolver.resolvePathParamsName(node),
427
+ typedName: resolver.resolvePathParamsTypedName(node)
428
+ }) : null,
429
+ queryParams.length > 0 ? renderSchemaType({
430
+ node: buildGroupedParamsSchema({
431
+ params: queryParams,
432
+ parentName: require_resolverTsLegacy.resolverTsLegacy.resolveQueryParamsName(node)
433
+ }),
434
+ name: resolver.resolveQueryParamsName(node),
435
+ typedName: resolver.resolveQueryParamsTypedName(node)
436
+ }) : null,
437
+ headerParams.length > 0 ? renderSchemaType({
438
+ node: buildGroupedParamsSchema({
439
+ params: headerParams,
440
+ parentName: require_resolverTsLegacy.resolverTsLegacy.resolveHeaderParamsName(node)
441
+ }),
442
+ name: resolver.resolveHeaderParamsName(node),
443
+ typedName: resolver.resolveHeaderParamsTypedName(node)
444
+ }) : null
445
+ ];
446
+ const legacyResponsesType = renderSchemaType({
447
+ node: buildLegacyResponsesSchemaNode({
448
+ node,
449
+ resolver
450
+ }),
451
+ name: resolver.resolveResponsesName(node),
452
+ typedName: resolver.resolveResponsesTypedName(node)
453
+ });
454
+ const legacyResponseType = renderSchemaType({
455
+ node: buildLegacyResponseUnionSchemaNode({
456
+ node,
457
+ resolver
458
+ }),
459
+ name: resolver.resolveResponseName(node),
460
+ typedName: resolver.resolveResponseTypedName(node)
461
+ });
462
+ return /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsxs)(_kubb_react_fabric.File, {
463
+ baseName: file.baseName,
464
+ path: file.path,
465
+ meta: file.meta,
466
+ banner: resolver.resolveBanner(adapter.rootNode, {
467
+ output,
468
+ config
469
+ }),
470
+ footer: resolver.resolveFooter(adapter.rootNode, {
471
+ output,
472
+ config
473
+ }),
474
+ children: [
475
+ legacyParamTypes,
476
+ responseTypes,
477
+ requestType,
478
+ legacyResponseType,
479
+ legacyResponsesType
480
+ ]
481
+ });
482
+ },
483
+ Schema({ node, adapter, options, config }) {
484
+ const { enumType, enumKeyCasing, syntaxType, optionalType, arrayType, output, group, resolver, transformers = [] } = options;
485
+ const root = node_path.default.resolve(config.root, config.output.path);
486
+ const mode = (0, _kubb_core.getMode)(node_path.default.resolve(root, output.path));
487
+ if (!node.name) return;
488
+ const transformedNode = (0, _kubb_ast.transform)(node, (0, _kubb_ast.composeTransformers)(...transformers));
489
+ const imports = adapter.getImports(transformedNode, (schemaName) => ({
490
+ name: resolver.default(schemaName, "type"),
491
+ path: resolver.resolveFile({
492
+ name: schemaName,
493
+ extname: ".ts"
494
+ }, {
495
+ root,
496
+ output,
497
+ group
498
+ }).path
499
+ }));
500
+ const isEnumSchema = !!(0, _kubb_ast.narrowSchema)(node, _kubb_ast.schemaTypes.enum);
501
+ const typedName = require_printerTs.ENUM_TYPES_WITH_KEY_SUFFIX.has(enumType) && isEnumSchema ? resolver.resolveEnumKeyTypedName(node) : resolver.resolveTypedName(node.name);
502
+ const type = {
503
+ name: resolver.resolveName(node.name),
504
+ typedName,
505
+ file: resolver.resolveFile({
506
+ name: node.name,
507
+ extname: ".ts"
508
+ }, {
509
+ root,
510
+ output,
511
+ group
512
+ })
513
+ };
514
+ return /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsxs)(_kubb_react_fabric.File, {
515
+ baseName: type.file.baseName,
516
+ path: type.file.path,
517
+ meta: type.file.meta,
518
+ banner: resolver.resolveBanner(adapter.rootNode, {
519
+ output,
520
+ config
521
+ }),
522
+ footer: resolver.resolveFooter(adapter.rootNode, {
523
+ output,
524
+ config
525
+ }),
526
+ children: [mode === "split" && imports.map((imp) => /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(_kubb_react_fabric.File.Import, {
527
+ root: type.file.path,
528
+ path: imp.path,
529
+ name: imp.name,
530
+ isTypeOnly: true
531
+ }, [
532
+ node.name,
533
+ imp.path,
534
+ imp.isTypeOnly
535
+ ].join("-"))), /* @__PURE__ */ (0, _kubb_react_fabric_jsx_runtime.jsx)(require_Type.Type, {
536
+ name: type.name,
537
+ typedName: type.typedName,
538
+ node: transformedNode,
539
+ enumType,
540
+ enumKeyCasing,
541
+ optionalType,
542
+ arrayType,
543
+ syntaxType,
544
+ resolver
545
+ })]
546
+ });
547
+ }
548
+ });
549
+ //#endregion
550
+ Object.defineProperty(exports, "typeGenerator", {
551
+ enumerable: true,
552
+ get: function() {
553
+ return typeGenerator;
554
+ }
555
+ });
556
+ Object.defineProperty(exports, "typeGeneratorLegacy", {
557
+ enumerable: true,
558
+ get: function() {
559
+ return typeGeneratorLegacy;
560
+ }
561
+ });
562
+
563
+ //# sourceMappingURL=generators-aSsiTfUO.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generators-aSsiTfUO.cjs","names":["path","File","Type","builderTs","schemaTypes","ENUM_TYPES_WITH_KEY_SUFFIX","pascalCase","path","File","Type","resolverTsLegacy","schemaTypes","ENUM_TYPES_WITH_KEY_SUFFIX"],"sources":["../src/generators/typeGenerator.tsx","../src/generators/typeGeneratorLegacy.tsx"],"sourcesContent":["import path from 'node:path'\nimport { caseParams, composeTransformers, narrowSchema, schemaTypes, transform } from '@kubb/ast'\nimport type { SchemaNode } from '@kubb/ast/types'\nimport { defineGenerator, getMode } from '@kubb/core'\nimport { File } from '@kubb/react-fabric'\nimport { builderTs } from '../builders/builderTs.ts'\nimport { Type } from '../components/Type.tsx'\nimport { ENUM_TYPES_WITH_KEY_SUFFIX } from '../constants.ts'\nimport type { PluginTs } from '../types'\n\nexport const typeGenerator = defineGenerator<PluginTs>({\n name: 'typescript',\n type: 'react',\n Operation({ node, adapter, options, config }) {\n const { enumType, enumKeyCasing, optionalType, arrayType, syntaxType, paramsCasing, group, output, resolver, transformers = [] } = options\n\n const root = path.resolve(config.root, config.output.path)\n const mode = getMode(path.resolve(root, output.path))\n\n const file = resolver.resolveFile({ name: node.operationId, extname: '.ts', tag: node.tags[0] ?? 'default', path: node.path }, { root, output, group })\n\n const params = caseParams(node.parameters, paramsCasing)\n\n function renderSchemaType({\n node: schemaNode,\n name,\n typedName,\n description,\n keysToOmit,\n }: {\n node: SchemaNode | null\n name: string\n typedName: string\n description?: string\n keysToOmit?: Array<string>\n }) {\n if (!schemaNode) {\n return null\n }\n\n const transformedNode = transform(schemaNode, composeTransformers(...transformers))\n\n const imports = adapter.getImports(transformedNode, (schemaName) => ({\n name: resolver.default(schemaName, 'type'),\n path: resolver.resolveFile({ name: schemaName, extname: '.ts' }, { root, output, group }).path,\n }))\n\n return (\n <>\n {mode === 'split' &&\n imports.map((imp) => <File.Import key={[name, imp.path, imp.isTypeOnly].join('-')} root={file.path} path={imp.path} name={imp.name} isTypeOnly />)}\n <Type\n name={name}\n typedName={typedName}\n node={transformedNode}\n description={description}\n enumType={enumType}\n enumKeyCasing={enumKeyCasing}\n optionalType={optionalType}\n arrayType={arrayType}\n syntaxType={syntaxType}\n resolver={resolver}\n keysToOmit={keysToOmit}\n />\n </>\n )\n }\n\n const paramTypes = params.map((param) =>\n renderSchemaType({\n node: param.schema,\n name: resolver.resolveParamName(node, param),\n typedName: resolver.resolveParamTypedName(node, param),\n }),\n )\n\n const requestType = node.requestBody?.schema\n ? renderSchemaType({\n node: node.requestBody.schema,\n name: resolver.resolveDataName(node),\n typedName: resolver.resolveDataTypedName(node),\n description: node.requestBody.description ?? node.requestBody.schema.description,\n keysToOmit: node.requestBody.keysToOmit,\n })\n : null\n\n const responseTypes = node.responses.map((res) =>\n renderSchemaType({\n node: res.schema,\n name: resolver.resolveResponseStatusName(node, res.statusCode),\n typedName: resolver.resolveResponseStatusTypedName(node, res.statusCode),\n description: res.description,\n keysToOmit: res.keysToOmit,\n }),\n )\n\n const dataType = renderSchemaType({\n node: builderTs.buildData({ node: { ...node, parameters: params }, resolver }),\n name: resolver.resolveRequestConfigName(node),\n typedName: resolver.resolveRequestConfigTypedName(node),\n })\n\n const responsesType = renderSchemaType({\n node: builderTs.buildResponses({ node, resolver }),\n name: resolver.resolveResponsesName(node),\n typedName: resolver.resolveResponsesTypedName(node),\n })\n\n const responseType = renderSchemaType({\n node: builderTs.buildResponseUnion({ node, resolver }),\n name: resolver.resolveResponseName(node),\n typedName: resolver.resolveResponseTypedName(node),\n description: 'Union of all possible responses',\n })\n\n return (\n <File\n baseName={file.baseName}\n path={file.path}\n meta={file.meta}\n banner={resolver.resolveBanner(adapter.rootNode, { output, config })}\n footer={resolver.resolveFooter(adapter.rootNode, { output, config })}\n >\n {paramTypes}\n {responseTypes}\n {requestType}\n {dataType}\n {responsesType}\n {responseType}\n </File>\n )\n },\n Schema({ node, adapter, options, config }) {\n const { enumType, enumKeyCasing, syntaxType, optionalType, arrayType, output, group, resolver, transformers = [] } = options\n\n const root = path.resolve(config.root, config.output.path)\n const mode = getMode(path.resolve(root, output.path))\n\n if (!node.name) {\n return\n }\n\n const transformedNode = transform(node, composeTransformers(...transformers))\n\n const imports = adapter.getImports(transformedNode, (schemaName) => ({\n name: resolver.default(schemaName, 'type'),\n path: resolver.resolveFile({ name: schemaName, extname: '.ts' }, { root, output, group }).path,\n }))\n\n const isEnumSchema = !!narrowSchema(node, schemaTypes.enum)\n\n const typedName = ENUM_TYPES_WITH_KEY_SUFFIX.has(enumType) && isEnumSchema ? resolver.resolveEnumKeyTypedName(node) : resolver.resolveTypedName(node.name)\n\n const type = {\n name: resolver.resolveName(node.name),\n typedName,\n file: resolver.resolveFile({ name: node.name, extname: '.ts' }, { root, output, group }),\n } as const\n\n return (\n <File\n baseName={type.file.baseName}\n path={type.file.path}\n meta={type.file.meta}\n banner={resolver.resolveBanner(adapter.rootNode, { output, config })}\n footer={resolver.resolveFooter(adapter.rootNode, { output, config })}\n >\n {mode === 'split' &&\n imports.map((imp) => (\n <File.Import key={[node.name, imp.path, imp.isTypeOnly].join('-')} root={type.file.path} path={imp.path} name={imp.name} isTypeOnly />\n ))}\n <Type\n name={type.name}\n typedName={type.typedName}\n node={transformedNode}\n enumType={enumType}\n enumKeyCasing={enumKeyCasing}\n optionalType={optionalType}\n arrayType={arrayType}\n syntaxType={syntaxType}\n resolver={resolver}\n />\n </File>\n )\n },\n})\n","import path from 'node:path'\nimport { pascalCase } from '@internals/utils'\nimport { caseParams, composeTransformers, createProperty, createSchema, narrowSchema, schemaTypes, transform } from '@kubb/ast'\nimport type { OperationNode, ParameterNode, SchemaNode } from '@kubb/ast/types'\nimport { defineGenerator, getMode } from '@kubb/core'\nimport { File } from '@kubb/react-fabric'\nimport { Type } from '../components/Type.tsx'\nimport { ENUM_TYPES_WITH_KEY_SUFFIX } from '../constants.ts'\nimport { resolverTsLegacy } from '../resolvers/resolverTsLegacy.ts'\nimport type { PluginTs, ResolverTs } from '../types'\n\ntype BuildGroupedParamsSchemaOptions = {\n params: Array<ParameterNode>\n parentName?: string\n}\n\nfunction buildGroupedParamsSchema({ params, parentName }: BuildGroupedParamsSchemaOptions): SchemaNode {\n return createSchema({\n type: 'object',\n properties: params.map((param) => {\n let schema = param.schema\n if (narrowSchema(schema, 'enum') && !schema.name && parentName) {\n schema = { ...schema, name: pascalCase([parentName, param.name, 'enum'].join(' ')) }\n }\n return createProperty({\n name: param.name,\n required: param.required,\n schema,\n })\n }),\n })\n}\n\ntype BuildOperationSchemaOptions = {\n node: OperationNode\n resolver: ResolverTs\n}\n\nfunction buildLegacyResponsesSchemaNode({ node, resolver }: BuildOperationSchemaOptions): SchemaNode | null {\n const isGet = node.method.toLowerCase() === 'get'\n const successResponses = node.responses.filter((res) => {\n const code = Number(res.statusCode)\n return !Number.isNaN(code) && code >= 200 && code < 300\n })\n const errorResponses = node.responses.filter((res) => res.statusCode === 'default' || Number(res.statusCode) >= 400)\n\n const responseSchema =\n successResponses.length > 0\n ? successResponses.length === 1\n ? createSchema({ type: 'ref', name: resolver.resolveResponseStatusTypedName(node, successResponses[0]!.statusCode) })\n : createSchema({\n type: 'union',\n members: successResponses.map((res) => createSchema({ type: 'ref', name: resolver.resolveResponseStatusTypedName(node, res.statusCode) })),\n })\n : createSchema({ type: 'any' })\n\n const errorsSchema =\n errorResponses.length > 0\n ? errorResponses.length === 1\n ? createSchema({ type: 'ref', name: resolver.resolveResponseStatusTypedName(node, errorResponses[0]!.statusCode) })\n : createSchema({\n type: 'union',\n members: errorResponses.map((res) => createSchema({ type: 'ref', name: resolver.resolveResponseStatusTypedName(node, res.statusCode) })),\n })\n : createSchema({ type: 'any' })\n\n const properties = [createProperty({ name: 'Response', required: true, schema: responseSchema })]\n\n if (!isGet && node.requestBody?.schema) {\n properties.push(\n createProperty({\n name: 'Request',\n required: true,\n schema: createSchema({ type: 'ref', name: resolver.resolveDataTypedName(node) }),\n }),\n )\n }\n\n if (node.parameters.some((p) => p.in === 'query') && resolver.resolveQueryParamsTypedName) {\n properties.push(\n createProperty({\n name: 'QueryParams',\n required: true,\n schema: createSchema({ type: 'ref', name: resolver.resolveQueryParamsTypedName(node) }),\n }),\n )\n }\n\n if (node.parameters.some((p) => p.in === 'path') && resolver.resolvePathParamsTypedName) {\n properties.push(\n createProperty({\n name: 'PathParams',\n required: true,\n schema: createSchema({ type: 'ref', name: resolver.resolvePathParamsTypedName(node) }),\n }),\n )\n }\n\n if (node.parameters.some((p) => p.in === 'header') && resolver.resolveHeaderParamsTypedName) {\n properties.push(\n createProperty({\n name: 'HeaderParams',\n required: true,\n schema: createSchema({ type: 'ref', name: resolver.resolveHeaderParamsTypedName(node) }),\n }),\n )\n }\n\n properties.push(createProperty({ name: 'Errors', required: true, schema: errorsSchema }))\n\n return createSchema({ type: 'object', properties })\n}\n\nfunction buildLegacyResponseUnionSchemaNode({ node, resolver }: BuildOperationSchemaOptions): SchemaNode {\n const successResponses = node.responses.filter((res) => {\n const code = Number(res.statusCode)\n return !Number.isNaN(code) && code >= 200 && code < 300\n })\n\n if (successResponses.length === 0) {\n return createSchema({ type: 'any' })\n }\n\n if (successResponses.length === 1) {\n return createSchema({ type: 'ref', name: resolver.resolveResponseStatusTypedName(node, successResponses[0]!.statusCode) })\n }\n\n return createSchema({\n type: 'union',\n members: successResponses.map((res) => createSchema({ type: 'ref', name: resolver.resolveResponseStatusTypedName(node, res.statusCode) })),\n })\n}\n\nfunction nameUnnamedEnums(node: SchemaNode, parentName: string): SchemaNode {\n return transform(node, {\n schema(n) {\n const enumNode = narrowSchema(n, 'enum')\n if (enumNode && !enumNode.name) {\n return { ...enumNode, name: pascalCase([parentName, 'enum'].join(' ')) }\n }\n return undefined\n },\n property(p) {\n const enumNode = narrowSchema(p.schema, 'enum')\n if (enumNode && !enumNode.name) {\n return {\n ...p,\n schema: { ...enumNode, name: pascalCase([parentName, p.name, 'enum'].join(' ')) },\n }\n }\n return undefined\n },\n })\n}\n\nexport const typeGeneratorLegacy = defineGenerator<PluginTs>({\n name: 'typescript-legacy',\n type: 'react',\n Operation({ node, adapter, options, config }) {\n const { enumType, enumKeyCasing, optionalType, arrayType, syntaxType, paramsCasing, group, output, resolver, transformers = [] } = options\n\n const root = path.resolve(config.root, config.output.path)\n const mode = getMode(path.resolve(root, output.path))\n\n const file = resolver.resolveFile({ name: node.operationId, extname: '.ts', tag: node.tags[0] ?? 'default', path: node.path }, { root, output, group })\n const params = caseParams(node.parameters, paramsCasing)\n\n function renderSchemaType({\n node: schemaNode,\n name,\n typedName,\n description,\n keysToOmit,\n }: {\n node: SchemaNode | null\n name: string\n typedName: string\n description?: string\n keysToOmit?: Array<string>\n }) {\n if (!schemaNode) {\n return null\n }\n\n const transformedNode = transform(schemaNode, composeTransformers(...transformers))\n\n const imports = adapter.getImports(transformedNode, (schemaName) => ({\n name: resolver.default(schemaName, 'type'),\n path: resolver.resolveFile({ name: schemaName, extname: '.ts' }, { root, output, group }).path,\n }))\n\n return (\n <>\n {mode === 'split' &&\n imports.map((imp) => <File.Import key={[name, imp.path, imp.isTypeOnly].join('-')} root={file.path} path={imp.path} name={imp.name} isTypeOnly />)}\n <Type\n name={name}\n typedName={typedName}\n node={transformedNode}\n description={description}\n enumType={enumType}\n enumKeyCasing={enumKeyCasing}\n optionalType={optionalType}\n arrayType={arrayType}\n syntaxType={syntaxType}\n resolver={resolver}\n keysToOmit={keysToOmit}\n />\n </>\n )\n }\n\n const pathParams = params.filter((p) => p.in === 'path')\n const queryParams = params.filter((p) => p.in === 'query')\n const headerParams = params.filter((p) => p.in === 'header')\n\n const responseTypes = node.responses.map((res) => {\n const responseName = resolver.resolveResponseStatusName(node, res.statusCode)\n const baseResponseName = resolverTsLegacy.resolveResponseStatusName(node, res.statusCode)\n\n return renderSchemaType({\n node: res.schema ? nameUnnamedEnums(res.schema, baseResponseName) : res.schema,\n name: responseName,\n typedName: resolver.resolveResponseStatusTypedName(node, res.statusCode),\n description: res.description,\n keysToOmit: res.keysToOmit,\n })\n })\n\n const requestType = node.requestBody?.schema\n ? renderSchemaType({\n node: nameUnnamedEnums(node.requestBody.schema, resolverTsLegacy.resolveDataName(node)),\n name: resolver.resolveDataName(node),\n typedName: resolver.resolveDataTypedName(node),\n description: node.requestBody.description ?? node.requestBody.schema.description,\n keysToOmit: node.requestBody.keysToOmit,\n })\n : null\n\n const legacyParamTypes = [\n pathParams.length > 0\n ? renderSchemaType({\n node: buildGroupedParamsSchema({ params: pathParams, parentName: resolverTsLegacy.resolvePathParamsName!(node) }),\n name: resolver.resolvePathParamsName!(node),\n typedName: resolver.resolvePathParamsTypedName!(node),\n })\n : null,\n queryParams.length > 0\n ? renderSchemaType({\n node: buildGroupedParamsSchema({ params: queryParams, parentName: resolverTsLegacy.resolveQueryParamsName!(node) }),\n name: resolver.resolveQueryParamsName!(node),\n typedName: resolver.resolveQueryParamsTypedName!(node),\n })\n : null,\n headerParams.length > 0\n ? renderSchemaType({\n node: buildGroupedParamsSchema({ params: headerParams, parentName: resolverTsLegacy.resolveHeaderParamsName!(node) }),\n name: resolver.resolveHeaderParamsName!(node),\n typedName: resolver.resolveHeaderParamsTypedName!(node),\n })\n : null,\n ]\n\n const legacyResponsesType = renderSchemaType({\n node: buildLegacyResponsesSchemaNode({ node, resolver }),\n name: resolver.resolveResponsesName(node),\n typedName: resolver.resolveResponsesTypedName(node),\n })\n\n const legacyResponseType = renderSchemaType({\n node: buildLegacyResponseUnionSchemaNode({ node, resolver }),\n name: resolver.resolveResponseName(node),\n typedName: resolver.resolveResponseTypedName(node),\n })\n\n return (\n <File\n baseName={file.baseName}\n path={file.path}\n meta={file.meta}\n banner={resolver.resolveBanner(adapter.rootNode, { output, config })}\n footer={resolver.resolveFooter(adapter.rootNode, { output, config })}\n >\n {legacyParamTypes}\n {responseTypes}\n {requestType}\n {legacyResponseType}\n {legacyResponsesType}\n </File>\n )\n },\n Schema({ node, adapter, options, config }) {\n const { enumType, enumKeyCasing, syntaxType, optionalType, arrayType, output, group, resolver, transformers = [] } = options\n\n const root = path.resolve(config.root, config.output.path)\n const mode = getMode(path.resolve(root, output.path))\n\n if (!node.name) {\n return\n }\n\n const transformedNode = transform(node, composeTransformers(...transformers))\n\n const imports = adapter.getImports(transformedNode, (schemaName) => ({\n name: resolver.default(schemaName, 'type'),\n path: resolver.resolveFile({ name: schemaName, extname: '.ts' }, { root, output, group }).path,\n }))\n\n const isEnumSchema = !!narrowSchema(node, schemaTypes.enum)\n\n const typedName = ENUM_TYPES_WITH_KEY_SUFFIX.has(enumType) && isEnumSchema ? resolver.resolveEnumKeyTypedName(node) : resolver.resolveTypedName(node.name)\n\n const type = {\n name: resolver.resolveName(node.name),\n typedName,\n file: resolver.resolveFile({ name: node.name, extname: '.ts' }, { root, output, group }),\n } as const\n\n return (\n <File\n baseName={type.file.baseName}\n path={type.file.path}\n meta={type.file.meta}\n banner={resolver.resolveBanner(adapter.rootNode, { output, config })}\n footer={resolver.resolveFooter(adapter.rootNode, { output, config })}\n >\n {mode === 'split' &&\n imports.map((imp) => (\n <File.Import key={[node.name, imp.path, imp.isTypeOnly].join('-')} root={type.file.path} path={imp.path} name={imp.name} isTypeOnly />\n ))}\n <Type\n name={type.name}\n typedName={type.typedName}\n node={transformedNode}\n enumType={enumType}\n enumKeyCasing={enumKeyCasing}\n optionalType={optionalType}\n arrayType={arrayType}\n syntaxType={syntaxType}\n resolver={resolver}\n />\n </File>\n )\n },\n})\n"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_plugin = require("./plugin-CNkzbtpl.cjs");
3
- exports.typeGenerator = require_plugin.typeGenerator;
2
+ const require_generators = require("./generators-aSsiTfUO.cjs");
3
+ exports.typeGenerator = require_generators.typeGenerator;
4
+ exports.typeGeneratorLegacy = require_generators.typeGeneratorLegacy;