{"version":3,"sources":["webpack:////Users/owenli/Documents/workspace/awi-wlc-fe/src/views/widgets/siteSubheaderTopicWidget/js/siteSubheaderTopicWidget.js","webpack:///./wlc/overlay.js"],"names":["CLS","SiteSubheaderTopicWidget","element","_this","this","_classCallCheck","$element","$","$tplHeader","$progressBar","children","overlay","$notepadToggleButton","find","concat","$notepad","on","hasClass","removeClass","addClass","$topicDropdown","document","body","append","setSubheaderTopicDropdownPosition","$indexButton","setSubheaderTopicDropdownHeight","create","event","params","trigger","percentage","window","resize","_","debounce","key","value","offsetTop","Math","floor","offset","top","css","maxHeight","height","Overlay","onDestroyCallback","off","destroy","remove"],"mappings":"o5BAAA,IACMA,EAAM,2BAICC,EAAwB,WAoDnC,SAnDD,SAAAA,EAAYC,GAAS,IAAAC,EAAAC,kGAAAC,CAAAD,KAAAH,GACpBG,KAAKF,QAAUA,EACfE,KAAKE,SAAWC,EAAEL,GAClBE,KAAKI,WAAaD,EAAE,eACpBH,KAAKK,aAAeL,KAAKE,SAASI,SAAS,sBAC3CN,KAAKO,QAAUA,IAGfP,KAAKQ,qBAAuBR,KAAKE,SAASO,KAAI,IAAAC,OAAKd,EAAG,kBACtDI,KAAKW,SAAWR,EAAE,YAClBH,KAAKQ,qBAAqBI,GAAG,QAAS,WAClCb,EAAKS,qBAAqBK,SAAS,SACzBd,EAAKS,qBAAqBM,YAAY,QACtCf,EAAKY,SAASG,YAAY,UAG1Bf,EAAKS,qBAAqBO,SAAU,QACpChB,EAAKY,SAASI,SAAS,WAKrCf,KAAKgB,eAAiBhB,KAAKE,SAASO,KAAI,qCACxCN,EAAEc,SAASC,MAAMC,OAAOnB,KAAKgB,gBAC7BhB,KAAKoB,oCAGLpB,KAAKqB,aAAerB,KAAKE,SAASO,KAAI,IAAAC,OAAKd,EAAG,gBAC9CI,KAAKqB,aAAaT,GAAG,QAAS,WAC7Bb,EAAKiB,eAAeD,SAAS,UAC7BhB,EAAKuB,kCACLvB,EAAKQ,QAAQgB,OAAO,WACnBxB,EAAKiB,eAAeF,YAAY,cAKlCd,KAAKE,SAASU,GAAG,6CAA8C,SAACY,EAAOC,GACtE1B,EAAKM,aAAaqB,QAAQ,4BACzBC,WAAYF,EAAOE,eAMrBxB,EAAEyB,QAAQC,OAAOC,EAAEC,SAAS,WAC3BhC,EAAKqB,oCACFrB,EAAKiB,eAAeH,SAAS,WAC/Bd,EAAKuB,mCAEJ,YACHU,IAAA,kCAAAC,MAED,WACC,IAAIC,EAAYC,KAAKC,MAAMpC,KAAKgB,eAAeqB,SAASC,KACxDtC,KAAKgB,eAAeuB,KACnBC,UAAS,gBAAA9B,OAAkBwB,EAAS,YAErCF,IAAA,oCAAAC,MAED,WACCjC,KAAKgB,eAAeuB,KACnBD,IAAKtC,KAAKI,WAAWiC,SAASC,IAAMtC,KAAKI,WAAWqC,0GA/DlB,40BCkB1BlC,EAAU,IAvBR,6BAAAmC,iGAAAzC,CAAAD,KAAA0C,SAAAV,IAAA,SAAAC,MACZ,SAAOU,GAAmB,IAAA5C,EAAAC,KACzBG,EAAEc,SAASC,MAAMC,OAAO,4DAExBhB,EAAE,iBAAiBY,SAAS,qBAE5BZ,EAAEc,SAASC,MAAMN,GAAG,QAAS,WAAY,WACxCT,EAAEc,SAASC,MAAM0B,IAAI,QAAS,YAC9B7C,EAAK8C,QAAQF,QAEdX,IAAA,UAAAC,MAED,SAAQU,GACPxC,EAAEc,SAASC,MAAMJ,YAAY,cAAcyB,QAC3CpC,EAAE,iBAAiBW,YAAY,qBAE/BX,EAAE,YAAY2C,SACXH,GACFA,mGAlBU","file":"widget-27.2f662a3aa586e55a56ca.js","sourcesContent":["const NS = 'SiteSubheaderTopicWidget';\nconst CLS = 'siteSubheaderTopicWidget';\n\nimport { overlay } from '../../../../global/js/wlc/overlay';\n\nexport class SiteSubheaderTopicWidget {\n\tconstructor(element) {\n\t\tthis.element = element;\n\t\tthis.$element = $(element);\n\t\tthis.$tplHeader = $('.tpl-header');\n\t\tthis.$progressBar = this.$element.children('.progressBarWidget');\n\t\tthis.overlay = overlay;\n\n\t\t// Notepad toggle button\n\t\tthis.$notepadToggleButton = this.$element.find(`#${CLS}NotepadToggle`);\n\t\tthis.$notepad = $('#notepad');\n\t\tthis.$notepadToggleButton.on('click', () => {\n\t\t\tif(this.$notepadToggleButton.hasClass('open')) {\n this.$notepadToggleButton.removeClass('open');\n this.$notepad.removeClass('open');\n\t\t\t}\n\t\t\telse {\n this.$notepadToggleButton.addClass( 'open' );\n this.$notepad.addClass('open');\n }\n\t\t});\n\n\t\t// Topic dropdown\n\t\tthis.$topicDropdown = this.$element.find(`.siteSubheaderTopicDropdownWidget`);\n\t\t$(document.body).append(this.$topicDropdown);\n\t\tthis.setSubheaderTopicDropdownPosition();\n\n\t\t// Index button\n\t\tthis.$indexButton = this.$element.find(`.${CLS}-btn--index`);\n\t\tthis.$indexButton.on('click', () => {\n\t\t\tthis.$topicDropdown.addClass('active');\n\t\t\tthis.setSubheaderTopicDropdownHeight();\n\t\t\tthis.overlay.create(() => {\n\t\t\t\tthis.$topicDropdown.removeClass('active');\n\t\t\t});\n\t\t});\n\n\t\t// Percentage update\n\t\tthis.$element.on('siteSubheaderTopicWidget.percentage.update', (event, params) => {\n\t\t\tthis.$progressBar.trigger('progressBarWidget.update', {\n\t\t\t\tpercentage: params.percentage\n\t\t\t});\n\t\t});\n\n\n\t\t// Resizes the dropdownHeight when needed\n\t\t$(window).resize(_.debounce(() => {\n\t\t\tthis.setSubheaderTopicDropdownPosition();\n\t\t\tif(this.$topicDropdown.hasClass('active')) {\n\t\t\t\tthis.setSubheaderTopicDropdownHeight();\n\t\t\t}\n\t\t}, 250));\n\t}\n\n\tsetSubheaderTopicDropdownHeight() {\n\t\tlet offsetTop = Math.floor(this.$topicDropdown.offset().top);\n\t\tthis.$topicDropdown.css({\n\t\t\tmaxHeight: `calc(100vh - ${offsetTop}px)`\n\t\t});\n\t}\n\n\tsetSubheaderTopicDropdownPosition() {\n\t\tthis.$topicDropdown.css({\n\t\t\ttop: this.$tplHeader.offset().top + this.$tplHeader.height()\n\t\t});\n\t}\n}\n","class Overlay {\n\tcreate(onDestroyCallback) {\n\t\t$(document.body).append('
');\n\n\t\t$('.tpl-scroller').addClass('overlayHideScroll');\n\n\t\t$(document.body).on('click', '.overlay', () => {\n\t\t\t$(document.body).off('click', '.overlay');\n\t\t\tthis.destroy(onDestroyCallback);\n\t\t});\n\t}\n\n\tdestroy(onDestroyCallback) {\n\t\t$(document.body).removeClass('hasOverlay').css({});\n\t\t$('.tpl-scroller').removeClass('overlayHideScroll');\n\n\t\t$('.overlay').remove();\n\t\tif(onDestroyCallback) {\n\t\t\tonDestroyCallback();\n\t\t}\n\t}\n}\n\nexport let overlay = new Overlay();\n"],"sourceRoot":""}