/*! 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}} Dolphins of money Deluxe On-line casino Guides, 100 percent free Slots, Flash Incentives, Huge Earn Video clips 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

Dolphins of money Deluxe On-line casino Guides, 100 percent free Slots, Flash Incentives, Huge Earn Video clips

When it comes to Diamond Queen, it’s (with regards to the video game’s paytable) anywhere between 92.97% and you can 96.08%. Simulations let you know the brand new Wise Gambler means have fair opportunity even when aiming for a large victory (500x the complete finances). Getting careful and you may wear’t fall in to your “I’ll immediately after win my cash back” loop. Continue reading “Dolphins of money Deluxe On-line casino Guides, 100 percent free Slots, Flash Incentives, Huge Earn Video clips”

Místní kasino Akce Expert Poznámka, Skóre 100% oscar spin Česko Bonus až 150 $

VeškerĂ© informace a pokyny poskytnutĂ© hráči jsou bezpeÄŤnÄ› uchovávány a nikdy nejsou pĹ™edávány tĹ™etĂ­m stranám. KromÄ› toho byly nejnovÄ›jšími orgány, kterĂ© zĂ­skaly nejnovÄ›jší povolenĂ­, s nimiĹľ kasino Action provozuje, vysoce uznávanĂ© orgány, jako jsou Komise pro hazardnĂ­ hry ve SpojenĂ©m královstvĂ­ a na MaltÄ›. NovĂ˝ ĹľivĂ˝ rozhovor je mnohem lepší volbou pro stránky, kterĂ© vyĹľadujĂ­ okamĹľitĂ˝ zájem. Continue reading “MĂ­stnĂ­ kasino Akce Expert Poznámka, SkĂłre 100% oscar spin ÄŚesko Bonus aĹľ 150 $”

Greatest Mobile Gambling establishment Ireland Sites

These sites aren’t classified because the “gambling” as you don’t explore real money. You can gather 100 percent free gold coins because of bonuses otherwise by purchasing money bundles from the sweeps coins casinos. The genuine convenience of on line actual-money gambling enterprises establishes them apart from its house-founded competitors. Continue reading “Greatest Mobile Gambling establishment Ireland Sites”

Mega Joker Position Comment 2023 Bonuses, RTP and you may Gameplay

Since the an enthusiastic slot lover and you may study specialist, go back to athlete (RTP) is one of the trick amounts I familiarize yourself with when selecting and that fascinating position video game to experience. The fresh RTP sooner or later implies how much a slot will pay straight back over date, which could make a drastic difference between your own game play feel and earnings. When you’re more comfortable with the video game legislation imagine trying out betting procedures. Continue reading “Mega Joker Position Comment 2023 Bonuses, RTP and you may Gameplay”

Fruity Cashino Good fresh fruit Hosts by Idor Interactive Ltd

Once you follow on “casino” you can buy the ability to sort the brand new games from the newest loads of criteria. At the same time, you made 20 a lot more spins you should use playing the newest Fruity Shop slot machine game. The group from the Fruity casinos are not just to experience partners, our company is and you will cryptocurrency addicts which have been to help you get, getting, transform and betting crypto for over 8 decades. Continue reading “Fruity Cashino Good fresh fruit Hosts by Idor Interactive Ltd”

Slot machines Which have Bonus Video game: Play Free Slot Game Added bonus Cycles

The amazing thing is actually, this type of games is amazingly popular in the bars and cafes across the European countries. Pretty much every club you go to inside the France and you can Italy get type of position game that’s nearly the same as this one. The newest Multiple Celebs slot have an RTP (Return to Pro) away from 95%, which is just beneath the mediocre but nevertheless offers a great reasonable return to players throughout the years. Continue reading “Slot machines Which have Bonus Video game: Play Free Slot Game Added bonus Cycles”