2 lines
8.2 KiB
JavaScript
2 lines
8.2 KiB
JavaScript
|
/*! elementor-pro - v3.21.0 - 15-04-2024 */
|
||
|
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[838],{8208:(e,t,s)=>{var i=s(8003).__,n=s(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var l=n(s(1699));class TOCHandler extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{widgetContainer:".elementor-widget-container",postContentContainer:'.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not([data-elementor-type="popup"])',expandButton:".elementor-toc__toggle-button--expand",collapseButton:".elementor-toc__toggle-button--collapse",body:".elementor-toc__body",headerTitle:".elementor-toc__header-title"},classes:{anchor:"elementor-menu-anchor",listWrapper:"elementor-toc__list-wrapper",listItem:"elementor-toc__list-item",listTextWrapper:"elementor-toc__list-item-text-wrapper",firstLevelListItem:"elementor-toc__top-level",listItemText:"elementor-toc__list-item-text",activeItem:"elementor-item-active",headingAnchor:"elementor-toc__heading-anchor",collapsed:"elementor-toc--collapsed"},listWrapperTag:"numbers"===this.getElementSettings().marker_view?"ol":"ul"}}getDefaultElements(){const e=this.getSettings();return{$pageContainer:this.getContainer(),$widgetContainer:this.$element.find(e.selectors.widgetContainer),$expandButton:this.$element.find(e.selectors.expandButton),$collapseButton:this.$element.find(e.selectors.collapseButton),$tocBody:this.$element.find(e.selectors.body),$listItems:this.$element.find("."+e.classes.listItem)}}getContainer(){const e=this.getElementSettings();if(e.container)return jQuery(l.default.sanitize(e.container));const t=this.$element.parents(".elementor");if("popup"===t.attr("data-elementor-type"))return t;const s=this.getSettings();return jQuery(s.selectors.postContentContainer)}bindEvents(){const e=this.getElementSettings();e.minimize_box&&(this.elements.$expandButton.on("click",(()=>this.expandBox())).on("keyup",(e=>this.triggerClickOnEnterSpace(e))),this.elements.$collapseButton.on("click",(()=>this.collapseBox())).on("keyup",(e=>this.triggerClickOnEnterSpace(e)))),e.collapse_subitems&&this.elements.$listItems.on("hover",(e=>jQuery(e.target).slideToggle()))}getHeadings(){const e=this.getElementSettings(),t=e.headings_by_tags.join(","),s=this.getSettings("selectors"),i=e.exclude_headings_by_selector;return this.elements.$pageContainer.find(t).not(s.headerTitle).filter(((e,t)=>!jQuery(t).closest(i).length))}addAnchorsBeforeHeadings(){const e=this.getSettings("classes");this.elements.$headings.before((t=>{if(!jQuery(this.elements.$headings[t]).data("hasOwnID"))return`<span id="${e.headingAnchor}-${t}" class="${e.anchor} "></span>`}))}activateItem(e){const t=this.getSettings("classes");if(this.deactivateActiveItem(e),e.addClass(t.activeItem),this.$activeItem=e,!this.getElementSettings("collapse_subitems"))return;let s;s=e.hasClass(t.firstLevelListItem)?e.parent().next():e.parents("."+t.listWrapper).eq(-2),s.length?(this.$activeList=s,this.$activeList.stop().slideDown()):delete this.$activeList}deactivateActiveItem(e){if(!this.$activeItem||this.$activeItem.is(e))return;const{classes:t}=this.getSettings();this.$activeItem.removeClass(t.activeItem),!this.$activeList||e&&this.$activeList[0].contains(e[0])||this.$activeList.slideUp()}followAnchor(e,t){const s=e[0].hash;let i;try{i=jQuery(decodeURIComponent(s))}catch(e){return}elementorFrontend.waypoint(i,(s=>{if(this.itemClicked)return;const n=i.attr("id");"down"===s?(this.viewportItems[n]=!0,this.activateItem(e)):(delete this.viewportItems[n],this.activateItem(this.$listItemTexts.eq(t-1)))}),{offset:"bottom-in-view",triggerOnce:!1}),elementorFrontend.waypoint(i,(s=>{if(this.itemClicked)return;const n=i.attr("id");"down"===s?(delete this.viewportItems[n],Object.keys(this.viewportItems).length&&this.activateItem(this.$listItemTexts.eq(t+1))):(this.viewportItems[n]=!0,this.activateItem(e))}),{offset:0,triggerOnce:!1})}followAnchors(){this.$listItemTexts.each(((e,t)=>this.followAnchor(jQuery(t),e)))}populateTOC(){this.listItemPointer=0;this.getElementSettings().hierarchical_vi
|