/*! 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}} This playing system premiered in the 2009 and also you can be uses concerning your 66 app providers plus NeoGames, Websites Thrills, and you will Microgaming This playing system premiered in the 2009 and also you can be uses concerning your 66 app providers plus NeoGames, Websites Thrills, and you will Microgaming – funnwurkz2

Extra 25% off with code SUMMER25.

Shop Your Favorite League

  • NFL
  • NBA
  • WNBA
  • COLLEGES
  • MLB
  • NHL
  • MLS
  • NASCAR
Select a Team

This playing system premiered in the 2009 and also you can be uses concerning your 66 app providers plus NeoGames, Websites Thrills, and you will Microgaming

Hopa Gambling establishment. Hopa Gambling establishment is simply established throughout the 2009 and that’s run of the Searching for In the world International Ltd. Which have a connection so you can delivering a safe and you may enjoyable to play feel, Hopa Gambling enterprise has established a devoted athlete base. Hopa Local casino has actually a sleek and progressive net website structure which is both aesthetically enticing and easy which means you can also be research. Brand new homepage greets some one having a vibrant color palette and you will member-amicable generate. An element of the eating plan brings immediate access to several parts, and you will games, tips, let, and more. Responsive framework enables you to utilize towards an excellent amount of factors, away from desktops to help you mobile devices and you will pills. In the Hopa Gambling enterprise British you’ll gamble smart whilst possess developed your website so that the security and you may confidentiality of pointers. The website is simply encoded having 128-piece Secure Sockets Layer encoding for optimum protection.

That it betting site is safe and you can secure which is subscribed and you can controlled on Malta Gaming Power together with United empire To tackle Payment. Too, Hopa Gambling establishment try owned by Notice Around the world Worldwide Minimal, a Maltese providers that’s duly inserted up to Maltese laws. The fresh Hopa Local casino site is done two fat ladies casino regarding an effective types of black and you can gray that have a user-amicable make. You might demand people chapters of it on-line casino from the the latest hitting various titles for the chief page. Such as, if you’d like to check local casino now offers, simply click Adverts. Celebrated bonuses that you will find here are 100 percent free spins. To your Hopa United kingdom Local casino. This site is actually possessed and you will performs because of the Karamba Restricted, subscribed and you can managed because of the Malta Playing Authority plus the British Gaming Percentage.

Simply visit their local casino in your smartphone otherwise tablet as well as their site usually immediately follow brand new device, whether you are playing toward an ios, Android, if you don’t Screen unit

Hopa Local casino also offers secure and safe playing and you will boasts brand new most readily useful you can security measures in addition to timely and also you get active percentage qualities. Hopa Online casino has actually finalized a contract for the better films video game company in order to provide the anybody a variety out of games of your highest quality. New gambling enterprise playing sense is really improved of your own addictive gameplay, large sound, and you can photo. Hopa Gambling establishment can be acquired while the a state-of-the-ways quick-gamble web gambling enterprise being enjoy game instantly rather needing to down load any software. Hopa Gambling enterprise brother websites score customer care definitely and it is simple having profiles in order to connect having customer support.

Proceed with the disperse-by-step instructions so you can explain the method Hopa Casino Visit: Open the bookmaker’s site; Click on the subscription losings for the large right place; Submit brand new questionnaire on the first investigation; Confirm membership

The client solution heart is actually discover twenty-four/seven and you may some one typically contact the newest party thru email otherwise real time speak. The team was friendly and you may elite group, constantly looking to maintain some one things as soon as possible. The latest gambling establishment also offers an extensive FAQ you to choice the majority of the the brand new faqs an alternative player might have. Hopa Casino Log on Uk. To play on the site the real deal currency, you should create a merchant account. The new registration procedure is pretty easy and does not score much day. Take note that subscription can be obtained each other out-of a pc and you can you can even of a mobile.

Confirmation during registration isn’t needed, however, after you request the first detachment out of resource, the casino commonly ask you to give duplicates away regarding files. Hopa Com Casino Set Measures. Hopa English Casino offers a range of convenient and you can safe commission strategies that be certain that easy purchases. Profiles can select from solutions like borrowing from the bank and debit cards, e-wallets, financial transmits, and you can prepaid service cards.