/*! elementor-pro - v3.30.0 - 01-07-2025 */ "use strict"; (self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["loop-filter-editor"],{ /***/ "../modules/loop-filter/assets/js/editor/module.js": /*!*********************************************************!*\ !*** ../modules/loop-filter/assets/js/editor/module.js ***! \*********************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _taxonomyFilter = _interopRequireDefault(__webpack_require__(/*! ./taxonomy-filter */ "../modules/loop-filter/assets/js/editor/taxonomy-filter.js")); class LoopFilter extends elementorModules.editor.utils.Module { onElementorInit() { this.taxonomyFilter = new _taxonomyFilter.default('taxonomy-filter'); } } exports["default"] = LoopFilter; /***/ }), /***/ "../modules/loop-filter/assets/js/editor/taxonomy-filter.js": /*!******************************************************************!*\ !*** ../modules/loop-filter/assets/js/editor/taxonomy-filter.js ***! \******************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; const ElementEditorModule = __webpack_require__(/*! elementor-pro/editor/element-editor-module */ "../assets/dev/js/editor/element-editor-module.js"); module.exports = ElementEditorModule.extend({ __construct() { this.cache = {}; ElementEditorModule.prototype.__construct.apply(this, arguments); }, onInit() { elementor.channels.editor.on('editor:widget:taxonomy-filter:section_taxonomy_filter:activated', this.onTaxonomyFilterSectionActive); }, onTaxonomyFilterSectionActive() { this.updateSelectedElementOptions(); const selectedElementControlView = this.getEditorControlView('selected_element'), selectedElementControlValue = selectedElementControlView.getControlValue(); if (selectedElementControlValue) { this.updateTaxonomyOptions(selectedElementControlValue); } }, updateSelectedElementOptions() { const selectedElementControlView = this.getEditorControlView('selected_element'), selectedElementControlValue = selectedElementControlView.getControlValue(), selectedElement = !!selectedElementControlValue ? elementor.$previewContents[0].querySelector(`[data-elementor-id="${elementor.config.document.id}"] .elementor-element-${selectedElementControlValue}`) : ''; if (!selectedElement) { selectedElementControlView.setValue(''); } const loopWidgets = elementor.$previewContents[0].querySelectorAll(`[data-elementor-id="${elementor.config.document.id}"] .elementor-widget-loop-grid`), selectedElementControlOptions = { '': __('Select a widget', 'elementor-pro') }; if (!loopWidgets.length) { this.updateOptions('selected_element', selectedElementControlOptions); selectedElementControlView.setValue(''); } let index = 1; for (const loopWidget of loopWidgets) { selectedElementControlOptions[loopWidget.dataset.id] = `${__('Loop Grid', 'elementor-pro')} ${index++}`; } this.updateOptions('selected_element', selectedElementControlOptions); }, onElementChange(setting, controlView) { if ('selected_element' !== setting) { return; } const controlValue = controlView.getControlValue(); if (controlValue) { this.updateTaxonomyOptions(controlValue); } else { this.updateOptions('taxonomy', { '': __('Select a taxonomy', 'elementor-pro') }); } }, getPostSourceQueryPostType(loopWidgetContainer) { const querySource = loopWidgetContainer.settings.attributes.post_query_post_type; let queryPostType = ''; switch (querySource) { case 'current_query': queryPostType = elementorPro.config.loopFilter.mainQueryPostType; break; case 'by_id': // Currently 'by ID' is not supported since it can include multiple post types. queryPostType = 'post'; break; case 'related': queryPostType = 'post'; break; default: queryPostType = querySource; } return queryPostType; }, getLoopQueryPostType(loopWidgetId) { const loopWidgetContainer = elementor.getContainer(loopWidgetId); const loopSource = loopWidgetContainer.settings.attributes._skin; if ('post' === loopSource) { return this.getPostSourceQueryPostType(loopWidgetContainer); } return 'product'; }, updateTaxonomyOptions(loopWidgetId) { // TODO: Add control spinner. const postType = this.getLoopQueryPostType(loopWidgetId); const postTypeTaxonomies = this.getPostTypeTaxonomies(postType).then(response => { if (!(response instanceof Response)) { return response; } else if (!response.ok || 400 <= response.status) { this.displayErrorDialog(); return {}; } return response.json(); }).catch(() => { this.displayErrorDialog(); return {}; }).then(response => { let data = response?.data || response; if (!Object.keys(data).length) { this.updateOptions('taxonomy', { '': __('No taxonomies found', 'elementor-pro') }); return; } data = { ...{ '': __('Select a taxonomy', 'elementor-pro') }, ...data }; this.cache[postType] = data; this.updateOptions('taxonomy', data); }); return postTypeTaxonomies; }, /** * * @param {string} postType * @return {Promise} Promise that should resolve with taxonomies data. */ getPostTypeTaxonomies(postType) { if (this.cache[postType] && Object.keys(this.cache[postType]).length) { return Promise.resolve(this.cache[postType]); } return this.fetchPostTypeTaxonomies(postType); }, fetchPostTypeTaxonomies(postType) { return fetch(`${elementorCommon.config.urls.rest}elementor-pro/v1/get-post-type-taxonomies`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-WP-Nonce': elementorWebCliConfig.nonce }, body: JSON.stringify({ post_type: postType }) }); }, displayErrorDialog() { elementorCommon.dialogsManager.createWidget('alert', { id: 'e-filter-error-message', className: 'e-filter__error-message', headerMessage: __('Something went wrong', 'elementor-pro'), message: __('We are experiencing technical difficulties on our end. Please try again to reconnect.', 'elementor-pro'), position: { my: 'center center', at: 'center center' }, strings: { confirm: __('OK', 'elementor-pro') } }).show(); } }); /***/ }) }]); //# sourceMappingURL=loop-filter-editor.46a4c013b80a381a50c9.bundle.js.map.flexa-counter{box-sizing:border-box}.flexa-counter__list{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.flexa-counter__item{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start}.flexa-counter__row{align-items:center;display:flex;flex-direction:row;gap:.5em}.flexa-counter__icon{align-items:center;display:inline-flex;justify-content:center;line-height:1}.flexa-counter__icon img,.flexa-counter__icon svg{display:block;height:100%;width:100%}.flexa-counter__number{align-items:baseline;display:flex;flex-direction:row;gap:.1em;justify-content:center;line-height:1}.flexa-counter__value{font-variant-numeric:tabular-nums}.flexa-counter__label{display:block}.flexa-counter__separator{border-top:0 solid;display:block}@media(min-width:1025px){.flexa-counter.flexa-hide-desktop{display:none!important}}@media(min-width:768px)and (max-width:1024px){.flexa-counter.flexa-hide-tablet{display:none!important}}@media(max-width:767px){.flexa-counter.flexa-hide-mobile{display:none!important}} Diese besten Casinos Drückglück Casino-Bonus 100 in geringer entfernung Rade Uncategorized – Page Array – funnwurkz2

Extra 25% off with code SUMMER25.

Shop Your Favorite League

  • NFL
  • NBA
  • WNBA
  • COLLEGES
  • MLB
  • NHL
  • MLS
  • NASCAR
Select a Team

Diese besten Casinos Drückglück Casino-Bonus 100 in geringer entfernung Rade

Nachfolgende Bemühung within folgendem Bereich ist ganz hell, auf diese weise die autoren folgenden Hergang abgekoppelt übernehmen, wodurch Eltern wanneer Verticker tunlichst jedoch unter einsatz von diesem minimalen Anstrengung belastet sind. Infolgedessen setzen die autoren en masse Wichtigkeit nach Responsible Gaming – verantwortungsvolles Aufführen. Continue reading “Diese besten Casinos Drückglück Casino-Bonus 100 in geringer entfernung Rade”

Casino Provision exklusive 24 Casino login pc Einzahlung Beste Angebote

Wahrscheinlich werden eltern jedoch am überlegen ferner sind noch gar nicht davon schwören Das Dusel auch fleck unteilbar Angeschlossen Kasino zu verleiten. Verstand benutzen Die leser bei keramiken, auf diese weise man Ihnen inside landbasierten Casinos leider keinen Provision bloß Einzahlung ferner andere tolle Perle bieten ist und bleibt. Inside traditionellen Casinos ist bereits vorher unserem Beklommen das Eingang zu begleichen. Continue reading “Casino Provision exklusive 24 Casino login pc Einzahlung Beste Angebote”

Escapades inside the Wonderland Ports Play Alice’s Wonderland Winagames casino live blackjack Online

I come across gambling web sites that have finest-tier security measures including state-of-the-art encryption and verified percentage processes for a safe playing ecosystem. Whenever to experience from the totally free function, you initially provides 5,100000 credit on the account. Your existing harmony is actually demonstrated regarding the Harmony area used in the beds base leftover an element of the monitor. Continue reading “Escapades inside the Wonderland Ports Play Alice’s Wonderland Winagames casino live blackjack Online”

Juguetear 100 giros gratis sin depósito lucky ladys charm deluxe Go Online De balde

Sobre gama masculina, pueden competir ante una 100 giros gratis sin depósito lucky ladys charm deluxe máquina, jugadores sobre todos y a crupieres reales. Todo el mundo sus productos se encuentran desarrollados acerca de HTML5, así que disponen joviales asiento para tablets desplazándolo hacia el pelo smartphones, igualmente ordenadores así­ como portátiles. Continue reading “Juguetear 100 giros gratis sin depósito lucky ladys charm deluxe Go Online De balde”

50 ókeypis snúningar án innborgunar á Nýja-Sjálandi Er PrimeBetz raunverulegt? 2026 Ókeypis fimmtíu snúningar

Bónusar án innleggs í happdrættisspilavítum eru í ýmsum myndum, og hver þeirra er nýstárlegur á sinn hátt. Ef þú vilt vísa vinum þínum (eða færð ráðleggingu um að taka þátt í góðu happdrættisspilavíti) þarftu einnig að kanna kóða. Continue reading “50 ókeypis snúningar án innborgunar á Nýja-Sjálandi Er PrimeBetz raunverulegt? 2026 Ókeypis fimmtíu snúningar”

Current Uk No deposit Bonuses 2024 Get £ten slot sites with Soccer Safari Rtp 100 percent free

If you get the financing cards welcome added bonus you happen to be spending a good 5.9% handling fee to the deposits #2 and you can #step 3. Since the maximum added bonus number are $1250 we recommend deposit just about $1000. When you yourself have any questions, don’t think twice to get in touch with support service. Continue reading “Current Uk No deposit Bonuses 2024 Get £ten slot sites with Soccer Safari Rtp 100 percent free”