diff options
author | Fawn <fangrui_tong@brown.edu> | 2019-11-14 23:39:52 -0500 |
---|---|---|
committer | Fawn <fangrui_tong@brown.edu> | 2019-11-14 23:39:52 -0500 |
commit | f108bc9f9f1ff9cad2db4b794e3b433768c342a1 (patch) | |
tree | a2603e85291d118bbea3370ce823ab833e63281a /src/server/index.ts | |
parent | e3f06e390f98cc5b97d63fc287daff994d5fef6f (diff) | |
parent | c9fbdb9cfd5fcf35f7a599706cb41d4e7e586e19 (diff) |
merged with master
Diffstat (limited to 'src/server/index.ts')
-rw-r--r-- | src/server/index.ts | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/server/index.ts b/src/server/index.ts index ee6a497ba..ddd909479 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) ); } @@ -1164,6 +1163,7 @@ const suffixMap: { [type: string]: (string | [string, string | ((json: any) => a "pdf": ["_t", "url"], "audio": ["_t", "url"], "web": ["_t", "url"], + "RichTextField": ["_t", value => value.Text], "date": ["_d", value => new Date(value.date).toISOString()], "proxy": ["_i", "fieldId"], "list": ["_l", list => { |