1 line
No EOL
9.4 KiB
JavaScript
1 line
No EOL
9.4 KiB
JavaScript
(n=>{n.fn.isInViewport=function(){var e=n(this).offset().top,a=e+n(this).outerHeight(),s=n(window).scrollTop(),t=s+n(window).height();return s<a&&e<t},AstraMenu={init:function(){this._bind(),document.querySelector("body").addEventListener("astraMenuHashLinkClicked",function(e){AstraMenu._close_fullscreen(e),AstraMenu._close_offcanvas(e)})},_bind:function(){astraAddon.off_canvas_enable||""?(n(document).on("click","."+astraAddon.off_canvas_trigger_class,{class:"ast-off-canvas-overlay"},AstraMenu._enable_offcanvas_overlay),n(document).on("click touchstart",".astra-off-canvas-sidebar-wrapper, .astra-off-canvas-sidebar-wrapper .ast-shop-filter-close",{class:"ast-off-canvas-overlay"},AstraMenu._close_offcanvas)):astraAddon.off_canvas_trigger_class&&n(document).on("click","."+astraAddon.off_canvas_trigger_class,AstraMenu._enable_collapsible_slider),document.addEventListener("keydown",function(e){"Escape"===e.code&&n(".astra-off-canvas-sidebar-wrapper").trigger("click")}),n(document).on("click",".ast-flyout-above-menu-enable .ast-above-header .menu-toggle",AstraMenu._open_above_offcanvas),n(document).on("click touchstart",".ast-flyout-above-menu-overlay .ast-above-header-navigation-wrap, .ast-flyout-above-menu-overlay .ast-above-header .ast-nav-close",AstraMenu._close_above_offcanvas),n(document).on("click",".ast-flyout-below-menu-enable .ast-below-header .menu-toggle",AstraMenu._open_below_offcanvas),n(document).on("click touchstart",".ast-flyout-below-menu-overlay .ast-below-header-navigation-wrap, .ast-flyout-below-menu-overlay .ast-below-header .ast-nav-close",AstraMenu._close_below_offcanvas),n(document).on("click",".ast-fullscreen-below-menu-enable .ast-below-header .menu-toggle",AstraMenu._open_below_fullscreen),n(document).on("click",".ast-fullscreen-below-menu-overlay .ast-below-header .close",AstraMenu._close_below_fullscreen),n(document).on("click",".ast-fullscreen-above-menu-enable .ast-above-header .menu-toggle",AstraMenu._open_above_fullscreen),n(document).on("click",".ast-fullscreen-above-menu-overlay .ast-above-header .close",AstraMenu._close_above_fullscreen),n(document).on("click",".ast-flyout-menu-enable .main-header-bar .menu-toggle",{class:"ast-flyout-menu-overlay"},AstraMenu._enable_primary_menu_overlay),n(document).on("click",".ast-flyout-menu-overlay .main-header-bar-navigation, .ast-flyout-menu-overlay .main-header-bar .ast-nav-close",{class:"ast-flyout-menu-overlay"},AstraMenu._close_offcanvas),n(document).on("click",".ast-flyout-menu-overlay .main-header-bar-navigation",{class:"toggled"},AstraMenu._toggle_menu),n(document).on("click",".ast-fullscreen-menu-enable .main-header-bar .menu-toggle",AstraMenu._open_fullscreen),n(document).on("click",".ast-fullscreen-menu-overlay .main-header-bar .close",AstraMenu._close_fullscreen),n(document).on("click",".ast-fullscreen-menu-overlay .main-header-bar .close",{class:"toggled"},AstraMenu._toggle_menu),n(document).on("ready",AstraMenu._wp_admin_bar_visible),n(window).on("scroll",AstraMenu._wp_admin_bar_visible)},_open_above_fullscreen:function(e){e.preventDefault();var e=n("html").innerWidth(),a=(n("html").css("overflow","hidden"),n("html").innerWidth());n("html").css("margin-right",a-e),n("html").addClass("ast-fullscreen-above-menu-overlay"),n(".ast-above-header-navigation-wrap .close").length||(n(".ast-above-header-navigation-wrap").prepend('<span class="close">'+astraAddon.svgIconClose+"</span>"),n(".ast-above-header-navigation-wrap .close").css("right",a-e))},_open_below_fullscreen:function(e){e.preventDefault();var e=n("html").innerWidth(),a=(n("html").css("overflow","hidden"),n("html").innerWidth());n("html").css("margin-right",a-e),n("html").addClass("ast-fullscreen-below-menu-overlay"),n(".ast-below-header-navigation-wrap .close").length||(n(".ast-below-header-navigation-wrap").prepend('<span class="close">'+astraAddon.svgIconClose+"</span>"),n(".ast-below-header-navigation-wrap .close").css("right",a-e))},_open_fullscreen:function(e){e.preventDefault();var e=n("html").innerWidth(),a=(n("html").css("overflow","hidden"),n("html").innerWidth());n("html").css("margin-right",a-e),n("html").addClass("ast-fullscreen-menu-overlay"),n("html").addClass("ast-fullscreen-active"),n(".main-header-bar nav .close").length||(n(".main-header-bar nav").prepend('<span class="close">'+astraAddon.svgIconClose+"</span>"),n(".main-header-bar nav .close").css("right",a-e)),n(".ast-primary-menu-disabled .ast-header-custom-item .close").length||n(".ast-primary-menu-disabled .ast-header-custom-item .ast-merge-header-navigation-wrap").prepend('<span class="close">'+astraAddon.svgIconClose+"</span>")},_enable_offcanvas_overlay:function(e){e.preventDefault(),n(this).addClass("active");var a=n("html").innerWidth(),s=(n("html").css("overflow","hidden"),n("html").innerWidth());n("html").css("margin-right",s-a),n("html").addClass(e.data.class),setTimeout(function(){n("#cart-accessibility").focus()},100),n(".ast-filter-wrap").hasClass("ast-accordion-layout")&&AstraMenu._accordion_initial_height()},_enable_collapsible_slider:function(e){e.preventDefault(),n(this).toggleClass("active"),n("body").hasClass("ast-header-break-point")&&!astraAddon.off_canvas_enable&&n(this).hasClass("active")&&n("html, body").animate({scrollTop:n(".ast-woocommerce-container").offset().top},500),n(".ast-collapse-filter").slideToggle(),n(".ast-filter-wrap").hasClass("ast-accordion-layout")&&AstraMenu._accordion_initial_height()},_enable_primary_menu_overlay:function(e){e.preventDefault(),n(".main-header-bar-navigation .close").length||n(".main-navigation").before('<span class="ast-nav-close close">'+astraAddon.svgIconClose+"</span>"),n(".ast-merge-header-navigation-wrap .close").length||n(".ast-merge-header-navigation-wrap").append('<span class="ast-nav-close close">'+astraAddon.svgIconClose+"</span>"),n("div.ast-masthead-custom-menu-items .close").length||n("div.ast-masthead-custom-menu-items").append('<span class="ast-nav-close close">'+astraAddon.svgIconClose+"</span>"),astraAddon.sticky_active&&n("html").css("overflow","hidden"),n("html").addClass(e.data.class),n("html").addClass("ast-offcanvas-active")},_open_above_offcanvas:function(e){e.preventDefault(),n(".ast-above-header-section .close").length||n(".ast-above-header-navigation").prepend('<span class="ast-nav-close close">'+astraAddon.svgIconClose+"</span>"),astraAddon.sticky_active&&n("html").css("overflow","hidden"),n("html").addClass("ast-flyout-above-menu-overlay")},_close_above_offcanvas:function(e){e.target.parentNode.parentNode===this&&(n("html").removeClass("ast-flyout-above-menu-overlay"),n(".ast-above-header .menu-toggle").removeClass("toggled"),n(".ast-above-header").removeClass("toggle-on"),astraAddon.sticky_active)&&n("html").css("overflow","")},_open_below_offcanvas:function(e){e.preventDefault(),n(".ast-below-header-actual-nav .close").length||n(".ast-below-header-actual-nav").prepend('<span class="ast-nav-close close">'+astraAddon.svgIconClose+"</span>"),astraAddon.sticky_active&&n("html").css("overflow","hidden"),n("html").addClass("ast-flyout-below-menu-overlay")},_close_below_offcanvas:function(e){e.target.parentNode.parentNode===this&&(n("html").removeClass("ast-flyout-below-menu-overlay"),n(".ast-below-header .menu-toggle").removeClass("toggled"),n(".ast-below-header").removeClass("toggle-on"),astraAddon.sticky_active)&&n("html").css("overflow","")},_close_offcanvas:function(e){var a=n(".astra-off-canvas-sidebar"),s=e.target.parentNode.parentNode===this||"astraMenuHashLinkClicked"===e.type;(a.length?s||!a.is(e.target)&&0===a.has(e.target).length:s)&&(e.data=e.data||{},e.data.class=e.data.class||"ast-flyout-menu-overlay ast-offcanvas-active",n("html").css({overflow:"","margin-left":"","margin-right":""}),n("html").removeClass(e.data.class),(a=n(".astra-shop-filter-button")).hasClass("active")&&a.removeClass("active"),setTimeout(function(){n("html").removeClass("ast-offcanvas-active")},300))},_close_above_fullscreen:function(e){n("html").css({overflow:"","margin-right":""}),n("html").removeClass("ast-fullscreen-above-menu-overlay"),n(".ast-above-header-navigation").removeClass("toggle-on").hide(),n(".ast-above-header .menu-toggle").hasClass("toggled")&&n(".ast-above-header .menu-toggle").removeClass("toggled")},_close_below_fullscreen:function(e){n("html").css({overflow:"","margin-right":""}),n("html").removeClass("ast-fullscreen-below-menu-overlay"),n(".ast-below-header .menu-toggle").hasClass("toggled")&&n(".ast-below-header .menu-toggle").removeClass("toggled")},_close_fullscreen:function(e){n("html").css({overflow:"","margin-right":""}),n("html").removeClass("ast-fullscreen-menu-overlay"),setTimeout(function(){n("html").removeClass("ast-fullscreen-active")},500),n(".main-header-bar-navigation").removeClass("toggle-on").hide()},_toggle_menu:function(e){n(".main-header-bar .menu-toggle").hasClass(e.data.class)&&n(".main-header-bar .menu-toggle").removeClass(e.data.class),n("html").hasClass("ast-fullscreen-active")&&setTimeout(function(){n("html").removeClass("ast-fullscreen-active")},500)},_toggle_above_menu:function(e){n(".ast-above-header .menu-toggle").hasClass(e.data.class)&&n(".ast-above-header .menu-toggle").removeClass(e.data.class)},_wp_admin_bar_visible:function(e){var a=n("#wpadminbar");a.length&&(a.isInViewport()?n("body").hasClass("ast-admin-bar-visible")||n("body").addClass("ast-admin-bar-visible"):n("body").hasClass("ast-admin-bar-visible")&&n("body").removeClass("ast-admin-bar-visible"))},_accordion_initial_height:function(e){n(".ast-filter-content").each(function(e,a){var s=n(this).innerHeight();n(a).css("max-height",s+"px")})}},n(function(){AstraMenu.init()})})(jQuery); |