{"version":3,"file":"MegaMenu.min.js","sources":["MegaMenu.js"],"sourcesContent":["(function (w, $) {\r\n\r\n const assetId = '~/Parts/Views/Menu/MegaMenu.min.js';\r\n\r\n if (!w.umwAssets || !w.umwAssets[assetId]) {\r\n console.error('No context found for ' + assetId);\r\n return;\r\n }\r\n\r\n for (let ctx of w.umwAssets[assetId]) {\r\n\r\n const prefixClass = ctx.controlId.toLowerCase();\r\n\r\n const classes = {\r\n control: \"js-\" + prefixClass,\r\n lvl1Item: \"js-\" + prefixClass + \"-lvl1-item\",\r\n lvl1ItemHovered: prefixClass + \"-lvl1__item_hovered\",\r\n };\r\n\r\n const beforeMegaMenuLvl1Mouseenter = new $.Event(\"megamenu:lvl1:beforemouseenter\");\r\n const beforeMegaMenuLvl1Mouseleave = new $.Event(\"megamenu:lvl1:beforemouseleave\");\r\n\r\n const $control = $(\".\" + classes.control);\r\n const $lvl1Item = $(\".\" + classes.lvl1Item, $control);\r\n const hoverDelay = 250;\r\n let hoverTimerId;\r\n\r\n $control.on(\"mouseenter\", \".\" + classes.lvl1Item, function(e) {\r\n\r\n $control.trigger(beforeMegaMenuLvl1Mouseenter, [hoverTimerId, hoverDelay]);\r\n\r\n if (beforeMegaMenuLvl1Mouseenter.isDefaultPrevented()) {\r\n return;\r\n }\r\n\r\n clearInterval(hoverTimerId);\r\n\r\n hoverTimerId = setTimeout(function() {\r\n $lvl1Item.removeClass(classes.lvl1ItemHovered);\r\n $(e.currentTarget).addClass(classes.lvl1ItemHovered);\r\n },\r\n hoverDelay);\r\n });\r\n\r\n $control.on(\"mouseleave\", \".\" + classes.lvl1Item, function(e) {\r\n\r\n $control.trigger(beforeMegaMenuLvl1Mouseleave, [hoverTimerId, hoverDelay]);\r\n\r\n if (beforeMegaMenuLvl1Mouseleave.isDefaultPrevented()) {\r\n return;\r\n }\r\n\r\n clearInterval(hoverTimerId);\r\n\r\n hoverTimerId = setTimeout(function () {\r\n $lvl1Item.removeClass(classes.lvl1ItemHovered);\r\n },\r\n hoverDelay);\r\n });\r\n }\r\n\r\n})(window, jQuery);"],"names":["w","$","assetId","umwAssets","let","ctx","prefixClass","controlId","toLowerCase","classes","control","lvl1Item","lvl1ItemHovered","beforeMegaMenuLvl1Mouseenter","Event","beforeMegaMenuLvl1Mouseleave","$control","$lvl1Item","hoverDelay","hoverTimerId","on","e","trigger","isDefaultPrevented","clearInterval","setTimeout","removeClass","currentTarget","addClass","console","error","window","jQuery"],"mappings":"AAAA,CAAA,SAAWA,EAAGC,GAEV,IAAMC,EAAU,qCAEhB,GAAKF,EAAEG,WAAcH,EAAEG,UAAUD,GAKjC,IAAKE,IAAIC,KAAOL,EAAEG,UAAUD,GAAU,CAE5BI,EAAcD,EAAIE,UAAUC,YAAY,EAE9C,MAAMC,EAAU,CACZC,QAAS,MAAQJ,EACjBK,SAAU,MAAQL,EAAc,aAChCM,gBAAiBN,EAAc,qBACnC,EAEMO,EAA+B,IAAIZ,EAAEa,MAAM,gCAAgC,EAC3EC,EAA+B,IAAId,EAAEa,MAAM,gCAAgC,EAE3EE,EAAWf,EAAE,IAAMQ,EAAQC,OAAO,EAClCO,EAAYhB,EAAE,IAAMQ,EAAQE,SAAUK,CAAQ,EAC9CE,EAAa,IACnBd,IAAIe,EAEJH,EAASI,GAAG,aAAc,IAAMX,EAAQE,SAAU,SAASU,GAEvDL,EAASM,QAAQT,EAA8B,CAACM,EAAcD,EAAW,EAErEL,EAA6BU,mBAAmB,IAIpDC,cAAcL,CAAY,EAE1BA,EAAeM,WAAW,WAClBR,EAAUS,YAAYjB,EAAQG,eAAe,EAC7CX,EAAEoB,EAAEM,aAAa,EAAEC,SAASnB,EAAQG,eAAe,CACvD,EACAM,CAAU,EAClB,CAAC,EAEDF,EAASI,GAAG,aAAc,IAAMX,EAAQE,SAAU,SAASU,GAEvDL,EAASM,QAAQP,EAA8B,CAACI,EAAcD,EAAW,EAErEH,EAA6BQ,mBAAmB,IAIpDC,cAAcL,CAAY,EAE1BA,EAAeM,WAAW,WAClBR,EAAUS,YAAYjB,EAAQG,eAAe,CACjD,EACAM,CAAU,EAClB,CAAC,CACL,MAtDIW,QAAQC,MAAM,wBAA0B5B,CAAO,CAwDtD,EAAE6B,OAAQC,MAAM"}