{"version":3,"file":"drag_controller-JLq1BgaI.js","sources":["../../../app/javascript/controllers/drag_controller.js"],"sourcesContent":["import { Controller } from \"@hotwired/stimulus\"\nimport Sortable from \"sortablejs\"\nimport { FetchRequest, patch } from \"@rails/request.js\"\n\nexport default class extends Controller {\n static values = {\n url: String,\n group: { type: String, default: \"shared\" }\n }\n\n static targets = [\n 'dragList'\n ]\n\n connect() {\n this.sortable = Sortable.create(this.hasDragListTarget ? this.dragListTarget : this.element, {\n group: this.groupValue,\n animation: 150,\n filter: \".not-draggable\",\n onEnd: this.end.bind(this),\n preventOnFilter: false\n })\n }\n\n end(event) {\n let token = event.item.dataset.channelToken\n let data = {\n position: event.newIndex + 1,\n }\n\n patch(this.urlValue.replace(\":token\", token), {\n body: JSON.stringify(data),\n })\n }\n}\n"],"names":["DragController","Controller","Sortable","event","token","data","patch","__publicField"],"mappings":"8SAIe,MAAKA,UAASC,CAAW,CAUtC,SAAU,CACR,KAAK,SAAWC,EAAS,OAAO,KAAK,kBAAoB,KAAK,eAAiB,KAAK,QAAS,CAC3F,MAAO,KAAK,WACZ,UAAW,IACX,OAAQ,iBACR,MAAO,KAAK,IAAI,KAAK,IAAI,EACzB,gBAAiB,EAClB,CAAA,CACL,CAEE,IAAIC,EAAO,CACT,IAAIC,EAAQD,EAAM,KAAK,QAAQ,aAC3BE,EAAO,CACT,SAAUF,EAAM,SAAW,CACjC,EAEIG,EAAM,KAAK,SAAS,QAAQ,SAAUF,CAAK,EAAG,CAC5C,KAAM,KAAK,UAAUC,CAAI,CAC1B,CAAA,CACL,CACA,CA7BEE,EADkBP,EACX,SAAS,CACd,IAAK,OACL,MAAO,CAAE,KAAM,OAAQ,QAAS,QAAQ,CAC5C,GAEEO,EANkBP,EAMX,UAAU,CACf,UACJ"}