{"version":3,"file":"form_image_uploader_controller-B8JUKhdC.js","sources":["../../../frontend/common/controllers/form_image_uploader_controller.js"],"sourcesContent":["import { Controller } from '@hotwired/stimulus'\n\nconst uploadButtonDisabledClasses = [\n 'cursor-default',\n 'select-none',\n]\nconst uploadButtonHoverClasses = [\n 'hover:text-gray-900',\n 'dark:hover:text-gray-300'\n]\n\nexport default class extends Controller {\n static targets = [\n 'uploader',\n 'uploadButton'\n ]\n\n static values = {\n maxFiles: {\n type: Number,\n default: 1\n }\n }\n\n connect() {\n window.requestAnimationFrame(() => {\n this.handleFilesAdded()\n })\n }\n\n uploadButtonDisabled = false\n\n disableUploadButton() {\n this.uploadButtonDisabled = true\n this.uploadButtonTarget.classList.add(...uploadButtonDisabledClasses)\n this.uploadButtonTarget.classList.remove(...uploadButtonHoverClasses)\n }\n\n enableUploadButton() {\n this.uploadButtonDisabled = false\n this.uploadButtonTarget.classList.remove(...uploadButtonDisabledClasses)\n this.uploadButtonTarget.classList.add(...uploadButtonHoverClasses)\n }\n\n openUploadPopup() {\n if (!this.uploadButtonDisabled) {\n this.uploaderTarget.openUploadPopup()\n }\n }\n\n reset() {\n this.uploaderTarget.reset()\n this.enableUploadButton()\n }\n\n handleFilesAdded() {\n if (this.uploaderTarget.files.length >= this.maxFilesValue) {\n this.disableUploadButton()\n }\n }\n\n handleFilesRemoved() {\n this.enableUploadButton()\n }\n}\n"],"names":["uploadButtonDisabledClasses","uploadButtonHoverClasses","FormImageUploaderController","Controller","__publicField"],"mappings":"0PACA,MAAMA,EAA8B,CAAC,iBAAkB,aAAa,EAC9DC,EAA2B,CAAC,sBAAuB,0BAA0B,EACpE,MAAKC,UAASC,CAAW,CAAzB,kCAabC,EAAA,4BAAuB,IALvB,SAAU,CACR,OAAO,sBAAsB,IAAM,CACjC,KAAK,iBAAgB,CAC3B,CAAK,CACF,CAED,qBAAsB,CACpB,KAAK,qBAAuB,GAC5B,KAAK,mBAAmB,UAAU,IAAI,GAAGJ,CAA2B,EACpE,KAAK,mBAAmB,UAAU,OAAO,GAAGC,CAAwB,CACrE,CACD,oBAAqB,CACnB,KAAK,qBAAuB,GAC5B,KAAK,mBAAmB,UAAU,OAAO,GAAGD,CAA2B,EACvE,KAAK,mBAAmB,UAAU,IAAI,GAAGC,CAAwB,CAClE,CACD,iBAAkB,CACX,KAAK,sBACR,KAAK,eAAe,iBAEvB,CACD,OAAQ,CACN,KAAK,eAAe,QACpB,KAAK,mBAAkB,CACxB,CACD,kBAAmB,CACb,KAAK,eAAe,MAAM,QAAU,KAAK,eAC3C,KAAK,oBAAmB,CAE3B,CACD,oBAAqB,CACnB,KAAK,mBAAkB,CACxB,CACH,CAxCEG,EADkBF,EACX,UAAU,CAAC,WAAY,cAAc,GAC5CE,EAFkBF,EAEX,SAAS,CACd,SAAU,CACR,KAAM,OACN,QAAS,CACV,CACL"}