(function(_wordpress_i18n) { //#region \0rolldown/runtime.js var __create = Object.create; var __defProp = Object.defineProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __esmMin = (fn, res, err) => () => { if (err) throw err[0]; try { return fn && (res = fn(fn = 0)), res; } catch (e) { throw err = [e], e; } }; var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports); var __exportAll = (all, no_symbols) => { let target = {}; for (var name in all) { __defProp(target, name, { get: all[name], enumerable: true }); } if (!no_symbols) { __defProp(target, Symbol.toStringTag, { value: "Module" }); } return target; }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) { key = keys[i]; if (!__hasOwnProp.call(to, key) && key !== except) { __defProp(to, key, { get: ((k) => from[k]).bind(null, key), enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } } } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod)); //#endregion //#region node_modules/@babel/runtime/helpers/esm/classCallCheck.js function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } var init_classCallCheck = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/typeof.js function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) { return typeof o; } : function(o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } var init_typeof = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/toPrimitive.js function toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } var init_toPrimitive = __esmMin((() => { init_typeof(); })); //#endregion //#region node_modules/@babel/runtime/helpers/esm/toPropertyKey.js function toPropertyKey(t) { var i = toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } var init_toPropertyKey = __esmMin((() => { init_typeof(); init_toPrimitive(); })); //#endregion //#region node_modules/@babel/runtime/helpers/esm/createClass.js function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o); } } function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } var init_createClass = __esmMin((() => { init_toPropertyKey(); })); //#endregion //#region node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } var init_assertThisInitialized = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } var init_possibleConstructorReturn = __esmMin((() => { init_typeof(); init_assertThisInitialized(); })); //#endregion //#region node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } var init_getPrototypeOf = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } var init_setPrototypeOf = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/inherits.js function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } var init_inherits = __esmMin((() => { init_setPrototypeOf(); })); //#endregion //#region modules/styleguide/assets/js/commands/enable.js init_classCallCheck(); init_createClass(); init_possibleConstructorReturn(); init_getPrototypeOf(); init_inherits(); function _callSuper$8(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$8() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } __name(_callSuper$8, "_callSuper"); function _isNativeReflectConstruct$8() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (t) {} return (_isNativeReflectConstruct$8 = function _isNativeReflectConstruct() { return !!t; })(); } __name(_isNativeReflectConstruct$8, "_isNativeReflectConstruct"); var Enable = /*#__PURE__*/ function(_$e$modules$CommandBa) { function Enable() { _classCallCheck(this, Enable); return _callSuper$8(this, Enable, arguments); } _inherits(Enable, _$e$modules$CommandBa); return _createClass(Enable, [{ key: "apply", value: function apply(args) { $e.components.get("preview/styleguide").enableStyleguidePreview(args); } }]); }($e.modules.CommandBase); //#endregion //#region modules/styleguide/assets/js/commands/global-colors.js init_classCallCheck(); init_createClass(); init_possibleConstructorReturn(); init_getPrototypeOf(); init_inherits(); function _callSuper$7(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$7() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } __name(_callSuper$7, "_callSuper"); function _isNativeReflectConstruct$7() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (t) {} return (_isNativeReflectConstruct$7 = function _isNativeReflectConstruct() { return !!t; })(); } __name(_isNativeReflectConstruct$7, "_isNativeReflectConstruct"); var GlobalColors = /*#__PURE__*/ function(_$e$modules$CommandBa) { function GlobalColors() { _classCallCheck(this, GlobalColors); return _callSuper$7(this, GlobalColors, arguments); } _inherits(GlobalColors, _$e$modules$CommandBa); return _createClass(GlobalColors, [{ key: "apply", value: function apply() { $e.components.get("preview/styleguide").showStyleguidePreview(); } }]); }($e.modules.CommandBase); //#endregion //#region modules/styleguide/assets/js/commands/global-typography.js init_classCallCheck(); init_createClass(); init_possibleConstructorReturn(); init_getPrototypeOf(); init_inherits(); function _callSuper$6(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$6() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } __name(_callSuper$6, "_callSuper"); function _isNativeReflectConstruct$6() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (t) {} return (_isNativeReflectConstruct$6 = function _isNativeReflectConstruct() { return !!t; })(); } __name(_isNativeReflectConstruct$6, "_isNativeReflectConstruct"); var GlobalTypography = /*#__PURE__*/ function(_$e$modules$CommandBa) { function GlobalTypography() { _classCallCheck(this, GlobalTypography); return _callSuper$6(this, GlobalTypography, arguments); } _inherits(GlobalTypography, _$e$modules$CommandBa); return _createClass(GlobalTypography, [{ key: "apply", value: function apply() { $e.components.get("preview/styleguide").showStyleguidePreview(); } }]); }($e.modules.CommandBase); //#endregion //#region modules/styleguide/assets/js/commands/hide.js init_classCallCheck(); init_createClass(); init_possibleConstructorReturn(); init_getPrototypeOf(); init_inherits(); function _callSuper$5(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$5() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } __name(_callSuper$5, "_callSuper"); function _isNativeReflectConstruct$5() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (t) {} return (_isNativeReflectConstruct$5 = function _isNativeReflectConstruct() { return !!t; })(); } __name(_isNativeReflectConstruct$5, "_isNativeReflectConstruct"); var Hide = /*#__PURE__*/ function(_$e$modules$CommandBa) { function Hide() { _classCallCheck(this, Hide); return _callSuper$5(this, Hide, arguments); } _inherits(Hide, _$e$modules$CommandBa); return _createClass(Hide, [{ key: "apply", value: function apply() { $e.components.get("preview/styleguide").hideStyleguidePreview(); } }]); }($e.modules.CommandBase); //#endregion //#region modules/styleguide/assets/js/commands/switcher-change.js init_classCallCheck(); init_createClass(); init_possibleConstructorReturn(); init_getPrototypeOf(); init_inherits(); function _callSuper$4(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$4() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } __name(_callSuper$4, "_callSuper"); function _isNativeReflectConstruct$4() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (t) {} return (_isNativeReflectConstruct$4 = function _isNativeReflectConstruct() { return !!t; })(); } __name(_isNativeReflectConstruct$4, "_isNativeReflectConstruct"); var SwitcherChange = /*#__PURE__*/ function(_$e$modules$CommandBa) { function SwitcherChange() { _classCallCheck(this, SwitcherChange); return _callSuper$4(this, SwitcherChange, arguments); } _inherits(SwitcherChange, _$e$modules$CommandBa); return _createClass(SwitcherChange, [{ key: "validateArgs", value: function validateArgs() { var args = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; this.requireArgumentType("name", "string", args); this.requireArgumentType("value", "string", args); } }, { key: "apply", value: function apply(args) { if (args.name.includes("enable_styleguide_preview")) $e.components.get("preview/styleguide").enableStyleguidePreview({ value: args.value }); } }]); }($e.modules.CommandBase); //#endregion //#region modules/styleguide/assets/js/commands/index.js var commands_exports = /* @__PURE__ */ __exportAll({ Enable: () => Enable, GlobalColors: () => GlobalColors, GlobalTypography: () => GlobalTypography, Hide: () => Hide, SwitcherChange: () => SwitcherChange }); //#endregion //#region node_modules/@babel/runtime/helpers/esm/superPropBase.js init_getPrototypeOf(); function _superPropBase(t, o) { for (; !{}.hasOwnProperty.call(t, o) && null !== (t = _getPrototypeOf(t));); return t; } //#endregion //#region node_modules/@babel/runtime/helpers/esm/get.js function _get() { return _get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function(e, t, r) { var p = _superPropBase(e, t); if (p) { var n = Object.getOwnPropertyDescriptor(p, t); return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value; } }, _get.apply(null, arguments); } //#endregion //#region node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } var init_arrayWithHoles = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e; var n; var i; var u; var a = []; var f = !0; var o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } var init_iterableToArrayLimit = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } var init_arrayLikeToArray = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } var init_unsupportedIterableToArray = __esmMin((() => { init_arrayLikeToArray(); })); //#endregion //#region node_modules/@babel/runtime/helpers/esm/nonIterableRest.js function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var init_nonIterableRest = __esmMin((() => {})); //#endregion //#region node_modules/@babel/runtime/helpers/esm/slicedToArray.js function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } var init_slicedToArray = __esmMin((() => { init_arrayWithHoles(); init_iterableToArrayLimit(); init_unsupportedIterableToArray(); init_nonIterableRest(); })); //#endregion //#region node_modules/@babel/runtime/helpers/esm/defineProperty.js function _defineProperty(e, r, t) { return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } var init_defineProperty = __esmMin((() => { init_toPropertyKey(); })); //#endregion //#region assets/dev/js/editor/components/validator/base.js var require_base$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => { module.exports = elementorModules.Module.extend({ errors: [], __construct: function __construct(settings) { var customValidationMethod = settings.customValidationMethod; if (customValidationMethod) this.validationMethod = customValidationMethod; }, getDefaultSettings: function getDefaultSettings() { return { validationTerms: {} }; }, isValid: function isValid() { var validationErrors = this.validationMethod.apply(this, arguments); if (validationErrors.length) { this.errors = validationErrors; return false; } return true; }, validationMethod: function validationMethod(newValue) { var validationTerms = this.getSettings("validationTerms"); var errors = []; if (validationTerms.required) { if (!("" + newValue).length) errors.push("Required value is empty"); } return errors; } }); })); //#endregion //#region assets/dev/js/editor/components/validator/number.js var require_number = /* @__PURE__ */ __commonJSMin(((exports, module) => { var Validator = require_base$1(); module.exports = Validator.extend({ validationMethod: function validationMethod(newValue) { var validationTerms = this.getSettings("validationTerms"); var errors = []; if (_.isFinite(newValue)) { if (void 0 !== validationTerms.min && newValue < validationTerms.min) errors.push("Value is less than minimum"); if (void 0 !== validationTerms.max && newValue > validationTerms.max) errors.push("Value is greater than maximum"); } return errors; } }); })); //#endregion //#region assets/dev/js/editor/components/validator/breakpoint.js function _callSuper$3(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$3() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } function _isNativeReflectConstruct$3() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (t) {} return (_isNativeReflectConstruct$3 = function _isNativeReflectConstruct() { return !!t; })(); } var NumberValidator, BreakpointValidator; var init_breakpoint = __esmMin((() => { init_classCallCheck(); init_createClass(); init_possibleConstructorReturn(); init_getPrototypeOf(); init_inherits(); __name(_callSuper$3, "_callSuper"); __name(_isNativeReflectConstruct$3, "_isNativeReflectConstruct"); NumberValidator = require_number(); BreakpointValidator = /*#__PURE__*/ function(_NumberValidator) { function BreakpointValidator() { _classCallCheck(this, BreakpointValidator); return _callSuper$3(this, BreakpointValidator, arguments); } _inherits(BreakpointValidator, _NumberValidator); return _createClass(BreakpointValidator, [ { key: "getDefaultSettings", value: function getDefaultSettings() { return { validationTerms: { max: 5120 } }; } }, { key: "getPanelActiveBreakpoints", value: function getPanelActiveBreakpoints() { var panelBreakpoints = elementor.documents.currentDocument.config.settings.settings.active_breakpoints.map(function(breakpointName) { return breakpointName.replace("viewport_", ""); }); var panelActiveBreakpoints = {}; panelBreakpoints.forEach(function(breakpointName) { panelActiveBreakpoints[breakpointName] = elementorFrontend.config.responsive.breakpoints[breakpointName]; }); return panelActiveBreakpoints; } }, { key: "initBreakpointProperties", value: function initBreakpointProperties() { var _activeBreakpoints$br; var _activeBreakpoints$br2; var validationTerms = this.getSettings("validationTerms"); var activeBreakpoints = this.getPanelActiveBreakpoints(); var breakpointKeys = Object.keys(activeBreakpoints); this.breakpointIndex = breakpointKeys.indexOf(validationTerms.breakpointName); this.topBreakpoint = (_activeBreakpoints$br = activeBreakpoints[breakpointKeys[this.breakpointIndex + 1]]) === null || _activeBreakpoints$br === void 0 ? void 0 : _activeBreakpoints$br.value; this.bottomBreakpoint = (_activeBreakpoints$br2 = activeBreakpoints[breakpointKeys[this.breakpointIndex - 1]]) === null || _activeBreakpoints$br2 === void 0 ? void 0 : _activeBreakpoints$br2.value; } }, { key: "validationMethod", value: function validationMethod(newValue) { var validationTerms = this.getSettings("validationTerms"); var errors = NumberValidator.prototype.validationMethod.call(this, newValue); if (_.isFinite(newValue) || "" === newValue) { if (!this.validateMinMaxForBreakpoint(newValue, validationTerms)) errors.push("Value is not between the breakpoints above or under the edited breakpoint"); } return errors; } }, { key: "validateMinMaxForBreakpoint", value: function validateMinMaxForBreakpoint(newValue, validationTerms) { var breakpointDefaultValue = elementorFrontend.config.responsive.breakpoints[validationTerms.breakpointName].default_value; var isValid = true; this.initBreakpointProperties(); if ("mobile" === validationTerms.breakpointName && 320 === this.bottomBreakpoint) this.bottomBreakpoint -= 1; if (this.bottomBreakpoint) { if ("" !== newValue && newValue <= this.bottomBreakpoint) isValid = false; if ("" === newValue && breakpointDefaultValue <= this.bottomBreakpoint) isValid = false; } if (this.topBreakpoint) { if ("" !== newValue && newValue >= this.topBreakpoint) isValid = false; if ("" === newValue && breakpointDefaultValue >= this.topBreakpoint) isValid = false; } return isValid; } } ]); }(NumberValidator); })); //#endregion //#region assets/dev/js/editor/controls/base.js var require_base = /* @__PURE__ */ __commonJSMin(((exports, module) => { init_defineProperty(); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function(r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } var ControlBaseView = Marionette.CompositeView.extend({ ui: function ui() { return { controlTitle: ".elementor-control-title" }; }, behaviors: function behaviors() { return elementor.hooks.applyFilters("controls/base/behaviors", {}, this); }, getBehavior: function getBehavior(name) { return this._behaviors[Object.keys(this.behaviors()).indexOf(name)]; }, className: function className() { var classes = "elementor-control elementor-control-" + this.model.get("name") + " elementor-control-type-" + this.model.get("type"); var modelClasses = this.model.get("classes"); var responsive = this.model.get("responsive"); if (!_.isEmpty(modelClasses)) classes += " " + modelClasses; if (!_.isEmpty(responsive)) { var responsiveControlName = responsive.max || responsive.min; classes += " elementor-control-responsive-" + responsiveControlName; } return classes; }, templateHelpers: function templateHelpers() { var controlData = { _cid: this.model.cid }; return { view: this, data: _.extend({}, this.model.toJSON(), controlData) }; }, getTemplate: function getTemplate() { return Marionette.TemplateCache.get("#tmpl-elementor-control-" + this.model.get("type") + "-content"); }, initialize: function initialize(options) { var label = this.model.get("label"); Object.defineProperty(this, "container", { get: function get() { if (!options.container) { var settingsModel = options.elementSettingsModel; var view = $e.components.get("document").utils.findViewById(settingsModel.id); if (view && view.getContainer) options.container = view.getContainer(); else { if (!settingsModel.id) settingsModel.id = "bc-" + elementorCommon.helpers.getUniqueId(); options.container = new elementorModules.editor.Container({ type: "bc-container", id: settingsModel.id, model: settingsModel, settings: settingsModel, label, view: false, parent: false, renderer: false, controls: settingsModel.options.controls }); } } return options.container; } }); Object.defineProperty(this, "elementSettingsModel", { get: function get() { elementorDevTools.deprecation.deprecated("elementSettingsModel", "2.8.0", "container.settings"); return options.container ? options.container.settings : options.elementSettingsModel; } }); var controlType = this.model.get("type"); var controlSettings = jQuery.extend(true, {}, elementor.config.controls[controlType], this.model.attributes); this.model.set(controlSettings); var settings = this.container ? this.container.settings : this.elementSettingsModel; this.listenTo(settings, "change", this.onAfterChange); if (this.model.attributes.responsive) { this.onDeviceModeChange = this.onDeviceModeChange.bind(this); elementor.listenTo(elementor.channels.deviceMode, "change", this.onDeviceModeChange); } }, onDestroy: function onDestroy() { elementor.stopListening(elementor.channels.deviceMode, "change", this.onDeviceModeChange); }, onDeviceModeChange: function onDeviceModeChange() { this.toggleControlVisibility(); }, onAfterChange: function onAfterChange() { this.toggleControlVisibility(); }, toggleControlVisibility: function toggleControlVisibility() { var settings = this.container ? this.container.settings : this.elementSettingsModel; var isVisible = elementor.helpers.isActiveControl(this.model, settings.attributes, settings.controls); this.$el.toggleClass("elementor-hidden-control", !isVisible); elementor.getPanelView().updateScrollbar(); }, onRender: function onRender() { var layoutType = this.model.get("label_block") ? "block" : "inline"; var showLabel = this.model.get("show_label"); var elClasses = "elementor-label-" + layoutType; elClasses += " elementor-control-separator-" + this.model.get("separator"); if (!showLabel) elClasses += " elementor-control-hidden-label"; this.$el.addClass(elClasses); this.toggleControlVisibility(); }, reRoute: function reRoute(controlActive) { $e.route($e.routes.getCurrent("panel"), this.getControlInRouteArgs(controlActive ? this.getControlPath() : ""), { history: false }); }, getControlInRouteArgs: function getControlInRouteArgs(path) { return _objectSpread(_objectSpread({}, $e.routes.getCurrentArgs("panel")), {}, { activeControl: path }); }, getControlPath: function getControlPath() { var controlPath = this.model.get("name"); var parent = this._parent; while (!parent.$el.hasClass("elementor-controls-stack")) { controlPath = (parent.model.get("name") || parent.model.get("_id")) + "/" + controlPath; parent = parent._parent; } return controlPath; } }); module.exports = ControlBaseView; })); //#endregion //#region assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js var require_tag_controls_stack_empty = /* @__PURE__ */ __commonJSMin(((exports, module) => { module.exports = Marionette.ItemView.extend({ className: "elementor-tag-controls-stack-empty", template: "#tmpl-elementor-tag-controls-stack-empty" }); })); //#endregion //#region assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js var require_tag_controls_stack = /* @__PURE__ */ __commonJSMin(((exports, module) => { var EmptyView = require_tag_controls_stack_empty(); module.exports = elementorModules.editor.views.ControlsStack.extend({ activeTab: "content", template: _.noop, emptyView: EmptyView, isEmpty: function isEmpty() { return this.collection.length < 2; }, childViewOptions: function childViewOptions() { return { container: this.options.container }; }, getNamespaceArray: function getNamespaceArray() { var currentPageView = elementor.getPanelView().getCurrentPageView(); var eventNamespace = currentPageView.getNamespaceArray(); eventNamespace.push(currentPageView.activeSection); eventNamespace.push(this.getOption("controlName")); eventNamespace.push(this.getOption("name")); return eventNamespace; }, onRenderTemplate: function onRenderTemplate() { this.activateFirstSection(); } }); })); //#endregion //#region assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js var require_tag_panel_view = /* @__PURE__ */ __commonJSMin(((exports, module) => { var TagControlsStack = require_tag_controls_stack(); module.exports = Marionette.ItemView.extend({ className: "elementor-dynamic-cover e-input-style", tagControlsStack: null, templateHelpers: function templateHelpers() { var helpers = {}; if (this.model) helpers.controls = this.model.options.controls; return helpers; }, ui: { remove: ".elementor-dynamic-cover__remove" }, events: function events() { var events = { "click @ui.remove": "onRemoveClick" }; if (this.hasSettings()) events.click = "onClick"; return events; }, getTemplate: function getTemplate() { var config = this.getTagConfig(); var templateFunction = Marionette.TemplateCache.get("#tmpl-elementor-control-dynamic-cover"); var renderedTemplate = Marionette.Renderer.render(templateFunction, { hasSettings: this.hasSettings(), isRemovable: !this.getOption("dynamicSettings").default, title: config.title, content: config.panel_template }); return Marionette.TemplateCache.prototype.compileTemplate(renderedTemplate.trim()); }, getTagConfig: function getTagConfig() { return elementor.dynamicTags.getConfig("tags." + this.getOption("name")); }, initSettingsPopup: function initSettingsPopup() { var settingsPopupOptions = { className: "elementor-tag-settings-popup", position: { my: "left top+5", at: "left bottom", of: this.$el, autoRefresh: true }, hide: { ignore: ".select2-container" } }; var settingsPopup = elementorCommon.dialogsManager.createWidget("buttons", settingsPopupOptions); this.getSettingsPopup = function() { return settingsPopup; }; }, hasSettings: function hasSettings() { return !!Object.values(this.getTagConfig().controls).length; }, showSettingsPopup: function showSettingsPopup() { if (!this.tagControlsStack) this.initTagControlsStack(); var settingsPopup = this.getSettingsPopup(); if (settingsPopup.isVisible()) return; settingsPopup.show(); }, initTagControlsStack: function initTagControlsStack() { this.tagControlsStack = new TagControlsStack({ model: this.model, controls: this.model.controls, name: this.options.name, controlName: this.options.controlName, container: this.options.container, el: this.getSettingsPopup().getElements("message")[0] }); this.tagControlsStack.render(); }, initModel: function initModel() { this.model = new elementorModules.editor.elements.models.BaseSettings(this.getOption("settings"), { controls: this.getTagConfig().controls }); }, initialize: function initialize() { this.initModel(); if (!this.hasSettings()) return; this.initSettingsPopup(); this.listenTo(this.model, "change", this.render); }, onClick: function onClick() { this.showSettingsPopup(); }, onRemoveClick: function onRemoveClick(event) { event.stopPropagation(); this.destroy(); this.trigger("remove"); }, onDestroy: function onDestroy() { if (this.hasSettings()) this.getSettingsPopup().destroy(); if (this.tagControlsStack) this.tagControlsStack.destroy(); } }); })); //#endregion //#region assets/dev/js/editor/components/dynamic-tags/control-behavior.js var require_control_behavior = /* @__PURE__ */ __commonJSMin(((exports, module) => { init_defineProperty(); var TagPanelView = require_tag_panel_view(); module.exports = Marionette.Behavior.extend({ tagView: null, listenerAttached: false, initialize: function initialize() { if (!this.listenerAttached) { this.listenTo(this.view.options.container.settings, "change:external:__dynamic__", this.onAfterExternalChange); this.listenerAttached = true; } }, shouldRenderTools: function shouldRenderTools() { if (this.getOption("dynamicSettings").default) return false; var isFeatureAvailableToUser = elementor.helpers.hasPro() && !elementor.helpers.hasProAndNotConnected(); var hasTags = this.getOption("tags").length > 0; return !isFeatureAvailableToUser || hasTags; }, renderTools: function renderTools() { var _this = this; if (!this.shouldRenderTools()) return; var $dynamicSwitcher = jQuery(Marionette.Renderer.render("#tmpl-elementor-control-dynamic-switcher")); $dynamicSwitcher.on("click", function(event) { return _this.onDynamicSwitcherClick(event); }); this.$el.find(".elementor-control-dynamic-switcher-wrapper").append($dynamicSwitcher); this.ui.dynamicSwitcher = $dynamicSwitcher; if ("color" === this.view.model.get("type")) if (this.view.colorPicker) this.moveDynamicSwitcherToColorPicker(); else setTimeout(function() { return _this.moveDynamicSwitcherToColorPicker(); }); this.ui.dynamicSwitcher.tipsy({ title: function title() { return this.getAttribute("data-tooltip"); }, gravity: "s" }); }, moveDynamicSwitcherToColorPicker: function moveDynamicSwitcherToColorPicker() { var $colorPickerToolsContainer = this.view.colorPicker.$pickerToolsContainer; this.ui.dynamicSwitcher.removeClass("elementor-control-unit-1").addClass("e-control-tool"); var $eyedropper = $colorPickerToolsContainer.find(".elementor-control-element-color-picker"); if ($eyedropper.length) this.ui.dynamicSwitcher.insertBefore($eyedropper); else $colorPickerToolsContainer.append(this.ui.dynamicSwitcher); }, toggleDynamicClass: function toggleDynamicClass() { this.$el.toggleClass("elementor-control-dynamic-value", this.isDynamicMode()); }, isDynamicMode: function isDynamicMode() { var dynamicSettings = this.view.container.settings.get("__dynamic__"); return !!(dynamicSettings && dynamicSettings[this.view.model.get("name")]); }, createTagsList: function createTagsList() { var tags = _.groupBy(this.getOption("tags"), "group"); var groups = elementor.dynamicTags.getConfig("groups"); var $tagsList = this.ui.tagsList = jQuery("