{"version":3,"sources":["webpack:///./modules/Glossary.ts"],"names":["__webpack_require__","r","__webpack_exports__","Glossary","element","_this","this","Array","from","querySelectorAll","filter","node","dataset","moduleInitialized","forEach","addEventListener","activateNavLink","checkList","setup","selector","document","prototype","link","currentActiveLink","querySelector","classList","remove","add","getLinkValue","currentLinkValue","getAttribute","replace","getRespectiveTab","value","showRespectiveTab","tab","currentActiveTab","elValue","closest"],"mappings":"2FAAAA,EAAAC,EAAAC,GAAA,IAEAC,EAAA,WAQI,SAAAA,EAAmBC,GAAnB,IAAAC,EAAAC,KAAmBA,KAAAF,UACfG,MAAMC,KAAKF,KAAKF,QAAQK,iBAAiB,gBAAgBC,OAAO,SAACC,GAAsB,OAACA,EAAKC,QAAQC,oBAAmBC,QAAQ,SAACV,GAC7HA,EAAQW,iBAAiB,QAAS,WAC9BV,EAAKW,gBAAgBZ,KAEzBC,EAAKY,UAAUb,KAqC3B,OAjDWD,EAAAe,MAAP,SAAaC,QAAA,IAAAA,MAHM,4BAIfZ,MAAMC,KAAKY,SAASX,iBAAiBU,IAAWT,OAAO,SAACC,GAAsB,OAACA,EAAKC,QAAQC,oBAAmBC,QAAQ,SAACV,GACpH,IAAID,EAASC,GACbA,EAAQQ,QAAQC,kBAAoB,UAapCV,EAAAkB,UAAAL,gBAAR,SAAwBM,GACpB,IAAMC,EAAoBjB,KAAKF,QAAQoB,cAAc,sBACrDD,GAAoBA,EAAkBE,UAAUC,OAAO,UACvDJ,EAAKG,UAAUE,IAAI,UACnBrB,KAAKsB,aAAaN,IAGdnB,EAAAkB,UAAAO,aAAR,SAAqBN,GACjB,IAAMO,EAAmBP,EAAKE,cAAc,KAAKM,aAAa,QAAQC,QAAQ,IAAK,IACnFzB,KAAK0B,iBAAiBH,IAGlB1B,EAAAkB,UAAAW,iBAAR,SAAyBC,GAAzB,IAAA5B,EAAAC,KACIA,KAAKF,QAAQK,iBAAiB,cAAcwB,EAAK,MAAMnB,QAAQ,SAACV,GAC5DC,EAAK6B,kBAAkB9B,MAIvBD,EAAAkB,UAAAa,kBAAR,SAA0BC,GACtB,IAAMC,EAAmB9B,KAAKF,QAAQoB,cAAc,eACpDY,GAAmBA,EAAiBX,UAAUC,OAAO,QACrDS,EAAIV,UAAUE,IAAI,SAEdxB,EAAAkB,UAAAJ,UAAR,SAAkBb,GAAlB,IAAAC,EAAAC,KACU+B,EAAUjC,EAAQoB,cAAc,KAAKM,aAAa,QAAQC,QAAQ,IAAK,IAC7EzB,KAAKF,QAAQK,iBAAiB,cAAc4B,EAAO,MAAMvB,QAAQ,SAACV,GAC9D,IAAMA,EAAQoB,cAAc,MAAQ,CAChC,IAAMS,EAAQ7B,EAAQ0B,aAAa,YACdzB,EAAKD,QAAQoB,cAAc,WAAWS,EAAK,MACnDK,QAAQ,MAAMb,UAAUE,IAAI,aAIzDxB,EAlDA,eAoDA,IAAIA,EAASe","file":"./modules/Glossary.1bc80fb4.js","sourcesContent":["const moduleSelector = '[data-module=\"Glossary\"]';\r\n\r\nexport default class Glossary {\r\n static setup(selector: string = moduleSelector): void {\r\n Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n new Glossary(element);\r\n element.dataset.moduleInitialized = 'true';\r\n });\r\n }\r\n\r\n constructor(public element: HTMLElement) {\r\n Array.from(this.element.querySelectorAll(\".letters li\")).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n element.addEventListener(\"click\", () => {\r\n this.activateNavLink(element);\r\n })\r\n this.checkList(element);\r\n });\r\n }\r\n\r\n private activateNavLink(link) {\r\n const currentActiveLink = this.element.querySelector(\".letters li.active\");\r\n currentActiveLink ? currentActiveLink.classList.remove(\"active\") : \"\";\r\n link.classList.add(\"active\");\r\n this.getLinkValue(link);\r\n }\r\n\r\n private getLinkValue(link) {\r\n const currentLinkValue = link.querySelector(\"a\").getAttribute(\"href\").replace(\"#\", '');\r\n this.getRespectiveTab(currentLinkValue);\r\n }\r\n\r\n private getRespectiveTab(value) {\r\n this.element.querySelectorAll(`[data-tab='${value}']`).forEach((element: HTMLElement) => {\r\n this.showRespectiveTab(element);\r\n });\r\n }\r\n\r\n private showRespectiveTab(tab) {\r\n const currentActiveTab = this.element.querySelector(\".panel.open\");\r\n currentActiveTab ? currentActiveTab.classList.remove(\"open\") : \"\";\r\n tab.classList.add(\"open\");\r\n }\r\n private checkList(element) {\r\n const elValue = element.querySelector(\"a\").getAttribute(\"href\").replace(\"#\", '')\r\n this.element.querySelectorAll(`[data-tab='${elValue}']`).forEach((element: HTMLElement) => {\r\n if (!(element.querySelector(\"li\"))) {\r\n const value = element.getAttribute(\"data-tab\")\r\n const emptyElement = this.element.querySelector(`[href='#${value}']`)\r\n emptyElement.closest(\"li\").classList.add(\"empty\");\r\n }\r\n });\r\n }\r\n}\r\n\r\nnew Glossary.setup();"],"sourceRoot":""}