PageSourceSearch

https://www.fundacioncarolina.es/wp-content/plugins/elementor-pro/…nav-menu.d43af66e5000fd109c04.bundle.min.js

js fundacioncarolina.es collected 2026-09-24 08:47:37 UTC 9,459 bytes, 216 lines download raw bytes

1/*! elementor-pro - v3.21.0 - 30-04-2024 */
2"use strict";
3(self.webpackChunkelementor_pro = self.webpackChunkelementor_pro || []).push([[42], {
4    9891: (e,t)=>{
5        Object.defineProperty(t, "__esModule", {
6            value: !0
7        }),
8        t.default = void 0;
9        t.default = class AnchorLinks {
10            followMenuAnchors(e, t) {
11                e.each(((e,n)=>{
12                    location.pathname === n.pathname && "" !== n.hash && this.followMenuAnchor(jQuery(n), t)
13                }
14                ))
15            }
16            followMenuAnchor(e, t) {
17                const n = e[0].hash
18                  , o = t.activeAnchorItem
19                  , s = t.anchorItem
20                  , i = e.hasClass(s) ? e : e.closest(`.${s}`);
21                let r, l = -300;
22                try {
23                    r = jQuery(decodeURIComponent(n))
24                } catch (e) {
25                    return
26                }
27                if (r.length) {
28                    if (!r.hasClass("elementor-menu-anchor")) {
29                        const e = jQuery(window).height() / 2;
30                        l = -r.outerHeight() + e
31                    }
32                    elementorFrontend.waypoint(r, (t=>{
33                        "down" === t ? (i.addClass(o),
34                        e.attr("aria-current", "location")) : (i.removeClass(o),
35                        e.attr("aria-current", ""))
36                    }
37                    ), {
38                        offset: "50%",
39                        triggerOnce: !1
40                    }),
41                    elementorFrontend.waypoint(r, (t=>{
42                        "down" === t ? (i.removeClass(o),
43                        e.attr("aria-current", "")) : (i.addClass(o),
44                        e.attr("aria-current", "location"))
45                    }
46                    ), {
47                        offset: l,
48                        triggerOnce: !1
49                    })
50                }
51            }
52        }
53    }
54    ,
55    7480: (e,t,n)=>{
56        var o = n(3203);
57        Object.defineProperty(t, "__esModule", {
58            value: !0
59        }),
60        t.default = void 0;
61        var s = o(n(9891));
62        t.default = elementorModules.frontend.handlers.Base.extend({
63            stretchElement: null,
64            getDefaultSettings: ()=>({
65                selectors: {
66                    menu: ".elementor-nav-menu",
67                    anchorLink: ".elementor-nav-menu--main .elementor-item-anchor",
68                    dropdownMenu: ".elementor-nav-menu__container.elementor-nav-menu--dropdown",
69                    menuToggle: ".elementor-menu-toggle"
70                },
71                classes: {
72                    anchorItem: "elementor-item-anchor",
73                    activeAnchorItem: "elementor-item-active"
74                }
75            }),
76            getDefaultElements() {
77                var e = this.getSettings("selectors")
78                  , t = {};
79                return t.$menu = this.$element.find(e.menu),
80                t.$anchorLink = this.$element.find(e.anchorLink),
81                t.$dropdownMenu = this.$element.find(e.dropdownMenu),
82                t.$dropdownMenuFinalItems = t.$dropdownMenu.find(".menu-item:not(.menu-item-has-children) > a"),
83                t.$menuToggle = this.$element.find(e.menuToggle),
84                t.$links = t.$dropdownMenu.find("a.elementor-item"),
85                t
86            },
87            dropdownMenuHeightControllerConfig() {
88                const e = this.getSettings("selectors");
89                return {
90                    elements: {
91                        $element: this.$element,
92                        $dropdownMenuContainer: this.$element.find(e.dropdownMenu),
93                        $menuToggle: this.$element.find(e.menuToggle)
94                    },
95                    attributes: {
96                        menuToggleState: "aria-expanded"
97                    },
98                    settings: {
99                        dropdownMenuContainerMaxHeight: "1000vmax",
100                        menuHeightCssVarName: "--menu-height"
101                    }
102                }
103            },
104            bindEvents() {
105                this.elements.$menu.length && (this.elements.$menuToggle.on("click", this.toggleMenu.bind(this)).on("keyup", this.triggerClickOnEnterSpace.bind(this)),
106                this.getElementSettings("full_width") && this.elements.$dropdownMenuFinalItems.on("click", this.toggleMenu.bind(this, !1)).on("keyup", this.triggerClickOnEnterSpace.bind(this)),
107                elementorFrontend.addListenerOnce(this.$element.data("model-cid"), "resize", this.stretch
107Menu),
108                elementorFrontend.addListenerOnce(this.$element.data("model-cid"), "scroll", elementorFrontend.debounce(this.menuHeightController.reassignMobileMenuHeight.bind(this.menuHeightController), 250)))
109            },
110            initStretchElement() {
111                this.stretchElement = new elementorModules.frontend.tools.StretchElement({
112                    element: this.elements.$dropdownMenu
113                })
114            },
115            toggleNavLinksTabIndex() {
116                let e = !(arguments.length > 0 && void 0 !== arguments[0]) || arguments[0];
117                this.elements.$links.attr("tabindex", e ? 0 : -1)
118            },
119
120            //WCAG
121            toggleMenu(show) {
122
123                if (show.type && show.type == "keydown") {
124                    if (show.keyCode != 13)
125                        return;
126                }
127
128                var isDropdownVisible = this.elements.$menuToggle.hasClass('elementor-active');
129
130                if (!this.toggleMenuHeight) {
131                    this.toggleMenuHeight = this.elements.$menuToggle.closest('.elementor-widget-container').height();
132                }
133
134                let menu_row = this.elements.$menuToggle.closest('.elementor-row');
135                let height_row = menu_row.first('.elementor-column').innerHeight();
136
137                if (!(isDropdownVisible)){
138                    this.elements.$menuToggle.closest('.elementor-column')
139                        .css('width', '100%')
140                        .css('margin-top', '-' + this.toggleMenuHeight + 'px' );
141
142                    this.elements.$dropdownMenu
143                        .css('max-height', 'none')
144                        .show();
145
146                } else {
147
148                    this.elements.$menuToggle.closest('.elementor-column')
149                        .css('width', '')
150                        .css('margin-top', '' );
151
152                    this.elements.$dropdownMenu.hide();
153                }
154
155                if ('boolean' !== typeof show) {
156                    show = !isDropdownVisible;
157                }
158
159                this.elements.$menuToggle.attr('aria-expanded', show);
160                this.elements.$dropdownMenu.attr('aria-hidden', !show);
161                this.elements.$menuToggle.toggleClass('elementor-active', show);
162
163                if (show && this.getElementSettings('full_width')) {
164/*
165                    this.stretchElement.stretch();
166*/
167                }
168        },
169
170
171            // toggleMenu(e) {
172            //     var t = this.elements.$menuToggle.hasClass("elementor-active");
173            //     "boolean" != typeof e && (e = !t),
174            //     this.elements.$menuToggle.attr("aria-expanded", e),
175            //     this.elements.$dropdownMenu.attr("aria-hidden", !e),
176            //     this.elements.$menuToggle.toggleClass("elementor-active", e),
177            //     this.toggleNavLinksTabIndex(e),
178            //     this.menuHeightController.reassignMobileMenuHeight(this),
179            //     e && this.getElementSettings("full_width") && this.stretchElement.stretch()
180            // },
181            triggerClickOnEnterSpace(e) {
182                13 !== e.keyCode && 32 !== e.keyCode || (e.currentTarget.click(),
183                e.stopPropagation())
184            },
185            stretchMenu() {
186                this.getElementSettings("full_width") ? (this.stretchElement.stretch(),
187                this.elements.$dropdownMenu.css("top", this.elements.$menuToggle.outerHeight())) : this.stretchElement.reset()
188            },
189            onInit() {
190                if (this.menuHeightController = new elementorProFrontend.utils.DropdownMenuHeightController(this.dropdownMenuHeightControllerConfig()),
191                elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments),
192                !this.elements.$menu.length)
193                    return;
194                const e = this.getElementSettings().submenu_icon.value;
195                let t = "";
196                if (e && (t = e.indexOf("<") > -1 ? e : `<i class="${e}"></i>`),
197                this.elements.$menu.smartmenus({
198                    subIndicators: "" !== t,
199                    subIndicatorsText: t,
200                    subIndicatorsPos: "append",
201                    subMenusMaxWidth: "1000px"
202                }),
203                this.initStretchElement(),
204                this.stretchMenu(),
205                !elementorFrontend.isEditMode()) {
206                    const e = this.getSettings("classes");
207                    this.anchorLinks = new s.default,
208                    this.anchorLinks.followMenuAnchors(this.elements.$anchorLink, e)
209                }
210            },
211            onElementChange(e) {
212                "full_width" === e && this.stretchMenu()
213            }
214        })
215    }
216}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.