{"version":3,"sources":["webpack:///./widgets/quick-search/js/quick-search.ts","webpack:///./plugins/drawer/js/drawer.js"],"names":["qsClearBtn","initialize","this","handleClearButton","elements","qsAutocomplete","forEach","input","closest","querySelector","selectors","value","classList","add","setAttribute","remove","addEventListener","focus","e","console","error","getConfigs","quickSearchElm","autoCompleteObj","data","src","url","buildFetchURL","fetch","json","map","item","param","paramFormatted","seriesKey","cache","selector","el","resultsList","resultListConfig","events","blur","event","setTimeout","close","defaultConfigs","QuickSearch","Selectors","Elements","ClassList","Texts","menu","$body","menuToggle","UX","$","on","showNestedExtra","$target","addClass","nestedMenu","parent","hasClass","removeClass","additionalControl","targetElement","target","document","contains","click"],"mappings":"6gFASA,+B,+CAA4C,OAAxB,WAAwB,MAA5C,CAAoB,KAEpB,mC,+CAAoD,OAA5B,eAA4B,UAApD,CAAwB,KAExB,iF,OACI,EAAAA,WAAa,8B,EACjB,OAFwB,eAExB,UAFA,CAAwB,KAIxB,kC,+CACA,OADuB,cACvB,SADA,CAAuB,KAavB,qC,+CAgFA,OAhF0B,iBACtB,sBAAAC,WAAA,WACI,YAAMA,WAAU,WAEhBC,KAAKC,qBAGT,sBAAAA,kBAAA,sBAGID,KAAKE,SAASC,eAAeC,SAAQ,SAACC,GAClC,IACI,IAAI,EAAWA,EAAMC,QAAQ,QAAQC,cAAc,EAAKC,UAAUV,YAClE,IAAK,EAAU,OAEf,IAAM,oBAAoB,WACF,KAAhBO,EAAMI,OACN,EAASC,UAAUC,IAAI,YACvB,EAASC,aAAa,WAAY,OAElC,EAASF,UAAUG,OAAO,YAC1B,EAASD,aAAa,WAAY,QAS1C,EAASE,iBAAiB,SANN,WAChBT,EAAMI,MAAQ,GACd,sBACAJ,EAAMU,WAIVV,EAAMS,iBAAiB,QAAS,qBAEhC,sBACF,MAAOE,GACLC,QAAQC,MAAMF,QAKhB,sBAAAG,WAAV,SAAqBC,EAAgCC,GAArD,WACI,OAAO,SAAP,CACIC,KAAM,CACFC,IAAK,wD,yEACKC,EAAMxB,KAAKyB,cAAcL,IAEd,GAAMM,MAAMF,IADzB,M,OAEa,SADA,SACWG,Q,OACxB,MAAO,CAAP,EADa,SACCC,KAAI,SAACC,GAUf,MATmB,cAAfA,EAAKC,MACLD,EAAKE,eAAiB,aACA,oBAAfF,EAAKC,QACW,cAAnBD,EAAKG,UACLH,EAAKE,eAAiB,iBAEtBF,EAAKE,eAAiB,SAGvBF,M,OAGX,MAAO,CAAC,EAAD,YAGfI,OAAO,GAEXC,SAAU,WAAM,OAAAd,EAAee,IAC/BC,YAAapC,KAAKqC,iBAAiBjB,GACnCkB,OAAQ,CACJjC,MAAO,CACHkC,KAAM,SAACC,GACHC,YAAW,WACPpB,EAAgBqB,MAAMrB,EAAgBhB,SACvC,SAIZL,KAAK2C,iBA7EdC,YAAW,YADhB,YAAkBC,EAAWC,EAAUC,EAAWC,IAC7CJ,aAAN,CAA0B,KAkFX,O,iCChHf,IAGQK,EACAC,EACAC,EALR,OAGQF,EAAOG,GAAGH,KACVC,EAAQG,EAAE,QACVF,EAAaE,EAAE,iCAEnBJ,EAAKK,GAAGC,gBAAkB,WACtBN,EAAKO,QAAQC,SAAS,oBAClBR,EAAKS,WAAWC,SAASC,SAAS,uBAClCV,EAAMO,SAAS,kBAEfP,EAAMW,YAAY,mBAG1BZ,EAAKa,kBAAoB,WACrBZ,EAAMI,GAAG,SAAS,SAAUtC,GACxB,IAAI+C,EACAb,EAAMU,SAAS,oBACfG,EAAgB/C,EAAEgD,OACTC,SAAS1D,cAAc,WAEpB2D,SAASH,IACjBZ,EAAWgB,aAM3Bf,GAAGH,KAAOA","file":"js/lazy-imports-19e2056b1b76a9100ba5.js","sourcesContent":["import AutoComplete from '@tarekraafat/autocomplete.js';\nimport { ComponentInjector } from '@atypon/ui-utils';\nimport PhotoQuickSearch, {\n PhotoQuickSearchElements,\n PhotoQuickSearchSelectors,\n PhotoQuickSearchTexts,\n PhotoQuickSearchClassList\n} from 'ui-theme/widgets/quick-search/js/quick-search';\n\nclass Texts extends PhotoQuickSearchTexts { }\n\nclass ClassList extends PhotoQuickSearchClassList { }\n\nclass Selectors extends PhotoQuickSearchSelectors {\n qsClearBtn = '.quick-search__clear-button';\n}\n\nclass Elements extends PhotoQuickSearchElements {\n}\n\ninterface QuickSearch {\n get elements(): Elements;\n get texts(): Texts;\n get classList(): ClassList;\n get selectors(): Selectors;\n}\nclass QuickSearchElm {\n constructor(public el: HTMLInputElement, public searchType: string, public seriesKey: string) { }\n}\n@ComponentInjector(Selectors, Elements, ClassList, Texts)\nclass QuickSearch extends PhotoQuickSearch {\n initialize() {\n super.initialize();\n // TODO: remove temp changes after LIT-528015 generic changes are merged\n this.handleClearButton();\n }\n\n handleClearButton() {\n if (!config.enableQuickSearchInputClearButton) return;\n\n this.elements.qsAutocomplete.forEach((input) => {\n try {\n let clearBtn = input.closest('form').querySelector(this.selectors.qsClearBtn);\n if (!clearBtn) return\n\n const handleInputChange = function () {\n if (input.value !== '') {\n clearBtn.classList.add('is-shown')\n clearBtn.setAttribute('tabindex', \"0\");\n } else {\n clearBtn.classList.remove('is-shown')\n clearBtn.setAttribute('tabindex', \"-1\");\n }\n };\n const handleClick = function () {\n input.value = '';\n handleInputChange()\n input.focus();\n };\n\n clearBtn.addEventListener('click', handleClick);\n input.addEventListener('input', handleInputChange);\n\n handleInputChange();\n } catch (e) {\n console.error(e);\n }\n })\n }\n\n protected getConfigs(quickSearchElm: QuickSearchElm, autoCompleteObj: AutoComplete) {\n return {\n data: {\n src: async () => {\n const url = this.buildFetchURL(quickSearchElm);\n if (url) {\n const data = await fetch(url),\n parsed = await data.json();\n return parsed.map((item) => {\n if (item.param === 'SeriesKey') {\n item.paramFormatted = 'Guide Type';\n } else if (item.param === 'ContentGroupKey') {\n if (item.seriesKey === 'mrwseries') {\n item.paramFormatted = 'Reference Work';\n } else {\n item.paramFormatted = 'Guide';\n }\n }\n return item;\n });\n } else {\n return [];\n }\n },\n cache: false\n },\n selector: () => quickSearchElm.el,\n resultsList: this.resultListConfig(quickSearchElm),\n events: {\n input: {\n blur: (event) => {\n setTimeout(() => {\n autoCompleteObj.close(autoCompleteObj.input);\n }, 200);\n }\n }\n },\n ...this.defaultConfigs\n };\n }\n}\n\nexport default QuickSearch;","import 'ui-theme/plugins/drawer/js/drawer';\n\n(function () {\n var menu = UX.menu,\n $body = $('body'),\n menuToggle = $('.main-nav__toggle__controller');\n\n menu.on.showNestedExtra = () => {\n menu.$target.addClass('sub-menu__opened');\n if (menu.nestedMenu.parent().hasClass('menu-parent__opened')) {\n $body.addClass('overlay-active');\n } else {\n $body.removeClass('overlay-active');\n }\n };\n menu.additionalControl = () => {\n $body.on('click', function (e) {\n var targetElement, header;\n if ($body.hasClass('overlay-active')) {\n targetElement = e.target;\n header = document.querySelector('.header');\n\n if (!header.contains(targetElement)) {\n menuToggle.click();\n }\n }\n });\n };\n\n UX.menu = menu; // add to global namespace\n})();\n"],"sourceRoot":""}