This commit is contained in:
proelements
2025-12-29 10:01:13 +02:00
parent ce77bab1a1
commit 9bdad9d028
319 changed files with 1925 additions and 658 deletions

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["modules_query-control_assets_js_editor_template-query-control_js"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["vendors-node_modules_dompurify_dist_purify_cjs_js"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({

File diff suppressed because one or more lines are too long

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[550],{4734:(e,t,n)=>{var s=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(4921)),r=s(n(5012));class AjaxPagination extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{links:"a.page-numbers:not(.current)",widgetContainer:".elementor-widget-container",postWrapperTag:".e-loop-item"}}}getDefaultElements(){const e=this.getSettings("selectors");return{links:this.$element[0].querySelectorAll(e.links),widgetContainer:this.$element[0].querySelector(e.widgetContainer)}}bindEvents(){super.bindEvents(),this.linksEventListeners()}linksEventListeners(){this.elements.links.length&&"ajax"===this.getElementSettings("pagination_load_type")&&this.elements.links.forEach((e=>{e.addEventListener("click",(e=>{this.handleLinkClick(e)}))}))}handleLinkClick(e){if(e.preventDefault(),this.isLoading)return;this.removeLinksListeners(),this.handleUiBeforeLoading();const t=e?.target.getAttribute("href");return this.updateURLQueryString(t),fetch(t).then((e=>e.text())).then((e=>{const t=(new DOMParser).parseFromString(e,"text/html");this.handleSuccessFetch(t)}))}removeLinksListeners(){this.elements.links.length&&this.elements.links.forEach((e=>{e.removeEventListener("click",this.handleLinkClick)}))}updateURLQueryString(e){const t=new URL(window.location.href),n=t.searchParams,s=new URL(e).searchParams;s.forEach(((e,t)=>{n.set(t,e)})),s.has("e-page-"+this.elementId)||n.delete("e-page-"+this.elementId),history.pushState(null,"",t.href)}handleUiBeforeLoading(){this.setLoading(!0),this.ajaxHelper.addLoadingAnimationOverlay(this.elementId),this.maybeScrollToTop()}setLoading(e){this.isLoading=e}maybeScrollToTop(){if("yes"!==this.getElementSettings("auto_scroll"))return;const e=document.querySelector(`.elementor-element-${this.elementId}`);e&&e.scrollIntoView({behavior:"smooth"})}handleUiAfterLoading(){this.setLoading(!1),this.ajaxHelper.removeLoadingAnimationOverlay(this.elementId)}handleSuccessFetch(e){this.handleUiAfterLoading();const t=this.getSettings("selectors"),n=e.querySelector(`[data-id="${this.elementId}"] ${t.widgetContainer}`),s=this.elements.widgetContainer;this.$element[0].replaceChild(n,s),this.afterInsertPosts()}afterInsertPosts(){const e=this.getSettings("selectors"),t=document.querySelectorAll(`[data-id="${this.elementId}"] ${e.postWrapperTag}`);elementorFrontend.elementsHandler.runReadyTrigger(this.$element[0]),(0,r.default)(t),ElementorProFrontendConfig.settings.lazy_load_background_images&&document.dispatchEvent(new Event("elementor/lazyload/observe"))}onInit(){super.onInit(),this.setLoading(!1),this.elementId=this.getID(),this.ajaxHelper=new i.default}}t.default=AjaxPagination}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["ajax-pagination"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["animated-headline"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({
@@ -2484,7 +2484,7 @@ function KitContentCustomizationDialog({
return /*#__PURE__*/_react.default.createElement(_customizationSubSetting.SubSetting, {
key: taxonomy.value,
label: taxonomy.label,
settingKey: "taxonomies",
settingKey: `taxonomies_${taxonomy.value}`,
checked: settings.taxonomies.includes(taxonomy.value),
disabled: !(0, _useTier.isHighTier)(),
tooltip: !(0, _useTier.isHighTier)(),
@@ -2813,7 +2813,8 @@ function KitSettingsCustomizationDialog({
onSettingChange: handleToggleChange,
checked: settings.customCode,
disabled: isImport && !data?.uploadedData?.manifest?.['custom-code'] || !(0, _useTier.isHighTier)(),
tooltip: !(0, _useTier.isHighTier)()
tooltip: !(0, _useTier.isHighTier)(),
notExported: isImport && !data?.uploadedData?.manifest?.['custom-code']
}))))), /*#__PURE__*/_react.default.createElement(_upgradeNoticeBanner.UpgradeNoticeBanner, null)));
}
KitSettingsCustomizationDialog.propTypes = {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["archive-posts"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["carousel"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[897],{5456:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class CarouselBase extends elementorModules.frontend.handlers.SwiperBase{getDefaultSettings(){return{selectors:{swiperContainer:".elementor-main-swiper",swiperSlide:".swiper-slide"},slidesPerView:{widescreen:3,desktop:3,laptop:3,tablet_extra:3,tablet:2,mobile_extra:2,mobile:1}}}getDefaultElements(){const e=this.getSettings("selectors"),t={$swiperContainer:this.$element.find(e.swiperContainer)};return t.$slides=t.$swiperContainer.find(e.swiperSlide),t}getEffect(){return this.getElementSettings("effect")}getDeviceSlidesPerView(e){const t="slides_per_view"+("desktop"===e?"":"_"+e);return Math.min(this.getSlidesCount(),+this.getElementSettings(t)||this.getSettings("slidesPerView")[e])}getSlidesPerView(e){return"slide"===this.getEffect()?this.getDeviceSlidesPerView(e):1}getDeviceSlidesToScroll(e){const t="slides_to_scroll"+("desktop"===e?"":"_"+e);return Math.min(this.getSlidesCount(),+this.getElementSettings(t)||1)}getSlidesToScroll(e){return"slide"===this.getEffect()?this.getDeviceSlidesToScroll(e):1}getSpaceBetween(e){let t="space_between";return e&&"desktop"!==e&&(t+="_"+e),this.getElementSettings(t).size||0}getSwiperOptions(){const e=this.getElementSettings(),t={grabCursor:!0,initialSlide:this.getInitialSlide(),slidesPerView:this.getSlidesPerView("desktop"),slidesPerGroup:this.getSlidesToScroll("desktop"),spaceBetween:this.getSpaceBetween(),loop:"yes"===e.loop,speed:e.speed,effect:this.getEffect(),preventClicksPropagation:!1,slideToClickedSlide:!0,handleElementorBreakpoints:!0};if("yes"===e.lazyload&&(t.lazy={loadPrevNext:!0,loadPrevNextAmount:1}),e.show_arrows&&(t.navigation={prevEl:".elementor-swiper-button-prev",nextEl:".elementor-swiper-button-next"}),e.pagination&&(t.pagination={el:".swiper-pagination",type:e.pagination,clickable:!0}),"cube"!==this.getEffect()){const e={},i=elementorFrontend.config.responsive.activeBreakpoints;Object.keys(i).forEach((t=>{e[i[t].value]={slidesPerView:this.getSlidesPerView(t),slidesPerGroup:this.getSlidesToScroll(t),spaceBetween:this.getSpaceBetween(t)}})),t.breakpoints=e}return!this.isEdit&&e.autoplay&&(t.autoplay={delay:e.autoplay_speed,disableOnInteraction:!!e.pause_on_interaction}),t}getDeviceBreakpointValue(e){if(!this.breakpointsDictionary){const e=elementorFrontend.config.responsive.activeBreakpoints;this.breakpointsDictionary={},Object.keys(e).forEach((t=>{this.breakpointsDictionary[t]=e[t].value}))}return this.breakpointsDictionary[e]}updateSpaceBetween(e){const t=e.match("space_between_(.*)"),i=t?t[1]:"desktop",s=this.getSpaceBetween(i);"desktop"!==i?this.swiper.params.breakpoints[this.getDeviceBreakpointValue(i)].spaceBetween=s:this.swiper.params.spaceBetween=s,this.swiper.params.spaceBetween=s,this.swiper.update()}async onInit(){if(elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),1>=this.getSlidesCount())return;const e=elementorFrontend.utils.swiper;this.swiper=await new e(this.elements.$swiperContainer,this.getSwiperOptions());"yes"===this.getElementSettings().pause_on_hover&&this.togglePauseOnHover(!0),this.elements.$swiperContainer.data("swiper",this.swiper)}getChangeableProperties(){return{autoplay:"autoplay",pause_on_hover:"pauseOnHover",pause_on_interaction:"disableOnInteraction",autoplay_speed:"delay",speed:"speed",width:"width"}}updateSwiperOption(e){if(0===e.indexOf("width"))return void this.swiper.update();const t=this.getElementSettings(),i=t[e];let s=this.getChangeableProperties()[e],n=i;switch(e){case"autoplay":n=!!i&&{delay:t.autoplay_speed,disableOnInteraction:"yes"===t.pause_on_interaction};break;case"autoplay_speed":s="autoplay",n={delay:i,disableOnInteraction:"yes"===t.pause_on_interaction};break;case"pause_on_hover":this.togglePauseOnHover("yes"===i);break;case"pause_on_interaction":n="yes"===i}"pause_on_hover"!==e&&(this.swiper.params[s]=n),this.swiper.update()}onElementChange(e){if(1>=this.getSlidesCount())return;if(0===e.indexOf("width"))return this.swiper.update(),void(this.thumbsSwiper&&this.thumbsSwiper.update());if(0===e.indexOf("space_between"))return void this.updateSpaceBetween(e);const t=this.getChangeableProperties();Object.prototype.hasOwnProperty.call(t,e)&&this.updateSwiperOption(e)}onEditSettingsChange(e){1>=this.getSlidesCount()||"activeItemIndex"===e&&this.swiper.slideToLoop(this.getEditSettings("activeItemIndex")-1)}}t.default=CarouselBase},7181:(e,t,i)=>{var s=i(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=s(i(5456));class TestimonialCarousel extends n.default{getDefaultSettings(){const e=super.getDefaultSettings();return e.slidesPerView={desktop:1},Object.keys(elementorFrontend.config.responsive.activeBreakpoints).forEach((t=>{e.slidesPerView[t]=1})),e.loop&&(e.loopedSlides=this.getSlidesCount()),e}getEffect(){return"slide"}}t.default=TestimonialCarousel}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["code-highlight"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[635],{7193:(e,l)=>{Object.defineProperty(l,"__esModule",{value:!0}),l.default=void 0;class codeHighlightHandler extends elementorModules.frontend.handlers.Base{onInit(...e){super.onInit(...e),Prism.highlightAllUnder(this.$element[0],!1)}onElementChange(){Prism.highlightAllUnder(this.$element[0],!1)}}l.default=codeHighlightHandler}}]);

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["contact-buttons-var-10"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["contact-buttons"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[416],{475:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=elementorModules.frontend.handlers.Base.extend({cache:null,cacheElements(){const e=this.$element.find(".elementor-countdown-wrapper");this.cache={$countDown:e,timeInterval:null,elements:{$countdown:e.find(".elementor-countdown-wrapper"),$daysSpan:e.find(".elementor-countdown-days"),$hoursSpan:e.find(".elementor-countdown-hours"),$minutesSpan:e.find(".elementor-countdown-minutes"),$secondsSpan:e.find(".elementor-countdown-seconds"),$expireMessage:e.parent().find(".elementor-countdown-expire--message")},data:{id:this.$element.data("id"),endTime:new Date(1e3*e.data("date")),actions:e.data("expire-actions"),evergreenInterval:e.data("evergreen-interval")}}},onInit(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.cacheElements(),0<this.cache.data.evergreenInterval&&(this.cache.data.endTime=this.getEvergreenDate()),this.initializeClock()},updateClock(){const e=this,t=this.getTimeRemaining(this.cache.data.endTime);jQuery.each(t.parts,(function(t){const n=e.cache.elements["$"+t+"Span"];let a=this.toString();1===a.length&&(a=0+a),n.length&&n.text(a)})),t.total<=0&&(clearInterval(this.cache.timeInterval),this.runActions())},initializeClock(){const e=this;this.updateClock(),this.cache.timeInterval=setInterval((function(){e.updateClock()}),1e3)},runActions(){const e=this;e.$element.trigger("countdown_expire",e.$element),this.cache.data.actions&&this.cache.data.actions.forEach((function(t){switch(t.type){case"hide":e.cache.$countDown.hide();break;case"redirect":t.redirect_url&&t.redirect_url.startsWith("http")&&(window.location.href=t.redirect_url);break;case"message":e.cache.elements.$expireMessage.show()}}))},getTimeRemaining(e){const t=e-new Date;let n=Math.floor(t/1e3%60),a=Math.floor(t/1e3/60%60),r=Math.floor(t/36e5%24),o=Math.floor(t/864e5);return(o<0||r<0||a<0)&&(n=a=r=o=0),{total:t,parts:{days:o,hours:r,minutes:a,seconds:n}}},getEvergreenDate(){const e=this,t=this.cache.data.id,n=this.cache.data.evergreenInterval,a=t+"-evergreen_due_date",r=t+"-evergreen_interval",o={dueDate:localStorage.getItem(a),interval:localStorage.getItem(r)},initEvergreen=function(){var t=new Date;return e.cache.data.endTime=t.setSeconds(t.getSeconds()+n),localStorage.setItem(a,e.cache.data.endTime),localStorage.setItem(r,n),e.cache.data.endTime};return null===o.dueDate&&null===o.interval||null!==o.dueDate&&n!==parseInt(o.interval,10)?initEvergreen():o.dueDate>0&&parseInt(o.interval,10)===n?o.dueDate:void 0}})}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["countdown"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({

File diff suppressed because one or more lines are too long

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[93],{3093:(e,t,n)=>{var o=n(2470).__,a=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(8300));class TemplateQueryControl extends i.default{ui(){return{...super.ui(),newButton:'button[data-action="new"]',editButton:'button[data-action="edit"]'}}events(){return{...super.events(),"click @ui.newButton":"onNewButtonClicked","click @ui.editButton":"onEditButtonClicked"}}onRender(...e){super.onRender(...e),this.toggleButtons(this.getControlValue())}onBaseInputChange(...e){super.onBaseInputChange(...e),this.toggleButtons(this.getInputValue(e[0].currentTarget))}toggleButtons(e){e?this.showEditTemplateButton():this.showNewTemplateButton()}showNewTemplateButton(){const e=this.ui?.newButton?.get(0),t=this.ui?.editButton?.get(0);e&&(e.style.display="block"),t&&(t.style.display="none")}showEditTemplateButton(){const e=this.ui.newButton.get(0),t=this.ui.editButton.get(0);e&&(e.style.display="none"),t&&(t.style.display="block")}async onNewButtonClicked(){this.createTemplate()}createTemplate(){this.confirmSaveBeforeTemplateCreateDialog||(this.confirmSaveBeforeTemplateCreateDialog=elementorCommon.dialogsManager.createWidget("confirm",{id:"e-confirm-save-before-template-create",headerMessage:o("Save Changes","elementor-pro"),message:o("Would you like to save the changes you've made?","elementor-pro"),position:{my:"center center",at:"center center"},strings:{confirm:o("Save","elementor-pro"),cancel:o("Discard","elementor-pro")},onConfirm:async()=>{await this.onConfirmCreateTemplate()}})),this.confirmSaveBeforeTemplateCreateDialog.show()}async onConfirmCreateTemplate(){$e.internal("panel/state-loading");const e=await this.createAndSetTemplate();this.afterAction("new",e),$e.internal("panel/state-ready")}async createAndSetTemplate(){const e=this.model.get("name"),t=this.options.container.controls[e].actions.new.document_config.type,n=this.getTemplateSourceTypeValue(),o=await $e.data.create("library/templates",{type:t,page_settings:{source:n}}),a=parseInt(o.data.template_id);return this.setValue(a),a}getTemplateSourceTypeValue(){return"repeater"===this.options?.container?.args?.type?this.options.container.renderer.args.settings.attributes._skin||void 0:this.options.container.controls._skin?this.options.container.panel.getControlView("_skin").getControlValue():void 0}async switchDocument(e){await $e.run("editor/documents/switch",{id:parseInt(e),mode:"save"});const t=elementor.documents.getCurrent();t.config.container_attributes&&t.config.container_attributes.class&&t.$element.addClass(t.config.container_attributes.class)}async onEditButtonClicked(){this.afterAction("edit",this.getControlValue())}getSelect2Placeholder(){return{id:"",text:o("Start typing its name","elementor-pro")}}async afterAction(e,t){"switch_document"===("new"===e?this.ui.newButton[0].getAttribute("data-after-action"):this.ui.editButton[0].getAttribute("data-after-action"))?await this.switchDocument(t):window.open(this.getThemeBuilderURL(t),"_blank")}getThemeBuilderURL(e){return`${elementor.config.admin_url}post.php?post=${e}&action=elementor`}}t.default=TemplateQueryControl}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({
@@ -72,6 +72,7 @@ const App = props => {
}, fadeDuration);
return () => clearTimeout(timeoutId);
}
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [dialogOpen]);
const handleCloseDialog = () => {
setDialogOpen(false);
@@ -128,13 +129,10 @@ var _default = exports["default"] = App;
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
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 _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
var _app = _interopRequireDefault(__webpack_require__(/*! ./app */ "../modules/display-conditions/assets/js/editor/app.js"));
class DisplayConditionsBehavior extends Marionette.Behavior {
ui() {
const iconClass = '.eicon-flow.e-control-display-conditions';
@@ -157,7 +155,7 @@ class DisplayConditionsBehavior extends Marionette.Behavior {
event.stopPropagation();
elementor.promotion.showDialog({
title: __('Display Conditions', 'elementor-pro'),
content: '',
content: "",
targetElement: this.el,
actionButton: {
url: 'https://go.elementor.com/go-pro-advanced-display-conditions/',
@@ -176,26 +174,26 @@ class DisplayConditionsBehavior extends Marionette.Behavior {
return rootElement;
}
mount() {
const colorScheme = elementor?.getPreferences?.('ui_theme') || 'auto',
isRTL = elementorCommon.config.isRTL,
rootElement = this.getRootElement();
const rootElement = this.getRootElement();
window.parent.document.body.appendChild(rootElement);
ReactDOM.render(/*#__PURE__*/_react.default.createElement(_app.default // eslint-disable-line react/no-deprecated
, {
colorScheme: colorScheme,
isRTL: isRTL,
getControlValue: this.getOption('getControlValue'),
setControlValue: this.getOption('setControlValue'),
fetchData: this.getOption('fetchData'),
onClose: () => this.unmount(rootElement),
conditionsConfig: this.getOption('conditionsConfig'),
setCacheNoticeStatus: this.getOption('setCacheNoticeStatus')
}), rootElement);
window.dispatchEvent(new CustomEvent('elementor/display-conditions/open', {
detail: {
rootElement,
props: {
getControlValue: this.getOption('getControlValue'),
setControlValue: this.getOption('setControlValue'),
onClose: () => this.unmount(rootElement),
setCacheNoticeStatus: this.getOption('setCacheNoticeStatus')
}
}
}));
}
unmount(rootElement) {
// eslint-disable-next-line react/no-deprecated
ReactDOM.unmountComponentAtNode(rootElement);
rootElement.remove();
window.dispatchEvent(new CustomEvent('elementor/display-conditions/close', {
detail: {
rootElement
}
}));
}
}
exports["default"] = DisplayConditionsBehavior;
@@ -880,11 +878,36 @@ const AutocompleteControl = ({
label = controlValue?.length ? '' : conditions[condition.condition].label || '';
(0, _react.useEffect)(() => {
setControlValue(formatValue(value));
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [condition]);
const handleChangeOption = newValue => {
onChangeOption(newValue);
setControlValue(newValue);
};
const renderOption = ({
key,
...optionProps
}, option) => {
return /*#__PURE__*/React.createElement(_ui.Typography, (0, _extends2.default)({
component: "li"
}, optionProps, {
key: key
}), /*#__PURE__*/React.createElement(_conditionSelectOption.default, {
component: "span",
variant: "inherit",
noWrap: true,
controlCount: controlCount
}, options[option]));
};
const renderInput = params => {
return /*#__PURE__*/React.createElement(_ui.TextField, (0, _extends2.default)({
error: shouldShowError,
helperText: errorMessage
}, params, {
placeholder: label,
color: "secondary"
}));
};
return /*#__PURE__*/React.createElement(_ui.Autocomplete, {
multiple: isMultiple,
id: `select-${controlKey}`,
@@ -901,13 +924,7 @@ const AutocompleteControl = ({
}
}
},
renderInput: params => /*#__PURE__*/React.createElement(_ui.TextField, (0, _extends2.default)({
error: shouldShowError,
helperText: errorMessage
}, params, {
placeholder: label,
color: "secondary"
})),
renderInput: renderInput,
ListboxProps: {
sx: {
maxHeight: 280
@@ -915,14 +932,7 @@ const AutocompleteControl = ({
},
size: "small",
onChange: (_event, newValues) => handleChangeOption(formatValue(newValues)),
renderOption: (optionProps, option) => /*#__PURE__*/React.createElement(_ui.Typography, (0, _extends2.default)({
component: "li"
}, optionProps), /*#__PURE__*/React.createElement(_conditionSelectOption.default, {
component: "span",
variant: "inherit",
noWrap: true,
controlCount: controlCount
}, options[option])),
renderOption: renderOption,
forcePopupIcon: !Object.keys(options).length <= 1
});
};
@@ -936,8 +946,6 @@ AutocompleteControl.propTypes = {
errorMessage: PropTypes.string.isRequired,
shouldShowError: PropTypes.bool.isRequired,
isMultiple: PropTypes.bool.isRequired,
optionsStyles: PropTypes.object.isRequired,
menuStyles: PropTypes.object.isRequired,
controlCount: PropTypes.number.isRequired
};
var _default = exports["default"] = AutocompleteControl;
@@ -1928,6 +1936,158 @@ var _default = exports["default"] = useConditions;
/***/ }),
/***/ "../modules/display-conditions/assets/js/editor/modal.js":
/*!***************************************************************!*\
!*** ../modules/display-conditions/assets/js/editor/modal.js ***!
\***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports.setupModal = setupModal;
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
__webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js");
var _app = _interopRequireDefault(__webpack_require__(/*! ./app */ "../modules/display-conditions/assets/js/editor/app.js"));
function getGroupedConditionKeys(conditionsConfig) {
return Object.keys(conditionsConfig?.groups || {}).reduce((group, groupName) => {
const conditions = getConditionKeyByGroup(conditionsConfig.conditions, groupName);
if (conditions.length) {
group[groupName] = conditions;
}
return group;
}, {});
}
function getConditionKeyByGroup(conditions, groupName) {
return Object.keys(conditions).filter(conditionKey => groupName === conditions[conditionKey].group);
}
function getFlattenedConditionOptions(conditionsByGroup) {
const {
conditions = {},
groups = {}
} = elementor.config.displayConditions || {};
return Object.entries(conditionsByGroup).reduce((optionList, [groupName, conditionKeys]) => {
const relevantConditions = conditionKeys.map(key => ({
key,
label: conditions[key].label,
isGroup: false
}));
optionList.push({
key: groupName,
label: groups[groupName].label,
isGroup: true
}, ...relevantConditions);
return optionList;
}, []);
}
function doAjaxRequest(action, data) {
try {
return new Promise((resolve, reject) => {
elementorCommon.ajax.addRequest(action, {
data,
error: () => reject(),
success: res => {
resolve(res);
}
});
});
} catch (error) {
return false;
}
}
async function defaultFetchData(value, control) {
const response = await doAjaxRequest('pro_panel_posts_control_filter_autocomplete', {
autocomplete: control.autocomplete,
q: value
});
return response?.results ?? [];
}
async function defaultSetCacheNoticeStatus() {
const response = await doAjaxRequest('display_conditions_set_cache_notice_status');
if (response) {
elementor.config.displayConditions.show_cache_notice = false;
}
return response;
}
function setupModal() {
let appRoot = null;
const getRootElement = () => {
let rootElement = window.parent.document.getElementById('elementor-conditions__modal');
if (!!rootElement) {
return rootElement;
}
rootElement = document.createElement('div');
rootElement.setAttribute('id', 'elementor-conditions__modal');
return rootElement;
};
const getConditionsConfig = () => {
const conditionsByGroup = getGroupedConditionKeys(elementor.config.displayConditions || {});
const flattenedConditionOptions = getFlattenedConditionOptions(conditionsByGroup);
return {
...elementor.config.displayConditions,
conditionsByGroup,
flattenedConditionOptions
};
};
const renderAppModal = ({
colorScheme,
isRTL,
getControlValue,
setControlValue,
fetchData,
onClose,
conditionsConfig,
setCacheNoticeStatus
}, rootElement) => {
appRoot = ReactDOM.createRoot(rootElement);
appRoot.render(/*#__PURE__*/_react.default.createElement(_app.default, {
colorScheme: colorScheme ?? (elementor?.getPreferences?.('ui_theme') || 'auto'),
isRTL: isRTL ?? elementorCommon.config.isRTL,
getControlValue: getControlValue,
setControlValue: setControlValue,
fetchData: fetchData ?? defaultFetchData,
onClose: onClose,
conditionsConfig: conditionsConfig ?? getConditionsConfig(),
setCacheNoticeStatus: setCacheNoticeStatus ?? defaultSetCacheNoticeStatus
}));
};
window.addEventListener('elementor/display-conditions/open', event => {
renderAppModal(event.detail.props, event.detail.rootElement ?? getRootElement());
});
window.addEventListener('elementor/display-conditions/close', event => {
const {
rootElement
} = event.detail ?? {};
appRoot?.unmount?.();
rootElement?.remove?.();
});
window.addEventListener('elementor/display-conditions/set-cache-notice-status', async event => {
const {
resolve,
reject
} = event.detail ?? {};
if (!resolve || !reject) {
return;
}
try {
const response = await doAjaxRequest('display_conditions_set_cache_notice_status');
const success = !!response;
if (success) {
elementor.config.displayConditions.show_cache_notice = false;
}
resolve(success);
} catch (error) {
reject(error);
}
});
}
/***/ }),
/***/ "../modules/display-conditions/assets/js/editor/module.js":
/*!****************************************************************!*\
!*** ../modules/display-conditions/assets/js/editor/module.js ***!
@@ -1948,6 +2108,7 @@ var _behavior = _interopRequireDefault(__webpack_require__(/*! ./behavior */ "..
class Module extends elementorModules.editor.utils.Module {
pasteAction = 'paste';
clearAction = 'clear';
atomicDisplayConditionsKey = 'display-conditions';
getDefaultSettings() {
return {
selectors: {
@@ -1963,7 +2124,8 @@ class Module extends elementorModules.editor.utils.Module {
elementor.hooks.addFilter('controls/base/behaviors', this.registerControlBehavior);
elementor.channels.editor.on('section:activated', this.highlightIconIfFilled);
elementor.on('navigator:init', this.onNavigatorInit.bind(this));
const elTypes = ['widget', 'section', 'column', 'container'];
const atomicElements = this.getAtomicElementTypes();
const elTypes = ['widget', 'section', 'column', 'container', ...atomicElements];
elTypes.forEach(type => {
elementor.hooks.addFilter(`elements/${type}/contextMenuGroups`, this.registerContextMenuGroups.bind(this));
});
@@ -2005,8 +2167,11 @@ class Module extends elementorModules.editor.utils.Module {
return groups;
}
isPasteDisplayConditionsEnabled(selectedElement) {
if (window.ElementorProDisplayConditions?.isLicenseExpired || false) {
return false;
}
const displayConditions = this.getSelectedElementDisplayCondition(selectedElement),
doesClipboardHaveConditions = !!JSON.parse(this.getDisplayConditionsFromClipboard()).length;
doesClipboardHaveConditions = !!this.getDisplayConditionsFromClipboard().length;
return !displayConditions.length && !elementor.selection.isMultiple() && doesClipboardHaveConditions;
}
isClearDisplayConditionsEnabled(selectedElement) {
@@ -2014,15 +2179,20 @@ class Module extends elementorModules.editor.utils.Module {
return displayConditions.length && !elementor.selection.isMultiple();
}
getSelectedElementDisplayCondition(selectedElement) {
return JSON.parse(selectedElement?.model?.getSetting(this.getSettings('controls').displayConditions) || '[]');
const isAtomic = this.isAtomic(selectedElement?.model);
const settingsKey = this.getSettingsKey(isAtomic);
const displayConditions = selectedElement?.model?.getSetting(settingsKey);
return isAtomic ? this.transformV4ToV3Conditions(displayConditions) : JSON.parse(displayConditions || '[]');
}
getDisplayConditionsFromClipboard() {
const clipboard = elementorCommon.storage.get('clipboard'),
elements = clipboard?.elements || [];
if (1 !== elements.length) {
return '[]';
return [];
}
return elements[0]?.settings?.e_display_conditions || '[]';
const element = elements[0];
const isAtomic = this.isAtomic(element);
return this.extractDisplayConditions(element?.settings, isAtomic);
}
/**
@@ -2033,14 +2203,16 @@ class Module extends elementorModules.editor.utils.Module {
*/
tryContextMenuActions(containers, action) {
const container = containers?.[0] || null,
displayConditions = this.pasteAction === action ? this.getDisplayConditionsFromClipboard() : '';
displayConditions = this.pasteAction === action ? this.getDisplayConditionsFromClipboard() : null;
if (!container) {
return;
}
const isAtomic = this.isAtomic(container.model);
const settingsKey = this.getSettingsKey(isAtomic);
$e.run('document/elements/settings', {
container,
settings: {
e_display_conditions: displayConditions
[settingsKey]: this.createDisplayConditions(displayConditions, isAtomic)
}
});
container.panel.refresh();
@@ -2059,8 +2231,6 @@ class Module extends elementorModules.editor.utils.Module {
if (!behaviors) {
behaviors = {};
}
const conditionsByGroup = this._getGroupedConditionKeys(elementor.config.displayConditions || {});
const flattenedConditionOptions = this._getFlattenedConditionOptions(conditionsByGroup);
behaviors.displayConditions = {
behaviorClass: _behavior.default,
getControlValue: () => {
@@ -2068,7 +2238,8 @@ class Module extends elementorModules.editor.utils.Module {
if (!controlView) {
return [];
}
return this._getStructuredConditions(JSON.parse(controlView.getControlValue() || '[]'));
const value = controlView.getControlValue();
return this.getStructuredConditions(JSON.parse(value || '[]'));
},
setControlValue: value => {
const displayConditionsInput = this.getEditorControlView(this.getSettings('controls').displayConditions),
@@ -2083,24 +2254,12 @@ class Module extends elementorModules.editor.utils.Module {
this.highlightIcon(icon, displayConditionsInput);
}
},
fetchData: async (value, control) => {
const response = await this.doAjaxRequest('pro_panel_posts_control_filter_autocomplete', {
autocomplete: control.autocomplete,
q: value
});
return response?.results ?? [];
},
setCacheNoticeStatus: async () => {
const response = await this.doAjaxRequest('display_conditions_set_cache_notice_status');
if (response) {
elementor.config.displayConditions.show_cache_notice = false;
}
return response;
},
conditionsConfig: {
...elementor.config.displayConditions,
conditionsByGroup,
flattenedConditionOptions
}
};
return behaviors;
@@ -2126,7 +2285,7 @@ class Module extends elementorModules.editor.utils.Module {
elementor.navigator.indicators.displayConditions = {
icon: 'flow',
title: __('Display Conditions', 'elementor-pro'),
settingKeys: ['e_display_conditions'],
settingKeys: ['e_display_conditions', 'display-conditions'],
section: 'e_display_conditions_trigger'
};
}
@@ -2135,7 +2294,7 @@ class Module extends elementorModules.editor.utils.Module {
return;
}
const conditionValue = controlView.getControlValue() || '[]',
conditionArray = '[]' !== conditionValue ? this._getStructuredConditions(JSON.parse(conditionValue)) : [];
conditionArray = '[]' !== conditionValue ? this.getStructuredConditions(JSON.parse(conditionValue)) : [];
if (!conditionArray.length) {
icon[0]?.classList?.remove('filled');
} else {
@@ -2157,42 +2316,51 @@ class Module extends elementorModules.editor.utils.Module {
return false;
}
};
_getStructuredConditions = conditions => {
return this._shouldConvertConditionsStructure(conditions) ? [conditions] : conditions;
getStructuredConditions = conditions => {
return this.shouldConvertConditionsStructure(conditions) ? [conditions] : conditions;
};
_shouldConvertConditionsStructure = conditions => {
shouldConvertConditionsStructure = conditions => {
return conditions.length && !Array.isArray(conditions[0]);
};
_getGroupedConditionKeys = conditionsConfig => {
return Object.keys(conditionsConfig?.groups || {}).reduce((group, groupName) => {
const conditions = this._getConditionKeyByGroup(conditionsConfig.conditions, groupName);
if (conditions.length) {
group[groupName] = conditions;
}
return group;
}, {});
isAtomic = model => {
return elementor.helpers.isAtomicWidget(model);
};
_getConditionKeyByGroup = (conditions, groupName) => {
return Object.keys(conditions).filter(conditionKey => groupName === conditions[conditionKey].group);
getSettingsKey = (isAtomic = false) => {
return isAtomic ? this.atomicDisplayConditionsKey : 'e_display_conditions';
};
_getFlattenedConditionOptions = conditionsByGroup => {
const {
conditions = {},
groups = {}
} = elementor.config.displayConditions || {};
return Object.entries(conditionsByGroup).reduce((optionList, [groupName, conditionKeys]) => {
const relevantConditions = conditionKeys.map(key => ({
key,
label: conditions[key].label,
isGroup: false
}));
optionList.push({
key: groupName,
label: groups[groupName].label,
isGroup: true
}, ...relevantConditions);
return optionList;
}, []);
getAtomicElementTypes = () => {
return Object.entries(elementor.config.elements).filter(([, element]) => !!element?.atomic_props_schema).map(([elType]) => elType);
};
createDisplayConditions = (displayConditions, isAtomic = false) => {
// Value must be falsy for navigator indication to work properly
if (!displayConditions?.length) {
return isAtomic ? null : '';
}
return isAtomic ? this.transformV3ToV4Conditions(displayConditions) : JSON.stringify(displayConditions);
};
extractDisplayConditions = (settings, isAtomic) => {
const settingsKey = this.getSettingsKey(isAtomic);
const displayConditions = settings?.[settingsKey];
return isAtomic ? this.transformV4ToV3Conditions(displayConditions, isAtomic) : JSON.parse(displayConditions || '[]');
};
transformV4ToV3Conditions = conditions => {
return conditions?.value?.length ? conditions.value.map(({
value: conditionGroup
}) => conditionGroup?.map(({
value
}) => JSON.parse(value)) ?? null).filter(conditionGroup => !!conditionGroup?.length) : [];
};
transformV3ToV4Conditions = displayConditions => {
return displayConditions?.length ? {
$$type: this.atomicDisplayConditionsKey,
value: displayConditions.map(conditions => ({
$$type: 'condition-group',
value: conditions.map(condition => ({
$$type: 'string',
value: JSON.stringify(condition)
}))
}))
} : null;
};
}
exports["default"] = Module;
@@ -5590,7 +5758,9 @@ var __webpack_exports__ = {};
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
var _module = _interopRequireDefault(__webpack_require__(/*! ./module.js */ "../modules/display-conditions/assets/js/editor/module.js"));
var _modal = __webpack_require__(/*! ./modal.js */ "../modules/display-conditions/assets/js/editor/modal.js");
new _module.default();
(0, _modal.setupModal)();
})();
/******/ })()

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["modules_floating-buttons_assets_js_frontend_classes_floatin-bar-dom_js-modules_floating-butto-2c1e90"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["elements-handlers"],{

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["floating-bars-var-2"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["floating-bars-var-3"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["form"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["frontend"],{
/***/ "../assets/dev/js/frontend/frontend.js":

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["gallery"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[292],{507:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;class Hotspot extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{hotspot:".e-hotspot",tooltip:".e-hotspot__tooltip"}}}getDefaultElements(){const t=this.getSettings("selectors");return{$hotspot:this.$element.find(t.hotspot),$hotspotsExcludesLinks:this.$element.find(t.hotspot).filter(":not(.e-hotspot--no-tooltip)"),$tooltip:this.$element.find(t.tooltip)}}bindEvents(){const t=this.getCurrentDeviceSetting("tooltip_trigger"),e="mouseenter"===t?"mouseleave mouseenter":t;"none"!==e&&this.elements.$hotspotsExcludesLinks.on(e,(t=>this.onHotspotTriggerEvent(t)))}onDeviceModeChange(){this.elements.$hotspotsExcludesLinks.off(),this.bindEvents()}onHotspotTriggerEvent(t){const e=jQuery(t.target),o=e.closest(".e-hotspot__button").length,s="mouseleave"===t.type&&(e.is(".e-hotspot--tooltip-position")||e.parents(".e-hotspot--tooltip-position").length),n="mobile"===elementorFrontend.getCurrentDeviceMode();if(!(e.closest(".e-hotspot--link").length&&n&&("mouseleave"===t.type||"mouseenter"===t.type))&&(o||s)){const e=jQuery(t.currentTarget);this.elements.$hotspot.not(e).removeClass("e-hotspot--active"),e.toggleClass("e-hotspot--active")}}editorAddSequencedAnimation(){this.elements.$hotspot.toggleClass("e-hotspot--sequenced","yes"===this.getElementSettings("hotspot_sequenced_animation"))}hotspotSequencedAnimation(){const t=this.getElementSettings();if("no"===t.hotspot_sequenced_animation)return;const e=elementorModules.utils.Scroll.scrollObserver({callback:o=>{o.isInViewport&&(e.unobserve(this.$element[0]),this.elements.$hotspot.each(((e,o)=>{if(0===e)return;const s=t.hotspot_sequenced_animation_duration,n=e*((s?s.size:1e3)/this.elements.$hotspot.length);o.style.animationDelay=n+"ms"})))}});e.observe(this.$element[0])}setTooltipPositionControl(){const t=this.getElementSettings();void 0!==t.tooltip_animation&&t.tooltip_animation.match(/^e-hotspot--(slide|fade)-direction/)&&(this.elements.$tooltip.removeClass("e-hotspot--tooltip-animation-from-left e-hotspot--tooltip-animation-from-top e-hotspot--tooltip-animation-from-right e-hotspot--tooltip-animation-from-bottom"),this.elements.$tooltip.addClass("e-hotspot--tooltip-animation-from-"+t.tooltip_position))}onInit(...t){super.onInit(...t),this.hotspotSequencedAnimation(),this.setTooltipPositionControl(),window.elementor&&elementor.listenTo(elementor.channels.deviceMode,"change",(()=>this.onDeviceModeChange()))}onElementChange(t){t.startsWith("tooltip_position")&&this.setTooltipPositionControl(),t.startsWith("hotspot_sequenced_animation")&&this.editorAddSequencedAnimation()}}e.default=Hotspot}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["hotspot"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["jszip.vendor"],{
/***/ "../node_modules/jszip/dist/jszip.min.js":

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["load-more"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["loop-carousel"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[932],{7992:(e,t,r)=>{var s=r(2470).__,n=r(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var l=n(r(5012));class LoopCarousel extends elementorModules.frontend.handlers.CarouselBase{getDefaultSettings(){const e=super.getDefaultSettings();return e.selectors.carousel=".elementor-loop-container",e}getSwiperSettings(){const e=super.getSwiperSettings(),t=this.getElementSettings(),r=elementorFrontend.config.is_rtl,s=`.elementor-element-${this.getID()}`;return"yes"===t.arrows&&(e.navigation={prevEl:r?`${s} .elementor-swiper-button-next`:`${s} .elementor-swiper-button-prev`,nextEl:r?`${s} .elementor-swiper-button-prev`:`${s} .elementor-swiper-button-next`}),e.on.beforeInit=()=>{this.a11ySetSlidesAriaLabels()},e}async onInit(...e){super.onInit(...e),this.ranElementHandlers=!1}handleElementHandlers(){if(this.ranElementHandlers||!this.swiper)return;const e=Array.from(this.swiper.slides).slice(this.swiper.activeIndex-1,this.swiper.slides.length);(0,l.default)(e),this.ranElementHandlers=!0}a11ySetSlidesAriaLabels(){const e=Array.from(this.elements.$slides);e.forEach(((t,r)=>{t.setAttribute("aria-label",`${parseInt(r+1)} ${s("of","elementor-pro")} ${e.length}`)}))}}t.default=LoopCarousel}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["loop-filter-editor"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[994],{1865:(e,t,o)=>{var n=o(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(o(2606));class LoopFilter extends elementorModules.editor.utils.Module{onElementorInit(){this.taxonomyFilter=new r.default("taxonomy-filter")}}t.default=LoopFilter},2606:(e,t,o)=>{var n=o(2470).__;const r=o(7842);e.exports=r.extend({__construct(){this.cache={},r.prototype.__construct.apply(this,arguments)},onInit(){elementor.channels.editor.on("editor:widget:taxonomy-filter:section_taxonomy_filter:activated",this.onTaxonomyFilterSectionActive)},onTaxonomyFilterSectionActive(){this.updateSelectedElementOptions();const e=this.getEditorControlView("selected_element").getControlValue();e&&this.updateTaxonomyOptions(e)},updateSelectedElementOptions(){const e=this.getEditorControlView("selected_element"),t=e.getControlValue();(t?elementor.$previewContents[0].querySelector(`[data-elementor-id="${elementor.config.document.id}"] .elementor-element-${t}`):"")||e.setValue("");const o=elementor.$previewContents[0].querySelectorAll(`[data-elementor-id="${elementor.config.document.id}"] .elementor-widget-loop-grid`),r={"":n("Select a widget","elementor-pro")};o.length||(this.updateOptions("selected_element",r),e.setValue(""));let s=1;for(const e of o)r[e.dataset.id]=`${n("Loop Grid","elementor-pro")} ${s++}`;this.updateOptions("selected_element",r)},onElementChange(e,t){if("selected_element"!==e)return;const o=t.getControlValue();o?this.updateTaxonomyOptions(o):this.updateOptions("taxonomy",{"":n("Select a taxonomy","elementor-pro")})},getPostSourceQueryPostType(e){const t=e.settings.attributes.post_query_post_type;let o="";switch(t){case"current_query":o=elementorPro.config.loopFilter.mainQueryPostType;break;case"by_id":case"related":o="post";break;default:o=t}return o},getLoopQueryPostType(e){const t=elementor.getContainer(e);return"post"===t.settings.attributes._skin?this.getPostSourceQueryPostType(t):"product"},updateTaxonomyOptions(e){const t=this.getLoopQueryPostType(e);return this.getPostTypeTaxonomies(t).then((e=>e instanceof Response?!e.ok||400<=e.status?(this.displayErrorDialog(),{}):e.json():e)).catch((()=>(this.displayErrorDialog(),{}))).then((e=>{let o=e?.data||e;Object.keys(o).length?(o={"":n("Select a taxonomy","elementor-pro"),...o},this.cache[t]=o,this.updateOptions("taxonomy",o)):this.updateOptions("taxonomy",{"":n("No taxonomies found","elementor-pro")})}))},getPostTypeTaxonomies(e){return this.cache[e]&&Object.keys(this.cache[e]).length?Promise.resolve(this.cache[e]):this.fetchPostTypeTaxonomies(e)},fetchPostTypeTaxonomies:e=>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:e})}),displayErrorDialog(){elementorCommon.dialogsManager.createWidget("alert",{id:"e-filter-error-message",className:"e-filter__error-message",headerMessage:n("Something went wrong","elementor-pro"),message:n("We are experiencing technical difficulties on our end. Please try again to reconnect.","elementor-pro"),position:{my:"center center",at:"center center"},strings:{confirm:n("OK","elementor-pro")}}).show()}})}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["loop"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["lottie"],{

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["media-carousel"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["mega-menu-editor"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["mega-menu-stretch-content"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[87],{8636:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class StretchedMenuItemContent extends elementorModules.frontend.handlers.StretchedElement{getStretchedClass(){return"elementor-widget-n-menu"}getStretchElementForConfig(){return this.$element.find(".e-n-menu-wrapper")}getStretchElementConfig(){const e=super.getStretchElementConfig();return e.cssOutput="variables",e}bindEvents(){super.bindEvents(),elementorFrontend.addListenerOnce(this.getUniqueHandlerID(),"elementor-pro/mega-menu/dropdown-open",this.stretch),elementorFrontend.elements.$window.on("elementor-pro/mega-menu/heading-mouse-event",this.stretch)}unbindEvents(){super.unbindEvents(),elementorFrontend.removeListeners(this.getUniqueHandlerID(),"elementor-pro/mega-menu/dropdown-open",this.stretch),elementorFrontend.elements.$window.off("elementor-pro/mega-menu/heading-mouse-event",this.stretch)}isStretchSettingEnabled(){return!0}isActive(){return!0}}t.default=StretchedMenuItemContent}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["mega-menu"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["menu-title-keyboard-handler"],{

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["nav-menu"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["nested-carousel-editor"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[625],{9886:(e,t,s)=>{var l=s(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(s(7936));t.default=class Module{constructor(){elementor.elementsManager.registerElementType(new r.default)}}},7936:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.NestedCarousel=void 0;class NestedCarousel extends elementor.modules.elements.types.NestedElementBase{getType(){return"nested-carousel"}}t.NestedCarousel=NestedCarousel;t.default=NestedCarousel}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["nested-carousel"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[33],{1195:(e,t,s)=>{var i=s(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=i(s(5012));class NestedCarousel extends elementorModules.frontend.handlers.CarouselBase{getDefaultSettings(){const e=super.getDefaultSettings();return e.selectors.carousel=".e-n-carousel",e.selectors.slidesWrapper=".e-n-carousel > .swiper-wrapper",e}getSwiperSettings(){const e=super.getSwiperSettings(),t=this.getElementSettings(),s=elementorFrontend.config.is_rtl,i=`.elementor-element-${this.getID()}`;return elementorFrontend.isEditMode()&&(delete e.autoplay,e.loop=!1,e.noSwipingSelector=".swiper-slide > .e-con .elementor-element"),"yes"===t.arrows&&(e.navigation={prevEl:s?`${i} .elementor-swiper-button-next`:`${i} .elementor-swiper-button-prev`,nextEl:s?`${i} .elementor-swiper-button-prev`:`${i} .elementor-swiper-button-next`}),this.applySwipeOptions(e),e}async onInit(...e){this.wrapSlideContent(),super.onInit(...e),this.ranElementHandlers=!1}async initSwiper(){const e=elementorFrontend.utils.swiper;this.swiper=await new e(this.elements.$swiperContainer,this.getSwiperSettings()),this.elements.$swiperContainer.data("swiper",this.swiper)}handleElementHandlers(){if(this.ranElementHandlers||!this.swiper)return;const e=Array.from(this.swiper.slides).filter((e=>e.classList.contains(this.swiper.params.slideDuplicateClass)));(0,n.default)(e),this.ranElementHandlers=!0}wrapSlideContent(){if(!elementorFrontend.isEditMode())return;const e=this.getSettings(),t=e.selectors.slideContent.replace(".",""),s=this.$element;let i=1;this.findElement(`${e.selectors.slidesWrapper} > .e-con`).each((function(){const n=jQuery(this),r=n.closest("div").hasClass(t),o=s.find(`${e.selectors.slidesWrapper} > .${t}:nth-child(${i})`);r||o.append(n),i++}))}togglePauseOnHover(e){elementorFrontend.isEditMode()||super.togglePauseOnHover(e)}getChangeableProperties(){return{arrows_position:"arrows_position"}}applySwipeOptions(e){this.isTouchDevice()?(e.touchRatio=1,e.longSwipesRatio=.3,e.followFinger=!0,e.threshold=10):e.shortSwipes=!1}isTouchDevice(){return elementorFrontend.utils.environment.isTouchDevice}async linkContainer(e){const{container:t,index:s,targetContainer:i,action:{type:n}}=e.detail,r=t.view.$el;if(t.model.get("id")===this.$element.data("id")){const{$slides:e}=this.getDefaultElements();let t,o;switch(n){case"move":[t,o]=this.move(r,s,i,e);break;case"duplicate":[t,o]=this.duplicate(r,s,i,e)}void 0!==t&&t.appendChild(o),this.shouldHideNavButtons(r,e),this.updateIndexValues(e);const l=this.swiper&&!this.swiper.destroyed,a=e.length>1;!l&&a?await this.initSwiper():l&&!a&&this.swiper.destroy(!0),this.updateListeners()}}updateListeners(){this.swiper.initialized=!1,this.swiper.init()}move(e,t,s,i){return[i[t],s.view.$el[0]]}duplicate(e,t,s,i){return[i[t+1],s.view.$el[0]]}updateIndexValues(e){e.each(((e,t)=>{const s=e+1;t.setAttribute("data-slide",s)}))}bindEvents(){super.bindEvents(),elementorFrontend.elements.$window.on("elementor/nested-container/atomic-repeater",this.linkContainer.bind(this))}shouldHideNavButtons(e,t){const s=e[0].querySelectorAll(".elementor-swiper-button"),i=1===t.length,n=s[0]?.classList.contains("hide");i!==n&&s.forEach((e=>{e.classList.toggle("hide",i)}))}}t.default=NestedCarousel}}]);

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[367],{6078:(e,t,n)=>{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=function _default(){return a.default.createElement("div",{className:"elementor-first-add"},a.default.createElement("div",{className:"elementor-icon eicon-plus",onClick:()=>$e.route("panel/elements/categories")}))};var a=o(n(1594))},4582:(e,t,n)=>{var o=n(2470).__,a=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4066));class Module extends elementorModules.editor.utils.Module{constructor(...e){super(e),elementor.elementsManager.registerElementType(new r.default),elementor.listenTo(elementor.channels.editor,"all",this.populateOffCanvasDropdownOptions)}showOffCanvas(){const e={id:elementor.getPanelView().getCurrentPageView().getOption("editedElementView").getEditModel().get("id"),displayMode:"open"};elementor.$preview[0].contentWindow.dispatchEvent(new CustomEvent("elementor-pro/off-canvas/toggle-display-mode",{detail:e}))}populateOffCanvasDropdownOptions=(e,...t)=>{if(!this.isOffCanvasTagPopover(e))return;const n=t[0],a=n.collection.findWhere({name:"off_canvas"});if(!a)return;const r=this.getOffCanvasWidgetsForCurrentDocument(),l={"":o("Select a widget","elementor-pro")};r.length||this.updateControl(a,l);for(const e of r){const t=e.dataset.id,n=e.querySelector(".e-off-canvas").getAttribute("aria-label");l[t]=n}this.updateControl(a,l);n.children.findByModel(a).render()};updateControl(e,t){e.set({options:t})}getOffCanvasWidgetsForCurrentDocument(){return elementor.$previewContents[0].querySelectorAll(`[data-elementor-id="${elementor.config.document.id}"] .elementor-widget-off-canvas.elementor-element-edit-mode`)}isOffCanvasTagPopover(e){return e.endsWith(":off-canvas:settings:activated")}hideAdvancedTab(e,t){if("off-canvas"!==(t?.model?.get("widgetType")||""))return;const n=t?.el.querySelector(".elementor-tab-control-advanced")||!1;n&&(n.style.display="none")}onInit(){elementor.channels.editor.on("editor:widget:off-canvas:section_layout:activated",this.showOffCanvas.bind(this)),elementor.channels.editor.on("section:activated",this.hideAdvancedTab.bind(this))}}t.default=Module},4066:(e,t,n)=>{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.OffCanvas=void 0;var a=o(n(6078));class OffCanvas extends elementor.modules.elements.types.NestedElementBase{getType(){return"off-canvas"}getEmptyView(){return a.default}}t.OffCanvas=OffCanvas;t.default=OffCanvas}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["off-canvas-editor"],{

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["off-canvas"],{

View File

@@ -9,7 +9,10 @@ return [
'handle' => 'elementor-v2-editor-controls-extended',
'deps' => [
'elementor-v2-editor-controls',
'elementor-v2-editor-props',
'elementor-v2-http-client',
'elementor-v2-icons',
'elementor-v2-schema',
'elementor-v2-ui',
'react',
'wp-i18n',

View File

@@ -118,12 +118,12 @@ __webpack_require__.r(__webpack_exports__);
const createEditorDidMountHandler = (editorRef, monacoRef, onUserContentChange, setIsValid) => {
const createEditorDidMountHandler = (editorRef, monacoRef, onUserContentChange, setIsValid, syntaxRuleOptions) => {
return (editor, monaco) => {
editorRef.current = editor;
monacoRef.current = monaco;
(0,_visual_content_change_protection__WEBPACK_IMPORTED_MODULE_8__.preventChangeOnVisualContent)(editor);
(0,_css_validation__WEBPACK_IMPORTED_MODULE_6__.setCustomSyntaxRules)(editor, monaco);
(0,_css_validation__WEBPACK_IMPORTED_MODULE_6__.setCustomSyntaxRules)(editor, monaco, syntaxRuleOptions);
const initialCode = editor.getModel()?.getValue() ?? '';
const initialUserContent = (0,_visual_content_change_protection__WEBPACK_IMPORTED_MODULE_8__.getActual)(initialCode);
onUserContentChange(initialUserContent);
@@ -178,7 +178,8 @@ function disableFoldingFirstRow(editor) {
}
const CssEditor = ({
value,
onChange
onChange,
syntaxRuleOptions
}) => {
const theme = (0,_elementor_ui__WEBPACK_IMPORTED_MODULE_2__.useTheme)();
const containerRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
@@ -209,7 +210,7 @@ const CssEditor = ({
if (!editorRef.current || !monacoRef.current) {
return;
}
(0,_css_validation__WEBPACK_IMPORTED_MODULE_6__.setCustomSyntaxRules)(editorRef?.current, monacoRef.current);
(0,_css_validation__WEBPACK_IMPORTED_MODULE_6__.setCustomSyntaxRules)(editorRef?.current, monacoRef.current, syntaxRuleOptions);
if (debounceTimer.current) {
clearTimeout(debounceTimer.current);
}
@@ -217,7 +218,7 @@ const CssEditor = ({
setContentVersion(prev => prev + 1);
}, 500);
};
const handleEditorDidMount = createEditorDidMountHandler(editorRef, monacoRef, handleUserContentChange, setIsValid);
const handleEditorDidMount = createEditorDidMountHandler(editorRef, monacoRef, handleUserContentChange, setIsValid, syntaxRuleOptions);
const handleReset = () => editorRef.current?.getModel()?.setValue((0,_visual_content_change_protection__WEBPACK_IMPORTED_MODULE_8__.setVisualContent)(''));
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
const timerRef = debounceTimer;
@@ -300,22 +301,28 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__);
const forbiddenPatterns = [{
pattern: '^\\s*[&]{0,1}\\s*(?::hover|:active|:focus)',
regex: true,
message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('The use of pseudo-states is not permitted. Instead, switch to the desired pseudo state and add your custom code there.', 'elementor-pro')
}, {
pattern: '@media\\s+[^{]*\\b(?:min-width|max-width|width)\\b',
regex: true,
message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('The use of @media width queries is not permitted. Instead, switch to the desired breakpoint and add your custom code there.', 'elementor-pro')
}];
function setCustomSyntaxRules(editor, monaco) {
const syntaxRules = {
pseudoState: {
pattern: '^\\s*[&]{0,1}\\s*(?::hover|:active|:focus)',
regex: true,
message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('The use of pseudo-states is not permitted. Instead, switch to the desired pseudo state and add your custom code there.', 'elementor-pro')
},
mediaQuery: {
pattern: '@media\\s+[^{]*\\b(?:min-width|max-width|width)\\b',
regex: true,
message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('The use of @media width queries is not permitted. Instead, switch to the desired breakpoint and add your custom code there.', 'elementor-pro')
}
};
function setCustomSyntaxRules(editor, monaco, options) {
const model = editor.getModel();
if (!model) {
return true;
}
const customMarkers = [];
forbiddenPatterns.forEach(rule => {
Object.entries(syntaxRules).forEach(([id, rule]) => {
if (options?.rules?.[id] === false) {
return;
}
const matches = model.findMatches(rule.pattern, true, rule.regex ?? false, true, null, true);
matches.forEach(match => {
customMarkers.push({
@@ -575,6 +582,155 @@ const AttributesControl = (0,_elementor_editor_controls__WEBPACK_IMPORTED_MODULE
/***/ }),
/***/ "./packages/packages/pro/editor-controls-extended/src/controls/display-conditions-control.tsx":
/*!****************************************************************************************************!*\
!*** ./packages/packages/pro/editor-controls-extended/src/controls/display-conditions-control.tsx ***!
\****************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ DisplayConditionsControl: function() { return /* binding */ DisplayConditionsControl; }
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _elementor_editor_controls__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/editor-controls */ "@elementor/editor-controls");
/* harmony import */ var _elementor_editor_controls__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_controls__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @elementor/editor-props */ "@elementor/editor-props");
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_props__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _elementor_icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
/* harmony import */ var _elementor_icons__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_elementor_icons__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_elementor_ui__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _prop_types_display_conditions__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../prop-types/display-conditions */ "./packages/packages/pro/editor-controls-extended/src/prop-types/display-conditions.ts");
const OPEN_MODAL_EVENT = 'elementor/display-conditions/open';
const CLOSE_MODAL_EVENT = 'elementor/display-conditions/close';
const SET_CACHE_NOTICE_STATUS_EVENT = 'elementor/display-conditions/set-cache-notice-status';
// Value must be falsy for navigator indication to work properly
function transformV3ToV4(displayConditions) {
if (!Array.isArray(displayConditions) || !displayConditions?.length) {
return null;
}
const transformed = displayConditions.filter(conditionGroup => !!conditionGroup?.length).map(conditionGroup => ({
$$type: 'condition-group',
value: conditionGroup.map(condition => _elementor_editor_props__WEBPACK_IMPORTED_MODULE_2__.stringPropTypeUtil.create(JSON.stringify(condition)))
}));
return transformed.length ? transformed : null;
}
function transformV4ToV3(value) {
const conditionGroups = value;
const transformed = conditionGroups?.map(group => group.value.map(conditions => {
return JSON.parse(_elementor_editor_props__WEBPACK_IMPORTED_MODULE_2__.stringPropTypeUtil.extract(conditions) ?? '[]');
})) ?? null;
return getStructuredConditions(transformed);
}
function shouldConvertConditionsStructure(conditions) {
return !!conditions?.length && !Array.isArray(conditions?.[0]);
}
function getStructuredConditions(conditions) {
return shouldConvertConditionsStructure(conditions) ? [conditions] : conditions;
}
const ariaLabel = (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)('Display Conditions', 'elementor-pro');
async function setCacheNoticeStatus() {
return new Promise((resolve, reject) => {
window.dispatchEvent(new CustomEvent(SET_CACHE_NOTICE_STATUS_EVENT, {
detail: {
resolve,
reject
}
}));
});
}
const DisplayConditionsControl = (0,_elementor_editor_controls__WEBPACK_IMPORTED_MODULE_1__.createControl)(({
disabled = false
}) => {
const {
setValue,
value: displayConditionsValue
} = (0,_elementor_editor_controls__WEBPACK_IMPORTED_MODULE_1__.useBoundProp)(_prop_types_display_conditions__WEBPACK_IMPORTED_MODULE_6__.displayConditionsPropTypeUtil);
const [isModalOpen, setIsModalOpen] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
const isToggleButtonSelected = !!displayConditionsValue?.length;
const setControlValue = value => setValue(transformV3ToV4(JSON.parse(value ?? '[]')));
const getControlValue = () => transformV4ToV3(displayConditionsValue) ?? [];
const onClose = () => {
setIsModalOpen(false);
window.dispatchEvent(new CustomEvent(CLOSE_MODAL_EVENT));
};
const conditions = getControlValue();
const openConditionsModal = () => {
setIsModalOpen(true);
window.dispatchEvent(new CustomEvent(OPEN_MODAL_EVENT, {
detail: {
props: {
getControlValue,
setControlValue,
onClose,
setCacheNoticeStatus
}
}
}));
};
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_4__.Stack, {
direction: "row",
spacing: 2,
sx: {
justifyContent: 'flex-end',
alignItems: 'center'
}
}, disabled && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_4__.Chip, {
icon: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_icons__WEBPACK_IMPORTED_MODULE_3__.CrownFilledIcon, {
fontSize: "tiny"
}),
size: "tiny",
color: "promotion",
variant: "standard",
sx: {
width: '20px',
'& .MuiChip-label': {
display: 'none'
}
}
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_4__.Tooltip, {
title: ariaLabel,
placement: "top"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_4__.Box, {
sx: {
cursor: disabled ? 'not-allowed' : 'pointer',
display: 'inline-flex'
}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_4__.ToggleButton, {
value: JSON.stringify(conditions),
size: "tiny",
variant: "outline",
"aria-pressed": isModalOpen,
"aria-expanded": isModalOpen,
selected: isToggleButtonSelected,
"aria-haspopup": "dialog",
"aria-label": ariaLabel,
onClick: openConditionsModal,
disabled: disabled,
sx: {
pointerEvents: disabled ? 'none' : 'auto'
},
"data-behavior": "display-conditions"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_icons__WEBPACK_IMPORTED_MODULE_3__.SitemapIcon, {
fontSize: "tiny"
}))))));
});
/***/ }),
/***/ "./packages/packages/pro/editor-controls-extended/src/extend-transition-properties.ts":
/*!********************************************************************************************!*\
!*** ./packages/packages/pro/editor-controls-extended/src/extend-transition-properties.ts ***!
@@ -593,7 +749,12 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__);
function extendTransitionProperties() {
const getIsSiteRtl = () => {
return !!window?.elementorFrontend?.config?.is_rtl;
};
function extendTransitionProperties(isDisabled = false) {
const isSiteRtl = getIsSiteRtl();
// Core transition properties are limited to 'All Properties' option, so we need to extend it.
if (_elementor_editor_controls__WEBPACK_IMPORTED_MODULE_0__.transitionProperties && _elementor_editor_controls__WEBPACK_IMPORTED_MODULE_0__.transitionProperties.length === 1) {
const commonProperties = _elementor_editor_controls__WEBPACK_IMPORTED_MODULE_0__.transitionProperties.find(category => category.label === (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Common', 'elementor-pro'));
@@ -605,168 +766,210 @@ function extendTransitionProperties() {
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin (all)', 'elementor-pro'),
value: 'margin'
value: 'margin',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin bottom', 'elementor-pro'),
value: 'margin-block-end'
value: 'margin-block-end',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin left', 'elementor-pro'),
value: 'margin-inline-start'
label: isSiteRtl ? (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin right', 'elementor-pro') : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin left', 'elementor-pro'),
value: 'margin-inline-start',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin right', 'elementor-pro'),
value: 'margin-inline-end'
label: isSiteRtl ? (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin left', 'elementor-pro') : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin right', 'elementor-pro'),
value: 'margin-inline-end',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Margin top', 'elementor-pro'),
value: 'margin-block-start'
value: 'margin-block-start',
isDisabled
}]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding (all)', 'elementor-pro'),
value: 'padding'
value: 'padding',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding bottom', 'elementor-pro'),
value: 'padding-block-end'
value: 'padding-block-end',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding left', 'elementor-pro'),
value: 'padding-inline-start'
label: isSiteRtl ? (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding right', 'elementor-pro') : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding left', 'elementor-pro'),
value: 'padding-inline-start',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding right', 'elementor-pro'),
value: 'padding-inline-end'
label: isSiteRtl ? (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding left', 'elementor-pro') : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding right', 'elementor-pro'),
value: 'padding-inline-end',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Padding top', 'elementor-pro'),
value: 'padding-block-start'
value: 'padding-block-start',
isDisabled
}]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Flex', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Flex (all)', 'elementor-pro'),
value: 'flex'
value: 'flex',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Flex grow', 'elementor-pro'),
value: 'flex-grow'
value: 'flex-grow',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Flex shrink', 'elementor-pro'),
value: 'flex-shrink'
value: 'flex-shrink',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Flex basis', 'elementor-pro'),
value: 'flex-basis'
value: 'flex-basis',
isDisabled
}]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Size', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Width', 'elementor-pro'),
value: 'width'
value: 'width',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Height', 'elementor-pro'),
value: 'height'
value: 'height',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Max height', 'elementor-pro'),
value: 'max-height'
value: 'max-height',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Max width', 'elementor-pro'),
value: 'max-width'
value: 'max-width',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Min height', 'elementor-pro'),
value: 'min-height'
value: 'min-height',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Min width', 'elementor-pro'),
value: 'min-width'
value: 'min-width',
isDisabled
}]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Position', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Top', 'elementor-pro'),
value: 'top'
value: 'inset-block-start',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Left', 'elementor-pro'),
value: 'left'
label: isSiteRtl ? (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Right', 'elementor-pro') : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Left', 'elementor-pro'),
value: 'inset-inline-start',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Bottom', 'elementor-pro'),
value: 'bottom'
value: 'inset-block-end',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Right', 'elementor-pro'),
value: 'right'
label: isSiteRtl ? (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Left', 'elementor-pro') : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Right', 'elementor-pro'),
value: 'inset-inline-end',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Z-Index', 'elementor-pro'),
value: 'z-index'
value: 'z-index',
isDisabled
}]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Typography', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Font color', 'elementor-pro'),
value: 'color'
value: 'color',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Font size', 'elementor-pro'),
value: 'font-size'
value: 'font-size',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Line height', 'elementor-pro'),
value: 'line-height'
value: 'line-height',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Letter spacing', 'elementor-pro'),
value: 'letter-spacing'
value: 'letter-spacing',
isDisabled
},
// { label: __('Text indent', 'elementor-pro'), value: 'text-indent' },
// { label: __('Text shadow', 'elementor-pro'), value: 'text-shadow' },
// { label: __('Text indent', 'elementor-pro'), value: 'text-indent', isDisabled },
// { label: __('Text shadow', 'elementor-pro'), value: 'text-shadow', isDisabled },
{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Word spacing', 'elementor-pro'),
value: 'word-spacing'
value: 'word-spacing',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Font variations', 'elementor-pro'),
value: 'font-variation-settings'
value: 'font-variation-settings',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Text stroke color', 'elementor-pro'),
value: '-webkit-text-stroke-color'
value: '-webkit-text-stroke-color',
isDisabled
}
// { label: __('Text underline offset', 'elementor-pro'), value: 'text-underline-offset' },
// { label: __('Text decoration color', 'elementor-pro'), value: 'text-decoration-color' },
// { label: __('Text underline offset', 'elementor-pro'), value: 'text-underline-offset', isDisabled },
// { label: __('Text decoration color', 'elementor-pro'), value: 'text-decoration-color', isDisabled },
]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Background', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Background color', 'elementor-pro'),
value: 'background-color'
value: 'background-color',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Background position', 'elementor-pro'),
value: 'background-position'
value: 'background-position',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Box shadow', 'elementor-pro'),
value: 'box-shadow'
value: 'box-shadow',
isDisabled
}]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Border', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Border (all)', 'elementor-pro'),
value: 'border'
value: 'border',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Border radius', 'elementor-pro'),
value: 'border-radius'
value: 'border-radius',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Border color', 'elementor-pro'),
value: 'border-color'
value: 'border-color',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Border width', 'elementor-pro'),
value: 'border-width'
value: 'border-width',
isDisabled
}]
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Effects', 'elementor-pro'),
type: 'category',
properties: [{
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Opacity', 'elementor-pro'),
value: 'opacity'
value: 'opacity',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Transform (all)', 'elementor-pro'),
value: 'transform'
value: 'transform',
isDisabled
}, {
label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Filter (all)', 'elementor-pro'),
value: 'filter'
value: 'filter',
isDisabled
}]
});
_elementor_editor_controls__WEBPACK_IMPORTED_MODULE_0__.transitionsItemsList.splice(0, _elementor_editor_controls__WEBPACK_IMPORTED_MODULE_0__.transitionsItemsList.length, ..._elementor_editor_controls__WEBPACK_IMPORTED_MODULE_0__.transitionProperties.map(category => ({
@@ -790,42 +993,97 @@ __webpack_require__.r(__webpack_exports__);
/* harmony export */ init: function() { return /* binding */ init; }
/* harmony export */ });
/* harmony import */ var _extend_transition_properties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./extend-transition-properties */ "./packages/packages/pro/editor-controls-extended/src/extend-transition-properties.ts");
/* harmony import */ var _is_feature_active__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./is-feature-active */ "./packages/packages/pro/editor-controls-extended/src/is-feature-active.ts");
/* harmony import */ var _license_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./license-api */ "./packages/packages/pro/editor-controls-extended/src/license-api.ts");
async function init() {
if (await (0,_is_feature_active__WEBPACK_IMPORTED_MODULE_1__.isFeatureActive)('transitions')) {
(0,_extend_transition_properties__WEBPACK_IMPORTED_MODULE_0__.extendTransitionProperties)();
const isExpired = await (0,_license_api__WEBPACK_IMPORTED_MODULE_1__.getIsLicenseExpired)();
if (await (0,_license_api__WEBPACK_IMPORTED_MODULE_1__.licenseApi)('transitions')) {
(0,_extend_transition_properties__WEBPACK_IMPORTED_MODULE_0__.extendTransitionProperties)(isExpired);
}
}
/***/ }),
/***/ "./packages/packages/pro/editor-controls-extended/src/is-feature-active.ts":
/*!*********************************************************************************!*\
!*** ./packages/packages/pro/editor-controls-extended/src/is-feature-active.ts ***!
\*********************************************************************************/
/***/ "./packages/packages/pro/editor-controls-extended/src/license-api.ts":
/*!***************************************************************************!*\
!*** ./packages/packages/pro/editor-controls-extended/src/license-api.ts ***!
\***************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ isFeatureActive: function() { return /* binding */ isFeatureActive; }
/* harmony export */ getIsLicenseExpired: function() { return /* binding */ getIsLicenseExpired; },
/* harmony export */ licenseApi: function() { return /* binding */ licenseApi; }
/* harmony export */ });
/* harmony import */ var _elementor_http_client__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/http-client */ "@elementor/http-client");
/* harmony import */ var _elementor_http_client__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_http_client__WEBPACK_IMPORTED_MODULE_0__);
const RESOURCE_URL = 'elementor-pro/v1/license/tier-features';
const TIER_FEATURES_URL = 'elementor-pro/v1/license/tier-features';
const ACTIVE_LICENSE_RESOURCE_URL = 'elementor-pro/v1/license/get-license-status';
let features = [];
async function isFeatureActive(featureName) {
let isLicenseExpired = null;
async function licenseApi(featureName) {
if (features.includes(featureName)) {
return true;
}
try {
const response = await (0,_elementor_http_client__WEBPACK_IMPORTED_MODULE_0__.httpService)().get(RESOURCE_URL);
const response = await (0,_elementor_http_client__WEBPACK_IMPORTED_MODULE_0__.httpService)().get(TIER_FEATURES_URL);
features = response.data?.features || [];
} catch {}
return features.includes(featureName);
}
async function getIsLicenseExpired(force = false) {
try {
if (isLicenseExpired === null || force) {
const response = await (0,_elementor_http_client__WEBPACK_IMPORTED_MODULE_0__.httpService)().get(ACTIVE_LICENSE_RESOURCE_URL);
isLicenseExpired = !!response.data?.isExpired;
}
} catch {}
return !!isLicenseExpired;
}
/***/ }),
/***/ "./packages/packages/pro/editor-controls-extended/src/prop-types/condition-group.ts":
/*!******************************************************************************************!*\
!*** ./packages/packages/pro/editor-controls-extended/src/prop-types/condition-group.ts ***!
\******************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ conditionGroupPropTypeUtil: function() { return /* binding */ conditionGroupPropTypeUtil; }
/* harmony export */ });
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-props */ "@elementor/editor-props");
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_props__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _elementor_schema__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/schema */ "@elementor/schema");
/* harmony import */ var _elementor_schema__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_schema__WEBPACK_IMPORTED_MODULE_1__);
const unknownChildrenSchema = _elementor_schema__WEBPACK_IMPORTED_MODULE_1__.z.any().nullable();
const conditionGroupPropTypeUtil = (0,_elementor_editor_props__WEBPACK_IMPORTED_MODULE_0__.createPropUtils)('condition-group', _elementor_schema__WEBPACK_IMPORTED_MODULE_1__.z.array(unknownChildrenSchema));
/***/ }),
/***/ "./packages/packages/pro/editor-controls-extended/src/prop-types/display-conditions.ts":
/*!*********************************************************************************************!*\
!*** ./packages/packages/pro/editor-controls-extended/src/prop-types/display-conditions.ts ***!
\*********************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ displayConditionsPropTypeUtil: function() { return /* binding */ displayConditionsPropTypeUtil; }
/* harmony export */ });
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-props */ "@elementor/editor-props");
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_props__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _elementor_schema__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/schema */ "@elementor/schema");
/* harmony import */ var _elementor_schema__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_schema__WEBPACK_IMPORTED_MODULE_1__);
const unknownChildrenSchema = _elementor_schema__WEBPACK_IMPORTED_MODULE_1__.z.any().nullable();
const displayConditionsPropTypeUtil = (0,_elementor_editor_props__WEBPACK_IMPORTED_MODULE_0__.createPropUtils)('display-conditions', _elementor_schema__WEBPACK_IMPORTED_MODULE_1__.z.array(unknownChildrenSchema));
/***/ }),
@@ -1657,6 +1915,16 @@ module.exports = window["elementorV2"]["editorControls"];
/***/ }),
/***/ "@elementor/editor-props":
/*!**********************************************!*\
!*** external ["elementorV2","editorProps"] ***!
\**********************************************/
/***/ (function(module) {
module.exports = window["elementorV2"]["editorProps"];
/***/ }),
/***/ "@elementor/http-client":
/*!*********************************************!*\
!*** external ["elementorV2","httpClient"] ***!
@@ -1667,6 +1935,26 @@ module.exports = window["elementorV2"]["httpClient"];
/***/ }),
/***/ "@elementor/icons":
/*!****************************************!*\
!*** external ["elementorV2","icons"] ***!
\****************************************/
/***/ (function(module) {
module.exports = window["elementorV2"]["icons"];
/***/ }),
/***/ "@elementor/schema":
/*!*****************************************!*\
!*** external ["elementorV2","schema"] ***!
\*****************************************/
/***/ (function(module) {
module.exports = window["elementorV2"]["schema"];
/***/ }),
/***/ "@elementor/ui":
/*!*************************************!*\
!*** external ["elementorV2","ui"] ***!
@@ -1785,13 +2073,23 @@ var __webpack_exports__ = {};
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ AttributesControl: function() { return /* reexport safe */ _controls_attributes_control__WEBPACK_IMPORTED_MODULE_1__.AttributesControl; },
/* harmony export */ CssEditor: function() { return /* reexport safe */ _components_css_code_editor_css_editor__WEBPACK_IMPORTED_MODULE_2__.CssEditor; },
/* harmony export */ isFeatureActive: function() { return /* reexport safe */ _is_feature_active__WEBPACK_IMPORTED_MODULE_3__.isFeatureActive; }
/* harmony export */ CssEditor: function() { return /* reexport safe */ _components_css_code_editor_css_editor__WEBPACK_IMPORTED_MODULE_5__.CssEditor; },
/* harmony export */ DisplayConditionsControl: function() { return /* reexport safe */ _controls_display_conditions_control__WEBPACK_IMPORTED_MODULE_2__.DisplayConditionsControl; },
/* harmony export */ conditionGroupPropTypeUtil: function() { return /* reexport safe */ _prop_types_condition_group__WEBPACK_IMPORTED_MODULE_4__.conditionGroupPropTypeUtil; },
/* harmony export */ displayConditionsPropTypeUtil: function() { return /* reexport safe */ _prop_types_display_conditions__WEBPACK_IMPORTED_MODULE_3__.displayConditionsPropTypeUtil; },
/* harmony export */ getIsLicenseExpired: function() { return /* reexport safe */ _license_api__WEBPACK_IMPORTED_MODULE_6__.getIsLicenseExpired; },
/* harmony export */ licenseApi: function() { return /* reexport safe */ _license_api__WEBPACK_IMPORTED_MODULE_6__.licenseApi; }
/* harmony export */ });
/* harmony import */ var _init__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./init */ "./packages/packages/pro/editor-controls-extended/src/init.ts");
/* harmony import */ var _controls_attributes_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./controls/attributes-control */ "./packages/packages/pro/editor-controls-extended/src/controls/attributes-control.tsx");
/* harmony import */ var _components_css_code_editor_css_editor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/css-code-editor/css-editor */ "./packages/packages/pro/editor-controls-extended/src/components/css-code-editor/css-editor.tsx");
/* harmony import */ var _is_feature_active__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./is-feature-active */ "./packages/packages/pro/editor-controls-extended/src/is-feature-active.ts");
/* harmony import */ var _controls_display_conditions_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./controls/display-conditions-control */ "./packages/packages/pro/editor-controls-extended/src/controls/display-conditions-control.tsx");
/* harmony import */ var _prop_types_display_conditions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./prop-types/display-conditions */ "./packages/packages/pro/editor-controls-extended/src/prop-types/display-conditions.ts");
/* harmony import */ var _prop_types_condition_group__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./prop-types/condition-group */ "./packages/packages/pro/editor-controls-extended/src/prop-types/condition-group.ts");
/* harmony import */ var _components_css_code_editor_css_editor__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/css-code-editor/css-editor */ "./packages/packages/pro/editor-controls-extended/src/components/css-code-editor/css-editor.tsx");
/* harmony import */ var _license_api__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./license-api */ "./packages/packages/pro/editor-controls-extended/src/license-api.ts");

File diff suppressed because one or more lines are too long

View File

@@ -3,12 +3,16 @@ __( 'Default', 'elementor-pro' );
__( 'Margin', 'elementor-pro' );
__( 'Margin (all)', 'elementor-pro' );
__( 'Margin bottom', 'elementor-pro' );
__( 'Margin right', 'elementor-pro' );
__( 'Margin left', 'elementor-pro' );
__( 'Margin left', 'elementor-pro' );
__( 'Margin right', 'elementor-pro' );
__( 'Margin top', 'elementor-pro' );
__( 'Padding', 'elementor-pro' );
__( 'Padding (all)', 'elementor-pro' );
__( 'Padding bottom', 'elementor-pro' );
__( 'Padding right', 'elementor-pro' );
__( 'Padding left', 'elementor-pro' );
__( 'Padding left', 'elementor-pro' );
__( 'Padding right', 'elementor-pro' );
__( 'Padding top', 'elementor-pro' );
@@ -26,8 +30,10 @@ __( 'Min height', 'elementor-pro' );
__( 'Min width', 'elementor-pro' );
__( 'Position', 'elementor-pro' );
__( 'Top', 'elementor-pro' );
__( 'Right', 'elementor-pro' );
__( 'Left', 'elementor-pro' );
__( 'Bottom', 'elementor-pro' );
__( 'Left', 'elementor-pro' );
__( 'Right', 'elementor-pro' );
__( 'Z-Index', 'elementor-pro' );
__( 'Typography', 'elementor-pro' );
@@ -55,6 +61,7 @@ __( 'Effects', 'elementor-pro' );
__( 'Opacity', 'elementor-pro' );
__( 'Transform (all)', 'elementor-pro' );
__( 'Filter (all)', 'elementor-pro' );
__( 'Display Conditions', 'elementor-pro' );
__( "Empty attribute names aren't valid and won't render on the page.", 'elementor-pro' );
__( 'Name', 'elementor-pro' );
__( 'Value', 'elementor-pro' );

View File

@@ -8,6 +8,7 @@ if ( ! defined( 'ABSPATH' ) ) {
return [
'handle' => 'elementor-v2-editor-editing-panel-extended',
'deps' => [
'elementor-v2-editor-canvas',
'elementor-v2-editor-controls',
'elementor-v2-editor-controls-extended',
'elementor-v2-editor-editing-panel',

View File

@@ -145,6 +145,16 @@ const CustomCss = () => {
});
}
};
const syntaxRuleOptions = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {
if (!meta.breakpoint || meta.breakpoint === 'desktop') {
return {
rules: {
mediaQuery: false
}
};
}
return undefined;
}, [meta.breakpoint]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_3__.SectionContent, {
gap: 1
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_custom_css_field__WEBPACK_IMPORTED_MODULE_6__.CustomCssField, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_4__.Stack, {
@@ -153,7 +163,8 @@ const CustomCss = () => {
gap: 1
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_editor_controls__WEBPACK_IMPORTED_MODULE_1__.ControlFormLabel, null, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)('CSS code', 'elementor-pro')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_editor_controls__WEBPACK_IMPORTED_MODULE_1__.ControlAdornments, null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_2__.CssEditor, {
value: currentLocalState.value,
onChange: handleChange
onChange: handleChange,
syntaxRuleOptions: syntaxRuleOptions
}));
};
@@ -169,27 +180,53 @@ __webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ init: function() { return /* binding */ init; }
/* harmony export */ });
/* harmony import */ var _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-controls-extended */ "@elementor/editor-controls-extended");
/* harmony import */ var _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/editor-editing-panel */ "@elementor/editor-editing-panel");
/* harmony import */ var _elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @elementor/editor-props */ "@elementor/editor-props");
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_props__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _components_custom_css_section__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/custom-css-section */ "./packages/packages/pro/editor-editing-panel-extended/src/components/custom-css-section.tsx");
/* harmony import */ var _elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-canvas */ "@elementor/editor-canvas");
/* harmony import */ var _elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/editor-controls-extended */ "@elementor/editor-controls-extended");
/* harmony import */ var _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @elementor/editor-editing-panel */ "@elementor/editor-editing-panel");
/* harmony import */ var _elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @elementor/editor-props */ "@elementor/editor-props");
/* harmony import */ var _elementor_editor_props__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_props__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _components_custom_css_section__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/custom-css-section */ "./packages/packages/pro/editor-editing-panel-extended/src/components/custom-css-section.tsx");
/* harmony import */ var _transformers_settings_attributes_transformer__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./transformers/settings/attributes-transformer */ "./packages/packages/pro/editor-editing-panel-extended/src/transformers/settings/attributes-transformer.ts");
async function init() {
_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_1__.controlsRegistry.register('attributes', _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_0__.AttributesControl, 'full', _elementor_editor_props__WEBPACK_IMPORTED_MODULE_2__.keyValuePropTypeUtil);
(0,_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_1__.injectIntoStyleTab)({
_elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0__.settingsTransformersRegistry.register('attributes', _transformers_settings_attributes_transformer__WEBPACK_IMPORTED_MODULE_5__.proAttributesTransformer);
_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_2__.controlsRegistry.register('attributes', _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_1__.AttributesControl, 'full', _elementor_editor_props__WEBPACK_IMPORTED_MODULE_3__.keyValuePropTypeUtil);
(0,_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_2__.injectIntoStyleTab)({
id: 'custom-css',
component: _components_custom_css_section__WEBPACK_IMPORTED_MODULE_3__.CustomCssStyleSection
component: _components_custom_css_section__WEBPACK_IMPORTED_MODULE_4__.CustomCssStyleSection
});
_elementor_editor_editing_panel__WEBPACK_IMPORTED_MODULE_2__.controlsRegistry.register('display-conditions', _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_1__.DisplayConditionsControl, 'two-columns', _elementor_editor_controls_extended__WEBPACK_IMPORTED_MODULE_1__.displayConditionsPropTypeUtil);
}
/***/ }),
/***/ "./packages/packages/pro/editor-editing-panel-extended/src/transformers/settings/attributes-transformer.ts":
/*!*****************************************************************************************************************!*\
!*** ./packages/packages/pro/editor-editing-panel-extended/src/transformers/settings/attributes-transformer.ts ***!
\*****************************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ proAttributesTransformer: function() { return /* binding */ proAttributesTransformer; }
/* harmony export */ });
/* harmony import */ var _elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-canvas */ "@elementor/editor-canvas");
/* harmony import */ var _elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0__);
const proAttributesTransformer = (0,_elementor_editor_canvas__WEBPACK_IMPORTED_MODULE_0__.createTransformer)(values => {
return values.map(value => value.key && value.value ? `${value.key}="${value.value}"` : '').join(' ');
});
/***/ }),
/***/ "react":
/*!**************************!*\
!*** external ["React"] ***!
@@ -200,6 +237,16 @@ module.exports = window["React"];
/***/ }),
/***/ "@elementor/editor-canvas":
/*!***********************************************!*\
!*** external ["elementorV2","editorCanvas"] ***!
\***********************************************/
/***/ (function(module) {
module.exports = window["elementorV2"]["editorCanvas"];
/***/ }),
/***/ "@elementor/editor-controls":
/*!*************************************************!*\
!*** external ["elementorV2","editorControls"] ***!

View File

@@ -1 +1 @@
!function(){"use strict";var e=window.elementorV2.editorControlsExtended,t=window.elementorV2.editorEditingPanel,n=window.elementorV2.editorProps,o=window.React,i=window.wp.i18n,r=window.elementorV2.editorControls,s=window.elementorV2.ui;const l=({children:e})=>o.createElement(r.ControlAdornmentsProvider,{items:[{id:"custom-css-indicator",Adornment:t.CustomCssIndicator}]},e),a=()=>{const{id:n,meta:a}=(0,t.useStyle)(),{customCss:d,setCustomCss:m}=(0,t.useCustomCss)(),c=`${a.breakpoint||"desktop"}-${a.state||"default"}-${n}`,[u,w]=(0,o.useState)({});(0,o.useEffect)((()=>{u[c]||w((e=>({...e,[c]:{value:d?.raw||"",isValid:!0}})))}),[c]);const C=(0,o.useMemo)((()=>u[c]||{value:d?.raw||"",isValid:!0}),[u,c,d?.raw]);return o.createElement(t.SectionContent,{gap:1},o.createElement(l,null,o.createElement(s.Stack,{direction:"row",alignItems:"center",gap:1},o.createElement(r.ControlFormLabel,null,(0,i.__)("CSS code","elementor-pro")),o.createElement(r.ControlAdornments,null))),o.createElement(e.CssEditor,{value:C.value,onChange:(e,t)=>{w((n=>({...n,[c]:{value:e,isValid:t}}))),t&&m(e,{history:{propDisplayName:"Custom CSS"}})}}))},d=()=>o.createElement(t.StyleTabSection,{section:{component:a,name:"Custom CSS",title:(0,i.__)("Custom CSS","elementor-pro")},fields:["custom_css"],unmountOnExit:!1});(async()=>{await async function(){t.controlsRegistry.register("attributes",e.AttributesControl,"full",n.keyValuePropTypeUtil),(0,t.injectIntoStyleTab)({id:"custom-css",component:d})}()})(),(window.elementorV2=window.elementorV2||{}).editorEditingPanelExtended={}}(),window.elementorV2.editorEditingPanelExtended?.init?.();
!function(){"use strict";var e=window.elementorV2.editorCanvas,t=window.elementorV2.editorControlsExtended,n=window.elementorV2.editorEditingPanel,o=window.elementorV2.editorProps,i=window.React,r=window.wp.i18n,s=window.elementorV2.editorControls,l=window.elementorV2.ui;const a=({children:e})=>i.createElement(s.ControlAdornmentsProvider,{items:[{id:"custom-css-indicator",Adornment:n.CustomCssIndicator}]},e),d=()=>{const{id:e,meta:o}=(0,n.useStyle)(),{customCss:d,setCustomCss:m}=(0,n.useCustomCss)(),u=`${o.breakpoint||"desktop"}-${o.state||"default"}-${e}`,[c,w]=(0,i.useState)({});(0,i.useEffect)((()=>{c[u]||w((e=>({...e,[u]:{value:d?.raw||"",isValid:!0}})))}),[u]);const C=(0,i.useMemo)((()=>c[u]||{value:d?.raw||"",isValid:!0}),[c,u,d?.raw]),p=(0,i.useMemo)((()=>{if(!o.breakpoint||"desktop"===o.breakpoint)return{rules:{mediaQuery:!1}}}),[o.breakpoint]);return i.createElement(n.SectionContent,{gap:1},i.createElement(a,null,i.createElement(l.Stack,{direction:"row",alignItems:"center",gap:1},i.createElement(s.ControlFormLabel,null,(0,r.__)("CSS code","elementor-pro")),i.createElement(s.ControlAdornments,null))),i.createElement(t.CssEditor,{value:C.value,onChange:(e,t)=>{w((n=>({...n,[u]:{value:e,isValid:t}}))),t&&m(e,{history:{propDisplayName:"Custom CSS"}})},syntaxRuleOptions:p}))},m=()=>i.createElement(n.StyleTabSection,{section:{component:d,name:"Custom CSS",title:(0,r.__)("Custom CSS","elementor-pro")},fields:["custom_css"],unmountOnExit:!1}),u=(0,e.createTransformer)((e=>e.map((e=>e.key&&e.value?`${e.key}="${e.value}"`:"")).join(" ")));(async()=>{await async function(){e.settingsTransformersRegistry.register("attributes",u),n.controlsRegistry.register("attributes",t.AttributesControl,"full",o.keyValuePropTypeUtil),(0,n.injectIntoStyleTab)({id:"custom-css",component:m}),n.controlsRegistry.register("display-conditions",t.DisplayConditionsControl,"two-columns",t.displayConditionsPropTypeUtil)}()})(),(window.elementorV2=window.elementorV2||{}).editorEditingPanelExtended={}}(),window.elementorV2.editorEditingPanelExtended?.init?.();

View File

@@ -24,6 +24,7 @@ __webpack_require__.r(__webpack_exports__);
const RESTRICTED_KEYBOARD_SHORTCUT_UNITS = ['auto'];
const RESTRICTED_INPUT_KEYS = ['e', 'E', '+', '-'];
function notAnEmptySize(value) {
return null !== value && undefined !== value && !isNaN(Number(value));
@@ -93,7 +94,7 @@ const SizeField = ({
const newChar = key.toLowerCase();
const updatedBuffer = (unitInputBufferRef.current + newChar).slice(-3);
unitInputBufferRef.current = updatedBuffer;
const matchedUnit = units.find(u => u.includes(updatedBuffer)) || units.find(u => u.startsWith(newChar)) || units.find(u => u.includes(newChar));
const matchedUnit = units.find(u => !RESTRICTED_KEYBOARD_SHORTCUT_UNITS.includes(u) && u.includes(updatedBuffer)) || units.find(u => !RESTRICTED_KEYBOARD_SHORTCUT_UNITS.includes(u) && u.startsWith(newChar)) || units.find(u => !RESTRICTED_KEYBOARD_SHORTCUT_UNITS.includes(u) && u.includes(newChar));
if (matchedUnit) {
handleUnitChange(matchedUnit);
}

View File

@@ -1 +1 @@
!function(){"use strict";var e={d:function(t,n){for(var i in n)e.o(n,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:n[i]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{init:function(){return V}});var n=window.elementorV2.editorProps,i=window.elementorV2.editorVariables,r=window.elementorV2.icons,o=window.React;const u="px",a=["px","%","em","rem","vw","vh","auto"],l=e=>{if(!e)return a;const t=s(e);return Array.isArray(t.available_units)&&0!==t.available_units.length?t.available_units.filter((e=>"custom"!==e)):a},s=e=>"union"===e?.kind?e.prop_types[n.sizePropTypeUtil.key].settings:{},c=(e,t,n)=>{if("string"!=typeof e)return"custom"===e?.unit?{size:null,unit:u}:"auto"===e.unit?{size:null,unit:e.unit}:e;const i={size:null,unit:t??u},r=n??(()=>{const e=window;return e.elementor?.config?.supported_size_units??[]})();if("auto"===e)return r.includes(e)?{size:"",unit:e}:i;const o=e.match(/^(-?\d*\.?\d+)([a-z%]+)$/i);if(o){const e=parseFloat(o[1]),t=o[2];if(r.includes(t))return{size:e,unit:t}}return i};var p=window.elementorV2.ui;const d=({value:e,onChange:t,endAdornment:n,onKeyUp:i,onKeyDown:r,type:u})=>o.createElement(p.TextField,{size:"tiny",type:u,fullWidth:!0,value:e,onKeyUp:i,onKeyDown:r,onChange:e=>t(e.target.value),InputProps:{endAdornment:n}});var m=window.elementorV2.editorUi;function y(){return y=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)({}).hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},y.apply(null,arguments)}const f=({options:e,value:t,onClick:n,showPrimaryColor:i})=>{const r=(0,p.usePopupState)({variant:"popover",popupId:(0,o.useId)()});return o.createElement(p.InputAdornment,{position:"end"},o.createElement(v,y({isPrimaryColor:i,size:"small"},(0,p.bindTrigger)(r)),t),o.createElement(p.Menu,y({MenuListProps:{dense:!0}},(0,p.bindMenu)(r)),e.map(((t,i)=>o.createElement(m.MenuListItem,{key:t,onClick:()=>(t=>{n(e[t]),r.close()})(i)},t.toUpperCase())))))},v=(0,p.styled)(p.Button,{shouldForwardProp:e=>"isPrimaryColor"!==e})((({isPrimaryColor:e,theme:t})=>({color:e?t.palette.text.primary:t.palette.text.tertiary,font:"inherit",minWidth:"initial",textTransform:"uppercase"}))),w=["e","E","+","-"];function b(e){return null!=e&&!isNaN(Number(e))}const g=({value:e,onChange:t,propType:n})=>{const i=(e=>e?s(e)?.default_unit??u:u)(n),r=l(n),a=c(e,i??u,r),[p,m]=(0,o.useState)(a);(0,o.useEffect)((()=>{const{size:e,unit:n}=p;t("auto"!==n?null!==e?(({size:e,unit:t})=>"auto"===t?"auto":`${e??""}${t}`)(p):"":"auto")}),[p,t]);const y=e=>{m((t=>"auto"===e?{unit:e,size:null}:{...t,unit:e}))},v=(0,o.useRef)("");return o.createElement(d,{type:"number",value:p.size??"",onChange:e=>{const t=z(e);m((e=>t&&"auto"===e.unit?{size:t,unit:i??u}:{...e,size:t}))},onKeyUp:e=>{const{key:t}=e;if(!/^[a-zA-Z%]$/.test(t))return;e.preventDefault();const n=t.toLowerCase(),i=(v.current+n).slice(-3);v.current=i;const o=r.find((e=>e.includes(i)))||r.find((e=>e.startsWith(n)))||r.find((e=>e.includes(n)));o&&y(o)},onKeyDown:e=>{w.includes(e.key)&&e.preventDefault()},endAdornment:o.createElement(f,{showPrimaryColor:b(p.size)||"auto"===p.unit,options:r,value:p.unit,onClick:y})})},z=e=>""===e.trim()?null:Number(e);var h=window.elementorV2.schema;const P=(0,n.createPropUtils)("global-size-variable",h.z.string());function C(e,t){const n=l(e),{unit:i}=c(t.value);return n.includes(i)}function V(){(0,i.registerVariableType)({valueField:g,icon:r.ExpandDiagonalIcon,propTypeUtil:P,fallbackPropTypeUtil:n.sizePropTypeUtil,variableType:"size",defaultValue:"0px",selectionFilter:(e,t)=>{const n=l(t);return e.filter((e=>{const{unit:t}=c(e.value);return n.includes(t)}))},isCompatible:C,valueTransformer:c})}(window.elementorV2=window.elementorV2||{}).editorVariablesExtended=t}(),window.elementorV2.editorVariablesExtended?.init?.();
!function(){"use strict";var e={d:function(t,n){for(var i in n)e.o(n,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:n[i]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{init:function(){return T}});var n=window.elementorV2.editorProps,i=window.elementorV2.editorVariables,r=window.elementorV2.icons,o=window.React;const u="px",l=["px","%","em","rem","vw","vh","auto"],a=e=>{if(!e)return l;const t=s(e);return Array.isArray(t.available_units)&&0!==t.available_units.length?t.available_units.filter((e=>"custom"!==e)):l},s=e=>"union"===e?.kind?e.prop_types[n.sizePropTypeUtil.key].settings:{},c=(e,t,n)=>{if("string"!=typeof e)return"custom"===e?.unit?{size:null,unit:u}:"auto"===e.unit?{size:null,unit:e.unit}:e;const i={size:null,unit:t??u},r=n??(()=>{const e=window;return e.elementor?.config?.supported_size_units??[]})();if("auto"===e)return r.includes(e)?{size:"",unit:e}:i;const o=e.match(/^(-?\d*\.?\d+)([a-z%]+)$/i);if(o){const e=parseFloat(o[1]),t=o[2];if(r.includes(t))return{size:e,unit:t}}return i};var d=window.elementorV2.ui;const p=({value:e,onChange:t,endAdornment:n,onKeyUp:i,onKeyDown:r,type:u})=>o.createElement(d.TextField,{size:"tiny",type:u,fullWidth:!0,value:e,onKeyUp:i,onKeyDown:r,onChange:e=>t(e.target.value),InputProps:{endAdornment:n}});var m=window.elementorV2.editorUi;function y(){return y=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)({}).hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},y.apply(null,arguments)}const f=({options:e,value:t,onClick:n,showPrimaryColor:i})=>{const r=(0,d.usePopupState)({variant:"popover",popupId:(0,o.useId)()});return o.createElement(d.InputAdornment,{position:"end"},o.createElement(v,y({isPrimaryColor:i,size:"small"},(0,d.bindTrigger)(r)),t),o.createElement(d.Menu,y({MenuListProps:{dense:!0}},(0,d.bindMenu)(r)),e.map(((t,i)=>o.createElement(m.MenuListItem,{key:t,onClick:()=>(t=>{n(e[t]),r.close()})(i)},t.toUpperCase())))))},v=(0,d.styled)(d.Button,{shouldForwardProp:e=>"isPrimaryColor"!==e})((({isPrimaryColor:e,theme:t})=>({color:e?t.palette.text.primary:t.palette.text.tertiary,font:"inherit",minWidth:"initial",textTransform:"uppercase"}))),w=["auto"],b=["e","E","+","-"];function g(e){return null!=e&&!isNaN(Number(e))}const z=({value:e,onChange:t,propType:n})=>{const i=(e=>e?s(e)?.default_unit??u:u)(n),r=a(n),l=c(e,i??u,r),[d,m]=(0,o.useState)(l);(0,o.useEffect)((()=>{const{size:e,unit:n}=d;t("auto"!==n?null!==e?(({size:e,unit:t})=>"auto"===t?"auto":`${e??""}${t}`)(d):"":"auto")}),[d,t]);const y=e=>{m((t=>"auto"===e?{unit:e,size:null}:{...t,unit:e}))},v=(0,o.useRef)("");return o.createElement(p,{type:"number",value:d.size??"",onChange:e=>{const t=h(e);m((e=>t&&"auto"===e.unit?{size:t,unit:i??u}:{...e,size:t}))},onKeyUp:e=>{const{key:t}=e;if(!/^[a-zA-Z%]$/.test(t))return;e.preventDefault();const n=t.toLowerCase(),i=(v.current+n).slice(-3);v.current=i;const o=r.find((e=>!w.includes(e)&&e.includes(i)))||r.find((e=>!w.includes(e)&&e.startsWith(n)))||r.find((e=>!w.includes(e)&&e.includes(n)));o&&y(o)},onKeyDown:e=>{b.includes(e.key)&&e.preventDefault()},endAdornment:o.createElement(f,{showPrimaryColor:g(d.size)||"auto"===d.unit,options:r,value:d.unit,onClick:y})})},h=e=>""===e.trim()?null:Number(e);var P=window.elementorV2.schema;const C=(0,n.createPropUtils)("global-size-variable",P.z.string());function V(e,t){const n=a(e),{unit:i}=c(t.value);return n.includes(i)}function T(){(0,i.registerVariableType)({valueField:z,icon:r.ExpandDiagonalIcon,propTypeUtil:C,fallbackPropTypeUtil:n.sizePropTypeUtil,variableType:"size",defaultValue:"0px",selectionFilter:(e,t)=>{const n=a(t);return e.filter((e=>{const{unit:t}=c(e.value);return n.includes(t)}))},isCompatible:V,valueTransformer:c})}(window.elementorV2=window.elementorV2||{}).editorVariablesExtended=t}(),window.elementorV2.editorVariablesExtended?.init?.();

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["paypal-button"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[375],{466:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class PayPalHandler extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{button:".elementor-button.elementor-paypal-legacy",errors:".elementor-message-danger"}}}getDefaultElements(){const e=this.getSettings();return{wrapper:this.$element[0],button:this.$element[0].querySelector(e.selectors.button),errors:this.$element[0].querySelectorAll(e.selectors.errors)}}handleClick(e){0<this.elements.errors.length&&(e.preventDefault(),this.elements.errors.forEach((e=>{e.classList.remove("elementor-hidden")})))}bindEvents(){this.elements.button.addEventListener("click",this.handleClick.bind(this))}}t.default=PayPalHandler}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["popup"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[887],{5985:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=elementorModules.frontend.handlers.Base.extend({getDefaultSettings:()=>({selectors:{form:".elementor-form"}}),getDefaultElements(){var e=this.getSettings("selectors"),t={};return t.$form=this.$element.find(e.form),t},bindEvents(){this.elements.$form.on("submit_success",this.handleFormAction)},handleFormAction(e,t){if(void 0===t.data.popup)return;const o=t.data.popup;if("open"===o.action)return elementorProFrontend.modules.popup.showPopup(o);setTimeout((()=>elementorProFrontend.modules.popup.closePopup(o,e)),1e3)}})}}]);

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["portfolio"],{

View File

@@ -1,2 +1,2 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[396],{7907:(e,t,s)=>{var n=s(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=n(s(2195));t.default=i.default.extend({getSkinPrefix:()=>"cards_"})},2195:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=elementorModules.frontend.handlers.Base.extend({getSkinPrefix:()=>"classic_",bindEvents(){elementorFrontend.addListenerOnce(this.getModelCID(),"resize",this.onWindowResize)},unbindEvents(){elementorFrontend.removeListeners(this.getModelCID(),"resize",this.onWindowResize)},getClosureMethodsNames(){return elementorModules.frontend.handlers.Base.prototype.getClosureMethodsNames.apply(this,arguments).concat(["fitImages","onWindowResize","runMasonry"])},getDefaultSettings:()=>({classes:{fitHeight:"elementor-fit-height",hasItemRatio:"elementor-has-item-ratio"},selectors:{postsContainer:".elementor-posts-container",post:".elementor-post",postThumbnail:".elementor-post__thumbnail",postThumbnailImage:".elementor-post__thumbnail img"}}),getDefaultElements(){var e=this.getSettings("selectors");return{$postsContainer:this.$element.find(e.postsContainer),$posts:this.$element.find(e.post)}},fitImage(e){var t=this.getSettings(),s=e.find(t.selectors.postThumbnail),n=s.find("img")[0];if(n){var i=s.outerHeight()/s.outerWidth(),o=n.naturalHeight/n.naturalWidth;s.toggleClass(t.classes.fitHeight,o<i)}},fitImages(){var e=jQuery,t=this,s=getComputedStyle(this.$element[0],":after").content,n=this.getSettings();t.isMasonryEnabled()?this.elements.$postsContainer.removeClass(n.classes.hasItemRatio):(this.elements.$postsContainer.toggleClass(n.classes.hasItemRatio,!!s.match(/\d/)),this.elements.$posts.each((function(){var s=e(this),i=s.find(n.selectors.postThumbnailImage);t.fitImage(s),i.on("load",(function(){t.fitImage(s)}))})))},setColsCountSettings(){const e=this.getElementSettings(),t=this.getSkinPrefix(),s=elementorProFrontend.utils.controls.getResponsiveControlValue(e,`${t}columns`);this.setSettings("colsCount",s)},isMasonryEnabled(){return!!this.getElementSettings(this.getSkinPrefix()+"masonry")},initMasonry(){imagesLoaded(this.elements.$posts,this.runMasonry)},getVerticalSpaceBetween(){let e=elementorProFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(),`${this.getSkinPrefix()}row_gap`,"size");return""===this.getSkinPrefix()&&""===e&&(e=this.getElementSettings("item_gap.size")),e},runMasonry(){var e=this.elements;e.$posts.css({marginTop:"",transitionDuration:""}),this.setColsCountSettings();var t=this.getSettings("colsCount"),s=this.isMasonryEnabled()&&t>=2;if(e.$postsContainer.toggleClass("elementor-posts-masonry",s),!s)return void e.$postsContainer.height("");const n=this.getVerticalSpaceBetween();new elementorModules.utils.Masonry({container:e.$postsContainer,items:e.$posts.filter(":visible"),columnsCount:this.getSettings("colsCount"),verticalSpaceBetween:n||0}).run()},run(){setTimeout(this.fitImages,0),this.initMasonry()},onInit(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.bindEvents(),this.run()},onWindowResize(){this.fitImages(),this.runMasonry()},onElementChange(){this.fitImages(),setTimeout(this.runMasonry)}})}}]);

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
"use strict";
(self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["posts"],{

View File

@@ -1,4 +1,4 @@
/*! pro-elements -v3.33.0 - 03-12-2025 */
/*! pro-elements- v3.34.0 - 22-12-2025 */
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ({

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More