@lucaapp/service-utils 1.61.0 → 1.61.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/lib/api/endpoint.js
CHANGED
|
@@ -167,7 +167,7 @@ async function stream2buffer(stream) {
|
|
|
167
167
|
stream.on('error', error => reject(error));
|
|
168
168
|
});
|
|
169
169
|
}
|
|
170
|
-
function handleMultipleFileUpload(request) {
|
|
170
|
+
async function handleMultipleFileUpload(request) {
|
|
171
171
|
return new Promise((resolve, reject) => {
|
|
172
172
|
const bb = (0, busboy_1.default)({
|
|
173
173
|
headers: request.headers,
|
|
@@ -178,26 +178,33 @@ function handleMultipleFileUpload(request) {
|
|
|
178
178
|
},
|
|
179
179
|
});
|
|
180
180
|
const files = [];
|
|
181
|
-
bb.once('error', error =>
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
const { encoding, mimeType: mimetype, filename: name } = filename;
|
|
181
|
+
bb.once('error', error => reject(error));
|
|
182
|
+
const filePromises = [];
|
|
183
|
+
bb.on('file', async (fieldname, fileStream, fileInfo) => {
|
|
184
|
+
const { encoding, mimeType: mimetype, filename: name } = fileInfo;
|
|
186
185
|
const originalName = Buffer.from(name, 'latin1').toString('utf8');
|
|
187
|
-
const
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
186
|
+
const filePromise = stream2buffer(fileStream).then(fileBuffer => {
|
|
187
|
+
const file = {
|
|
188
|
+
buffer: fileBuffer,
|
|
189
|
+
originalname: originalName,
|
|
190
|
+
encoding,
|
|
191
|
+
mimetype,
|
|
192
|
+
size: fileBuffer.length,
|
|
193
|
+
fieldname,
|
|
194
|
+
filename: name,
|
|
195
|
+
};
|
|
196
|
+
files.push(file);
|
|
197
|
+
});
|
|
198
|
+
filePromises.push(filePromise);
|
|
198
199
|
});
|
|
199
|
-
bb.once('finish', () => {
|
|
200
|
-
|
|
200
|
+
bb.once('finish', async () => {
|
|
201
|
+
try {
|
|
202
|
+
await Promise.all(filePromises);
|
|
203
|
+
resolve(files);
|
|
204
|
+
}
|
|
205
|
+
catch (error) {
|
|
206
|
+
reject(error);
|
|
207
|
+
}
|
|
201
208
|
});
|
|
202
209
|
request.pipe(bb);
|
|
203
210
|
});
|