/*! 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}} Totally free Ports To try no deposit casino Karamba out Enjoyment Demonstration Slot Games Zero Down load 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

Totally free Ports To try no deposit casino Karamba out Enjoyment Demonstration Slot Games Zero Down load

Finally, make sure to make use of commitment applications provided by online casinos. These types of software prize participants due to their ongoing enjoy by awarding points according to its betting hobby. Since you gather things, you might get her or him for different perks and you may professionals, such as added bonus bucks, 100 percent free revolves, or other perks. Continue reading “Totally free Ports To try no deposit casino Karamba out Enjoyment Demonstration Slot Games Zero Down load”

Lowest 5$ Put Gambling enterprises List slot games online inside the 2024 which have 16+ Casino Websites

It provides players the newest adventure they need instead of using too much. A knowledgeable $5 NZ casinos render an amazing group of online casino games, as well as harbors, jackpots, traditional desk game, and you can live specialist games transmit within the actual-time. Among the many great great things about a $5 deposit gambling enterprises is actually use of thousands of online game by honor-effective software designers. Continue reading “Lowest 5$ Put Gambling enterprises List slot games online inside the 2024 which have 16+ Casino Websites”

Finest A Endorphina $1 deposit real income Local casino Software 2024 Best Cellular Gaming

Event records begin in the $step one however, higher payouts wanted a more impressive pick-inside the. Yet not, you must know one to spending a king’s ransom on the slots is never a good means. Continue reading “Finest A Endorphina $1 deposit real income Local casino Software 2024 Best Cellular Gaming”

Totally free Ports Zero Download online casino games with Paypal Gamble Free Video slot enjoyment

Support for multiple other currencies is beneficial for online casino games with Paypal people who hold financing in almost any denominations. There’s along with the option to get your hands on a MuchBetter prepaid service debit credit, used to handle the bucks in your MuchBetter account. Continue reading “Totally free Ports Zero Download online casino games with Paypal Gamble Free Video slot enjoyment”

Irish Web based casinos: the brand new honest site from the casino Sunnyplayer login online casinos 2024

When you’re SG Gambling enterprise isn’t the fastest payment Ireland local casino online — most alternatives want 1-three days to produce your financing — it will render among the best types for financial. The brand new professionals can enjoy a big invited extra because the SG Gambling enterprise delivers a good 100% complement in order to €five hundred in addition to 20 free spins daily to possess 10 weeks — amounting to 200 spins. Continue reading “Irish Web based casinos: the brand new honest site from the casino Sunnyplayer login online casinos 2024”

Casinos con Tanque flowers $ 1 DepĂłsito ĂŤnfimo de cinco De cualquier parte del mundo

En el lobby además tienes mesas sobre en direcciĂłn sobre temática fí­sica como Lucky Kicks, T-Kick y T-Basket, las dos finales dinámicas 24/5, joviales apuestas nadie pondrí­a en duda desde 1 $. Halle una audacia así­ como nuestro Ă­ndole distintivo del bourbon de estilo amerindio, arreglado una la más superior proporciĂłn sobre centeno así­ como algĂşn procedimiento sobre añejamiento extenso. Continue reading “Casinos con Tanque flowers $ 1 DepĂłsito ĂŤnfimo de cinco De cualquier parte del mundo”