@technicity/openapi-sdk-generator 5.4.12 → 5.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,6 +43,8 @@ async function generate(input) {
43
43
  if (api.paths == null || Object.keys(api.paths).length === 0) {
44
44
  throw new Error("No paths found.");
45
45
  }
46
+ const produces = api.produces;
47
+ const baseUrl = getBaseUrl(api);
46
48
  let results = [];
47
49
  // Sort
48
50
  api.paths = Object.fromEntries(Object.entries(api.paths).sort((a, b) => a[0].localeCompare(b[0])));
@@ -64,6 +66,7 @@ async function generate(input) {
64
66
  requestBody,
65
67
  responses,
66
68
  generateOrThrow,
69
+ produces,
67
70
  })),
68
71
  });
69
72
  }
@@ -90,8 +93,8 @@ async function generate(input) {
90
93
  #baseUrl: string;
91
94
  #addOperationIdHeader?: boolean;
92
95
 
93
- static create(opts: SdkOpts) {
94
- return new this({ ...opts, httpClient: HttpClient.create() });
96
+ static create(opts${baseUrl === void 0 ? "" : "?"}: SdkOpts) {
97
+ return new this({ ${baseUrl === void 0 ? "" : `baseUrl: "${baseUrl}"`}, ...opts, httpClient: HttpClient.create() });
95
98
  }
96
99
 
97
100
  static createNull(opts: SdkOpts & { responses?: NullResponses }) {
@@ -164,7 +167,7 @@ async function generate(input) {
164
167
  _interceptors: Interceptors,
165
168
  method?: string,
166
169
  _query?: { [k: string]: any },
167
- _headers?: { [k: string]: string },
170
+ _headers?: { [k: string]: any },
168
171
  _body?: unknown,
169
172
  reqContentType?: string,
170
173
  opts?: { timeout?: number };
@@ -263,7 +266,7 @@ async function generate(input) {
263
266
  _interceptors: Interceptors,
264
267
  method?: string,
265
268
  _query?: { [k: string]: any },
266
- _headers?: { [k: string]: string },
269
+ _headers?: { [k: string]: any },
267
270
  _body?: unknown,
268
271
  reqContentType?: string,
269
272
  mapThrow?: (response: Response) => unknown | Promise<unknown>,
@@ -405,9 +408,10 @@ async function generate(input) {
405
408
  }
406
409
  exports.generate = generate;
407
410
  async function getCode(input) {
408
- const { operationId, path, method, parameters, requestBody, responses, generateOrThrow, } = input;
411
+ const { operationId, path, method, parameters, requestBody, responses, generateOrThrow, produces, } = input;
409
412
  const pathParams = (parameters ?? []).filter((x) => x.in === "path");
410
413
  const queryParams = (parameters ?? []).filter((x) => x.in === "query");
414
+ const headers = (parameters ?? []).filter((x) => x.in === "header");
411
415
  const { contentType: requestBodyContentType, schema: requestBodySchema } = getRequestBodyInfo(requestBody, operationId) ?? {};
412
416
  const requestBodySchemaName = `ReqData${(0, pascal_case_1.pascalCase)(operationId)}`;
413
417
  if (requestBodySchema?.title) {
@@ -416,11 +420,17 @@ async function getCode(input) {
416
420
  let resBodyTypes = [];
417
421
  if (responses != null) {
418
422
  for (let [status, response] of Object.entries(responses)) {
419
- if (status === "204") {
423
+ if (status === "default") {
424
+ continue;
425
+ }
426
+ else if (status === "204") {
420
427
  resBodyTypes.push({ name: null, status, type: "" });
421
428
  }
422
429
  else {
423
- const schema = response?.content?.["application/json"]?.schema;
430
+ let schema = response?.content?.["application/json"]?.schema;
431
+ if (schema === void 0 && produces?.[0] === "application/json") {
432
+ schema = response?.schema;
433
+ }
424
434
  const name = `ResBody${status}${(0, pascal_case_1.pascalCase)(operationId)}`;
425
435
  const type = await getTsInterface(schema, name);
426
436
  resBodyTypes.push({ name, status, type });
@@ -429,12 +439,15 @@ async function getCode(input) {
429
439
  }
430
440
  const pathParamsSchema = getParamsSchema(pathParams);
431
441
  const queryParamsSchema = getParamsSchema(queryParams);
442
+ const headersSchema = getParamsSchema(headers, true);
432
443
  let methodCode = `async ${operationId}(input: {
433
444
  ${pathParams.length > 0
434
445
  ? `params${pathParamsSchema.required.length === 0 ? "?" : ""}: ${await getInlineTypeScriptType(pathParamsSchema)};`
435
446
  : ""}${`query${queryParams.length === 0 || queryParamsSchema.required.length === 0
436
447
  ? "?"
437
- : ""}: ${await getInlineTypeScriptType(queryParams.length === 0 ? { type: "object" } : queryParamsSchema)};`}${requestBody == null ? "" : `data: ${requestBodySchemaName};`}headers?: { [k: string]: string };
448
+ : ""}: ${await getInlineTypeScriptType(queryParams.length === 0 ? { type: "object" } : queryParamsSchema)};`}${requestBody == null ? "" : `data: ${requestBodySchemaName};`}headers?: ${headers.length === 0
449
+ ? `{ [k: string]: string }`
450
+ : await getInlineTypeScriptType(headersSchema)};
438
451
  interceptors: Interceptors;
439
452
  opts?: { timeout?: number }
440
453
  }): ${resBodyTypes.length === 0
@@ -479,7 +492,9 @@ async function getCode(input) {
479
492
  ? `params${pathParamsSchema.required.length === 0 ? "?" : ""}: ${await getInlineTypeScriptType(pathParamsSchema)};`
480
493
  : ""}${`query${queryParams.length === 0 || queryParamsSchema.required.length === 0
481
494
  ? "?"
482
- : ""}: ${await getInlineTypeScriptType(queryParams.length === 0 ? { type: "object" } : queryParamsSchema)};`}${requestBody == null ? "" : `data: ${requestBodySchemaName};`}headers?: { [k: string]: string };
495
+ : ""}: ${await getInlineTypeScriptType(queryParams.length === 0 ? { type: "object" } : queryParamsSchema)};`}${requestBody == null ? "" : `data: ${requestBodySchemaName};`}headers?: ${headers.length === 0
496
+ ? `{ [k: string]: string }`
497
+ : await getInlineTypeScriptType(headersSchema)};
483
498
  interceptors: Interceptors;
484
499
  opts?: { timeout?: number };
485
500
  mapThrow?: (response: Response) => unknown | Promise<unknown>;
@@ -538,13 +553,13 @@ async function getCode(input) {
538
553
  resBodyTypes,
539
554
  };
540
555
  }
541
- function getParamsSchema(params) {
556
+ function getParamsSchema(params, additionalProperties = false) {
542
557
  const properties = params.reduce((acc, v) => {
543
558
  acc[v.name] = v.schema ?? { type: v.type };
544
559
  return acc;
545
560
  }, {});
546
561
  const required = params.filter((x) => x.required).map((x) => x.name);
547
- return { type: "object", properties, additionalProperties: false, required };
562
+ return { type: "object", properties, additionalProperties, required };
548
563
  }
549
564
  function getRequestBodyInfo(requestBody, operationId) {
550
565
  const content = requestBody?.content;
@@ -685,4 +700,19 @@ function getHttpClientCode(env) {
685
700
  }
686
701
  `, { parser: "typescript" });
687
702
  }
703
+ function getBaseUrl(api) {
704
+ if (Array.isArray(api.servers)) {
705
+ const firstServerUrl = api.servers[0].url;
706
+ if (firstServerUrl === "/") {
707
+ return undefined;
708
+ }
709
+ return firstServerUrl;
710
+ }
711
+ if (api.schemes?.[0] &&
712
+ api.host &&
713
+ api.basePath) {
714
+ return `${api.schemes[0]}://${api.host}${api.basePath}`;
715
+ }
716
+ return undefined;
717
+ }
688
718
  //# sourceMappingURL=generate-remix.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate-remix.js","sourceRoot":"","sources":["../src/generate-remix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-remix.js","sourceRoot":"","sources":["../src/generate-remix.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@technicity/openapi-sdk-generator",
3
- "version": "5.4.12",
3
+ "version": "5.5.0",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "bin": {
@@ -26,6 +26,9 @@ export async function generate(input: {
26
26
  throw new Error("No paths found.");
27
27
  }
28
28
 
29
+ const produces = (api as OpenAPIV2.Document).produces;
30
+ const baseUrl = getBaseUrl(api);
31
+
29
32
  let results: {
30
33
  operationId: string;
31
34
  methodCode: string;
@@ -62,6 +65,7 @@ export async function generate(input: {
62
65
  requestBody,
63
66
  responses,
64
67
  generateOrThrow,
68
+ produces,
65
69
  })),
66
70
  });
67
71
  }
@@ -95,8 +99,10 @@ export async function generate(input: {
95
99
  #baseUrl: string;
96
100
  #addOperationIdHeader?: boolean;
97
101
 
98
- static create(opts: SdkOpts) {
99
- return new this({ ...opts, httpClient: HttpClient.create() });
102
+ static create(opts${baseUrl === void 0 ? "" : "?"}: SdkOpts) {
103
+ return new this({ ${
104
+ baseUrl === void 0 ? "" : `baseUrl: "${baseUrl}"`
105
+ }, ...opts, httpClient: HttpClient.create() });
100
106
  }
101
107
 
102
108
  static createNull(opts: SdkOpts & { responses?: NullResponses }) {
@@ -171,7 +177,7 @@ export async function generate(input: {
171
177
  _interceptors: Interceptors,
172
178
  method?: string,
173
179
  _query?: { [k: string]: any },
174
- _headers?: { [k: string]: string },
180
+ _headers?: { [k: string]: any },
175
181
  _body?: unknown,
176
182
  reqContentType?: string,
177
183
  opts?: { timeout?: number };
@@ -271,7 +277,7 @@ export async function generate(input: {
271
277
  _interceptors: Interceptors,
272
278
  method?: string,
273
279
  _query?: { [k: string]: any },
274
- _headers?: { [k: string]: string },
280
+ _headers?: { [k: string]: any },
275
281
  _body?: unknown,
276
282
  reqContentType?: string,
277
283
  mapThrow?: (response: Response) => unknown | Promise<unknown>,
@@ -438,6 +444,7 @@ async function getCode(input: {
438
444
  requestBody: any;
439
445
  responses: OpenAPIV3_1.ResponsesObject | null;
440
446
  generateOrThrow: boolean;
447
+ produces: OpenAPIV2.MimeTypes | undefined;
441
448
  }) {
442
449
  const {
443
450
  operationId,
@@ -447,9 +454,11 @@ async function getCode(input: {
447
454
  requestBody,
448
455
  responses,
449
456
  generateOrThrow,
457
+ produces,
450
458
  } = input;
451
459
  const pathParams = (parameters ?? []).filter((x) => x.in === "path");
452
460
  const queryParams = (parameters ?? []).filter((x) => x.in === "query");
461
+ const headers = (parameters ?? []).filter((x) => x.in === "header");
453
462
  const { contentType: requestBodyContentType, schema: requestBodySchema } =
454
463
  getRequestBodyInfo(requestBody, operationId) ?? {};
455
464
 
@@ -461,10 +470,15 @@ async function getCode(input: {
461
470
  let resBodyTypes: { name: string; status: string; type: string }[] = [];
462
471
  if (responses != null) {
463
472
  for (let [status, response] of Object.entries(responses)) {
464
- if (status === "204") {
473
+ if (status === "default") {
474
+ continue;
475
+ } else if (status === "204") {
465
476
  resBodyTypes.push({ name: null, status, type: "" });
466
477
  } else {
467
- const schema = (response as any)?.content?.["application/json"]?.schema;
478
+ let schema = (response as any)?.content?.["application/json"]?.schema;
479
+ if (schema === void 0 && produces?.[0] === "application/json") {
480
+ schema = (response as any)?.schema;
481
+ }
468
482
  const name = `ResBody${status}${pascalCase(operationId)}`;
469
483
  const type = await getTsInterface(schema, name);
470
484
  resBodyTypes.push({ name, status, type });
@@ -474,6 +488,7 @@ async function getCode(input: {
474
488
 
475
489
  const pathParamsSchema = getParamsSchema(pathParams);
476
490
  const queryParamsSchema = getParamsSchema(queryParams);
491
+ const headersSchema = getParamsSchema(headers, true);
477
492
 
478
493
  let methodCode = `async ${operationId}(input: {
479
494
  ${
@@ -490,7 +505,11 @@ async function getCode(input: {
490
505
  queryParams.length === 0 ? { type: "object" } : queryParamsSchema
491
506
  )};`}${
492
507
  requestBody == null ? "" : `data: ${requestBodySchemaName};`
493
- }headers?: { [k: string]: string };
508
+ }headers?: ${
509
+ headers.length === 0
510
+ ? `{ [k: string]: string }`
511
+ : await getInlineTypeScriptType(headersSchema)
512
+ };
494
513
  interceptors: Interceptors;
495
514
  opts?: { timeout?: number }
496
515
  }): ${
@@ -565,7 +584,11 @@ async function getCode(input: {
565
584
  queryParams.length === 0 ? { type: "object" } : queryParamsSchema
566
585
  )};`}${
567
586
  requestBody == null ? "" : `data: ${requestBodySchemaName};`
568
- }headers?: { [k: string]: string };
587
+ }headers?: ${
588
+ headers.length === 0
589
+ ? `{ [k: string]: string }`
590
+ : await getInlineTypeScriptType(headersSchema)
591
+ };
569
592
  interceptors: Interceptors;
570
593
  opts?: { timeout?: number };
571
594
  mapThrow?: (response: Response) => unknown | Promise<unknown>;
@@ -649,14 +672,15 @@ async function getCode(input: {
649
672
  }
650
673
 
651
674
  function getParamsSchema(
652
- params: OpenAPIV2.ParameterObject | OpenAPIV3_1.ParameterObject[]
675
+ params: OpenAPIV2.ParameterObject | OpenAPIV3_1.ParameterObject[],
676
+ additionalProperties = false
653
677
  ) {
654
678
  const properties = params.reduce((acc: { [k: string]: any }, v) => {
655
679
  acc[v.name] = v.schema ?? { type: v.type };
656
680
  return acc;
657
681
  }, {});
658
682
  const required = params.filter((x) => x.required).map((x) => x.name);
659
- return { type: "object", properties, additionalProperties: false, required };
683
+ return { type: "object", properties, additionalProperties, required };
660
684
  }
661
685
 
662
686
  function getRequestBodyInfo(requestBody: any, operationId: string) {
@@ -809,3 +833,23 @@ function getHttpClientCode(env: TEnv) {
809
833
  { parser: "typescript" }
810
834
  );
811
835
  }
836
+
837
+ function getBaseUrl(api: OpenAPI.Document<{}>) {
838
+ if (Array.isArray((api as OpenAPIV3_1.Document).servers)) {
839
+ const firstServerUrl = (api as OpenAPIV3_1.Document).servers[0].url;
840
+ if (firstServerUrl === "/") {
841
+ return undefined;
842
+ }
843
+ return firstServerUrl;
844
+ }
845
+ if (
846
+ (api as OpenAPIV2.Document).schemes?.[0] &&
847
+ (api as OpenAPIV2.Document).host &&
848
+ (api as OpenAPIV2.Document).basePath
849
+ ) {
850
+ return `${(api as OpenAPIV2.Document).schemes[0]}://${
851
+ (api as OpenAPIV2.Document).host
852
+ }${(api as OpenAPIV2.Document).basePath}`;
853
+ }
854
+ return undefined;
855
+ }