{"version":3,"file":"drawer_controller-gD1zux9g.js","sources":["../../../app/javascript/controllers/drawer_controller.js"],"sourcesContent":["import { Controller } from \"@hotwired/stimulus\";\nimport { enter, leave } from \"el-transition\";\n\n// Connects to data-controller=\"drawer\"\nexport default class extends Controller {\n static targets = [\"container\", \"backdrop\", \"drawer\", \"content\"];\n\n connect() {\n this.contentTarget.addEventListener(\n \"turbo:frame-load\",\n this.handleFrameLoad.bind(this)\n );\n\n this.onEscape = this.onEscape.bind(this);\n document.addEventListener(\"keydown\", this.onEscape);\n }\n\n disconnect() {\n this.contentTarget.removeEventListener(\n \"turbo:frame-load\",\n this.handleFrameLoad.bind(this)\n );\n\n document.removeEventListener(\"keydown\", this.onEscape);\n }\n\n close() {\n this.hide();\n }\n\n show(e) {\n const { src, favourites } = e.params;\n\n enter(this.drawerTarget);\n enter(this.backdropTarget);\n\n this.contentTarget.setAttribute(\"src\", src);\n\n if (favourites) {\n this.favouritesEnabled = true;\n }\n\n this.isOpen = true;\n }\n\n hide() {\n leave(this.drawerTarget);\n leave(this.backdropTarget);\n this.isOpen = false;\n\n setTimeout(() => this.clearTurboFrameContent(), 500); // wait for the transition to finish before removing the element\n }\n\n handleFrameLoad() {\n // Reset favourites for drawers where favourites can be added for Tippy\n if (this.favouritesEnabled) {\n window.resetFavourites();\n }\n }\n\n clearTurboFrameContent() {\n this.contentTarget.removeAttribute(\"src\");\n this.contentTarget.innerHTML = \"\";\n }\n\n onEscape(e) {\n if (this.isOpen && e.key === \"Escape\") {\n this.close();\n }\n }\n}\n"],"names":["drawer_controller","Controller","src","favourites","enter","leave","__publicField"],"mappings":"2YAIe,MAAKA,UAASC,CAAW,CAGtC,SAAU,CACR,KAAK,cAAc,iBACjB,mBACA,KAAK,gBAAgB,KAAK,IAAI,CAC/B,EAED,KAAK,SAAW,KAAK,SAAS,KAAK,IAAI,EACvC,SAAS,iBAAiB,UAAW,KAAK,QAAQ,CACtD,CAEE,YAAa,CACX,KAAK,cAAc,oBACjB,mBACA,KAAK,gBAAgB,KAAK,IAAI,CAC/B,EAED,SAAS,oBAAoB,UAAW,KAAK,QAAQ,CACzD,CAEE,OAAQ,CACN,KAAK,KAAM,CACf,CAEE,KAAK,EAAG,CACN,KAAM,CAAE,IAAAC,EAAK,WAAAC,CAAY,EAAG,EAAE,OAE9BC,EAAM,KAAK,YAAY,EACvBA,EAAM,KAAK,cAAc,EAEzB,KAAK,cAAc,aAAa,MAAOF,CAAG,EAEtCC,IACF,KAAK,kBAAoB,IAG3B,KAAK,OAAS,EAClB,CAEE,MAAO,CACLE,EAAM,KAAK,YAAY,EACvBA,EAAM,KAAK,cAAc,EACzB,KAAK,OAAS,GAEd,WAAW,IAAM,KAAK,uBAAwB,EAAE,GAAG,CACvD,CAEE,iBAAkB,CAEZ,KAAK,mBACP,OAAO,gBAAiB,CAE9B,CAEE,wBAAyB,CACvB,KAAK,cAAc,gBAAgB,KAAK,EACxC,KAAK,cAAc,UAAY,EACnC,CAEE,SAAS,EAAG,CACN,KAAK,QAAU,EAAE,MAAQ,UAC3B,KAAK,MAAO,CAElB,CACA,CAjEEC,EADkBN,EACX,UAAU,CAAC,YAAa,WAAY,SAAU,SAAS"}