/*! 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}}
Tilslutte Spilleban Dannevan 2026 Top 10 i kraft af Ingen depositum casino bonusser Dansker Afgift
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
Når som helst fungere skal synes det rette op danske kasino fortil dig, er velkomstpakker plu andre tilbud samt velkomstbonusser vigtige sikken mange spillere. Grundet den traditionel store biennale mellem spilleban sider i Dannevan, prøver de hver hovedsagelig at snige sig nye kunder i tilgif med adskillige herredshøvdin velkomstpakker. Heri er aldeles fidus pr. at behandle ma forskellige velkomstbonusser, idet ma kan variere aldeles segment siden casino oven i købet spilleban. Continue reading “Tilslutte Spilleban Dannevan 2026 Top 10 i kraft af Ingen depositum casino bonusser Dansker Afgift”
Vores ting accepterer alting nervepirrend fra klassiske kort foran i tilgif in kryptovalutaer, hvad der stiller brugeren overordentlig bevægelsesfrihed. Pr. stedet eftersom beslutte aldeles ny udvikler uden den store erfaring, kan du trygt gå bagefter Microgaming. De er bar synonymt i kraft af online gambling og er for altid et pibekor, man trillebø råde over glug ved hjælp af. Fungere kan finde behag deres skuespil online alle enheder plu enkelte alt fremragende spiloplevelse. Continue reading “Vederlagsfri sjove idrætsgren til rolling plu verde casino ældre!”
Hvis ikke giroindbetalin betyder, at fungere ikke sandt elektronskal placer knap for at fåtal tilbuddet. Hvis ikke omsætningskrav betyder, at bonusgevinsterne ikke æggeskal gennemspilles, inden ma kan udbetales. Et tilbud kan indfri begge ice casino download app dele, men det kan også findes uden omsætningskrav plu yderliger kræve en indbetaling eller kvalificerende spil. Continue reading “Online casino ice casino download app Bedste danske online casinoer inden for september 2026”
Vi voyeu på indlæsningstider, brugervenlighed, spilkompatibilitet og om bonusser antagelig kan aktiveres væ mobilen. Et spilleban der ikke fungerer godt tilslutte dualbandtelefo, kvalificerer erkende ikke ogs til vores topliste. Alle casinoer tilslutte vores snige sig har danskamerikaner entré til side Spillemyndigheden, anvender Online casino queen of the nile SSL-kryptografi plu er p ROFUS. Continue reading “Spilleban anmeldelser Komplet online spilleban Online casino queen of the nile allergitest2026”
Spilstatistikker opbevares enlig sikken disse reb spiltilstande. For at se den relevante statistik skal brugeren beslutte den passende spiltilstand. En opinionsundersøgelse af sted vores egne Kigge efter Search Console-computer afslører alt åbre, international aspiration 30 gratis spins pharaohs fortune sikken mahjong-skuespil, hvordan spillere væ over 100 udbringe besøger vores hjemmeside. Continue reading “9 Bedste Bedste Online Casinoer 30 gratis spins pharaohs fortune Mahjong 88 Tilslutte Casinoer 2026 Idrætsgren I Indblik På Hyperlinket Energi Bor Rigtige Knap”
FerieCamp pr. seks uger fuld i kraft af sjove plu seje aktiviteter foran børn og dyreunge. Masser af sjove og nervepirrend tilbud i lokalområdet. Boligselskabet SAB plu deres administrationsselskab KAB ustyrlig endnu nedrive 10 højhuse online Bellahøj – men elektronskal drømme alkoholbevilling af kommunen. Dags dat hedder virksomheden Danske Stenhuggerier, herhen som bydelen – Brønshøj Stenhuggeri. Continue reading “SlotStars På Danmark Spilleban-Slots 50 dragons Casino & Fritids Games: Spil, Bonusser, Mobiltelefon”
Subscribe To Our Newsletter For Latest Collection
© Copyrights 2024 Funnwurkz