@@ -40,6 +40,27 @@ export type UploadProgress = {
40
40
}
41
41
42
42
export class {{ service .name | caseUcfirst }} extends Service {
43
+ {% if service .globalParams | length %}
44
+ {% for parameter in service .globalParams %}
45
+ protected {{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .type | typeName }};
46
+ public set{{ parameter .name | caseUcfirst | escapeKeyword }}({{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .type | typeName }}): void
47
+ {
48
+ this.{{ parameter .name | caseCamel | escapeKeyword }} = {{ parameter .name | caseCamel | escapeKeyword }};
49
+ }
50
+ public get{{ parameter .name | caseUcfirst | escapeKeyword }}({{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .type | typeName }}): {{ parameter .type | typeName }}
51
+ {
52
+ return this.{{ parameter .name | caseCamel | escapeKeyword }};
53
+ }
54
+ {% endfor %}
55
+ constructor(client: Client, {% for parameter in service .globalParams %} {{ parameter .name | caseCamel | escapeKeyword }}:{{ parameter .type | typeName }}{% if not parameter .required %}|null = null{% endif %}{% if not loop .last %}, {% endif %}{% endfor %})
56
+ {
57
+ super(client);
58
+
59
+ {% for parameter in service .globalParams %}
60
+ this.{{ parameter .name | caseCamel | escapeKeyword }} = {{ parameter .name | caseCamel | escapeKeyword }};
61
+ {% endfor %}
62
+ }
63
+ {% endif %}
43
64
{% for method in service .methods %}
44
65
{% set generics = _self.get_generics (spec .definitions [method .responseModel ], spec , true , true ) %}
45
66
{% set generics_return = _self.get_generics_return (spec .definitions [method .responseModel ], spec ) %}
@@ -50,33 +71,33 @@ export class {{ service.name | caseUcfirst }} extends Service {
50
71
{{ method .description | comment1 }}
51
72
*
52
73
{% endif %}
53
- {% for parameter in method .parameters .all %}
74
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
54
75
* @param {{ ' {' }}{{ parameter .type | typeName }}{{ ' }' }} {{ parameter .name | caseCamel | escapeKeyword }}
55
76
{% endfor %}
56
77
* @throws {AppwriteException}
57
78
* @returns {Promise}
58
79
*/
59
- async {{ method .name | caseCamel }}{% if generics %}< {{generics }}>{% endif %}({% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required %}?{% endif %}: {{ parameter .type | typeName }}{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %}, onProgress = (progress: UploadProgress) => {}{% endif %}): Promise< {% if method .type == ' webAuth' %}Response{% elseif method .type == ' location' %}Response{% else %}{% if method .responseModel and method .responseModel != ' any' %}{% if not spec .definitions [method .responseModel ].additionalProperties %}Models.{% endif %}{{method .responseModel | caseUcfirst }}{% if generics_return %}< {{generics_return }}>{% endif %}{% else %}Response{% endif %}{% endif %}> {
60
- {% for parameter in method .parameters .all %}
80
+ async {{ method .name | caseCamel }}{% if generics %}< {{generics }}>{% endif %}({% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required %}?{% endif %}: {{ parameter .type | typeName }}{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %}, onProgress = (progress: UploadProgress) => {}{% endif %}): Promise< {% if method .type == ' webAuth' %}Response{% elseif method .type == ' location' %}Response{% else %}{% if method .responseModel and method .responseModel != ' any' %}{% if not spec .definitions [method .responseModel ].additionalProperties %}Models.{% endif %}{{method .responseModel | caseUcfirst }}{% if generics_return %}< {{generics_return }}>{% endif %}{% else %}Response{% endif %}{% endif %}> {
81
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
61
82
{% if parameter .required %}
62
83
if (typeof {{ parameter .name | caseCamel | escapeKeyword }} === 'undefined') {
63
84
throw new {{spec .title | caseUcfirst }}Exception('Missing required parameter: "{{ parameter .name | caseCamel | escapeKeyword }}"');
64
85
}
65
86
66
87
{% endif %}
67
88
{% endfor %}
68
- let path = '{{ method .path }}'{% for parameter in method .parameters .path %}.replace('{{ ' {' }}{{ parameter .name }}{{ ' }' }}', {{ parameter .name | caseCamel | escapeKeyword }}){% endfor %};
89
+ let path = '{{ method .path }}'{% for parameter in method .parameters .path %}.replace('{{ ' {' }}{{ parameter .name }}{{ ' }' }}', {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }}){% endfor %};
69
90
let payload: Payload = {};
70
91
71
92
{% for parameter in method .parameters .query %}
72
- if (typeof {{ parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
73
- payload['{{ parameter .name }}'] = {{ parameter .name | caseCamel | escapeKeyword }}{% if method .consumes [0 ] == " multipart/form-data" and ( parameter .type != " string" and parameter .type != " array" ) %}.toString(){% endif %};
93
+ if (typeof {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
94
+ payload['{{ parameter .name }}'] = {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }}{% if method .consumes [0 ] == " multipart/form-data" and ( parameter .type != " string" and parameter .type != " array" ) %}.toString(){% endif %};
74
95
}
75
96
76
97
{% endfor %}
77
98
{% for parameter in method .parameters .body %}
78
- if (typeof {{ parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
79
- payload['{{ parameter .name }}'] = {{ parameter .name | caseCamel | escapeKeyword }}{% if method .consumes [0 ] == " multipart/form-data" and ( parameter .type != " string" and parameter .type != " array" ) %}.toString(){% endif %};
99
+ if (typeof {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
100
+ payload['{{ parameter .name }}'] = {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }}{% if method .consumes [0 ] == " multipart/form-data" and ( parameter .type != " string" and parameter .type != " array" ) %}.toString(){% endif %};
80
101
}
81
102
{% endfor %}
82
103
{% if ' multipart/form-data' in method .consumes %}
0 commit comments