Переглянути джерело

Include meeting name in file name, and include meeting data in response object so it is available in later uppy lifecycle methods when interacting with file object (#2547)

mokutsu-coursera 4 роки тому
батько
коміт
969815fa31

+ 5 - 1
packages/@uppy/companion/src/server/provider/zoom/adapter.js

@@ -72,7 +72,7 @@ exports.getItemName = (item, userResponse) => {
   if (item.file_type) {
     const ext = EXT[item.file_type] ? `.${EXT[item.file_type]}` : ''
     const itemType = item.recording_type ? ` - ${item.recording_type.split('_').join(' ')}` : ''
-    return `${start}${itemType} (${item.file_type.toLowerCase()})${ext}`
+    return `${item.topic}${itemType} (${start})${ext}`
   }
 
   return `${item.topic} (${start})`
@@ -127,3 +127,7 @@ exports.getSize = (item) => {
   }
   return item.total_size
 }
+
+exports.getItemTopic = (item) => {
+  return item.topic
+}

+ 6 - 2
packages/@uppy/companion/src/server/provider/zoom/index.js

@@ -227,7 +227,8 @@ class Zoom extends Provider {
         .filter(item => moment.utc(item.start_time).isAfter(utcFrom) && moment.utc(item.start_time).isBefore(utcTo))
     } else {
       items = results.recording_files
-        .map(item => item).filter(file => file.file_type !== 'TIMELINE')
+        .map(item => { return { ...item, topic: results.topic } })
+        .filter(file => file.file_type !== 'TIMELINE')
     }
 
     items.forEach(item => {
@@ -240,7 +241,10 @@ class Zoom extends Provider {
         thumbnail: null,
         requestPath: adapter.getRequestPath(item),
         modifiedDate: adapter.getStartDate(item),
-        size: adapter.getSize(item)
+        size: adapter.getSize(item),
+        custom: {
+          topic: adapter.getItemTopic(item)
+        }
       })
     })
     return data