main.js 2.1 KB

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