Handle position arguments correctly (#2423)

This commit is contained in:
Justin Dalrymple 2022-03-19 23:49:05 -04:00 committed by GitHub
parent 36cb7857a9
commit 0bf87da2a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -81,15 +81,25 @@ export class ResourceDiscussions<C extends boolean = false> extends BaseResource
resourceId: string | number,
resource2Id: string | number,
body: string,
options?: BaseRequestOptions,
{ position, ...options }: { position?: Record<string, unknown> } & BaseRequestOptions = {},
) {
const opts = { ...options };
if (position) {
opts.isForm = true;
opts.body = body;
Object.entries(position).forEach(([k, v]) => {
opts[`position[${k}]`] = v;
});
} else {
opts.query = { body };
}
return RequestHelper.post<DiscussionSchema>()(
this,
endpoint`${resourceId}/${this.resource2Type}/${resource2Id}/discussions`,
{
query: { body },
...options,
},
opts,
);
}