main.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. const Uppy = require('@uppy/core')
  2. const Dashboard = require('@uppy/dashboard')
  3. const GoogleDrive = require('@uppy/google-drive')
  4. const Instagram = require('@uppy/instagram')
  5. const Dropbox = require('@uppy/dropbox')
  6. const Box = require('@uppy/box')
  7. const Tus = require('@uppy/tus')
  8. const isOnTravis = !!(process.env.TRAVIS && process.env.CI)
  9. const companionUrl = isOnTravis ? 'http://companion.test:3030' : 'http://localhost:3020'
  10. window.uppy = new Uppy({
  11. id: 'uppyProvider',
  12. debug: true,
  13. autoProceed: true,
  14. })
  15. .use(Dashboard, {
  16. target: '#uppyDashboard',
  17. inline: true,
  18. })
  19. .use(GoogleDrive, { target: Dashboard, companionUrl })
  20. .use(Instagram, { target: Dashboard, companionUrl })
  21. .use(Dropbox, { target: Dashboard, companionUrl })
  22. .use(Box, { target: Dashboard, companionUrl })
  23. .use(Tus, { endpoint: 'https://tusd.tusdemo.net/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. )
  30. window.uppy.off('upload-progress', emitError)
  31. }
  32. window.uppy.on('upload-progress', emitError)
  33. }