main.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  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 Tus = require('@uppy/tus')
  9. const isOnTravis = !!(process.env.TRAVIS && process.env.CI)
  10. const companionUrl = isOnTravis ? 'http://companion.test:3030' : 'http://localhost:3020'
  11. window.uppy = Uppy({
  12. id: 'uppyProvider',
  13. debug: true,
  14. autoProceed: true
  15. })
  16. .use(Dashboard, {
  17. target: '#uppyDashboard',
  18. inline: true
  19. })
  20. .use(GoogleDrive, { target: Dashboard, companionUrl })
  21. .use(Instagram, { target: Dashboard, companionUrl })
  22. .use(Dropbox, { target: Dashboard, companionUrl })
  23. .use(Tus, { endpoint: 'https://master.tus.io/files/' })
  24. if (window.location.search === '?socketerr=true') {
  25. const emitError = (file, data) => {
  26. // trigger fake socket error
  27. data.uploader.uploaderSockets[file.id].emit(
  28. 'error', { error: { message: 'nobody likes me, thats ok' } })
  29. window.uppy.off('upload-progress', emitError)
  30. }
  31. window.uppy.on('upload-progress', emitError)
  32. }