oazapfts 4.3.1-formatted-path-params.1 → 4.3.2

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.
@@ -2,15 +2,15 @@ import ts from "typescript";
2
2
  import { OpenAPIV3 } from "openapi-types";
3
3
  import { Opts } from ".";
4
4
  export declare const verbs: string[];
5
- declare type ContentType = "json" | "form" | "multipart";
5
+ type ContentType = "json" | "form" | "multipart";
6
6
  export declare const contentTypes: Record<string, ContentType>;
7
- declare type SchemaObject = OpenAPIV3.SchemaObject & {
7
+ type SchemaObject = OpenAPIV3.SchemaObject & {
8
8
  const?: unknown;
9
9
  };
10
10
  /**
11
11
  * Get the name of a formatter function for a given parameter.
12
12
  */
13
- export declare function getFormatter({ style, explode, }: OpenAPIV3.ParameterObject): "form" | "deep" | "explode" | "simple" | "space" | "pipe";
13
+ export declare function getFormatter({ style, explode, }: OpenAPIV3.ParameterObject): "form" | "deep" | "explode" | "space" | "pipe";
14
14
  export declare function getOperationIdentifier(id?: string): string | undefined;
15
15
  /**
16
16
  * Create a method name for a given operation, either from its operationId or
@@ -29,7 +29,7 @@ export declare function getReferenceName(obj: any): string | undefined;
29
29
  * Curly braces in the path are turned into identifier expressions,
30
30
  * which are read from the local scope during runtime.
31
31
  */
32
- export declare function createUrlExpression(path: string, qs?: ts.Expression, formatPathParameter?: (name: string) => ts.Expression): ts.StringLiteral | ts.TemplateExpression;
32
+ export declare function createUrlExpression(path: string, qs?: ts.Expression): ts.StringLiteral | ts.TemplateExpression;
33
33
  /**
34
34
  * Create a call expression for one of the QS runtime functions.
35
35
  */
@@ -104,7 +104,6 @@ export default class ApiGenerator {
104
104
  getResponseType(responses?: OpenAPIV3.ResponsesObject): "json" | "text" | "blob";
105
105
  getSchemaFromContent(content: any): any;
106
106
  wrapResult(ex: ts.Expression): ts.Expression;
107
- formatPathParameter(name: string, parameter?: OpenAPIV3.ParameterObject): ts.CallExpression;
108
107
  generateApi(): ts.SourceFile;
109
108
  }
110
109
  export {};
@@ -60,8 +60,6 @@ function getFormatter({ style = "form", explode = true, }) {
60
60
  return "deep";
61
61
  if (explode)
62
62
  return "explode";
63
- if (style === "simple")
64
- return "simple";
65
63
  if (style === "spaceDelimited")
66
64
  return "space";
67
65
  if (style === "pipeDelimited")
@@ -121,23 +119,18 @@ function getReferenceName(obj) {
121
119
  }
122
120
  }
123
121
  exports.getReferenceName = getReferenceName;
124
- const formatPrimitivePathParameter = (name) => {
125
- const expression = lodash_1.default.camelCase(name);
126
- return cg.createCall(typescript_1.factory.createIdentifier("encodeURIComponent"), {
127
- args: [typescript_1.factory.createIdentifier(expression)],
128
- });
129
- };
130
122
  /**
131
123
  * Create a template string literal from the given OpenAPI urlTemplate.
132
124
  * Curly braces in the path are turned into identifier expressions,
133
125
  * which are read from the local scope during runtime.
134
126
  */
135
- function createUrlExpression(path, qs, formatPathParameter = formatPrimitivePathParameter) {
127
+ function createUrlExpression(path, qs) {
136
128
  const spans = [];
137
129
  // Use a replacer function to collect spans as a side effect:
138
130
  const head = path.replace(/(.*?)\{(.+?)\}(.*?)(?=\{|$)/g, (_substr, head, name, literal) => {
131
+ const expression = lodash_1.default.camelCase(name);
139
132
  spans.push({
140
- expression: formatPathParameter(name),
133
+ expression: cg.createCall(typescript_1.factory.createIdentifier("encodeURIComponent"), { args: [typescript_1.factory.createIdentifier(expression)] }),
141
134
  literal,
142
135
  });
143
136
  return head;
@@ -449,7 +442,7 @@ class ApiGenerator {
449
442
  ? typescript_1.factory.createNumericLiteral(index)
450
443
  : typescript_1.factory.createStringLiteral(s));
451
444
  });
452
- this.enumAliases.push(typescript_1.factory.createEnumDeclaration(undefined, [cg.modifier.export], name, members));
445
+ this.enumAliases.push(typescript_1.factory.createEnumDeclaration([cg.modifier.export], name, members));
453
446
  const type = typescript_1.factory.createTypeReferenceNode(name, undefined);
454
447
  this.enumRefs[proposedName] = {
455
448
  values: stringEnumValue,
@@ -556,23 +549,6 @@ class ApiGenerator {
556
549
  var _a;
557
550
  return ((_a = this.opts) === null || _a === void 0 ? void 0 : _a.optimistic) ? callOazapftsFunction("ok", [ex]) : ex;
558
551
  }
559
- formatPathParameter(name, parameter) {
560
- const schema = (parameter === null || parameter === void 0 ? void 0 : parameter.schema)
561
- ? this.resolve(parameter.schema)
562
- : null;
563
- if (parameter && ((schema === null || schema === void 0 ? void 0 : schema.type) === "array" || (schema === null || schema === void 0 ? void 0 : schema.type) === "object")) {
564
- const expression = lodash_1.default.camelCase(name);
565
- const formatter = getFormatter(Object.assign({ style: "simple", explode: parameter.style === "form" }, parameter));
566
- return callQsFunction(formatter, formatter === "simple" || formatter === "pipe" || formatter === "space"
567
- ? [typescript_1.factory.createIdentifier(expression)]
568
- : [
569
- cg.createObjectLiteral([
570
- [expression, typescript_1.factory.createIdentifier(expression)],
571
- ]),
572
- ]);
573
- }
574
- return formatPrimitivePathParameter(name);
575
- }
576
552
  generateApi() {
577
553
  this.reset();
578
554
  // Parse ApiStub.ts so that we don't have to generate everything manually
@@ -679,18 +655,12 @@ class ApiGenerator {
679
655
  const paramsByFormatter = lodash_1.default.groupBy(query, getFormatter);
680
656
  qs = callQsFunction("query", Object.entries(paramsByFormatter).map(([format, params]) => {
681
657
  //const [allowReserved, encodeReserved] = _.partition(params, "allowReserved");
682
- return callQsFunction(format === "simple"
683
- ? "form"
684
- : format === "pipe"
685
- ? "formPipe"
686
- : format === "space"
687
- ? "formSpace"
688
- : format, [
658
+ return callQsFunction(format, [
689
659
  cg.createObjectLiteral(params.map((p) => [p.name, argNames[p.name]])),
690
660
  ]);
691
661
  }));
692
662
  }
693
- const url = createUrlExpression(path, qs, (name) => this.formatPathParameter(name, parameters.find(({ name: n, in: loc }) => loc === "path" && n === name)));
663
+ const url = createUrlExpression(path, qs);
694
664
  const init = [
695
665
  typescript_1.factory.createSpreadAssignment(typescript_1.factory.createIdentifier("opts")),
696
666
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/codegen/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/codegen/generate.ts"],"names":[],"mappings":"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"}
@@ -125,10 +125,4 @@ describe("generate with const", () => {
125
125
  expect(oneLine).toContain(constTypeDefinition);
126
126
  }));
127
127
  });
128
- // // https://spec.openapis.org/oas/v3.0.3#style-examples
129
- // describe('getFormatter', () => {
130
- // it('formats correctly', () => {
131
- // const formatter = getFormatter()
132
- // })
133
- // })
134
128
  //# sourceMappingURL=generate.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.test.js","sourceRoot":"","sources":["../../src/codegen/generate.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.test.js","sourceRoot":"","sources":["../../src/codegen/generate.test.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import * as cg from "./tscodegen";
2
2
  import ts from "typescript";
3
3
  import { OpenAPIV3 } from "openapi-types";
4
4
  export { cg };
5
- export declare type Opts = {
5
+ export type Opts = {
6
6
  include?: string[];
7
7
  exclude?: string[];
8
8
  optimistic?: boolean;
@@ -1,5 +1,5 @@
1
1
  import ts from "typescript";
2
- declare type KeywordTypeName = "any" | "number" | "object" | "string" | "boolean" | "undefined" | "null";
2
+ type KeywordTypeName = "any" | "number" | "object" | "string" | "boolean" | "undefined" | "null";
3
3
  export declare const questionToken: ts.PunctuationToken<ts.SyntaxKind.QuestionToken>;
4
4
  export declare function createQuestionToken(token?: boolean | ts.QuestionToken): ts.PunctuationToken<ts.SyntaxKind.QuestionToken> | undefined;
5
5
  export declare function createKeywordType(type: KeywordTypeName): ts.KeywordTypeNode<ts.SyntaxKind.AnyKeyword> | ts.KeywordTypeNode<ts.SyntaxKind.NumberKeyword> | ts.KeywordTypeNode<ts.SyntaxKind.ObjectKeyword> | ts.KeywordTypeNode<ts.SyntaxKind.StringKeyword> | ts.KeywordTypeNode<ts.SyntaxKind.BooleanKeyword> | ts.KeywordTypeNode<ts.SyntaxKind.UndefinedKeyword> | ts.LiteralTypeNode;
@@ -10,8 +10,7 @@ export declare const modifier: {
10
10
  async: ts.ModifierToken<ts.SyntaxKind.AsyncKeyword>;
11
11
  export: ts.ModifierToken<ts.SyntaxKind.ExportKeyword>;
12
12
  };
13
- export declare function createTypeAliasDeclaration({ decorators, modifiers, name, typeParameters, type, }: {
14
- decorators?: Array<ts.Decorator>;
13
+ export declare function createTypeAliasDeclaration({ modifiers, name, typeParameters, type, }: {
15
14
  modifiers?: Array<ts.Modifier>;
16
15
  name: string | ts.Identifier;
17
16
  typeParameters?: Array<ts.TypeParameterDeclaration>;
@@ -35,8 +34,7 @@ export declare function createArrowFunction(parameters: ts.ParameterDeclaration[
35
34
  type?: ts.TypeNode;
36
35
  equalsGreaterThanToken?: ts.EqualsGreaterThanToken;
37
36
  }): ts.ArrowFunction;
38
- export declare function createFunctionDeclaration(name: string | ts.Identifier | undefined, { decorators, modifiers, asteriskToken, typeParameters, type, }: {
39
- decorators?: ts.Decorator[];
37
+ export declare function createFunctionDeclaration(name: string | ts.Identifier | undefined, { modifiers, asteriskToken, typeParameters, type, }: {
40
38
  modifiers?: ts.Modifier[];
41
39
  asteriskToken?: ts.AsteriskToken;
42
40
  typeParameters?: ts.TypeParameterDeclaration[];
@@ -56,16 +54,14 @@ export declare function createConstructor({ decorators, modifiers, parameters, b
56
54
  parameters: Array<ts.ParameterDeclaration>;
57
55
  body?: ts.Block;
58
56
  }): ts.ConstructorDeclaration;
59
- export declare function createMethod(name: string | ts.Identifier | ts.StringLiteral | ts.NumericLiteral | ts.ComputedPropertyName, { decorators, modifiers, asteriskToken, questionToken, typeParameters, type, }?: {
60
- decorators?: ts.Decorator[];
57
+ export declare function createMethod(name: string | ts.Identifier | ts.StringLiteral | ts.NumericLiteral | ts.ComputedPropertyName, { modifiers, asteriskToken, questionToken, typeParameters, type, }?: {
61
58
  modifiers?: ts.Modifier[];
62
59
  asteriskToken?: ts.AsteriskToken;
63
60
  questionToken?: ts.QuestionToken | boolean;
64
61
  typeParameters?: ts.TypeParameterDeclaration[];
65
62
  type?: ts.TypeNode;
66
63
  }, parameters?: ts.ParameterDeclaration[], body?: ts.Block): ts.MethodDeclaration;
67
- export declare function createParameter(name: string | ts.BindingName, { decorators, modifiers, dotDotDotToken, questionToken, type, initializer, }: {
68
- decorators?: Array<ts.Decorator>;
64
+ export declare function createParameter(name: string | ts.BindingName, { modifiers, dotDotDotToken, questionToken, type, initializer, }: {
69
65
  modifiers?: Array<ts.Modifier>;
70
66
  dotDotDotToken?: ts.DotDotDotToken;
71
67
  questionToken?: ts.QuestionToken | boolean;
@@ -78,10 +74,9 @@ export declare function createPropertySignature({ modifiers, name, questionToken
78
74
  questionToken?: ts.QuestionToken | boolean;
79
75
  type?: ts.TypeNode;
80
76
  }): ts.PropertySignature;
81
- export declare function createIndexSignature(type: ts.TypeNode, { decorators, modifiers, indexName, indexType, }?: {
77
+ export declare function createIndexSignature(type: ts.TypeNode, { modifiers, indexName, indexType, }?: {
82
78
  indexName?: string;
83
79
  indexType?: ts.TypeNode;
84
- decorators?: Array<ts.Decorator>;
85
80
  modifiers?: Array<ts.Modifier>;
86
81
  }): ts.IndexSignatureDeclaration;
87
82
  export declare function createObjectBinding(elements: Array<{
@@ -71,8 +71,8 @@ exports.modifier = {
71
71
  async: typescript_1.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword),
72
72
  export: typescript_1.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword),
73
73
  };
74
- function createTypeAliasDeclaration({ decorators, modifiers, name, typeParameters, type, }) {
75
- return typescript_1.factory.createTypeAliasDeclaration(decorators, modifiers, name, typeParameters, type);
74
+ function createTypeAliasDeclaration({ modifiers, name, typeParameters, type, }) {
75
+ return typescript_1.factory.createTypeAliasDeclaration(modifiers, name, typeParameters, type);
76
76
  }
77
77
  exports.createTypeAliasDeclaration = createTypeAliasDeclaration;
78
78
  function toExpression(ex) {
@@ -110,8 +110,8 @@ function createArrowFunction(parameters, body, { modifiers, typeParameters, type
110
110
  return typescript_1.factory.createArrowFunction(modifiers, typeParameters, parameters, type, equalsGreaterThanToken, body);
111
111
  }
112
112
  exports.createArrowFunction = createArrowFunction;
113
- function createFunctionDeclaration(name, { decorators, modifiers, asteriskToken, typeParameters, type, }, parameters, body) {
114
- return typescript_1.factory.createFunctionDeclaration(decorators, modifiers, asteriskToken, name, typeParameters, parameters, type, body);
113
+ function createFunctionDeclaration(name, { modifiers, asteriskToken, typeParameters, type, }, parameters, body) {
114
+ return typescript_1.factory.createFunctionDeclaration(modifiers, asteriskToken, name, typeParameters, parameters, type, body);
115
115
  }
116
116
  exports.createFunctionDeclaration = createFunctionDeclaration;
117
117
  function createClassDeclaration({ decorators, modifiers, name, typeParameters, heritageClauses, members, }) {
@@ -122,12 +122,12 @@ function createConstructor({ decorators, modifiers, parameters, body, }) {
122
122
  return typescript_1.factory.createConstructorDeclaration(decorators, modifiers, parameters, body);
123
123
  }
124
124
  exports.createConstructor = createConstructor;
125
- function createMethod(name, { decorators, modifiers, asteriskToken, questionToken, typeParameters, type, } = {}, parameters = [], body) {
126
- return typescript_1.factory.createMethodDeclaration(decorators, modifiers, asteriskToken, name, createQuestionToken(questionToken), typeParameters, parameters, type, body);
125
+ function createMethod(name, { modifiers, asteriskToken, questionToken, typeParameters, type, } = {}, parameters = [], body) {
126
+ return typescript_1.factory.createMethodDeclaration(modifiers, asteriskToken, name, createQuestionToken(questionToken), typeParameters, parameters, type, body);
127
127
  }
128
128
  exports.createMethod = createMethod;
129
- function createParameter(name, { decorators, modifiers, dotDotDotToken, questionToken, type, initializer, }) {
130
- return typescript_1.factory.createParameterDeclaration(decorators, modifiers, dotDotDotToken, name, createQuestionToken(questionToken), type, initializer);
129
+ function createParameter(name, { modifiers, dotDotDotToken, questionToken, type, initializer, }) {
130
+ return typescript_1.factory.createParameterDeclaration(modifiers, dotDotDotToken, name, createQuestionToken(questionToken), type, initializer);
131
131
  }
132
132
  exports.createParameter = createParameter;
133
133
  function propertyName(name) {
@@ -142,8 +142,8 @@ function createPropertySignature({ modifiers, name, questionToken, type, }) {
142
142
  return typescript_1.factory.createPropertySignature(modifiers, propertyName(name), createQuestionToken(questionToken), type);
143
143
  }
144
144
  exports.createPropertySignature = createPropertySignature;
145
- function createIndexSignature(type, { decorators, modifiers, indexName = "key", indexType = exports.keywordType.string, } = {}) {
146
- return typescript_1.factory.createIndexSignature(decorators, modifiers, [createParameter(indexName, { type: indexType })], type);
145
+ function createIndexSignature(type, { modifiers, indexName = "key", indexType = exports.keywordType.string, } = {}) {
146
+ return typescript_1.factory.createIndexSignature(modifiers, [createParameter(indexName, { type: indexType })], type);
147
147
  }
148
148
  exports.createIndexSignature = createIndexSignature;
149
149
  function createObjectBinding(elements) {
@@ -1 +1 @@
1
- {"version":3,"file":"tscodegen.js","sourceRoot":"","sources":["../../src/codegen/tscodegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tscodegen.js","sourceRoot":"","sources":["../../src/codegen/tscodegen.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -2,13 +2,13 @@ import { ApiResponse } from "./runtime";
2
2
  /**
3
3
  * Type to access a response's data property for a given status.
4
4
  */
5
- declare type DataType<T extends ApiResponse, S extends number> = T extends {
5
+ type DataType<T extends ApiResponse, S extends number> = T extends {
6
6
  status: S;
7
7
  } ? T["data"] : never;
8
8
  /**
9
9
  * Object with methods to handle possible status codes of an ApiResponse.
10
10
  */
11
- declare type ResponseHandler<T extends ApiResponse> = {
11
+ type ResponseHandler<T extends ApiResponse> = {
12
12
  [P in T["status"]]: (res: DataType<T, P>) => any;
13
13
  } & {
14
14
  default?: (status: number, data: any) => any;
@@ -25,8 +25,8 @@ declare type ResponseHandler<T extends ApiResponse> = {
25
25
  **/
26
26
  export declare function handle<T extends ApiResponse, H extends ResponseHandler<T>>(promise: Promise<T>, handler: H): Promise<ReturnType<H[keyof H]>>;
27
27
  declare const SUCCESS_CODES: readonly [200, 201, 202, 204];
28
- declare type SuccessCodes = typeof SUCCESS_CODES[number];
29
- declare type SuccessResponse<T extends ApiResponse> = DataType<T, SuccessCodes>;
28
+ type SuccessCodes = typeof SUCCESS_CODES[number];
29
+ type SuccessResponse<T extends ApiResponse> = DataType<T, SuccessCodes>;
30
30
  /**
31
31
  * Utility function to directly return any successful response
32
32
  * and throw a HttpError otherwise.
@@ -41,16 +41,16 @@ declare type SuccessResponse<T extends ApiResponse> = DataType<T, SuccessCodes>;
41
41
  * }
42
42
  */
43
43
  export declare function ok<T extends ApiResponse>(promise: Promise<T>): Promise<SuccessResponse<T>>;
44
- export declare type Args<T> = T extends (...args: infer U) => any ? U : any;
45
- export declare type ApiFunction = (...args: any[]) => Promise<ApiResponse>;
46
- export declare type AsyncReturnType<T> = T extends (...args: any[]) => Promise<infer V> ? V : never;
47
- export declare type OkResponse<T extends ApiFunction> = SuccessResponse<AsyncReturnType<T>>;
48
- export declare type Okify<T extends ApiFunction> = (...args: Args<T>) => Promise<OkResponse<T>>;
44
+ export type Args<T> = T extends (...args: infer U) => any ? U : any;
45
+ export type ApiFunction = (...args: any[]) => Promise<ApiResponse>;
46
+ export type AsyncReturnType<T> = T extends (...args: any[]) => Promise<infer V> ? V : never;
47
+ export type OkResponse<T extends ApiFunction> = SuccessResponse<AsyncReturnType<T>>;
48
+ export type Okify<T extends ApiFunction> = (...args: Args<T>) => Promise<OkResponse<T>>;
49
49
  /**
50
50
  * Utility function to wrap an API function with `ok(...)`.
51
51
  */
52
52
  export declare function okify<T extends ApiFunction>(fn: T): Okify<T>;
53
- declare type OptimisticApi<T> = {
53
+ type OptimisticApi<T> = {
54
54
  [K in keyof T]: T[K] extends ApiFunction ? Okify<T[K]> : T[K];
55
55
  };
56
56
  /**
@@ -1,21 +1,24 @@
1
1
  import { ok } from "../";
2
- export declare type RequestOpts = {
2
+ export type RequestOpts = {
3
3
  baseUrl?: string;
4
4
  fetch?: typeof fetch;
5
5
  formDataConstructor?: new () => FormData;
6
6
  headers?: Record<string, string | undefined>;
7
7
  } & Omit<RequestInit, "body" | "headers">;
8
- declare type FetchRequestOpts = RequestOpts & {
8
+ type FetchRequestOpts = RequestOpts & {
9
9
  body?: string | FormData | Blob;
10
10
  };
11
- declare type JsonRequestOpts = RequestOpts & {
12
- body?: object;
11
+ type JsonRequestOpts = RequestOpts & {
12
+ body?: any;
13
13
  };
14
- export declare type ApiResponse = {
14
+ type FormRequestOpts = RequestOpts & {
15
+ body?: Record<string, any>;
16
+ };
17
+ export type ApiResponse = {
15
18
  status: number;
16
19
  data?: any;
17
20
  };
18
- declare type MultipartRequestOpts = RequestOpts & {
21
+ type MultipartRequestOpts = RequestOpts & {
19
22
  body?: Record<string, string | Blob | undefined | any>;
20
23
  };
21
24
  export declare function runtime(defaults: RequestOpts): {
@@ -47,7 +50,7 @@ export declare function runtime(defaults: RequestOpts): {
47
50
  signal?: AbortSignal | null | undefined;
48
51
  window?: null | undefined;
49
52
  };
50
- form({ body, headers, ...req }: JsonRequestOpts): {
53
+ form({ body, headers, ...req }: FormRequestOpts): {
51
54
  headers: {
52
55
  "Content-Type": string;
53
56
  };
@@ -107,15 +107,15 @@ function runtime(defaults) {
107
107
  fetchBlob,
108
108
  json(_a) {
109
109
  var { body, headers } = _a, req = __rest(_a, ["body", "headers"]);
110
- return Object.assign(Object.assign(Object.assign({}, req), (body && { body: JSON.stringify(body) })), { headers: Object.assign(Object.assign({}, headers), { "Content-Type": "application/json" }) });
110
+ return Object.assign(Object.assign(Object.assign({}, req), (body != null && { body: JSON.stringify(body) })), { headers: Object.assign(Object.assign({}, headers), { "Content-Type": "application/json" }) });
111
111
  },
112
112
  form(_a) {
113
113
  var { body, headers } = _a, req = __rest(_a, ["body", "headers"]);
114
- return Object.assign(Object.assign(Object.assign({}, req), (body && { body: qs.form(body) })), { headers: Object.assign(Object.assign({}, headers), { "Content-Type": "application/x-www-form-urlencoded" }) });
114
+ return Object.assign(Object.assign(Object.assign({}, req), (body != null && { body: qs.form(body) })), { headers: Object.assign(Object.assign({}, headers), { "Content-Type": "application/x-www-form-urlencoded" }) });
115
115
  },
116
116
  multipart(_a) {
117
117
  var { body } = _a, req = __rest(_a, ["body"]);
118
- if (!body)
118
+ if (body == null)
119
119
  return req;
120
120
  const data = new (defaults.formDataConstructor ||
121
121
  req.formDataConstructor ||
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"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"}
@@ -15,8 +15,5 @@ export declare function deep(params: Record<string, any>, [k, v]?: (typeof encod
15
15
  */
16
16
  export declare function explode(params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]): string;
17
17
  export declare const form: (params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]) => string;
18
- export declare const formPipe: (params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]) => string;
19
- export declare const formSpace: (params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]) => string;
20
- export declare const simple: (param: unknown[] | Record<string, unknown>, encoders?: (typeof encodeURIComponent)[]) => any;
21
- export declare const pipe: (param: unknown[] | Record<string, unknown>, encoders?: (typeof encodeURIComponent)[]) => any;
22
- export declare const space: (param: unknown[] | Record<string, unknown>, encoders?: (typeof encodeURIComponent)[]) => any;
18
+ export declare const pipe: (params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]) => string;
19
+ export declare const space: (params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]) => string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.space = exports.pipe = exports.simple = exports.formSpace = exports.formPipe = exports.form = exports.explode = exports.deep = exports.query = void 0;
3
+ exports.space = exports.pipe = exports.form = exports.explode = exports.deep = exports.query = void 0;
4
4
  const util_1 = require("./util");
5
5
  /**
6
6
  * Join params using an ampersand and prepends a questionmark if not empty.
@@ -55,10 +55,7 @@ function explode(params, encoders = util_1.encodeReserved) {
55
55
  .join("&");
56
56
  }
57
57
  exports.explode = explode;
58
- exports.form = (0, util_1.form)();
59
- exports.formPipe = (0, util_1.form)("|");
60
- exports.formSpace = (0, util_1.form)("%20");
61
- exports.simple = (0, util_1.simple)();
62
- exports.pipe = (0, util_1.simple)("|");
63
- exports.space = (0, util_1.simple)("%20");
58
+ exports.form = (0, util_1.delimited)();
59
+ exports.pipe = (0, util_1.delimited)("|");
60
+ exports.space = (0, util_1.delimited)("%20");
64
61
  //# sourceMappingURL=query.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/runtime/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/runtime/query.ts"],"names":[],"mappings":";;;AAAA,iCAA2D;AAE3D;;GAEG;AACH,SAAgB,KAAK,CAAC,GAAG,MAAgB;IACvC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;AACtB,CAAC;AAHD,sBAGC;AAED;;;GAGG;AACH,SAAgB,IAAI,CAClB,MAA2B,EAC3B,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,qBAAc;IAEvB,MAAM,EAAE,GAAG,IAAA,aAAM,EAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,IAAA,aAAM,EAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACjC,4BAA4B;IAC5B,sDAAsD;IACtD,MAAM,KAAK,GAAG,CAAC,GAAQ,EAAE,MAAM,GAAG,EAAE,EAAU,EAAE,CAC9C,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;SAChB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;SAClC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;QACjB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA,GAAG,MAAM,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YACzB,OAAO,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACtB;QACD,OAAO,EAAE,CAAA,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;IACzB,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC;AAtBD,oBAsBC;AAED;;;;;GAKG;AACH,SAAgB,OAAO,CACrB,MAA2B,EAC3B,QAAQ,GAAG,qBAAc;IAEzB,MAAM,CAAC,GAAG,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;QACrB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACpD;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;SACjC;QACD,OAAO,CAAC,CAAA,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;IAC7B,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAjBD,0BAiBC;AAEY,QAAA,IAAI,GAAG,IAAA,gBAAS,GAAE,CAAC;AACnB,QAAA,IAAI,GAAG,IAAA,gBAAS,EAAC,GAAG,CAAC,CAAC;AACtB,QAAA,KAAK,GAAG,IAAA,gBAAS,EAAC,KAAK,CAAC,CAAC"}
@@ -28,17 +28,11 @@ describe("delimited", () => {
28
28
  it("should use commas", () => {
29
29
  expect(qs.form({ id: [3, 4, 5] })).toEqual("id=3,4,5");
30
30
  });
31
- it("should use pipes for form", () => {
32
- expect(qs.formPipe({ id: [3, 4, 5] })).toEqual("id=3|4|5");
33
- });
34
- it("should use spaces for form", () => {
35
- expect(qs.formSpace({ id: [3, 4, 5] })).toEqual("id=3%204%205");
36
- });
37
31
  it("should use pipes", () => {
38
- expect(qs.pipe([3, 4, 5])).toEqual("3|4|5");
32
+ expect(qs.pipe({ id: [3, 4, 5] })).toEqual("id=3|4|5");
39
33
  });
40
34
  it("should use spaces", () => {
41
- expect(qs.space([3, 4, 5])).toEqual("3%204%205");
35
+ expect(qs.space({ id: [3, 4, 5] })).toEqual("id=3%204%205");
42
36
  });
43
37
  it("should enumerate entries", () => {
44
38
  expect(qs.form({ author: { firstName: "Felix", role: "admin" } })).toEqual("author=firstName,Felix,role,admin");
@@ -1 +1 @@
1
- {"version":3,"file":"query.test.js","sourceRoot":"","sources":["../../src/runtime/query.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.test.js","sourceRoot":"","sources":["../../src/runtime/query.test.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,14 @@
1
- declare type Encoders = Array<(s: string) => string>;
1
+ type Encoders = Array<(s: string) => string>;
2
2
  export declare const encodeReserved: (typeof encodeURIComponent)[];
3
3
  export declare const allowReserved: (typeof encodeURI)[];
4
4
  /**
5
5
  * Creates a tag-function to encode template strings with the given encoders.
6
6
  */
7
7
  export declare function encode(encoders: Encoders, delimiter?: string): (strings: TemplateStringsArray, ...values: any[]) => string;
8
- export declare function simple(delimiter?: string): (param: unknown[] | Record<string, unknown>, encoders?: (typeof encodeURIComponent)[]) => any;
9
8
  /**
10
9
  * Separate array values by the given delimiter.
11
10
  */
12
- export declare function form(delimiter?: string): (params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]) => string;
11
+ export declare function delimited(delimiter?: string): (params: Record<string, any>, encoders?: (typeof encodeURIComponent)[]) => string;
13
12
  /**
14
13
  * Deeply remove all properties with undefined values.
15
14
  */
@@ -1,16 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.joinUrl = exports.stripUndefined = exports.form = exports.simple = exports.encode = exports.allowReserved = exports.encodeReserved = void 0;
3
+ exports.joinUrl = exports.stripUndefined = exports.delimited = exports.encode = exports.allowReserved = exports.encodeReserved = void 0;
4
4
  // Encode param names and values as URIComponent
5
5
  exports.encodeReserved = [encodeURIComponent, encodeURIComponent];
6
6
  exports.allowReserved = [encodeURIComponent, encodeURI];
7
- function join(value, encoder = encodeURIComponent, delimiter = ",") {
8
- if (Array.isArray(value)) {
9
- return value.map(encoder).join(delimiter);
10
- }
11
- const flat = Object.entries(value).reduce((flat, entry) => [...flat, ...entry], []);
12
- return flat.map(encoder).join(delimiter);
13
- }
14
7
  /**
15
8
  * Creates a tag-function to encode template strings with the given encoders.
16
9
  */
@@ -21,7 +14,11 @@ function encode(encoders, delimiter = ",") {
21
14
  return "";
22
15
  }
23
16
  if (typeof v === "object") {
24
- return join(v, encoder, delimiter);
17
+ if (Array.isArray(v)) {
18
+ return v.map(encoder).join(delimiter);
19
+ }
20
+ const flat = Object.entries(v).reduce((flat, entry) => [...flat, ...entry], []);
21
+ return flat.map(encoder).join(delimiter);
25
22
  }
26
23
  return encoder(String(v));
27
24
  };
@@ -32,22 +29,16 @@ function encode(encoders, delimiter = ",") {
32
29
  };
33
30
  }
34
31
  exports.encode = encode;
35
- function simple(delimiter = ",") {
36
- return (param, encoders = exports.encodeReserved) => {
37
- return join(param, encoders[1], delimiter);
38
- };
39
- }
40
- exports.simple = simple;
41
32
  /**
42
33
  * Separate array values by the given delimiter.
43
34
  */
44
- function form(delimiter = ",") {
35
+ function delimited(delimiter = ",") {
45
36
  return (params, encoders = exports.encodeReserved) => Object.entries(params)
46
37
  .filter(([, value]) => value !== undefined)
47
38
  .map(([name, value]) => encode(encoders, delimiter) `${name}=${value}`)
48
39
  .join("&");
49
40
  }
50
- exports.form = form;
41
+ exports.delimited = delimited;
51
42
  /**
52
43
  * Deeply remove all properties with undefined values.
53
44
  */
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/runtime/util.ts"],"names":[],"mappings":";;;AAEA,gDAAgD;AACnC,QAAA,cAAc,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;AAC1D,QAAA,aAAa,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;AAE7D,SAAS,IAAI,CACX,KAAa,EACb,UAAuB,kBAAkB,EACzC,SAAS,GAAG,GAAG;IAEf,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC3C;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CACvC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,EACpC,EAAS,CACV,CAAC;IACF,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAgB,MAAM,CAAC,QAAkB,EAAE,SAAS,GAAG,GAAG;IACxD,MAAM,CAAC,GAAG,CAAC,CAAM,EAAE,CAAS,EAAE,EAAE;QAC9B,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,KAAK,WAAW,EAAE;YAC5B,OAAO,EAAE,CAAC;SACX;QACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YACzB,OAAO,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;SACpC;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,OAAO,CAAC,OAA6B,EAAE,GAAG,MAAa,EAAE,EAAE;QACzD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YACnC,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACzC,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAlBD,wBAkBC;AAED,SAAgB,MAAM,CAAC,SAAS,GAAG,GAAG;IACpC,OAAO,CACL,KAA0C,EAC1C,QAAQ,GAAG,sBAAc,EACzB,EAAE;QACF,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC7C,CAAC,CAAC;AACJ,CAAC;AAPD,wBAOC;AAED;;GAEG;AACH,SAAgB,IAAI,CAAC,SAAS,GAAG,GAAG;IAClC,OAAO,CAAC,MAA2B,EAAE,QAAQ,GAAG,sBAAc,EAAE,EAAE,CAChE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;SACrE,IAAI,CAAC,GAAG,CAAC,CAAC;AACjB,CAAC;AAND,oBAMC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAI,GAAM;IACtC,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AAChD,CAAC;AAFD,wCAEC;AAED,SAAgB,OAAO,CAAC,GAAG,KAAgC;IACzD,OAAO,KAAK;SACT,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;SACrD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;SACnE,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAND,0BAMC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/runtime/util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oazapfts",
3
- "version": "4.3.1-formatted-path-params.1",
3
+ "version": "4.3.2",
4
4
  "description": "OpenApi TypeScript client generator",
5
5
  "main": "lib/index.js",
6
6
  "bin": {
@@ -23,28 +23,28 @@
23
23
  "license": "MIT",
24
24
  "repository": "cellular/oazapfts",
25
25
  "devDependencies": {
26
- "@jest/types": "^29.2.0",
27
- "@types/jest": "^29.1.2",
28
- "@types/lodash": "^4.14.182",
26
+ "@jest/types": "^29.3.1",
27
+ "@types/jest": "^29.2.3",
28
+ "@types/lodash": "^4.14.190",
29
29
  "@types/minimist": "^1.2.2",
30
- "@types/node": "^18.6.3",
30
+ "@types/node": "^18.11.9",
31
31
  "form-data": "^4.0.0",
32
- "husky": "^8.0.1",
33
- "jest": "^29.2.0",
34
- "lint-staged": "^13.0.3",
32
+ "husky": "^8.0.2",
33
+ "jest": "^29.3.1",
34
+ "lint-staged": "^13.0.4",
35
35
  "open-api-mocker": "^1.11.1",
36
- "openapi-types": "^12.0.0",
37
- "prettier": "^2.7.1",
36
+ "openapi-types": "^12.0.2",
37
+ "prettier": "^2.8.0",
38
38
  "ts-jest": "^29.0.3",
39
39
  "ts-node": "^10.9.1",
40
40
  "with-server": "^2.1.0"
41
41
  },
42
42
  "dependencies": {
43
- "@apidevtools/swagger-parser": "^10.0.1",
44
- "lodash": "^4.17.20",
45
- "minimist": "^1.2.5",
46
- "swagger2openapi": "^7.0.7",
47
- "typescript": "^4.1.2"
43
+ "@apidevtools/swagger-parser": "^10.1.0",
44
+ "lodash": "^4.17.21",
45
+ "minimist": "^1.2.7",
46
+ "swagger2openapi": "^7.0.8",
47
+ "typescript": "^4.9.3"
48
48
  },
49
49
  "lint-staged": {
50
50
  "*.{ts,js,json,md,yml}": "prettier --write"
@@ -1,4 +1,4 @@
1
- import ApiGenerator, { getOperationName, getFormatter } from "./generate";
1
+ import ApiGenerator, { getOperationName } from "./generate";
2
2
  import { printAst } from "./index";
3
3
  import SwaggerParser from "@apidevtools/swagger-parser";
4
4
  import { OpenAPIV3 } from "openapi-types";
@@ -139,10 +139,3 @@ describe("generate with const", () => {
139
139
  expect(oneLine).toContain(constTypeDefinition);
140
140
  });
141
141
  });
142
-
143
- // // https://spec.openapis.org/oas/v3.0.3#style-examples
144
- // describe('getFormatter', () => {
145
- // it('formats correctly', () => {
146
- // const formatter = getFormatter()
147
- // })
148
- // })
@@ -45,7 +45,6 @@ export function getFormatter({
45
45
  }: OpenAPIV3.ParameterObject) {
46
46
  if (explode && style === "deepObject") return "deep";
47
47
  if (explode) return "explode";
48
- if (style === "simple") return "simple";
49
48
  if (style === "spaceDelimited") return "space";
50
49
  if (style === "pipeDelimited") return "pipe";
51
50
  return "form";
@@ -103,32 +102,23 @@ export function getReferenceName(obj: any) {
103
102
  }
104
103
  }
105
104
 
106
- const formatPrimitivePathParameter = (name: string) => {
107
- const expression = _.camelCase(name);
108
- return cg.createCall(factory.createIdentifier("encodeURIComponent"), {
109
- args: [factory.createIdentifier(expression)],
110
- });
111
- };
112
-
113
105
  /**
114
106
  * Create a template string literal from the given OpenAPI urlTemplate.
115
107
  * Curly braces in the path are turned into identifier expressions,
116
108
  * which are read from the local scope during runtime.
117
109
  */
118
- export function createUrlExpression(
119
- path: string,
120
- qs?: ts.Expression,
121
- formatPathParameter: (
122
- name: string
123
- ) => ts.Expression = formatPrimitivePathParameter
124
- ) {
110
+ export function createUrlExpression(path: string, qs?: ts.Expression) {
125
111
  const spans: Array<{ expression: ts.Expression; literal: string }> = [];
126
112
  // Use a replacer function to collect spans as a side effect:
127
113
  const head = path.replace(
128
114
  /(.*?)\{(.+?)\}(.*?)(?=\{|$)/g,
129
115
  (_substr, head, name, literal) => {
116
+ const expression = _.camelCase(name);
130
117
  spans.push({
131
- expression: formatPathParameter(name),
118
+ expression: cg.createCall(
119
+ factory.createIdentifier("encodeURIComponent"),
120
+ { args: [factory.createIdentifier(expression)] }
121
+ ),
132
122
  literal,
133
123
  });
134
124
  return head;
@@ -534,12 +524,7 @@ export default class ApiGenerator {
534
524
  );
535
525
  });
536
526
  this.enumAliases.push(
537
- factory.createEnumDeclaration(
538
- undefined,
539
- [cg.modifier.export],
540
- name,
541
- members
542
- )
527
+ factory.createEnumDeclaration([cg.modifier.export], name, members)
543
528
  );
544
529
 
545
530
  const type = factory.createTypeReferenceNode(name, undefined);
@@ -694,34 +679,6 @@ export default class ApiGenerator {
694
679
  return this.opts?.optimistic ? callOazapftsFunction("ok", [ex]) : ex;
695
680
  }
696
681
 
697
- formatPathParameter(name: string, parameter?: OpenAPIV3.ParameterObject) {
698
- const schema = parameter?.schema
699
- ? this.resolve<SchemaObject>(parameter.schema)
700
- : null;
701
-
702
- if (parameter && (schema?.type === "array" || schema?.type === "object")) {
703
- const expression = _.camelCase(name);
704
- const formatter = getFormatter({
705
- style: "simple",
706
- explode: parameter.style === "form",
707
- ...parameter,
708
- });
709
-
710
- return callQsFunction(
711
- formatter,
712
- formatter === "simple" || formatter === "pipe" || formatter === "space"
713
- ? [factory.createIdentifier(expression)]
714
- : [
715
- cg.createObjectLiteral([
716
- [expression, factory.createIdentifier(expression)],
717
- ]),
718
- ]
719
- );
720
- }
721
-
722
- return formatPrimitivePathParameter(name);
723
- }
724
-
725
682
  generateApi() {
726
683
  this.reset();
727
684
 
@@ -892,32 +849,16 @@ export default class ApiGenerator {
892
849
  "query",
893
850
  Object.entries(paramsByFormatter).map(([format, params]) => {
894
851
  //const [allowReserved, encodeReserved] = _.partition(params, "allowReserved");
895
- return callQsFunction(
896
- format === "simple"
897
- ? "form"
898
- : format === "pipe"
899
- ? "formPipe"
900
- : format === "space"
901
- ? "formSpace"
902
- : format,
903
- [
904
- cg.createObjectLiteral(
905
- params.map((p) => [p.name, argNames[p.name]])
906
- ),
907
- ]
908
- );
852
+ return callQsFunction(format, [
853
+ cg.createObjectLiteral(
854
+ params.map((p) => [p.name, argNames[p.name]])
855
+ ),
856
+ ]);
909
857
  })
910
858
  );
911
859
  }
912
860
 
913
- const url = createUrlExpression(path, qs, (name) =>
914
- this.formatPathParameter(
915
- name,
916
- parameters.find(
917
- ({ name: n, in: loc }) => loc === "path" && n === name
918
- )
919
- )
920
- );
861
+ const url = createUrlExpression(path, qs);
921
862
  const init: ts.ObjectLiteralElementLike[] = [
922
863
  factory.createSpreadAssignment(factory.createIdentifier("opts")),
923
864
  ];
@@ -60,20 +60,17 @@ export const modifier = {
60
60
  };
61
61
 
62
62
  export function createTypeAliasDeclaration({
63
- decorators,
64
63
  modifiers,
65
64
  name,
66
65
  typeParameters,
67
66
  type,
68
67
  }: {
69
- decorators?: Array<ts.Decorator>;
70
68
  modifiers?: Array<ts.Modifier>;
71
69
  name: string | ts.Identifier;
72
70
  typeParameters?: Array<ts.TypeParameterDeclaration>;
73
71
  type: ts.TypeNode;
74
72
  }) {
75
73
  return factory.createTypeAliasDeclaration(
76
- decorators,
77
74
  modifiers,
78
75
  name,
79
76
  typeParameters,
@@ -165,13 +162,11 @@ export function createArrowFunction(
165
162
  export function createFunctionDeclaration(
166
163
  name: string | ts.Identifier | undefined,
167
164
  {
168
- decorators,
169
165
  modifiers,
170
166
  asteriskToken,
171
167
  typeParameters,
172
168
  type,
173
169
  }: {
174
- decorators?: ts.Decorator[];
175
170
  modifiers?: ts.Modifier[];
176
171
  asteriskToken?: ts.AsteriskToken;
177
172
  typeParameters?: ts.TypeParameterDeclaration[];
@@ -181,7 +176,6 @@ export function createFunctionDeclaration(
181
176
  body?: ts.Block
182
177
  ): ts.FunctionDeclaration {
183
178
  return factory.createFunctionDeclaration(
184
- decorators,
185
179
  modifiers,
186
180
  asteriskToken,
187
181
  name,
@@ -244,14 +238,12 @@ export function createMethod(
244
238
  | ts.NumericLiteral
245
239
  | ts.ComputedPropertyName,
246
240
  {
247
- decorators,
248
241
  modifiers,
249
242
  asteriskToken,
250
243
  questionToken,
251
244
  typeParameters,
252
245
  type,
253
246
  }: {
254
- decorators?: ts.Decorator[];
255
247
  modifiers?: ts.Modifier[];
256
248
  asteriskToken?: ts.AsteriskToken;
257
249
  questionToken?: ts.QuestionToken | boolean;
@@ -262,7 +254,6 @@ export function createMethod(
262
254
  body?: ts.Block
263
255
  ): ts.MethodDeclaration {
264
256
  return factory.createMethodDeclaration(
265
- decorators,
266
257
  modifiers,
267
258
  asteriskToken,
268
259
  name,
@@ -277,14 +268,12 @@ export function createMethod(
277
268
  export function createParameter(
278
269
  name: string | ts.BindingName,
279
270
  {
280
- decorators,
281
271
  modifiers,
282
272
  dotDotDotToken,
283
273
  questionToken,
284
274
  type,
285
275
  initializer,
286
276
  }: {
287
- decorators?: Array<ts.Decorator>;
288
277
  modifiers?: Array<ts.Modifier>;
289
278
  dotDotDotToken?: ts.DotDotDotToken;
290
279
  questionToken?: ts.QuestionToken | boolean;
@@ -293,7 +282,6 @@ export function createParameter(
293
282
  }
294
283
  ): ts.ParameterDeclaration {
295
284
  return factory.createParameterDeclaration(
296
- decorators,
297
285
  modifiers,
298
286
  dotDotDotToken,
299
287
  name,
@@ -334,19 +322,16 @@ export function createPropertySignature({
334
322
  export function createIndexSignature(
335
323
  type: ts.TypeNode,
336
324
  {
337
- decorators,
338
325
  modifiers,
339
326
  indexName = "key",
340
327
  indexType = keywordType.string,
341
328
  }: {
342
329
  indexName?: string;
343
330
  indexType?: ts.TypeNode;
344
- decorators?: Array<ts.Decorator>;
345
331
  modifiers?: Array<ts.Modifier>;
346
332
  } = {}
347
333
  ) {
348
334
  return factory.createIndexSignature(
349
- decorators,
350
335
  modifiers,
351
336
  [createParameter(indexName, { type: indexType })],
352
337
  type
@@ -14,7 +14,11 @@ type FetchRequestOpts = RequestOpts & {
14
14
  };
15
15
 
16
16
  type JsonRequestOpts = RequestOpts & {
17
- body?: object;
17
+ body?: any;
18
+ };
19
+
20
+ type FormRequestOpts = RequestOpts & {
21
+ body?: Record<string, any>;
18
22
  };
19
23
 
20
24
  export type ApiResponse = { status: number; data?: any };
@@ -106,7 +110,7 @@ export function runtime(defaults: RequestOpts) {
106
110
  json({ body, headers, ...req }: JsonRequestOpts) {
107
111
  return {
108
112
  ...req,
109
- ...(body && { body: JSON.stringify(body) }),
113
+ ...(body != null && { body: JSON.stringify(body) }),
110
114
  headers: {
111
115
  ...headers,
112
116
  "Content-Type": "application/json",
@@ -114,10 +118,10 @@ export function runtime(defaults: RequestOpts) {
114
118
  };
115
119
  },
116
120
 
117
- form({ body, headers, ...req }: JsonRequestOpts) {
121
+ form({ body, headers, ...req }: FormRequestOpts) {
118
122
  return {
119
123
  ...req,
120
- ...(body && { body: qs.form(body) }),
124
+ ...(body != null && { body: qs.form(body) }),
121
125
  headers: {
122
126
  ...headers,
123
127
  "Content-Type": "application/x-www-form-urlencoded",
@@ -126,7 +130,7 @@ export function runtime(defaults: RequestOpts) {
126
130
  },
127
131
 
128
132
  multipart({ body, ...req }: MultipartRequestOpts) {
129
- if (!body) return req;
133
+ if (body == null) return req;
130
134
  const data = new (defaults.formDataConstructor ||
131
135
  req.formDataConstructor ||
132
136
  FormData)();
@@ -4,17 +4,11 @@ describe("delimited", () => {
4
4
  it("should use commas", () => {
5
5
  expect(qs.form({ id: [3, 4, 5] })).toEqual("id=3,4,5");
6
6
  });
7
- it("should use pipes for form", () => {
8
- expect(qs.formPipe({ id: [3, 4, 5] })).toEqual("id=3|4|5");
9
- });
10
- it("should use spaces for form", () => {
11
- expect(qs.formSpace({ id: [3, 4, 5] })).toEqual("id=3%204%205");
12
- });
13
7
  it("should use pipes", () => {
14
- expect(qs.pipe([3, 4, 5])).toEqual("3|4|5");
8
+ expect(qs.pipe({ id: [3, 4, 5] })).toEqual("id=3|4|5");
15
9
  });
16
10
  it("should use spaces", () => {
17
- expect(qs.space([3, 4, 5])).toEqual("3%204%205");
11
+ expect(qs.space({ id: [3, 4, 5] })).toEqual("id=3%204%205");
18
12
  });
19
13
  it("should enumerate entries", () => {
20
14
  expect(qs.form({ author: { firstName: "Felix", role: "admin" } })).toEqual(
@@ -1,9 +1,4 @@
1
- import {
2
- encode,
3
- form as encodeForm,
4
- simple as encodeSimple,
5
- encodeReserved,
6
- } from "./util";
1
+ import { encode, delimited, encodeReserved } from "./util";
7
2
 
8
3
  /**
9
4
  * Join params using an ampersand and prepends a questionmark if not empty.
@@ -66,9 +61,6 @@ export function explode(
66
61
  .join("&");
67
62
  }
68
63
 
69
- export const form = encodeForm();
70
- export const formPipe = encodeForm("|");
71
- export const formSpace = encodeForm("%20");
72
- export const simple = encodeSimple();
73
- export const pipe = encodeSimple("|");
74
- export const space = encodeSimple("%20");
64
+ export const form = delimited();
65
+ export const pipe = delimited("|");
66
+ export const space = delimited("%20");
@@ -4,21 +4,6 @@ type Encoders = Array<(s: string) => string>;
4
4
  export const encodeReserved = [encodeURIComponent, encodeURIComponent];
5
5
  export const allowReserved = [encodeURIComponent, encodeURI];
6
6
 
7
- function join(
8
- value: object,
9
- encoder: Encoders[0] = encodeURIComponent,
10
- delimiter = ","
11
- ) {
12
- if (Array.isArray(value)) {
13
- return value.map(encoder).join(delimiter);
14
- }
15
- const flat = Object.entries(value).reduce(
16
- (flat, entry) => [...flat, ...entry],
17
- [] as any
18
- );
19
- return flat.map(encoder).join(delimiter);
20
- }
21
-
22
7
  /**
23
8
  * Creates a tag-function to encode template strings with the given encoders.
24
9
  */
@@ -29,7 +14,14 @@ export function encode(encoders: Encoders, delimiter = ",") {
29
14
  return "";
30
15
  }
31
16
  if (typeof v === "object") {
32
- return join(v, encoder, delimiter);
17
+ if (Array.isArray(v)) {
18
+ return v.map(encoder).join(delimiter);
19
+ }
20
+ const flat = Object.entries(v).reduce(
21
+ (flat, entry) => [...flat, ...entry],
22
+ [] as any
23
+ );
24
+ return flat.map(encoder).join(delimiter);
33
25
  }
34
26
 
35
27
  return encoder(String(v));
@@ -42,19 +34,10 @@ export function encode(encoders: Encoders, delimiter = ",") {
42
34
  };
43
35
  }
44
36
 
45
- export function simple(delimiter = ",") {
46
- return (
47
- param: unknown[] | Record<string, unknown>,
48
- encoders = encodeReserved
49
- ) => {
50
- return join(param, encoders[1], delimiter);
51
- };
52
- }
53
-
54
37
  /**
55
38
  * Separate array values by the given delimiter.
56
39
  */
57
- export function form(delimiter = ",") {
40
+ export function delimited(delimiter = ",") {
58
41
  return (params: Record<string, any>, encoders = encodeReserved) =>
59
42
  Object.entries(params)
60
43
  .filter(([, value]) => value !== undefined)