{"version":3,"sources":["webpack:///./app/javascript/src/uppy_document.js"],"names":["document","querySelectorAll","length","forEach","element","trigger","querySelector","direct_upload_url","closest","getAttribute","field_name","dataset","uppyDoc","addEventListener","event","preventDefault","uppy","Uppy","autoProceed","allowMultipleUploads","logger","debugLogger","note","allowedFileTypes","use","ActiveStorageUpload","directUploadUrl","Dashboard","inline","closeAfterFinish","on","result","parentNode","removeChild","successful","file","hiddenField","createElement","setAttribute","response","signed_id","appendChild","appendUploadedFile","console","log","reset","setupUppy"],"mappings":"2FAAA,qGAWoBA,SAASC,iBAAiB,oBAAsB,IAClDC,OAAS,GACzBF,SACGC,iBAAiB,mBACjBE,SAAQ,SAACC,GAAO,OAGrB,SAAmBA,GACjB,IAAIC,EAAUD,EAAQE,cAAc,sCAEhCC,GADOH,EAAQI,QAAQ,QACHR,SACrBM,cAAc,kCACdG,aAAa,YACZC,EAAaN,EAAQO,QAAQC,QACjCP,EAAQQ,iBAAiB,SAAS,SAACC,GAAK,OAAKA,EAAMC,gBAAgB,IAEnE,IAAIC,EAAO,IAAIC,IAAK,CAClBC,aAAa,EACbC,sBAAsB,EACtBC,OAAQH,IAAKI,YACbC,KAAM,6CACNC,iBAAkB,CAAC,yCAGrBP,EAAKQ,IAAIC,IAAqB,CAC5BC,gBAAiBnB,IAGnBS,EAAKQ,IAAIG,IAAW,CAClBtB,QAASA,EACTuB,QAAQ,EACRC,kBAAkB,IAGpBb,EAAKc,GAAG,YAAY,SAACC,GAGnB3B,EACGH,iBAAiB,yBACjBE,SAAQ,SAACC,GAAO,OAAKA,EAAQ4B,WAAWC,YAAY7B,EAAQ,IAE/D2B,EAAOG,WAAW/B,SAAQ,SAACgC,IAW/B,SAA4B/B,EAAS+B,EAAMzB,GACzC,IAAM0B,EAAcpC,SAASqC,cAAc,SAE3CD,EAAYE,aAAa,OAAQ,UACjCF,EAAYE,aAAa,OAAQ5B,GACjC0B,EAAYE,aAAa,uBAAuB,GAChDF,EAAYE,aAAa,QAASH,EAAKI,SAASC,WAEhDpC,EAAQqC,YAAYL,EACtB,CAnBMM,CAAmBtC,EAAS+B,EAAMzB,GAClCiC,QAAQC,IAAI,SACZD,QAAQC,IAAIxC,GACZuC,QAAQC,IAAIT,EACd,IAEAnB,EAAK6B,OACP,GACF,CA9C0BC,CAAU1C,EAAQ,G","file":"js/16-ed5606a8699b59faf9b4.chunk.js","sourcesContent":["import { Modal } from \"bootstrap\";\nimport \"data-confirm-modal\";\n\nimport Uppy from \"@uppy/core\";\nimport Dashboard from \"@uppy/dashboard\";\nimport ActiveStorageUpload from \"@excid3/uppy-activestorage-upload\";\nimport Url from \"@uppy/url\";\n\nimport \"@uppy/core/dist/style.css\";\nimport \"@uppy/dashboard/dist/style.css\";\n\nlet uppyInstances = document.querySelectorAll(\"[data-uppy-doc]\") || [];\nif (uppyInstances.length > 0) {\n document\n .querySelectorAll(\"[data-uppy-doc]\")\n .forEach((element) => setupUppy(element));\n}\n\nfunction setupUppy(element) {\n let trigger = element.querySelector('[data-behavior=\"uppy-doc-trigger\"]');\n let form = element.closest(\"form\");\n let direct_upload_url = document\n .querySelector(\"meta[name='direct-upload-url']\")\n .getAttribute(\"content\");\n let field_name = element.dataset.uppyDoc;\n trigger.addEventListener(\"click\", (event) => event.preventDefault());\n\n let uppy = new Uppy({\n autoProceed: true,\n allowMultipleUploads: false,\n logger: Uppy.debugLogger,\n note: \"Word and PDF documents only, 500kb or less\",\n allowedFileTypes: [\"application/pdf, application/msword\"],\n });\n\n uppy.use(ActiveStorageUpload, {\n directUploadUrl: direct_upload_url,\n });\n\n uppy.use(Dashboard, {\n trigger: trigger,\n inline: false,\n closeAfterFinish: true,\n });\n\n uppy.on(\"complete\", (result) => {\n // Rails.ajax\n // or show a preview:\n element\n .querySelectorAll(\"[data-pending-upload]\")\n .forEach((element) => element.parentNode.removeChild(element));\n\n result.successful.forEach((file) => {\n appendUploadedFile(element, file, field_name);\n console.log(\"done!\");\n console.log(element);\n console.log(file);\n });\n\n uppy.reset();\n });\n}\n\nfunction appendUploadedFile(element, file, field_name) {\n const hiddenField = document.createElement(\"input\");\n\n hiddenField.setAttribute(\"type\", \"hidden\");\n hiddenField.setAttribute(\"name\", field_name);\n hiddenField.setAttribute(\"data-pending-upload\", true);\n hiddenField.setAttribute(\"value\", file.response.signed_id);\n\n element.appendChild(hiddenField);\n}\n\nfunction setPreview(element, file) {\n let preview = element.querySelector('[data-behavior=\"uppy-doc-preview\"]');\n console.log(\"ready set\");\n console.log(preview);\n if (preview) {\n let src = file.preview\n ? file.preview\n : \"https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcSpj0DBTVsaja01_xWh37bcutvpd7rh7zEd528HD0d_l6A73osY\";\n preview.src = src;\n }\n}\n"],"sourceRoot":""}