main.js 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. const Uppy = require('./../../packages/@uppy/core/src')
  2. const Dashboard = require('./../../packages/@uppy/dashboard/src')
  3. const Instagram = require('./../../packages/@uppy/instagram/src')
  4. const Dropbox = require('./../../packages/@uppy/dropbox/src')
  5. const GoogleDrive = require('./../../packages/@uppy/google-drive/src')
  6. const Url = require('./../../packages/@uppy/url/src')
  7. const Webcam = require('./../../packages/@uppy/webcam/src')
  8. const Tus = require('./../../packages/@uppy/tus/src')
  9. // const XHRUpload = require('./../../packages/@uppy/xhr-upload/src')
  10. const Form = require('./../../packages/@uppy/form/src')
  11. const TUS_ENDPOINT = 'https://master.tus.io/files/'
  12. // const XHR_ENDPOINT = 'https://api2.transloadit.com'
  13. const uppy = Uppy({
  14. debug: true,
  15. meta: {
  16. username: 'John',
  17. license: 'Creative Commons'
  18. }
  19. })
  20. .use(Dashboard, {
  21. trigger: '#pick-files',
  22. // inline: true,
  23. target: '.foo',
  24. metaFields: [
  25. { id: 'license', name: 'License', placeholder: 'specify license' },
  26. { id: 'caption', name: 'Caption', placeholder: 'add caption' }
  27. ],
  28. showProgressDetails: true,
  29. proudlyDisplayPoweredByUppy: true,
  30. note: '2 files, images and video only'
  31. })
  32. .use(GoogleDrive, { target: Dashboard, companionUrl: 'http://localhost:3020' })
  33. .use(Instagram, { target: Dashboard, companionUrl: 'http://localhost:3020' })
  34. .use(Dropbox, { target: Dashboard, companionUrl: 'http://localhost:3020' })
  35. .use(Url, { target: Dashboard, companionUrl: 'http://localhost:3020' })
  36. .use(Webcam, { target: Dashboard })
  37. .use(Tus, { endpoint: TUS_ENDPOINT })
  38. // .use(XHRUpload, { endpoint: XHR_ENDPOINT })
  39. .use(Form, { target: '#upload-form' })
  40. // .use(GoldenRetriever, {serviceWorker: true})
  41. uppy.on('complete', (result) => {
  42. if (result.failed.length === 0) {
  43. console.log('Upload successful 😀')
  44. } else {
  45. console.warn('Upload failed 😞')
  46. }
  47. console.log('successful files:', result.successful)
  48. console.log('failed files:', result.failed)
  49. })
  50. /* eslint-disable compat/compat */
  51. if ('serviceWorker' in navigator) {
  52. navigator.serviceWorker
  53. .register('/sw.js')
  54. .then((registration) => {
  55. console.log('ServiceWorker registration successful with scope: ', registration.scope)
  56. })
  57. .catch((error) => {
  58. console.log('Registration failed with ' + error)
  59. })
  60. }
  61. /* eslint-enable */
  62. var modalTrigger = document.querySelector('#pick-files')
  63. if (modalTrigger) modalTrigger.click()