@@ -44,7 +44,52 @@ export class {{ service.name | caseUcfirst }} {
44
44
{%~ endif %}
45
45
{%~ endif %}
46
46
*/
47
+ {%~ if method .parameters .all | length > 0 %}
48
+ {{ method .name | caseCamel }}{{ method .responseModel | getGenerics(spec ) | raw }}(params: { {% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required or parameter .nullable %}?{% endif %}: {{ parameter | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %} {% if ' multipart/form-data' in method .consumes %}, onProgress?: (progress: UploadProgress) => {}{% endif %} }): {{ method | getReturn(spec ) | raw }};
49
+ {{ method .name | caseCamel }}{{ method .responseModel | getGenerics(spec ) | raw }}({% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required or parameter .nullable %}?{% endif %}: {{ parameter | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %}, onProgress?: (progress: UploadProgress) => {}{% endif %}): {{ method | getReturn(spec ) | raw }};
50
+ {{ method .name | caseCamel }}{{ method .responseModel | getGenerics(spec ) | raw }}(
51
+ {% if method .parameters .all | length > 0 %}paramsOrFirst{% if not method .parameters .all [0 ].required or method .parameters .all [0 ].nullable %}?{% endif %}: { {% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required or parameter .nullable %}?{% endif %}: {{ parameter | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %}, onProgress?: (progress: UploadProgress) => {} {% endif %} } | {{ method .parameters .all [0 ] | getPropertyType(method ) | raw }}{% if method .parameters .all | length > 1 %},
52
+ ...rest: [{% for parameter in method .parameters .all [1:] %}({{ parameter | getPropertyType(method ) | raw }})?{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %},((progress: UploadProgress) => {})?{% endif %}]{% endif %}{% endif %}
53
+
54
+ ): {{ method | getReturn(spec ) | raw }} {
55
+ {%~ if method .parameters .all | length > 0 %}
56
+ let params: { {% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required or parameter .nullable %}?{% endif %}: {{ parameter | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %} };
57
+ {%~ if ' multipart/form-data' in method .consumes %}
58
+ let onProgress: ((progress: UploadProgress) => {});
59
+ {%~ endif %}
60
+
61
+ if (typeof paramsOrFirst === 'object' && paramsOrFirst !== null && !Array.isArray(paramsOrFirst)
62
+ {% if method .parameters .all | length > 0 %}&& ({% for parameter in method .parameters .all %}'{{ parameter .name | caseCamel | escapeKeyword }}' in paramsOrFirst{% if not loop .last %} || {% endif %}{% endfor %} || Object.keys(paramsOrFirst).length === 0){% endif %}) {
63
+ params = paramsOrFirst as { {% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required or parameter .nullable %}?{% endif %}: {{ parameter | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %} };
64
+ {%~ if ' multipart/form-data' in method .consumes %}
65
+ onProgress = paramsOrFirst.onProgress as ((progress: UploadProgress) => {});
66
+ {%~ endif %}
67
+ } else {
68
+ params = {
69
+ {%~ for parameter in method .parameters .all %}
70
+ {{ parameter .name | caseCamel | escapeKeyword }}: {% if loop .index0 == 0 %}paramsOrFirst{% else %}rest[{{ loop .index0 - 1 }}]{% endif %} as {{ parameter | getPropertyType(method ) | raw }}{% if not loop .last %},
71
+ {% endif %}
72
+ {%~ endfor %}
73
+
74
+ };
75
+ {%~ if ' multipart/form-data' in method .consumes %}
76
+ onProgress = rest[{{ method .parameters .all | length - 1 }}] as ((progress: UploadProgress) => {});
77
+ {%~ endif %}
78
+ }
79
+
80
+ {%~ for parameter in method .parameters .all %}
81
+ const {{ parameter .name | caseCamel | escapeKeyword }} = params.{{ parameter .name | caseCamel | escapeKeyword }};
82
+ {%~ endfor %}
83
+ {%~ else %}
84
+ {%~ if ' multipart/form-data' in method .consumes %}
85
+ if (typeof paramsOrFirst === 'function') {
86
+ onProgress = paramsOrFirst;
87
+ }
88
+ {%~ endif %}
89
+ {%~ endif %}
90
+ {%~ else %}
47
91
{{ method .name | caseCamel }}{{ method .responseModel | getGenerics(spec ) | raw }}({% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required or parameter .nullable %}?{% endif %}: {{ parameter | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %}, onProgress = (progress: UploadProgress) => {}{% endif %}): {{ method | getReturn(spec ) | raw }} {
92
+ {%~ endif %}
48
93
{%~ for parameter in method .parameters .all %}
49
94
{%~ if parameter .required %}
50
95
if (typeof {{ parameter .name | caseCamel | escapeKeyword }} === 'undefined') {
@@ -119,4 +164,4 @@ export class {{ service.name | caseUcfirst }} {
119
164
120
165
{%~ endif %}
121
166
{%~ endfor %}
122
- }
167
+ }
0 commit comments