diff options
author | yipstanley <stanley_yip@brown.edu> | 2019-11-09 14:13:20 -0500 |
---|---|---|
committer | yipstanley <stanley_yip@brown.edu> | 2019-11-09 14:13:20 -0500 |
commit | 517bccdf0921169fd83312f3cedd044522a2398e (patch) | |
tree | d171ec7672230dded66606f8f7e25618b2e70338 /src/server/index.ts | |
parent | ca406ddce0a9b35ca9063f74979c952e080339f1 (diff) | |
parent | 5c6dc8fb25c2ac65a9efa534ee86211ac6d68301 (diff) |
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web into inking_to_doc
Diffstat (limited to 'src/server/index.ts')
-rw-r--r-- | src/server/index.ts | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/server/index.ts b/src/server/index.ts index ee6a497ba..1595781dc 100644 --- a/src/server/index.ts +++ b/src/server/index.ts @@ -1049,23 +1049,22 @@ addSecureRoute({ let failed: number[] = []; - const newMediaItems = await BatchedArray.from<GooglePhotosUploadUtils.MediaInput>(media, { batchSize: 25 }).batchedMapPatientInterval( + const batched = BatchedArray.from<GooglePhotosUploadUtils.MediaInput>(media, { batchSize: 25 }); + const newMediaItems = await batched.batchedMapPatientInterval<NewMediaItem>( { magnitude: 100, unit: TimeUnit.Milliseconds }, - async (batch: GooglePhotosUploadUtils.MediaInput[]) => { - const newMediaItems: NewMediaItem[] = []; + async (batch, collector) => { for (let index = 0; index < batch.length; index++) { - const element = batch[index]; - const uploadToken = await GooglePhotosUploadUtils.DispatchGooglePhotosUpload(element.url); + const { url, description } = batch[index]; + const uploadToken = await GooglePhotosUploadUtils.DispatchGooglePhotosUpload(url); if (!uploadToken) { failed.push(index); } else { - newMediaItems.push({ - description: element.description, + collector.push({ + description, simpleMediaItem: { uploadToken } }); } } - return newMediaItems; } ); @@ -1075,7 +1074,7 @@ addSecureRoute({ } GooglePhotosUploadUtils.CreateMediaItems(newMediaItems, req.body.album).then( - result => _success(res, { results: result.newMediaItemResults, failed }), + results => _success(res, { results, failed }), error => _error(res, mediaError, error) ); } |