{"version":3,"file":"chunks/b3d8c8f8febe18.js","mappings":"kxBAAqBA,EAAe,WAIlC,SAAAA,EAAYC,EAAsBC,I,4FAAaC,CAAA,KAAAH,GAC7CI,KAAKH,QAAUA,EACfG,KAAKF,OAASA,EACdE,KAAKC,MACP,C,QAoDC,O,EApDAL,G,EAAA,EAAAM,IAAA,OAAAC,MAED,WAAO,IAAAC,EAAA,KACDC,EAAkBC,MAAMC,KAAKC,SAASC,uBAAuBT,KAAKF,OAAOY,gBAC7EL,EAAgBM,SAAQ,SAAAC,GACY,QAA9BR,EAAKN,OAAOe,eACdD,EAAQE,MAAMC,WAAa,gBACY,UAA9BX,EAAKN,OAAOe,iBACrBD,EAAQE,MAAMC,WAAa,mBACvBH,EAAQI,UAAUC,SAAS,iBAC7BL,EAAQE,MAAMI,SAAW,SACzBN,EAAQE,MAAMK,UAAY,KAGhC,IAEA,IAAIC,EAAkBpB,KAAKH,QAAQwB,cAAc,sBACjDD,EAAgBE,iBAAiB,SAAS,SAACC,GACzCA,EAAEC,iBACF,IAAIC,EAAcL,EAAgBM,UAAUC,OAC5CtB,EAAgBM,SAAQ,SAAAC,GAClBA,EAAQI,UAAUC,SAAS,gBAC7BL,EAAQI,UAAUY,OAAO,eACzBhB,EAAQE,MAAMK,UAAY,QAE1BP,EAAQE,MAAMe,QAAU,EACxBC,YAAW,WACTlB,EAAQE,MAAMK,UAAY,OAC1BP,EAAQE,MAAMI,SAAW,MAC3B,GAAG,OAE+B,QAA9Bd,EAAKN,OAAOe,eAEdD,EAAQE,MAAMe,QAAU,EACe,UAA9BzB,EAAKN,OAAOe,iBACrBD,EAAQE,MAAMK,UAAY,QAC1BP,EAAQE,MAAMI,SAAW,SACzBY,YAAW,WAETlB,EAAQE,MAAMK,UAAY,CAC5B,GAAG,KAELW,YAAW,WACTlB,EAAQI,UAAUY,OAAO,cAC3B,GAAG,KAEP,IACAE,YAAW,WACTP,EAAEQ,OAAOL,UAAYD,GAAeL,EAAgBY,aAAa,iBAAmBZ,EAAgBY,aAAa,iBAAmBZ,EAAgBY,aAAa,iBACjKT,EAAEQ,OAAOf,UAAUY,OAAO,sBAC5B,GAAG,IACL,GACF,M,oEAAChC,CAAA,CA5DiC,E","sources":["webpack:///./resources/js/components/generic/generic-show-hide.ts"],"sourcesContent":["export default class GenericShowHide {\n  domRoot: any;\n  params: any;\n\n  constructor(domRoot: HTMLElement, params: any) {\n    this.domRoot = domRoot;\n    this.params = params;\n    this.init();\n  }\n\n  init() {\n    let togglerElements = Array.from(document.getElementsByClassName(this.params.showHideClass)) as HTMLElement[];\n    togglerElements.forEach(element => {\n      if (this.params.toggleBehavior == \"fade\") {\n        element.style.transition = \"opacity 500ms\";\n      } else if (this.params.toggleBehavior == \"rollup\") {\n        element.style.transition = \"max-height 500ms\";\n        if (element.classList.contains('toggle-hide')) {\n          element.style.overflow = \"hidden\";\n          element.style.maxHeight = \"0\";\n        }\n      }\n    });\n\n    let showHideToggler = this.domRoot.querySelector(\".show-hide-toggler\") as HTMLElement;\n    showHideToggler.addEventListener(\"click\", (e) => {\n      e.preventDefault();\n      let togglerText = showHideToggler.innerText.trim();\n      togglerElements.forEach(element => {\n        if (element.classList.contains('toggle-hide')) {\n          element.classList.toggle(\"toggle-hide\");\n          element.style.maxHeight = \"500px\";\n          // @ts-ignore\n          element.style.opacity = 1;\n          setTimeout(function() {\n            element.style.maxHeight = \"none\";\n            element.style.overflow = \"auto\";\n          }, 500);\n        } else {\n          if (this.params.toggleBehavior == \"fade\") {\n            // @ts-ignore\n            element.style.opacity = 0;\n          } else if (this.params.toggleBehavior == \"rollup\") {\n            element.style.maxHeight = \"500px\";\n            element.style.overflow = \"hidden\";\n            setTimeout(function() {\n              // @ts-ignore\n              element.style.maxHeight = 0;\n            }, 50);\n          }\n          setTimeout(function() {\n            element.classList.toggle(\"toggle-hide\");\n          }, 500);\n        }\n      });\n      setTimeout(function() {\n        e.target.innerText = togglerText == showHideToggler.getAttribute(\"data-showtext\") ? showHideToggler.getAttribute(\"data-hidetext\") : showHideToggler.getAttribute(\"data-showtext\");\n        e.target.classList.toggle('hide-button-toggled');\n      }, 500);\n    });\n  }\n}\n"],"names":["GenericShowHide","domRoot","params","_classCallCheck","this","init","key","value","_this","togglerElements","Array","from","document","getElementsByClassName","showHideClass","forEach","element","toggleBehavior","style","transition","classList","contains","overflow","maxHeight","showHideToggler","querySelector","addEventListener","e","preventDefault","togglerText","innerText","trim","toggle","opacity","setTimeout","target","getAttribute"],"sourceRoot":""}