{"version":3,"sources":["before.js","opal-nav-menu.js","after.js"],"names":["$","Elementor_Opal_MegaMenu","_this","this","_classCallCheck","settings","window","on","init","_createClass","key","value","instance","_this2","elementorFrontend","hooks","addAction","$scope","setupToggleButton","setupMenu","find","length","subMenusMinWidth","data","smartmenus","subIndicatorsText","subIndicatorsPos","subMenusMaxWidth","showTimeout","_this3","isMobileMenu","$toggle","$dropdownMenu","toggleClass","toggleMenu","hasClass","show","hide","slideDown","css","full_width","menuFullWidth","slideUp","attr","containerWidth","outerWidth","elementOffset","offset","left","top","outerHeight","width","getInstance","jQuery"],"mappings":"8XAAA,SAAAA,IAAA,WCcA,SAAAC,IAAA,IAAAC,EAAAC,KAAAC,gBAAAD,KAAAF,GAAAE,KAZAE,SAAA,GAaAL,EAAAM,QAAAC,GAAA,0BAAA,WACAL,EAAAM,SDhBA,OAAAC,aAAAR,EAAA,KAAA,CAAA,CAAAS,IAAA,cAAAC,MAAA,WCWA,OAHAV,EAAAW,WACAX,EAAAW,SAAA,IAAAX,GAEAA,EAAAW,aDXAH,aAAAR,EAAA,CAAA,CAAAS,IAAA,OAAAC,MAAA,WCqBA,IAAAE,EAAAV,KACAW,kBAAAC,MAAAC,UAAA,gDAAA,SAAAC,GACAJ,EAAAK,kBAAAD,GACAJ,EAAAM,UAAAF,ODxBA,CAAAP,IAAA,YAAAC,MAAA,SC4BAM,GACA,GAAA,EAAAA,EAAAG,KAAA,8CAAAC,OAAA,CACA,IAAAC,EAAAL,EAAAG,KAAA,oCAAAG,KAAA,oBACAN,EAAAG,KAAA,oCAAAG,KAAA,oBACA,IACAN,EAAAG,KAAA,2BAAAI,WAAA,CACAC,kBAAA,GACAC,iBAAA,SACAJ,iBAAAA,EAAA,KACAK,iBAAAA,SAEAC,YAAA,ODvCA,CAAAlB,IAAA,oBAAAC,MAAA,SC4CAM,GAAA,IAAAY,EAAA1B,KACAA,KAAA2B,aAAAb,KAEAA,EAAAc,QAAAd,EAAAG,KAAA,8BACAH,EAAAc,QAAAxB,GAAA,QAAA,WAEAsB,EAAAG,cAAAf,EAAAG,KAAA,uEACAH,EAAAc,QAAAE,YAAA,wBACAJ,EAAAK,WAAAjB,EAAAA,EAAAc,QAAAI,SAAA,8BDpDA,CAAAzB,IAAA,eAAAC,MAAA,SCyDAM,GACA,OAAA,EAAAA,EAAAG,KAAA,8BAAAC,SD1DA,CAAAX,IAAA,aAAAC,MAAA,SC6DAM,EAAAmB,GACA,IAAAJ,EAAA7B,KAAA6B,cACA3B,EAAAY,EAAAM,KAAA,YACAa,GACAJ,EAAAK,OAAAC,UAAA,IAAA,WACAN,EAAAO,IAAA,UAAA,MAGAlC,EAAAmC,YACAR,EAAAO,IAAApC,KAAAsC,cAAAxB,EAAAe,KAIAA,EAAAI,OAAAM,QAAA,IAAA,WACAV,EAAAW,KAAA,QAAA,QD3EA,CAAAjC,IAAA,gBAAAC,MAAA,SCgFAM,EAAAe,GACA,IACAY,EADA5C,EAAAM,QACAuC,aACAC,EAAAd,EAAAe,SAAAC,KAEA,MAAA,CACAC,IAAAhC,EAAAc,QAAAmB,cACAF,MAAAF,EAAA,KACAK,MAAAP,ODxFA3C,GAAA,GC4FAmD,cD5FA,CEAAC","file":"frontend.js","sourcesContent":["(function ($) {","class Elementor_Opal_MegaMenu {\r\n static instance;\r\n settings = {};\r\n $toggle;\r\n \r\n $dropdownMenu\r\n\r\n static getInstance() {\r\n if (!Elementor_Opal_MegaMenu.instance) {\r\n Elementor_Opal_MegaMenu.instance = new Elementor_Opal_MegaMenu();\r\n }\r\n return Elementor_Opal_MegaMenu.instance;\r\n }\r\n\r\n constructor() {\r\n $(window).on('elementor/frontend/init', () => {\r\n this.init();\r\n });\r\n }\r\n\r\n\r\n init() {\r\n elementorFrontend.hooks.addAction('frontend/element_ready/opal-mega-menu.default', ($scope) => {\r\n this.setupToggleButton($scope); \r\n this.setupMenu($scope);\r\n });\r\n }\r\n\r\n setupMenu($scope) { \r\n if( $scope.find('nav.opalelementor-nav-menu--main .sub-menu').length > 0 ){ \r\n let subMenusMinWidth = $scope.find('nav.opalelementor-nav-menu--main').data('submenusminwidth');\r\n let subMenusMaxWidth = $scope.find('nav.opalelementor-nav-menu--main').data('submenusmaxwidth');\r\n subMenusMaxWidth = 1000;\r\n $scope.find('.opalelementor-nav-menu').smartmenus({\r\n subIndicatorsText: '',\r\n subIndicatorsPos : 'append',\r\n subMenusMinWidth : subMenusMinWidth+'px',\r\n subMenusMaxWidth : subMenusMaxWidth+'px',\r\n // subMenusSubOffsetY: 100,\r\n showTimeout : 0\r\n }); \r\n } \r\n }\r\n\r\n setupToggleButton($scope) {\r\n if (this.isMobileMenu($scope)) {\r\n // Code Button\r\n $scope.$toggle = $scope.find('.opalelementor-menu-toggle');\r\n $scope.$toggle.on('click', () => { \r\n\r\n this.$dropdownMenu = $scope.find('.opalelementor-nav-menu--dropdown.opalelementor-nav-menu__container');\r\n $scope.$toggle.toggleClass('opalelementor-active');\r\n this.toggleMenu($scope, $scope.$toggle.hasClass('opalelementor-active'));\r\n });\r\n }\r\n }\r\n\r\n isMobileMenu($scope) {\r\n return $scope.find('.opalelementor-menu-toggle').length > 0;\r\n }\r\n\r\n toggleMenu($scope, show) {\r\n let $dropdownMenu = this.$dropdownMenu;\r\n let settings = $scope.data('settings');\r\n if (show) {\r\n $dropdownMenu.hide().slideDown(250, function () {\r\n $dropdownMenu.css('display', '');\r\n });\r\n\r\n if (settings.full_width) {\r\n $dropdownMenu.css(this.menuFullWidth($scope, $dropdownMenu));\r\n }\r\n\r\n } else {\r\n $dropdownMenu.show().slideUp(250, function () {\r\n $dropdownMenu.attr('style', '');\r\n });\r\n }\r\n }\r\n\r\n menuFullWidth($scope, $dropdownMenu) {\r\n let $container = $(window),\r\n containerWidth = $container.outerWidth(),\r\n elementOffset = $dropdownMenu.offset().left;\r\n\r\n return {\r\n 'top' : $scope.$toggle.outerHeight(),\r\n 'left' : -elementOffset + 'px',\r\n 'width': containerWidth,\r\n }\r\n }\r\n}\r\nElementor_Opal_MegaMenu.getInstance(); ","})(jQuery);"]}