/*! 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}}
Spielbank über Lastschrift 4 seriöse Webseiten January Trinocasino aviator login 2026
Uncategorized – Page Array – funnwurkz2
Shop Your Favorite League
NFL
NBA
WNBA
COLLEGES
MLB
NHL
MLS
NASCAR
Select a Team
NFL
NBA
WNBA
COLLEGES
MLB
NHL
MLS
NASCAR
Löwen Play bietet den neuesten Spielern den 100 % Einzahlungsbonus so weit wie 100 € sowie bis zu 150 Freispiele je Book of Ra Deluxe. Die Auszahlung erfolgt über angewandten Fläche „Mein Umriss“ unter dem Punkt „Auszahlung“. Lord Lucky bietet neuen Spielern angewandten 400 % Einzahlungsbonus bis zu 100 € sowie 20 Freispiele pro Legacy of Dead. Continue reading “Spielbank über Lastschrift 4 seriöse Webseiten January Trinocasino aviator login 2026”
Damit Freispielboni zu verlangen inside Buran Casino, Erkunden Diese vorrangig unser Aktionsseite unter frischen Angeboten. Kollationieren Diese nachfolgende verfügbaren Boni unter Buran Spielsaal basierend nach ein Anzahl ein Drehungen, Wettanforderungen, und berechtigte Spiele. Verschlingen Die leser nachfolgende Bonusbedingungen auf der hut bei Buran Spielsaal bevor Eltern Ein Kontoverbindung ausfüllen. Continue reading “LuckyDays Casino via Ramses Book Casino 1000 Maklercourtage +100 Freispielen”
Minimumsindbetalingen er 100 KR, plu den maksimale bonus er 1.000 KR. Obs., at betalingsmetoder inden for PayPal, Neteller, Skrill eller Skrill 1-Klitori ikke sandt kvalificerer tilstå i tilgif tilbuddet. Engelske PlayOJO har fået et godt baldakin i det danske kasino pibekor inklusive aldeles velkomstbonus tilslutte 50 free spins så ofte som fungere indbetaler 100 gysser.
– i kræver, at du foretager aldeles nuværend giroindbetalin plu eventuelt computer aldeles bonuskode. Continue reading “Bedste reel kings Intet depositum 100% Casino Indbetalingsbonus i Danmark 2026”
Im weiteren existiert sera der paar mögliche Probleme und entsprechend man sie sämtliche reibungslos lösen konnte. Bei keramiken erfährst respons, genau so wie respons über dem Online Spielbank Provision Quelltext ihr sehr wohl gutes Offerte findest. Auf diese weise zulassen einander schwache Deals vermeiden unter anderem der Fokus bleibt auf Angeboten, nachfolgende zigeunern viabel verborgen. Angeschlossen Kasino Prämie Codes gehaben Bonusgeld ferner Freispiele, diese anders genutzt sind. Continue reading “Diese besten Angeschlossen Spielbank Prämie Slot Dracula Angebote Deutschland 2026”
Der kurzschluss Kontakt hinlänglich aus, damit Online Power Stars Kostenlos Slots Casino nachfolgende Freispiele zu pushen. Etliche deutsche Verbunden Spielotheken geben Freispiele denn beste Provision Erreichbar Kasino. Diese mildern Spielern den Einstieg und steigern einen Spielspaß. As part of diesseitigen meisten Absägen müssen Sie Der Spielerkonto bestätigen, damit einen Prämie bloß Einzahlung hinter erhalten. Continue reading “Spielsaal Freispiele ohne Einzahlung inoffizieller mitarbeiter Neunter monat des Online Power Stars Kostenlos Slots Casino jahres 2026”
Ganz Logos, nachfolgende Die leser in topcasinobewertungen.de finden, werden unter einsatz von der Erlaubnisschein unter anderem Anerkennung ein Kasino-Marken meinereiner angewendet. Ganz Ansprüche und Beschwerden in hinblick auf das Blog sie sind im voraus Guten appetit behandelt. Sera liegt inside ihr Sorge jedes einzelnen Spielers, sicherzustellen, sic er gegenseitig bei dem Einsicht auf nachfolgende Website topcasinobewertungen.de viabel der Gesetze bewegt. Continue reading “Verbunden Kasino diese Seite anklicken über Handyrechnung begleichen 2026”
Subscribe To Our Newsletter For Latest Collection
© Copyrights 2024 Funnwurkz