/*! 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}} Extra Superstars Slot machine game Online 95 78% RTP ᐈ Enjoy 100 percent 30 free spins Drive Multiplier Mayhem Rtp free Amusnet Casino games 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

Extra Superstars Slot machine game Online 95 78% RTP ᐈ Enjoy 100 percent 30 free spins Drive Multiplier Mayhem Rtp free Amusnet Casino games

To experience free of charge assists you to refine this plan prior to risking all of your a real income. After you matches three card is right for you will discover the fresh relevant jackpot found above the reels. That it prize isn’t available for individuals who play Flaming Sexy Tall 100percent free. Cent harbors features smaller betting increments, performing at the $0.01 for each payline. Continue reading “Extra Superstars Slot machine game Online 95 78% RTP ᐈ Enjoy 100 percent 30 free spins Drive Multiplier Mayhem Rtp free Amusnet Casino games”

Free online ports: Play 2400+ slot machine and no Antique Riches slot machine obtain

We have been a little certain that you love playing totally free ports on line, that is the reasons why you landed in this post, right? I boast which have 1000s of exceptional slots from a number of from app builders and make certain that each of those is available inside free play otherwise demonstration function. To your scientific advancements out of mobile playing, they open the fresh gates for real-money mobile gambling enterprises to begin with popping up everywhere as well. Continue reading “Free online ports: Play 2400+ slot machine and no Antique Riches slot machine obtain”

Beste Mobile Star Joker Jackpot -Slot Casinos inside Teutonia: Die Tagesordnungspunkt Verbunden Ernährer 2026

Zusammenfassend gebot Ihnen Eidgenosse Angeschlossen Casinos zwei einige Wege, unter dampf stehen nach vortragen. Eltern im griff haben folgende native App effizienz, unser Die leser nach Ihr Smartphone unter anderem Tablet herunterladen. Unter anderem Die leser grapschen nach diese Verbunden Casinos ein Schweiz durch Instant Play nach hinten. Continue reading “Beste Mobile Star Joker Jackpot -Slot Casinos inside Teutonia: Die Tagesordnungspunkt Verbunden Ernährer 2026”

Greatest 15 no deposit bingo sites in the usa Mr Green free spins no deposit August 2024

Deposit £10 and you will earn as much as five hundred 100 percent free spins to your Chilli Temperature during the Fever Bingo. Here are some tips so you can choose the best 100 percent free revolves provide. Gamblers Unknown brings state gamblers which have a summary of regional hotlines they could contact to have cell phone assistance. Continue reading “Greatest 15 no deposit bingo sites in the usa Mr Green free spins no deposit August 2024”

Finest No-deposit 30 free spins Sugar Trail Harbors 2024 Best No-deposit Ports Also provides

The new Caesars $ten 100 percent 30 free spins Sugar Trail free subscribe bonus is completely new, because common betting webpages hasn’t usually offered a totally free enjoy offer. Yet not, it’s value capitalizing on that it even though it’s still valid, as they should remove it again as time passes. Continue reading “Finest No-deposit 30 free spins Sugar Trail Harbors 2024 Best No-deposit Ports Also provides”

100 percent Elk Studios casino games free Spins No deposit to the Sign-Right up Finest Membership Revolves 2024

Rating a great 5 free spins incentive without deposit required during the Simba Harbors. Check in at the well known 888 Gambling enterprise and you will bring an 88 100 percent free revolves added bonus with no deposit required. Continue reading “100 percent Elk Studios casino games free Spins No deposit to the Sign-Right up Finest Membership Revolves 2024”