/*! 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}} Better Online slots games for Crazy Monkey slot sites player from Us Us Slot Game. 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

Better Online slots games for Crazy Monkey slot sites player from Us Us Slot Game.

When you are real money position video game is largely based on fortune, there are a few info and methods which you can use to increase your chances of profitable. They are function a budget, selecting the right game, dealing with your money, and you can taking advantage of bonuses and you can campaigns. Continue reading “Better Online slots games for Crazy Monkey slot sites player from Us Us Slot Game.”

ᐈ Enjoy Totally free Slot Video game Which have Added bonus Series Zero slot Phoenix Sun install, No registration

I’ve hunted on the best incentive selling during the Southern Africa’s on the internet casinos. Continue reading “ᐈ Enjoy Totally free Slot Video game Which have Added bonus Series Zero slot Phoenix Sun install, No registration”

Greatest On the internet Sweepstakes Gambling enterprises Super Wheel big win w Honours

Take pleasure in alive types of well-known games for example blackjack, roulette, baccarat and much more when you enjoy such gambling games to possess real money. Find out about totally free revolves, a familiar term found in online slots games and you can local casino sites. Learn how to and get him or her throughout the sign-upwards or while the a pleasant added bonus, and you may know about various form of 100 percent free revolves available in slot games. Continue reading “Greatest On the internet Sweepstakes Gambling enterprises Super Wheel big win w Honours”

Pay By Cell Subtopia Rtp slot free spins phone Gambling enterprise Better Spend Because of the Mobile Casinos from the British

In case your cause is the fact that system user is actually experiencing a brief outage away from repayments, users is is actually to find again with no issues. If you nonetheless cannot send money along with your cellular costs, you should contact the fresh circle vendor, because the cell phone costs can be used because of the anybody who has a cell phone and has credit in the account. Continue reading “Pay By Cell Subtopia Rtp slot free spins phone Gambling enterprise Better Spend Because of the Mobile Casinos from the British”

Better A real income Slots On line 2024 Best casino Sweet Bonanza Web sites in america

Try Disturbed for free online and have fun with the demo ports in order to experience the horror-styled game play risk free. For many who wear’t wanted such messages you are able to make use of the Stop switch on your mobile. Continue reading “Better A real income Slots On line 2024 Best casino Sweet Bonanza Web sites in america”

Better PayPal Casinos: Online casinos Trinocasino welcome bonus One Deal with PayPal

By using PayPal with a mobile local casino application, you could potentially improve your playing lessons and you may improve your total feel. Having fun with an alive agent casino you to definitely allows PayPal for the deals, you may enjoy smooth playing training without having to worry about your economic guidance losing to the wrong give. Continue reading “Better PayPal Casinos: Online casinos Trinocasino welcome bonus One Deal with PayPal”