diff --git a/packages/rest/__tests__/REST.test.ts b/packages/rest/__tests__/REST.test.ts index 172d87ea2..756bd4f25 100644 --- a/packages/rest/__tests__/REST.test.ts +++ b/packages/rest/__tests__/REST.test.ts @@ -115,10 +115,10 @@ test('postFile empty', async () => { }); }); -test('postFile file', async () => { +test('postFile file (string)', async () => { expect( await api.post('/postFile', { - files: [{ fileName: 'out.txt', rawBuffer: Buffer.from('Hello') }], + files: [{ fileName: 'out.txt', fileData: 'Hello' }], }), ).toStrictEqual({ body: [ @@ -133,7 +133,7 @@ test('postFile file', async () => { test('postFile file and JSON', async () => { expect( await api.post('/postFile', { - files: [{ fileName: 'out.txt', rawBuffer: Buffer.from('Hello') }], + files: [{ fileName: 'out.txt', fileData: Buffer.from('Hello') }], body: { foo: 'bar' }, }), ).toStrictEqual({ @@ -153,8 +153,8 @@ test('postFile files and JSON', async () => { expect( await api.post('/postFile', { files: [ - { fileName: 'out.txt', rawBuffer: Buffer.from('Hello') }, - { fileName: 'out.txt', rawBuffer: Buffer.from('Hi') }, + { fileName: 'out.txt', fileData: Buffer.from('Hello') }, + { fileName: 'out.txt', fileData: Buffer.from('Hi') }, ], body: { files: [{ id: 0, description: 'test' }] }, }), @@ -178,7 +178,7 @@ test('postFile files and JSON', async () => { test('postFile sticker and JSON', async () => { expect( await api.post('/postFile', { - files: [{ key: 'file', fileName: 'sticker.png', rawBuffer: Buffer.from('Sticker') }], + files: [{ key: 'file', fileName: 'sticker.png', fileData: Buffer.from('Sticker') }], body: { foo: 'bar' }, appendToFormData: true, }), diff --git a/packages/rest/src/lib/RequestManager.ts b/packages/rest/src/lib/RequestManager.ts index 6e08fcb91..78d73b9de 100644 --- a/packages/rest/src/lib/RequestManager.ts +++ b/packages/rest/src/lib/RequestManager.ts @@ -28,7 +28,7 @@ export interface RawFile { /** * The actual data for the file */ - rawBuffer: Buffer; + fileData: string | number | boolean | Buffer; } /** @@ -280,7 +280,7 @@ export class RequestManager extends EventEmitter { // Attach all files to the request for (const [index, file] of request.files.entries()) { - formData.append(file.key ?? `files[${index}]`, file.rawBuffer, file.fileName); + formData.append(file.key ?? `files[${index}]`, file.fileData, file.fileName); } // If a JSON body was added as well, attach it to the form data, using payload_json unless otherwise specified