hunk.code_window:         logger.error(err, 'provider.drive.download.error')
         })
     }
     thumbnail ({ id, token }, done) {
       return this.stats({ id, token }, (err, resp, body) => {
         if (err || resp.statusCode !== 200) {
           err = this._error(err, resp)
           logger.error(err, 'provider.drive.thumbnail.error')
           return done(err)
         }
         done(null, body.thumbnailLink ? request(body.thumbnailLink) : null)
       })
     }
     size ({ id, token }, done) {
       return this.stats({ id, token }, (err, resp, body) => {
  
hunk.labels: keep keep keep keep replace replace replace replace replace replace replace replace replace replace keep keep keep keep
hunk.after_edit:   thumbnail (_, done) {
       // not implementing this because a public thumbnail from onedrive will be used instead
       const err = new Error('call to thumbnail is not implemented')
       logger.error(err, 'provider.drive.thumbnail.error')
       return done(err)
  
hunk.file_path: packages/@uppy/companion/src/server/provider/drive/index.js
hunk.type: replace
file: require('es6-promise/auto')
  require('whatwg-fetch')
  const Uppy = require('@uppy/core')
  const Dashboard = require('@uppy/dashboard')
  const Url = require('@uppy/url')
  const Tus = require('@uppy/tus')
  
  const isOnTravis = !!(process.env.TRAVIS && process.env.CI)
  const companionUrl = isOnTravis ? 'http://companion.test:3030' : 'http://localhost:3030'
  const endpoint = isOnTravis ? 'http://companion.test:1080' : 'http://localhost:1080'
  
  window.uppy = Uppy({
    id: 'uppyProvider',
    debug: true
  })
    .use(Dashboard, {
      target: '#uppyDashboard',
      inline: true
    })
    .use(Url, {
      target: Dashboard,
      companionUrl: companionUrl
    })
    .use(Tus, { endpoint: `${endpoint}/files/` })
  