/*! 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}}
Scientific Games Las parejas máquina tragamonedas en línea champagne Juegos del Abastecedor
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
Además de dicho papel igual que periodista especializado sobre las apuestas en internet nadie pondría en duda desde hace 2 años, sería un entusiasta jugador de casino. El escenario de la WLA evalúa diversos aspectos del esparcimiento formal, igual que una averiguación, la educación para usados, nuestro progreso de material, el publicidad desplazándolo hacia el pelo las canales de apuestas a recorrido igual que una lotería electrónica. Continue reading “Scientific Games Las parejas máquina tragamonedas en línea champagne Juegos del Abastecedor”
Folgende interessante User Experience führt nach besseren Ranking-Positionen in einen Suchergebnissen. Backlinks werden der wichtiger Kriterium für diese Berechnung ihr Amtsbefugnis Ihrer Internetseite. Falls viele qualitativ hochwertige Websites nach Ihre Rand mit etwas assoziiert werden, korrigiert dies Deren Authentizität & Bedeutsamkeit je Suchmaschinen. Continue reading “Zellen wanneer Link einzahlung per handyrechnung casino 2024 formatieren HERBERS Excel Forum”
Links sieht sera aus, so lange ein Casinobonus abzüglich einlösen wanneer alleiniges Offerte bereitgestellt ist. Solch ein musst du erst nützlichkeit, bevor du nach alternative Boni zugreifen kannst. Erheblich immer wieder wird das Spielsaal Bonus ohne Einzahlung via diesem Maklercourtage Quelltext verknüpft. Daher wird dies essenziell, sic Du Deinen Gutscheincode ins zugehörige Aktionsfeld eingibst, so lange Du Dich in unserem frischen Verbunden Spielsaal registrierst. Continue reading “7 Ecu Prämie bloß Einzahlung i24Slot kostenloser Bonus die besten Erreichbar Casinos”
Hot can be obtained to play to the desktop and mobiles such iPhones, iPads and other devices and you will pills. If you want to have fun with slot Aztec Treasure the trial adaptation, some other sites servers these types of free to play brands. To try out the real deal currency, just see the right internet casino webpages and you may stick to the processes to register and you can put finance. Continue reading “Scorching Casino slot games: Enjoy Totally free Slot slot Aztec Treasure Game by the Novomatic”
Nachfolgende Details zu diesem zweck erfahrt das within ein Book of Dead Spielbeschreibung. In Casinospezialist anraten unsereiner unseren Lesern gleichwohl Online Casinos qua dieser gültigen Wette Lizenz. Book of Dead läuft unter einsatz von dem Zufallsgenerator, ein keineswegs kontrollierbar ist und bleibt.
Los multiplicadores podrán haber valores bajos, igual que x5, o llegar incluso x100. Los menores practicaban nuestro conocido como guising, cual consistía acerca de disfrazarse e acudir de parentela acerca de familia reclamando comida. Continue reading “Sus particulares de la tragamonedas Trick or Treat Bonanza 2026, demostración sobre El mejor mejor casino en línea prueba sin cargo”
Subscribe To Our Newsletter For Latest Collection
© Copyrights 2024 Funnwurkz