main.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. require('es6-promise/auto')
  2. require('whatwg-fetch')
  3. const Uppy = require('@uppy/core')
  4. const Dashboard = require('@uppy/dashboard')
  5. const GoogleDrive = require('@uppy/google-drive')
  6. const Instagram = require('@uppy/instagram')
  7. const Dropbox = require('@uppy/dropbox')
  8. const Box = require('@uppy/box')
  9. const Tus = require('@uppy/tus')
  10. const isOnTravis = !!(process.env.TRAVIS && process.env.CI)
  11. const companionUrl = isOnTravis ? 'http://companion.test:3030' : 'http://localhost:3020'
  12. window.uppy = new Uppy({
  13. id: 'uppyProvider',
  14. debug: true,
  15. autoProceed: true
  16. })
  17. .use(Dashboard, {
  18. target: '#uppyDashboard',
  19. inline: true
  20. })
  21. .use(GoogleDrive, { target: Dashboard, companionUrl })
  22. .use(Instagram, { target: Dashboard, companionUrl })
  23. .use(Dropbox, { target: Dashboard, companionUrl })
  24. .use(Box, { target: Dashboard, companionUrl })
  25. .use(Tus, { endpoint: 'https://master.tus.io/files/' })
  26. if (window.location.search === '?socketerr=true') {
  27. const emitError = (file, data) => {
  28. // trigger fake socket error
  29. data.uploader.uploaderSockets[file.id].emit(
  30. 'error', { error: { message: 'nobody likes me, thats ok' } })
  31. window.uppy.off('upload-progress', emitError)
  32. }
  33. window.uppy.on('upload-progress', emitError)
  34. }