PATH:
home
/
lab2454c
/
climatefinancebank.com
/
wp-content
/
plugins
/
elementor-pro
/
assets
/
js
/*! elementor-pro - v3.14.0 - 18-06-2023 */ "use strict"; (self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["woocommerce-menu-cart"],{ /***/ "../modules/woocommerce/assets/js/frontend/handlers/menu-cart.js": /*!***********************************************************************!*\ !*** ../modules/woocommerce/assets/js/frontend/handlers/menu-cart.js ***! \***********************************************************************/ /***/ ((__unused_webpack_module, exports) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class _default extends elementorModules.frontend.handlers.Base { getDefaultSettings() { return { selectors: { container: '.elementor-menu-cart__container', main: '.elementor-menu-cart__main', toggle: '.elementor-menu-cart__toggle', toggleButton: '#elementor-menu-cart__toggle_button', toggleWrapper: '.elementor-menu-cart__toggle_wrapper', closeButton: '.elementor-menu-cart__close-button, .elementor-menu-cart__close-button-custom', productList: '.elementor-menu-cart__products' }, classes: { isShown: 'elementor-menu-cart--shown' } }; } getDefaultElements() { const selectors = this.getSettings('selectors'); return { $container: this.$element.find(selectors.container), $main: this.$element.find(selectors.main), $toggleWrapper: this.$element.find(selectors.toggleWrapper), $closeButton: this.$element.find(selectors.closeButton) }; } toggleCart() { if (!this.isCartOpen) { this.showCart(); } else { this.hideCart(); } } showCart() { if (this.isCartOpen) { return; } const classes = this.getSettings('classes'), selectors = this.getSettings('selectors'); this.isCartOpen = true; this.$element.addClass(classes.isShown); this.$element.find(selectors.toggleButton).attr('aria-expanded', true); this.elements.$main.attr('aria-hidden', false); this.elements.$container.attr('aria-hidden', false); } hideCart() { if (!this.isCartOpen) { return; } const classes = this.getSettings('classes'), selectors = this.getSettings('selectors'); this.isCartOpen = false; this.$element.removeClass(classes.isShown); this.$element.find(selectors.toggleButton).attr('aria-expanded', false); this.elements.$main.attr('aria-hidden', true); this.elements.$container.attr('aria-hidden', true); } automaticallyOpenCart() { const settings = this.getElementSettings(); if ('yes' === settings.automatically_open_cart) { this.showCart(); } } refreshFragments(eventType) { let data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; if (elementorFrontend.isEditMode() && elementorPro.modules.woocommerce.didManuallyTriggerAddToCartEvent(data)) { return false; } const templatesInPage = []; jQuery.each(elementorFrontend.documentsManager.documents, index => { templatesInPage.push(index); }); jQuery.ajax({ type: 'POST', url: elementorProFrontend.config.ajaxurl, context: this, data: { action: 'elementor_menu_cart_fragments', templates: templatesInPage, _nonce: ElementorProFrontendConfig.woocommerce.menu_cart.fragments_nonce, is_editor: elementorFrontend.isEditMode() }, success(successData) { if (successData?.fragments) { jQuery.each(successData.fragments, (key, value) => { jQuery(key).replaceWith(value); }); } }, complete() { if ('added_to_cart' === eventType) { this.automaticallyOpenCart(); } } }); } bindEvents() { const menuCart = elementorProFrontend.config.woocommerce.menu_cart, noQueryParams = -1 === menuCart.cart_page_url.indexOf('?'), currentUrl = noQueryParams ? window.location.origin + window.location.pathname : window.location.href, cartUrl = menuCart.cart_page_url, isCart = menuCart.cart_page_url === currentUrl, isCheckout = menuCart.checkout_page_url === currentUrl, selectors = this.getSettings('selectors'); // If on cart page or checkout page don't open cart, rather stay on, or go to cart page, and bail from init. if (isCart && isCheckout) { this.$element.find(selectors.toggleButton).attr('href', cartUrl); return; } // Cache cart open state. const classes = this.getSettings('classes'); this.isCartOpen = this.$element.hasClass(classes.isShown); const settings = this.getElementSettings(); if ('mouseover' === settings.open_cart) { // Enable opening of mini-cart and side-cart by hover (include click so we can `preventDefault()` page-top jump on click). this.elements.$toggleWrapper.on('mouseover click', selectors.toggleButton, event => { event.preventDefault(); this.showCart(); }); // Close Cart on mouseleave. this.elements.$toggleWrapper.on('mouseleave', () => this.hideCart()); } else { // Enable opening of mini-cart and side-cart by click. this.elements.$toggleWrapper.on('click', selectors.toggleButton, event => { event.preventDefault(); this.toggleCart(); }); } // Listen for clicks outside to close any open cart. elementorFrontend.elements.$document.on('click', event => { if (!this.isCartOpen) { return; } const $target = jQuery(event.target); // Don't close if this is click on the main panel or toggle button. if ($target.closest(this.elements.$main).length || $target.closest(selectors.toggle).length) { return; } this.hideCart(); }); this.elements.$closeButton.on('click', event => { event.preventDefault(); this.hideCart(); }); elementorFrontend.elements.$document.on('keyup', event => { const ESC_KEY = 27; if (ESC_KEY === event.keyCode) { this.hideCart(); } }); elementorFrontend.elements.$body.on('wc_fragments_refreshed removed_from_cart added_to_cart', (event, data) => this.refreshFragments(event.type, data)); // Govern the height of the mini-cart dropdown. elementorFrontend.addListenerOnce(this.getUniqueHandlerID() + '_window_resize_dropdown', 'resize', () => this.governDropdownHeight()); elementorFrontend.elements.$body.on('wc_fragments_loaded wc_fragments_refreshed', () => this.governDropdownHeight()); } unbindEvents() { elementorFrontend.removeListeners(this.getUniqueHandlerID() + '_window_resize_dropdown', 'resize'); } onInit() { super.onInit(); /** * When the page is reloaded after an item is added to cart, and the user activated the * "Automatically Open Cart" option, the cart should open to show the updated contents. */ if (elementorProFrontend.config.woocommerce.productAddedToCart) { this.automaticallyOpenCart(); } // Govern the height of the mini-cart dropdown. this.governDropdownHeight(); } governDropdownHeight() { const settings = this.getElementSettings(); // Only do this for mini-cart. if ('mini-cart' !== settings.cart_type) { return; } // Elements need to be re-instantiated every time as WooCommerce reloads the toggle button // and cart contents in our widget when the cart changes e.g. adding products to the cart. const selectors = this.getSettings('selectors'); const $productList = this.$element.find(selectors.productList), $toggle = this.$element.find(selectors.toggle); // Make sure required elements exist. if (!$productList.length || !$toggle.length) { return; } // Remove max-height of productList so we can take new measurements. this.$element.find(selectors.productList).css('max-height', ''); // Calculate what the height of the productList should be based on elements above, below and it's vertical position. const windowHeight = document.documentElement.clientHeight, toggleHeight = $toggle.height() + parseInt(this.elements.$main.css('margin-top')), toggleTopPosition = $toggle[0].getBoundingClientRect().top, productListHeight = $productList.height(), dropdownWithoutViewportHeight = this.elements.$main.prop('scrollHeight') - productListHeight, extraBottomSpacing = 30, maxViewportHeight = windowHeight - toggleTopPosition - toggleHeight - dropdownWithoutViewportHeight - extraBottomSpacing, optimalViewportHeight = Math.max(120, maxViewportHeight); // Apply max-height to the productList. $productList.css('max-height', optimalViewportHeight); } } exports["default"] = _default; /***/ }) }]); //# sourceMappingURL=woocommerce-menu-cart.cecfa624e2d23a156519.bundle.js.map
[+]
..
[-] frontend.min.js
[edit]
[-] elements-handlers.js
[edit]
[-] editor.js
[edit]
[-] screenshot.min.js
[edit]
[-] qunit-tests.min.js
[edit]
[-] jszip.vendor.99a5b769619f50a6cb60.bundle.min.js.LICENSE.txt
[edit]
[-] elements-handlers.min.js
[edit]
[-] mega-menu-stretch-content.99000844c609182f2303.bundle.min.js
[edit]
[-] code-highlight.bd9b459b2670f6512f56.bundle.js
[edit]
[-] form-submission-admin.js
[edit]
[-] frontend.js
[edit]
[-] b83b4e72565adbc65b6e.bundle.min.js
[edit]
[-] gallery.1573e391054ea0977a1f.bundle.js
[edit]
[-] form-submission-admin.min.js
[edit]
[-] mega-menu-stretch-content.749b8c1dc8bd8c9b37d2.bundle.js
[edit]
[-] woocommerce-checkout-page.bf88689aec2ee294a5e8.bundle.js
[edit]
[-] nested-carousel.bcde87271acde0b6b3f0.bundle.min.js
[edit]
[-] admin.js
[edit]
[-] stripe-button.eae562d308bcfc405207.bundle.min.js.LICENSE.txt
[edit]
[-] preview.min.js
[edit]
[-] search-form.416aa432fdfe2bcfe9b5.bundle.js
[edit]
[-] share-buttons.0bdd88c45462dfb2b073.bundle.min.js
[edit]
[-] paypal-button.0b0a646654a59ebd13a8.bundle.js
[edit]
[-] webpack-pro.runtime.min.js
[edit]
[-] app.min.js
[edit]
[-] nested-carousel-editor.d8367a1522af6556bd92.bundle.min.js
[edit]
[-] app.js
[edit]
[-] slides.0a31b946f157107ba4a2.bundle.js
[edit]
[-] nav-menu.3347cc64f9b3d71f7f0c.bundle.min.js
[edit]
[+]
packages
[-] page-transitions.min.js
[edit]
[-] form.72b77b99d67b130634d2.bundle.min.js
[edit]
[+]
notes
[-] posts.e33113a212454e383747.bundle.min.js
[edit]
[-] hotspot.6ab1751404c381bfe390.bundle.min.js
[edit]
[-] popup.483b906ddaa1af17ff14.bundle.min.js
[edit]
[-] social.2d2e44e8608690943f29.bundle.min.js
[edit]
[-] nested-carousel-editor.04e1965a317cbb6d22df.bundle.js
[edit]
[-] video-playlist.74fca1f2470fa6474595.bundle.min.js
[edit]
[-] progress-tracker.3424c0ac2b2c8da47033.bundle.js
[edit]
[-] posts.72468c8555693b196f98.bundle.js
[edit]
[-] hotspot.d43ef85fb9e56c4414f4.bundle.js
[edit]
[-] load-more.9ad2efa307d3ada91e86.bundle.js
[edit]
[-] woocommerce-menu-cart.faa7b80e9ba9e5072070.bundle.min.js
[edit]
[-] portfolio.47c0bf4b3576c66f1b1a.bundle.js
[edit]
[-] page-transitions-editor.930bfd9119ee62d5ccd6.bundle.js
[edit]
[-] editor.min.js
[edit]
[-] woocommerce-menu-cart.cecfa624e2d23a156519.bundle.js
[edit]
[-] portfolio.042905bde20a1afccada.bundle.min.js
[edit]
[-] custom-code.js
[edit]
[-] popup.397c2882052136db7ee0.bundle.js
[edit]
[-] carousel.49e271b0dd16dd95d00b.bundle.js
[edit]
[-] product-add-to-cart.023d7d31fbf96c3dbdfc.bundle.min.js
[edit]
[-] mega-menu-editor.de9dd6d5a71e58af98ef.bundle.js
[edit]
[-] search-form.6eb419c467197ca411a7.bundle.min.js
[edit]
[-] media-carousel.aca2224ef13e6f999011.bundle.min.js
[edit]
[-] mega-menu.e835faaf6e328f296a63.bundle.min.js
[edit]
[-] countdown.14ae9e6521e5309f2b20.bundle.js
[edit]
[-] load-more.b18fee69ce12204b4582.bundle.min.js
[edit]
[-] woocommerce-notices.da27b22c491f7cbe9158.bundle.min.js
[edit]
[-] woocommerce-cart.07b1efa10b4a0c3db9f6.bundle.js
[edit]
[-] preloaded-elements-handlers.js
[edit]
[-] woocommerce-cart.fc30c6cb753d4098eff5.bundle.min.js
[edit]
[-] slides.fb6b9afd278bb9c5e75b.bundle.min.js
[edit]
[-] webpack-pro.runtime.js
[edit]
[-] gallery.8ca9a354ce039d1ba641.bundle.min.js
[edit]
[-] lottie.e9e13c1085c8ebcf9e08.bundle.js
[edit]
[-] countdown.b0ef6392ec4ff09ca2f2.bundle.min.js
[edit]
[-] paypal-button.3d0d5af7df85963df32c.bundle.min.js
[edit]
[-] carousel.9b02b45d7826c1c48f33.bundle.min.js
[edit]
[-] woocommerce-my-account.3ee10d01e625dad87f73.bundle.min.js
[edit]
[-] e1314d8e113e32e00c20.bundle.js
[edit]
[-] screenshot.js
[edit]
[-] page-transitions-editor.69f365c96dc0120de70b.bundle.min.js
[edit]
[-] woocommerce-purchase-summary.46445ab1120a8c28c05c.bundle.min.js
[edit]
[-] form.1161490412c4fa9ebfc6.bundle.js
[edit]
[-] jszip.vendor.a3c65615c1de5560962d.bundle.js
[edit]
[-] progress-tracker.e19e2547639d7d9dac17.bundle.min.js
[edit]
[-] woocommerce-purchase-summary.40bd4441fdc065587324.bundle.js
[edit]
[-] loop.1d4e16e70fd7e6b89f96.bundle.js
[edit]
[-] video-playlist.1eaa6f5cb62ea2d58265.bundle.js
[edit]
[-] table-of-contents.28c4a12e01860d74dc5a.bundle.min.js
[edit]
[-] nav-menu.ded2ef1815c81841b6b8.bundle.js
[edit]
[-] .htaccess
[edit]
[-] archive-posts.f09f53ca5b8d6f9bbe13.bundle.js
[edit]
[-] preview.js
[edit]
[-] mega-menu-editor.d1546764ef2c2b02bcd4.bundle.min.js
[edit]
[-] table-of-contents.99cfd4713b3327d9b782.bundle.js
[edit]
[-] mega-menu.6a41b17ca3362b2df95d.bundle.js
[edit]
[-] code-highlight.28a979661569ddbbf60d.bundle.min.js
[edit]
[-] media-carousel.a98799d9f5a454b751e1.bundle.js
[edit]
[-] social.68fec39648b9a03c6275.bundle.js
[edit]
[-] product-add-to-cart.39fbaae6c856c483b4b4.bundle.js
[edit]
[-] woocommerce-notices.d803ba1deaf96eb007fc.bundle.js
[edit]
[-] animated-headline.d814d12739fd7c744896.bundle.js
[edit]
[-] loop.b970df87a162b8c74eb7.bundle.min.js
[edit]
[-] admin.min.js
[edit]
[-] preloaded-elements-handlers.min.js
[edit]
[-] loop-carousel.bb1d12b699805ace419f.bundle.js
[edit]
[-] animated-headline.ffb4bb4ce1b16b11446d.bundle.min.js
[edit]
[-] page-transitions.js
[edit]
[-] qunit-tests.js
[edit]
[-] custom-code.min.js
[edit]
[-] jszip.vendor.99a5b769619f50a6cb60.bundle.min.js
[edit]
[-] archive-posts.1de00dabb89a39359d7a.bundle.min.js
[edit]
[-] stripe-button.ee06964ad9f6a53c061d.bundle.js
[edit]
[-] lottie.147bf20db94f86cc4295.bundle.min.js
[edit]
[-] loop-carousel.b3e89ba86b10ec9fa9e3.bundle.min.js
[edit]
[-] woocommerce-my-account.355b00c58fb73e92a0bb.bundle.js
[edit]
[-] nested-carousel.4b92d02078ce6e22f22e.bundle.js
[edit]
[-] share-buttons.a43f0e61533a54c4cf9f.bundle.js
[edit]
[-] stripe-button.eae562d308bcfc405207.bundle.min.js
[edit]
[-] woocommerce-checkout-page.b18af78282979b6f74e4.bundle.min.js
[edit]