main.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. const Uppy = require('../../src/core/Core.js')
  2. const Dashboard = require('../../src/plugins/Dashboard')
  3. const GoogleDrive = require('../../src/plugins/GoogleDrive')
  4. const Dropbox = require('../../src/plugins/Dropbox')
  5. const Webcam = require('../../src/plugins/Webcam')
  6. const Tus10 = require('../../src/plugins/Tus10')
  7. // const Multipart = require('../../src/plugins/Multipart')
  8. const MetaData = require('../../src/plugins/MetaData')
  9. // const Informer = require('../../src/plugins/Informer')
  10. // const StatusBar = require('../../src/plugins/StatusBar')
  11. // const DragDrop = require('../../src/plugins/DragDrop')
  12. const PROTOCOL = location.protocol === 'https:' ? 'https' : 'http'
  13. const TUS_ENDPOINT = PROTOCOL + '://master.tus.io/files/'
  14. // import ru_RU from '../../src/locales/ru_RU.js'
  15. // import MagicLog from '../../src/plugins/MagicLog'
  16. // import PersistentState from '../../src/plugins/PersistentState'
  17. const uppy = Uppy({
  18. debug: true,
  19. autoProceed: false,
  20. maxFileSize: 300000,
  21. maxNumberOfFiles: 5,
  22. minNumberOfFiles: 2,
  23. allowedFileTypes: ['image', 'video']
  24. })
  25. .use(Dashboard, {
  26. trigger: '#uppyModalOpener',
  27. // maxWidth: 350,
  28. // maxHeight: 400,
  29. // inline: false,
  30. // disableStatusBar: true,
  31. // disableInformer: true,
  32. target: 'body',
  33. locale: {
  34. strings: {browse: 'wow'}
  35. }
  36. })
  37. .use(GoogleDrive, {target: Dashboard, host: 'http://localhost:3020'})
  38. .use(Dropbox, {target: Dashboard, host: 'http://localhost:3020'})
  39. // .use(FileInput, {target: '.Uppy', locale: {
  40. // strings: {selectToUpload: 'Выберите файл для загрузки'}
  41. // }})
  42. // .use(DragDrop, {target: 'body', locale: {
  43. // strings: {chooseFile: 'Выберите файл'}
  44. // }})
  45. // .use(ProgressBar, {target: 'body'})
  46. // .use(dummy)
  47. .use(Webcam, {target: Dashboard})
  48. // .use(Multipart, {endpoint: '//api2.transloadit.com'})
  49. .use(Tus10, {endpoint: TUS_ENDPOINT, resume: true})
  50. // .use(Informer, {target: Dashboard})
  51. // .use(StatusBar, {target: Dashboard})
  52. .use(MetaData, {
  53. fields: [
  54. { id: 'resizeTo', name: 'Resize to', value: 1200, placeholder: 'specify future image size' },
  55. { id: 'description', name: 'Description', value: 'none', placeholder: 'describe what the file is for' }
  56. ]
  57. })
  58. uppy.run()
  59. uppy.on('core:success', (fileCount) => {
  60. console.log('UPLOAD SUCCESSFUL!!!')
  61. console.log(fileCount)
  62. })
  63. // uppy.emit('informer', 'Smile!', 'info', 2000)
  64. var modalTrigger = document.querySelector('#uppyModalOpener')
  65. if (modalTrigger) modalTrigger.click()