Skip to content

Commit 51a8e42

Browse files
Merge pull request #482 from appwrite/fix-class-params
Fix: Class params
2 parents a27cdc6 + faeb988 commit 51a8e42

File tree

4 files changed

+38
-5
lines changed

4 files changed

+38
-5
lines changed

templates/deno/src/services/service.ts.twig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ export class {{ service.name | caseUcfirst }} extends Service {
4848
{
4949
this.{{ parameter.name | caseCamel | escapeKeyword }} = {{ parameter.name | caseCamel | escapeKeyword }};
5050
}
51-
public get{{ parameter.name | caseUcfirst | escapeKeyword }}({{ parameter.name | caseCamel | escapeKeyword }}: {{ parameter.type | typeName }}): {{ parameter.type | typeName }}
51+
public get{{ parameter.name | caseUcfirst | escapeKeyword }}(): {{ parameter.type | typeName }}
5252
{
5353
return this.{{ parameter.name | caseCamel | escapeKeyword }};
5454
}

templates/node/index.d.ts.twig

Lines changed: 35 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,18 @@ declare module "{{ language.params.npmPackage|caseDash }}" {
126126
constructor(client: Client);
127127
}
128128

129+
export class InputFile {
130+
static fromPath(filePath: string, filename: string): InputFile;
131+
132+
static fromBuffer(buffer: Buffer, filename: string): InputFile;
133+
134+
static fromBlob(blob: Blob, filename: string): InputFile;
135+
136+
static fromStream(stream: any, filename: string, size: number): InputFile;
137+
138+
static fromPlainText(content: string, filename: string): InputFile;
139+
}
140+
129141
type QueryTypesSingle = string | number | boolean;
130142
type QueryTypesList = string[] | number[] | boolean[];
131143
type QueryTypes = QueryTypesSingle | QueryTypesList;
@@ -152,6 +164,27 @@ declare module "{{ language.params.npmPackage|caseDash }}" {
152164

153165
{% for service in spec.services %}
154166
export class {{ service.name | caseUcfirst }} extends Service {
167+
constructor(client: Client{% for parameter in service.globalParams %}, {{ parameter.name | caseCamel | escapeKeyword }}: {{ parameter.type | typeName }}{% if not parameter.required %}|null{% endif %}{% endfor %});
168+
169+
{% if service.globalParams | length %}
170+
{% for parameter in service.globalParams %}
171+
/**
172+
* Get {{ parameter.name }}.
173+
*
174+
* @returns {{ '{' }}{{ parameter.type | typeName }}{{ '}' }}
175+
*/
176+
get{{ parameter.name | caseUcfirst | escapeKeyword }}(): {{ parameter.type | typeName }};
177+
178+
/**
179+
* Set {{ parameter.name }}.
180+
*
181+
* @param {{ '{' }}{{ parameter.type | typeName }}{{ '}' }} {{ parameter.name | caseCamel | escapeKeyword }}
182+
* @returns {void}
183+
*/
184+
set{{ parameter.name | caseUcfirst | escapeKeyword }}({{ parameter.name | caseCamel | escapeKeyword }}: {{ parameter.type | typeName }}): void;
185+
186+
{% endfor %}
187+
{% endif %}
155188
{% for method in service.methods %}
156189
{% set generics = _self.get_generics_method(spec.definitions[method.responseModel], spec, true, true) %}
157190
{% set generics_return = _self.get_generics_method_return(spec.definitions[method.responseModel], spec) %}
@@ -162,13 +195,13 @@ declare module "{{ language.params.npmPackage|caseDash }}" {
162195
{{ method.description|comment1 }}
163196
*
164197
{% endif %}
165-
{% for parameter in method.parameters.all %}
198+
{% for parameter in method.parameters.all | filter((param) => not param.isGlobal) %}
166199
* @param {{ '{' }}{{ parameter.type | typeName }}{{ '}' }} {{ parameter.name | caseCamel }}
167200
{% endfor %}
168201
* @throws {{ '{' }}{{ spec.title | caseUcfirst}}Exception}
169202
* @returns {Promise}
170203
*/
171-
{{ 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 %}): Promise<{% if method.type == 'location' %}Buffer{% 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 %}>;
204+
{{ 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 %}): Promise<{% if method.type == 'location' %}Buffer{% 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 %}>;
172205
{% endfor %}
173206
}
174207
{% endfor %}

templates/node/lib/services/service.js.twig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class {{ service.name | caseUcfirst }} extends Service {
2626
*
2727
* @return {{ parameter.type | typeName }}
2828
*/
29-
get{{ parameter.name | caseUcfirst | escapeKeyword }}({{ parameter.name | caseCamel | escapeKeyword }})
29+
get{{ parameter.name | caseUcfirst | escapeKeyword }}()
3030
{
3131
return this.{{ parameter.name | caseCamel | escapeKeyword }};
3232
}

templates/web/src/services/template.ts.twig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class {{ service.name | caseUcfirst }} extends Service {
1515
{
1616
this.{{ parameter.name | caseCamel | escapeKeyword }} = {{ parameter.name | caseCamel | escapeKeyword }};
1717
}
18-
public get{{ parameter.name | caseUcfirst | escapeKeyword }}({{ parameter.name | caseCamel | escapeKeyword }}: {{ parameter.type | typeName }}): {{ parameter.type | typeName }}
18+
public get{{ parameter.name | caseUcfirst | escapeKeyword }}(): {{ parameter.type | typeName }}
1919
{
2020
return this.{{ parameter.name | caseCamel | escapeKeyword }};
2121
}

0 commit comments

Comments
 (0)