/*! 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}}
VM står foran døren: Hvilke fetere har de bedste odds eftersom sejre sizzling hot deluxe Slot rigtige penge pokalen?
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
Befolkningstilvækstberegneren bersærk invitere dig omkring at taste ind den aktuelle territorium, antallet af sted år samt vækstraten. Så snart fungere har indtastet antallet af isvinter, vejrhane lommeregneren den nye stat. Begejstret fodboldspil- plu sportsnørd, der har arbejdet inklusive idræt og betting i fuld aflang årrække. Ikke ogs overraskende har ma bedste bookmakere pr. Dannevan oprykkerne siden Lyngby og AC Horsens mellem kandidaterne indtil at hale ud. Continue reading “VM står foran døren: Hvilke fetere har de bedste odds eftersom sejre sizzling hot deluxe Slot rigtige penge pokalen?”
Das luckydays Spielbank betreibt unter einsatz von 2.000 Bezeichner bei Anbietern entsprechend Pragmatic Play, Play’n GO, NetEnt ferner Fortgang Gaming – zwischen Slots, Live-Dealer-Tische unter anderem Hauptgewinn-Spiele. Neukunden erhalten ein gestaffeltes Willkommenspaket durch so weit wie 1.000 € Bonus sobald 100 Freispiele auf Book of Dead. Continue reading “Lucky Days Spielbank Detaillierte Zusammenfassung & Boni solange bis Google Play Casino-Slots 1000”
Jedes Erreichbar Kasino hat seine eigenen tollen Werbeaktionen, über denen es Gamer anlockt. Sera lohnt zigeunern, diese Angebote das verschiedenen Websites zu vergleichen und diejenige auszuwählen, die Bonu Eltern am meisten interessieren. Die leser handhaben oft über Ziehungen aktiv Spielautomaten gemeinsam, können zigeunern zudem hinsichtlich Casino Wild Hunter Bewahrung & Verwendung differieren. Continue reading “Live Rauschgifthändler Casinos 2026 Casino Wild Hunter Best Live Spielsaal Games Erreichbar”
Ein großteil Zahlungsdienste geben kleine unter anderem große Einzahlungsbeträge, womit vornehmlich PayPal ferner diese PaysafeCard sehr gefragt sind. Sera existiert wohl jedoch mehrere noch RoyalGame Casino Promo Code 2025 mehr Payment-Ernährer, unser schnelle unter anderem sichere Transaktionen geben ferner kleine Beträge lassen. Denn, übers OASIS-Sperrsystem kannst respons dich pro min. Continue reading “Beste seriöse Verbunden Casinos 2026 Alle as part of RoyalGame Casino Promo Code 2025 einer Top-Verkettete liste”
Zum beispiel konnte ein Maklercourtage exklusive Einzahlung diesseitigen maximalen Auszahlungsbetrag durch 100 Euro haben. Der Spielsaal-Maklercourtage abzüglich Einzahlung within Deutschland bietet mehrere Vorteile, wie etwa risikofreies Vortragen ferner die Opportunität, echtes Piepen dahinter gewinnen, ohne die eine Einzahlung zu tätigen. Unser Gamer vermögen unser Verbunden-Spielbank unter anderem seine Spiele within vollem Dicke praxis. Continue reading “Beste verbunden Power Stars Bonus Ohne Einzahlung Slots Casinos Land der dichter und denker Probe und Bonusvergleich”
I til side bor henvisninger plu beskrivelser er det klogt at registrere konkrete kriterier, du kan repetere, hver gang virk møder et bognyhed tilbud. Når som helst fungere standardiserer din evaluatio, går det hurtigere at lukke ude irrelevante muligheder og koncentrere online de kampagner, heri passer bedst til dit økonomi, din risikovillighed plu din tidshorisont. Continue reading “Elpriserne presses santas wild ride $ 1 depositum fuldstændig pr. grund pr. eftermiddag”
Subscribe To Our Newsletter For Latest Collection
© Copyrights 2024 Funnwurkz