main.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. const { inspect } = require('util')
  2. const transloadit = require('@uppy/robodog')
  3. /**
  4. * transloadit.form
  5. */
  6. const formUppy = transloadit.form('#test-form', {
  7. debug: true,
  8. fields: ['message'],
  9. restrictions: {
  10. allowedFileTypes: ['.png']
  11. },
  12. waitForEncoding: true,
  13. params: {
  14. auth: { key: '05a61ed019fe11e783fdbd1f56c73eb0' },
  15. template_id: 'be001500a56011e889f9cddd88df842c'
  16. },
  17. modal: true,
  18. progressBar: '#test-form .progress'
  19. })
  20. formUppy.on('error', (err) => {
  21. document.querySelector('#test-form .error')
  22. .textContent = err.message
  23. })
  24. formUppy.on('upload-error', (file, err) => {
  25. document.querySelector('#test-form .error')
  26. .textContent = err.message
  27. })
  28. window.formUppy = formUppy
  29. const formUppyWithDashboard = transloadit.form('#dashboard-form', {
  30. debug: true,
  31. fields: ['message'],
  32. restrictions: {
  33. allowedFileTypes: ['.png']
  34. },
  35. waitForEncoding: true,
  36. params: {
  37. auth: { key: '05a61ed019fe11e783fdbd1f56c73eb0' },
  38. template_id: 'be001500a56011e889f9cddd88df842c'
  39. },
  40. dashboard: '#dashboard-form .dashboard'
  41. })
  42. window.formUppyWithDashboard = formUppyWithDashboard
  43. /**
  44. * transloadit.modal
  45. */
  46. function openModal () {
  47. transloadit.pick({
  48. restrictions: {
  49. allowedFileTypes: ['.png']
  50. },
  51. waitForEncoding: true,
  52. params: {
  53. auth: { key: '05a61ed019fe11e783fdbd1f56c73eb0' },
  54. template_id: 'be001500a56011e889f9cddd88df842c'
  55. },
  56. providers: [
  57. 'webcam'
  58. ]
  59. // if providers need custom config
  60. // webcam: {
  61. // option: 'whatever'
  62. // }
  63. }).then(console.log, console.error)
  64. }
  65. window.openModal = openModal
  66. /**
  67. * transloadit.upload
  68. */
  69. window.doUpload = (event) => {
  70. const resultEl = document.querySelector('#upload-result')
  71. const errorEl = document.querySelector('#upload-error')
  72. transloadit.upload(event.target.files, {
  73. waitForEncoding: true,
  74. params: {
  75. auth: { key: '05a61ed019fe11e783fdbd1f56c73eb0' },
  76. template_id: 'be001500a56011e889f9cddd88df842c'
  77. }
  78. }).then((result) => {
  79. resultEl.classList.remove('hidden')
  80. errorEl.classList.add('hidden')
  81. resultEl.textContent = inspect(result.results)
  82. }, (err) => {
  83. resultEl.classList.add('hidden')
  84. errorEl.classList.remove('hidden')
  85. errorEl.textContent = err.message
  86. })
  87. }