', {
id: "elementor-popup__".concat(name, "-controls-group--").concat(groupName),
class: 'elementor-popup__display-settings_controls_group'
});
var $imageWrapper = jQuery('
', {
class: 'elementor-popup__display-settings_controls_group__icon'
}),
$image = jQuery('
![]()
', {
src: elementorPro.config.urls.modules + "popup/assets/images/".concat(name, "/").concat(groupName, ".svg")
});
$imageWrapper.html($image);
$groupWrapper.html($imageWrapper);
child.$el.before($groupWrapper);
$groupWrapper.append(child.$el);
_this2.toggleGroup(groupName, $groupWrapper);
});
}
}, {
key: "onModelChange",
value: function onModelChange() {
var changedControlName = (0, _keys.default)(this.model.changed)[0],
changedControlView = this.getControlViewByName(changedControlName);
if ('switcher' !== changedControlView.model.get('type')) {
return;
}
this.toggleGroup(changedControlName, changedControlView.$el.parent());
}
}]);
return _default;
}(elementorModules.editor.views.ControlsStack);
exports.default = _default;
/***/ }),
/* 362 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.PopupRemoveInstructions = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _baseHookPopupAfter = _interopRequireDefault(__webpack_require__(288));
var PopupRemoveInstructions = /*#__PURE__*/function (_BaseHookPopupAfter) {
(0, _inherits2.default)(PopupRemoveInstructions, _BaseHookPopupAfter);
var _super = (0, _createSuper2.default)(PopupRemoveInstructions);
function PopupRemoveInstructions() {
(0, _classCallCheck2.default)(this, PopupRemoveInstructions);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(PopupRemoveInstructions, [{
key: "getCommand",
value: function getCommand() {
return 'editor/documents/unload';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-popup-remove-instructions';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var document = args.document;
return 'popup' === document.config.type && !elementor.config.user.introduction.popupSettings;
}
}, {
key: "apply",
value: function apply() {
$e.components.get('panel/page-settings').off('route/close', this.component.onPageSettingsCloseHandler);
}
}]);
return PopupRemoveInstructions;
}(_baseHookPopupAfter.default);
exports.PopupRemoveInstructions = PopupRemoveInstructions;
var _default = PopupRemoveInstructions;
exports.default = _default;
/***/ }),
/* 363 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.PopupRemoveLibraryTab = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var PopupRemoveLibraryTab = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
(0, _inherits2.default)(PopupRemoveLibraryTab, _$e$modules$hookUI$Af);
var _super = (0, _createSuper2.default)(PopupRemoveLibraryTab);
function PopupRemoveLibraryTab() {
(0, _classCallCheck2.default)(this, PopupRemoveLibraryTab);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(PopupRemoveLibraryTab, [{
key: "getCommand",
value: function getCommand() {
return 'editor/documents/unload';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-popup-remove-library-tab';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var document = args.document;
return 'popup' === document.config.type;
}
}, {
key: "apply",
value: function apply() {
$e.components.get('library').removeTab('templates/popups');
}
}]);
return PopupRemoveLibraryTab;
}($e.modules.hookUI.After);
exports.PopupRemoveLibraryTab = PopupRemoveLibraryTab;
var _default = PopupRemoveLibraryTab;
exports.default = _default;
/***/ }),
/* 364 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.PopupRemoveTriggers = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var PopupRemoveTriggers = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
(0, _inherits2.default)(PopupRemoveTriggers, _$e$modules$hookUI$Af);
var _super = (0, _createSuper2.default)(PopupRemoveTriggers);
function PopupRemoveTriggers() {
(0, _classCallCheck2.default)(this, PopupRemoveTriggers);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(PopupRemoveTriggers, [{
key: "getCommand",
value: function getCommand() {
return 'editor/documents/unload';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-popup-remove-triggers';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var document = args.document;
return 'popup' === document.config.type;
}
}, {
key: "apply",
value: function apply() {
this.removePanelFooterSubmenuItems();
this.removePublishTabs();
}
}, {
key: "removePanelFooterSubmenuItems",
value: function removePanelFooterSubmenuItems() {
var displaySettingsTypes = elementorPro.modules.popup.displaySettingsTypes;
jQuery.each(displaySettingsTypes, function (type) {
elementor.getPanelView().footer.currentView.removeSubMenuItem('saver-options', {
name: type
});
});
}
}, {
key: "removePublishTabs",
value: function removePublishTabs() {
var component = $e.components.get('theme-builder-publish'),
displaySettingsTypes = elementorPro.modules.popup.displaySettingsTypes;
jQuery.each(displaySettingsTypes, function (type) {
component.removeTab(type);
});
}
}]);
return PopupRemoveTriggers;
}($e.modules.hookUI.After);
exports.PopupRemoveTriggers = PopupRemoveTriggers;
var _default = PopupRemoveTriggers;
exports.default = _default;
/***/ }),
/* 365 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _stringify = _interopRequireDefault(__webpack_require__(182));
var _keys = _interopRequireDefault(__webpack_require__(47));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _component = _interopRequireDefault(__webpack_require__(366));
var Module = /*#__PURE__*/function (_elementorModules$edi) {
(0, _inherits2.default)(Module, _elementorModules$edi);
var _super = (0, _createSuper2.default)(Module);
function Module() {
var _this;
(0, _classCallCheck2.default)(this, Module);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = _super.call.apply(_super, [this].concat(args));
_this.globalModels = {};
_this.panelWidgets = null; // TODO: This property is unused.
_this.templatesAreSaved = true;
return _this;
}
(0, _createClass2.default)(Module, [{
key: "addGlobalWidget",
value: function addGlobalWidget(id, args) {
args = _.extend({}, args, {
categories: [],
icon: elementor.widgetsCache[args.widgetType].icon,
widgetType: args.widgetType,
custom: {
templateID: id
}
});
var globalModel = this.createGlobalModel(id, args);
return this.panelWidgets.add(globalModel);
}
}, {
key: "createGlobalModel",
value: function createGlobalModel(id, modelArgs) {
var globalModel = new elementor.modules.elements.models.Element(modelArgs),
settingsModel = globalModel.get('settings');
globalModel.set('id', id);
settingsModel.on('change', _.bind(this.onGlobalModelChange, this));
return this.globalModels[id] = globalModel;
}
}, {
key: "onGlobalModelChange",
value: function onGlobalModelChange() {
this.templatesAreSaved = false;
}
}, {
key: "setWidgetType",
value: function setWidgetType() {
elementor.hooks.addFilter('element/view', function (DefaultView, model) {
if (model.get('templateID')) {
return __webpack_require__(373);
}
return DefaultView;
});
elementor.hooks.addFilter('element/model', function (DefaultModel, attrs) {
if (attrs.templateID) {
return __webpack_require__(374);
}
return DefaultModel;
});
}
}, {
key: "registerTemplateType",
value: function registerTemplateType() {
elementor.templates.registerTemplateType('widget', {
showInLibrary: false,
saveDialog: {
title: elementorPro.translate('global_widget_save_title'),
description: elementorPro.translate('global_widget_save_description')
},
prepareSavedData: function prepareSavedData(data) {
data.widgetType = data.content[0].widgetType;
return data;
},
ajaxParams: {
success: this.onWidgetTemplateSaved.bind(this)
}
});
}
}, {
key: "addSavedWidgetsToPanel",
value: function addSavedWidgetsToPanel() {
var _this2 = this;
this.panelWidgets = new Backbone.Collection();
_.each(elementorPro.config.widget_templates, function (templateArgs, id) {
_this2.addGlobalWidget(id, templateArgs);
});
elementor.hooks.addFilter('panel/elements/regionViews', function (regionViews) {
_.extend(regionViews.global, {
view: __webpack_require__(375),
options: {
collection: _this2.panelWidgets
}
});
return regionViews;
});
}
}, {
key: "addPanelPage",
value: function addPanelPage() {
elementor.getPanelView().addPage('globalWidget', {
view: __webpack_require__(377)
});
}
}, {
key: "getGlobalModels",
value: function getGlobalModels(id) {
if (!id) {
return this.globalModels;
}
return this.globalModels[id];
}
}, {
key: "saveTemplates",
value: function saveTemplates() {
if (!(0, _keys.default)(this.globalModels).length) {
return;
}
var templatesData = [];
_.each(this.globalModels, function (templateModel, id) {
if ('loaded' !== templateModel.get('settingsLoadedStatus')) {
return;
}
var data = {
content: (0, _stringify.default)([templateModel.toJSON({
remove: ['default']
})]),
source: 'local',
type: 'widget',
id: id
};
templatesData.push(data);
});
if (!templatesData.length) {
return;
}
elementorCommon.ajax.addRequest('update_templates', {
data: {
templates: templatesData
},
success: function success() {
this.templatesAreSaved = true;
}
});
}
}, {
key: "requestGlobalModelSettings",
value: function requestGlobalModelSettings(globalModel, callback, container) {
elementor.templates.requestTemplateContent('local', globalModel.get('id'), {
success: function success(data) {
globalModel.set('settingsLoadedStatus', 'loaded').trigger('settings:loaded');
var settings = data.content[0].settings,
settingsModel = globalModel.get('settings');
settingsModel.handleRepeaterData(settings);
settingsModel.set(settings); // Cover issue when dynamics comes after container already created.
if (container) {
delete container.view.container;
container.view.getContainer();
}
if (callback) {
callback(globalModel);
}
}
});
}
}, {
key: "setWidgetContextMenuSaveAction",
value: function setWidgetContextMenuSaveAction() {
elementor.hooks.addFilter('elements/widget/contextMenuGroups', function (groups, widget) {
var saveGroup = _.findWhere(groups, {
name: 'save'
});
if (!saveGroup) {
return groups;
}
var saveAction = _.findWhere(saveGroup.actions, {
name: 'save'
});
saveAction.callback = widget.save.bind(widget);
delete saveAction.shortcut;
return groups;
});
}
}, {
key: "onElementorInit",
value: function onElementorInit() {
var _this3 = this;
this.registerTemplateType();
this.setWidgetContextMenuSaveAction();
elementor.on('panel:init', function () {
_this3.addSavedWidgetsToPanel(); // setWidgetType depends on addSavedWidgetsToPanel.
_this3.setWidgetType();
});
}
}, {
key: "onElementorPreviewLoaded",
value: function onElementorPreviewLoaded(isFirst) {
if (!isFirst) {
return;
}
this.addPanelPage();
$e.routes.register('panel/editor', 'global', function (args) {
elementor.getPanelView().setPage('globalWidget', 'Global Editing', {
editedView: args.view
});
});
}
}, {
key: "onElementorInitComponents",
value: function onElementorInitComponents() {
$e.components.register(new _component.default({
manager: this
}));
}
}, {
key: "onWidgetTemplateSaved",
value: function onWidgetTemplateSaved(data) {
elementor.templates.layout.hideModal();
var container = $e.components.get('document').utils.findContainerById(elementor.templates.layout.modalContent.currentView.model.id);
$e.run('document/global/link', {
container: container,
data: data
});
}
}]);
return Module;
}(elementorModules.editor.utils.Module);
exports.default = Module;
/***/ }),
/* 366 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireWildcard = __webpack_require__(147);
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var commands = _interopRequireWildcard(__webpack_require__(367));
var hooks = _interopRequireWildcard(__webpack_require__(370));
var Component = /*#__PURE__*/function (_$e$modules$Component) {
(0, _inherits2.default)(Component, _$e$modules$Component);
var _super = (0, _createSuper2.default)(Component);
function Component() {
(0, _classCallCheck2.default)(this, Component);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(Component, [{
key: "getNamespace",
value: function getNamespace() {
return 'document/global';
}
}, {
key: "defaultCommands",
value: function defaultCommands() {
return this.importCommands(commands);
}
}, {
key: "defaultHooks",
value: function defaultHooks() {
return this.importHooks(hooks);
}
}]);
return Component;
}($e.modules.ComponentBase);
exports.default = Component;
/***/ }),
/* 367 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
_Object$defineProperty(exports, "Link", {
enumerable: true,
get: function get() {
return _link.Link;
}
});
_Object$defineProperty(exports, "Unlink", {
enumerable: true,
get: function get() {
return _unlink.Unlink;
}
});
var _link = __webpack_require__(368);
var _unlink = __webpack_require__(369);
/***/ }),
/* 368 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.Link = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var Link = /*#__PURE__*/function (_$e$modules$document$) {
(0, _inherits2.default)(Link, _$e$modules$document$);
var _super = (0, _createSuper2.default)(Link);
function Link() {
(0, _classCallCheck2.default)(this, Link);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(Link, [{
key: "validateArgs",
value: function validateArgs(args) {
this.requireContainer(args);
this.requireArgumentConstructor('data', Object, args);
var _args$containers = args.containers,
containers = _args$containers === void 0 ? [args.container] : _args$containers;
containers.forEach(function (
/* Container */
container) {
if ('global' === container.model.get('widgetType')) {
throw Error("Invalid container, id: '".concat(container.id, "' is already global."));
}
});
}
}, {
key: "getHistory",
value: function getHistory(args) {
var data = args.data;
return {
title: elementor.widgetsCache[data.widgetType].title,
subTitle: data.title,
type: elementorPro.translate('linked_to_global')
};
}
}, {
key: "apply",
value: function apply(args) {
var data = args.data,
_args$containers2 = args.containers,
containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
containers.forEach(function (
/** Container */
container) {
var widgetModel = container.model,
widgetModelIndex = widgetModel.collection.indexOf(widgetModel);
data.elType = data.type;
data.settings = widgetModel.get('settings').attributes;
var globalModel = elementorPro.modules.globalWidget.addGlobalWidget(data.template_id, data),
globalModelAttributes = globalModel.attributes;
$e.run('document/elements/create', {
container: container.parent,
model: {
id: elementor.helpers.getUniqueID(),
elType: globalModelAttributes.type,
templateID: globalModelAttributes.template_id,
widgetType: 'global'
},
options: {
at: widgetModelIndex
}
});
$e.run('document/elements/delete', {
container: container
});
});
$e.route('panel/elements/global');
}
}]);
return Link;
}($e.modules.document.CommandHistory);
exports.Link = Link;
var _default = Link;
exports.default = _default;
/***/ }),
/* 369 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.Unlink = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var Unlink = /*#__PURE__*/function (_$e$modules$document$) {
(0, _inherits2.default)(Unlink, _$e$modules$document$);
var _super = (0, _createSuper2.default)(Unlink);
function Unlink() {
(0, _classCallCheck2.default)(this, Unlink);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(Unlink, [{
key: "validateArgs",
value: function validateArgs(args) {
this.requireContainer(args);
}
}, {
key: "getHistory",
value: function getHistory(args) {
var _args$containers = args.containers,
containers = _args$containers === void 0 ? [args.container] : _args$containers;
return {
title: elementor.helpers.getModelLabel(containers[0].model),
// TODO: add support multi containers.
type: elementorPro.translate('unlink_widget')
};
}
}, {
key: "apply",
value: function apply(args) {
var _args$containers2 = args.containers,
containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
containers.forEach(function (
/** Container */
container) {
var globalModel = elementorPro.modules.globalWidget.getGlobalModels(container.model.get('templateID'));
$e.run('document/elements/create', {
container: container.parent,
model: {
id: elementor.helpers.getUniqueID(),
elType: 'widget',
widgetType: globalModel.get('widgetType'),
settings: elementorCommon.helpers.cloneObject(globalModel.get('settings').attributes),
defaultEditSettings: elementorCommon.helpers.cloneObject(globalModel.get('editSettings').attributes)
},
options: {
at: container.model.collection.indexOf(container.model),
edit: true
}
});
$e.run('document/elements/delete', {
container: container
});
});
}
}]);
return Unlink;
}($e.modules.document.CommandHistory);
exports.Unlink = Unlink;
var _default = Unlink;
exports.default = _default;
/***/ }),
/* 370 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$keys = __webpack_require__(47);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
var _data = __webpack_require__(371);
_Object$keys(_data).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
_Object$defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _data[key];
}
});
});
/***/ }),
/* 371 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
_Object$defineProperty(exports, "GlobalWidgetSave", {
enumerable: true,
get: function get() {
return _save.GlobalWidgetSave;
}
});
var _save = __webpack_require__(372);
/***/ }),
/* 372 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.GlobalWidgetSave = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var GlobalWidgetSave = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(GlobalWidgetSave, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(GlobalWidgetSave);
function GlobalWidgetSave() {
(0, _classCallCheck2.default)(this, GlobalWidgetSave);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(GlobalWidgetSave, [{
key: "getCommand",
value: function getCommand() {
return 'document/save/save';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-global-widget-save';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var _args$document = args.document,
document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document;
return document.config.panel.has_elements && args.status && -1 !== ['private', 'publish'].indexOf(args.status);
}
}, {
key: "apply",
value: function apply() {
elementorPro.modules.globalWidget.saveTemplates();
}
}]);
return GlobalWidgetSave;
}($e.modules.hookData.After);
exports.GlobalWidgetSave = GlobalWidgetSave;
var _default = GlobalWidgetSave;
exports.default = _default;
/***/ }),
/* 373 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var WidgetView = elementor.modules.elements.views.Widget,
GlobalWidgetView;
GlobalWidgetView = WidgetView.extend({
globalModel: null,
className: function className() {
return WidgetView.prototype.className.apply(this, arguments) + ' elementor-global-widget elementor-global-' + this.model.get('templateID');
},
initialize: function initialize() {
var self = this,
previewSettings = self.model.get('previewSettings'),
globalModel = self.getGlobalModel();
if (previewSettings && $e.commandsInternal.is('editor/documents/attach-preview')) {
globalModel.set('settingsLoadedStatus', 'loaded').trigger('settings:loaded');
var settingsModel = globalModel.get('settings');
settingsModel.handleRepeaterData(previewSettings);
settingsModel.set(previewSettings, {
silent: true
});
} else {
var globalSettingsLoadedStatus = globalModel.get('settingsLoadedStatus');
if (!globalSettingsLoadedStatus) {
globalModel.set('settingsLoadedStatus', 'pending');
elementorPro.modules.globalWidget.requestGlobalModelSettings(globalModel, null, this.getContainer());
}
if ('loaded' !== globalSettingsLoadedStatus) {
self.$el.addClass('elementor-loading');
}
globalModel.on('settings:loaded', function () {
self.$el.removeClass('elementor-loading');
self.render();
});
}
WidgetView.prototype.initialize.apply(self, arguments);
},
getGlobalModel: function getGlobalModel() {
if (!this.globalModel) {
this.globalModel = elementorPro.modules.globalWidget.getGlobalModels(this.model.get('templateID'));
}
return this.globalModel;
},
getEditModel: function getEditModel() {
return this.getGlobalModel();
},
getHTMLContent: function getHTMLContent(html) {
if ('loaded' === this.getGlobalModel().get('settingsLoadedStatus')) {
return WidgetView.prototype.getHTMLContent.call(this, html);
}
return '';
},
serializeModel: function serializeModel() {
var globalModel = this.getGlobalModel();
return globalModel.toJSON.apply(globalModel, _.rest(arguments));
},
unlink: function unlink() {
$e.run('document/global/unlink', {
container: this.getContainer()
});
},
onEditRequest: function onEditRequest() {
$e.route('panel/editor/global', {
view: this
});
}
});
module.exports = GlobalWidgetView;
/***/ }),
/* 374 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(198);
__webpack_require__(101);
module.exports = elementor.modules.elements.models.Element.extend({
initialize: function initialize() {
this.set({
widgetType: 'global'
}, {
silent: true
});
elementor.modules.elements.models.Element.prototype.initialize.apply(this, arguments);
elementorFrontend.config.elements.data[this.cid].on('change', this.onSettingsChange.bind(this));
},
initSettings: function initSettings() {
var globalModel = this.getGlobalModel(),
settingsModel = globalModel.get('settings');
this.set('settings', settingsModel);
elementorFrontend.config.elements.data[this.cid] = settingsModel;
elementorFrontend.config.elements.editSettings[this.cid] = globalModel.get('editSettings');
},
initEditSettings: function initEditSettings() {
var editSettings = new Backbone.Model(this.get('defaultEditSettings'));
this.set('editSettings', editSettings); // Set default edit tab.
this.get('editSettings').set('editTab', 'global');
},
getGlobalModel: function getGlobalModel() {
var templateID = this.get('templateID');
return elementorPro.modules.globalWidget.getGlobalModels(templateID);
},
getTitle: function getTitle() {
var title = this.getSetting('_title');
if (!title) {
title = this.getGlobalModel().get('title');
}
var global = elementorPro.translate('global');
title = title.replace(new RegExp('\\(' + global + '\\)$'), '');
return title + ' (' + global + ')';
},
getIcon: function getIcon() {
return this.getGlobalModel().getIcon();
},
onSettingsChange: function onSettingsChange(model) {
if (!model.changed.elements) {
this.set('previewSettings', model.toJSON({
remove: ['default']
}), {
silent: true
});
}
},
onDestroy: function onDestroy() {
// Can be also 'panel/editor/global'.
if ($e.routes.isPartOf('panel/editor')) {
$e.route('panel/elements/categories');
}
}
});
/***/ }),
/* 375 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementor.modules.layouts.panel.pages.elements.views.Elements.extend({
id: 'elementor-global-templates',
getEmptyView: function getEmptyView() {
if (this.collection.length) {
return null;
}
return __webpack_require__(376);
},
onFilterEmpty: function onFilterEmpty() {}
});
/***/ }),
/* 376 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var GlobalWidgetsView = elementor.modules.layouts.panel.pages.elements.views.Global;
module.exports = GlobalWidgetsView.extend({
template: '#tmpl-elementor-panel-global-widget-no-templates',
id: 'elementor-panel-global-widget-no-templates',
className: 'elementor-nerd-box elementor-panel-nerd-box'
});
/***/ }),
/* 377 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = Marionette.ItemView.extend({
id: 'elementor-panel-global-widget',
template: '#tmpl-elementor-panel-global-widget',
ui: {
editButton: '#elementor-global-widget-locked-edit .elementor-button',
unlinkButton: '#elementor-global-widget-locked-unlink .elementor-button',
loading: '#elementor-global-widget-loading'
},
events: {
'click @ui.editButton': 'onEditButtonClick',
'click @ui.unlinkButton': 'onUnlinkButtonClick'
},
initialize: function initialize() {
this.initUnlinkDialog();
},
buildUnlinkDialog: function buildUnlinkDialog() {
var self = this;
return elementorCommon.dialogsManager.createWidget('confirm', {
id: 'elementor-global-widget-unlink-dialog',
headerMessage: elementorPro.translate('unlink_widget'),
message: elementorPro.translate('dialog_confirm_unlink'),
position: {
my: 'center center',
at: 'center center'
},
strings: {
confirm: elementorPro.translate('unlink'),
cancel: elementorPro.translate('cancel')
},
onConfirm: function onConfirm() {
self.getOption('editedView').unlink();
}
});
},
initUnlinkDialog: function initUnlinkDialog() {
var dialog;
this.getUnlinkDialog = function () {
if (!dialog) {
dialog = this.buildUnlinkDialog();
}
return dialog;
};
},
editGlobalModel: function editGlobalModel() {
var editedView = this.getOption('editedView');
$e.run('panel/editor/open', {
model: editedView.getEditModel(),
view: editedView
});
},
onEditButtonClick: function onEditButtonClick() {
var self = this,
editedView = self.getOption('editedView'),
editedModel = editedView.getEditModel();
if ('loaded' === editedModel.get('settingsLoadedStatus')) {
self.editGlobalModel();
return;
}
self.ui.loading.removeClass('elementor-hidden');
elementorPro.modules.globalWidget.requestGlobalModelSettings(editedModel, function () {
self.ui.loading.addClass('elementor-hidden');
self.editGlobalModel();
});
},
onUnlinkButtonClick: function onUnlinkButtonClick() {
this.getUnlinkDialog().show();
}
});
/***/ }),
/* 378 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty2 = __webpack_require__(0);
_Object$defineProperty2(exports, "__esModule", {
value: true
});
exports.default = void 0;
__webpack_require__(233);
var _defineProperty = _interopRequireDefault(__webpack_require__(0));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _get3 = _interopRequireDefault(__webpack_require__(61));
var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(25));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _component = _interopRequireDefault(__webpack_require__(379));
var ThemeBuilderModule = /*#__PURE__*/function (_elementorModules$edi) {
(0, _inherits2.default)(ThemeBuilderModule, _elementorModules$edi);
var _super = (0, _createSuper2.default)(ThemeBuilderModule);
function ThemeBuilderModule() {
(0, _classCallCheck2.default)(this, ThemeBuilderModule);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderModule, [{
key: "__construct",
value: function __construct() {
var _get2;
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
(_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(ThemeBuilderModule.prototype), "__construct", this)).call.apply(_get2, [this].concat(args));
(0, _defineProperty.default)(elementorPro.config, 'theme_builder', {
get: function get() {
elementorCommon.helpers.softDeprecated('theme_builder', '2.9.0', 'elementor.config.document.theme_builder');
return elementor.config.document.theme_builder;
}
});
}
}, {
key: "onElementorLoaded",
value: function onElementorLoaded() {
this.component = $e.components.register(new _component.default({
manager: this
}));
elementor.on('document:loaded', this.onDocumentLoaded.bind(this));
elementor.on('document:unload', this.onDocumentUnloaded.bind(this));
this.onApplyPreview = this.onApplyPreview.bind(this);
this.onSectionPreviewSettingsActive = this.onSectionPreviewSettingsActive.bind(this);
}
}, {
key: "onDocumentLoaded",
value: function onDocumentLoaded(document) {
if (!document.config.theme_builder) {
return;
}
elementor.getPanelView().on('set:page:page_settings', this.updatePreviewIdOptions);
elementor.channels.editor.on('elementorThemeBuilder:ApplyPreview', this.onApplyPreview);
elementor.channels.editor.on('page_settings:preview_settings:activated', this.onSectionPreviewSettingsActive);
}
}, {
key: "onDocumentUnloaded",
value: function onDocumentUnloaded(document) {
if (!document.config.theme_builder) {
return;
}
elementor.getPanelView().off('set:page:page_settings', this.updatePreviewIdOptions);
elementor.channels.editor.off('elementorThemeBuilder:ApplyPreview', this.onApplyPreview);
elementor.channels.editor.off('page_settings:preview_settings:activated', this.onSectionPreviewSettingsActive);
}
}, {
key: "saveAndReload",
value: function saveAndReload() {
$e.run('document/save/auto', {
force: true,
onSuccess: function onSuccess() {
elementor.dynamicTags.cleanCache();
elementor.reloadPreview();
}
});
}
}, {
key: "onApplyPreview",
value: function onApplyPreview() {
this.saveAndReload();
}
}, {
key: "onSectionPreviewSettingsActive",
value: function onSectionPreviewSettingsActive() {
this.updatePreviewIdOptions(true);
}
}, {
key: "updatePreviewIdOptions",
value: function updatePreviewIdOptions(render) {
var previewType = elementor.settings.page.model.get('preview_type');
if (!previewType) {
return;
}
previewType = previewType.split('/');
var currentView = elementor.getPanelView().getCurrentPageView(),
controlModel = currentView.collection.findWhere({
name: 'preview_id'
});
if ('author' === previewType[1]) {
controlModel.set({
autocomplete: {
object: 'author'
}
});
} else if ('taxonomy' === previewType[0]) {
controlModel.set({
autocomplete: {
object: 'tax',
query: {
taxonomy: previewType[1]
}
}
});
} else if ('single' === previewType[0]) {
controlModel.set({
autocomplete: {
object: 'post',
query: {
post_type: previewType[1]
}
}
});
} else {
controlModel.set({
autocomplete: {
object: ''
}
});
}
if (true === render) {
// Can be model.
var controlView = currentView.children.findByModel(controlModel);
controlView.render();
controlView.$el.toggle(!!controlModel.get('autocomplete').object);
}
}
}]);
return ThemeBuilderModule;
}(elementorModules.editor.utils.Module);
exports.default = ThemeBuilderModule;
/***/ }),
/* 379 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireWildcard = __webpack_require__(147);
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _keys = _interopRequireDefault(__webpack_require__(47));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _get2 = _interopRequireDefault(__webpack_require__(61));
var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(25));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _content = _interopRequireDefault(__webpack_require__(380));
var _layout = _interopRequireDefault(__webpack_require__(381));
var hooks = _interopRequireWildcard(__webpack_require__(382));
var Component = /*#__PURE__*/function (_$e$modules$Component) {
(0, _inherits2.default)(Component, _$e$modules$Component);
var _super = (0, _createSuper2.default)(Component);
function Component() {
(0, _classCallCheck2.default)(this, Component);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(Component, [{
key: "getNamespace",
value: function getNamespace() {
// TODO: should be 'theme-builder/publish'.
return 'theme-builder-publish';
}
}, {
key: "getModalLayout",
value: function getModalLayout() {
return _layout.default;
}
}, {
key: "defaultCommands",
value: function defaultCommands() {
var _this = this;
return {
next: function next() {
var tabs = (0, _keys.default)(_this.tabs),
next = tabs[_this.currentTabIndex + 1];
if (next) {
$e.route(_this.getTabRoute(next));
}
},
save: function save() {
$e.run('document/save/default', {
force: true
});
_this.layout.hideModal();
},
'preview-settings': function previewSettings() {
// TODO: This is function is not part of this component.
var panel = elementor.getPanelView();
$e.route('panel/page-settings/settings');
panel.getCurrentPageView().activateSection('preview_settings')._renderChildren();
}
};
}
}, {
key: "defaultHooks",
value: function defaultHooks() {
return this.importHooks(hooks);
}
}, {
key: "getTabsWrapperSelector",
value: function getTabsWrapperSelector() {
return '#elementor-publish__tabs';
}
}, {
key: "renderTab",
value: function renderTab(tab) {
var tabs = this.getTabs(),
keys = (0, _keys.default)(tabs),
tabArgs = tabs[tab];
this.currentTabIndex = keys.indexOf(tab);
var isLastTab = !keys[this.currentTabIndex + 1];
this.layout.modalContent.currentView.screen.show(new tabArgs.View(tabArgs.viewOptions));
this.layout.modal.getElements('next').toggle(!isLastTab);
this.layout.modal.getElements('publish').toggleClass('elementor-button-success', isLastTab);
}
}, {
key: "activateTab",
value: function activateTab(tab) {
$e.routes.saveState(this.getNamespace());
(0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "activateTab", this).call(this, tab);
}
}, {
key: "open",
value: function open() {
(0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "open", this).call(this);
if (!this.layoutContent) {
this.layout.showLogo();
this.layout.modalContent.show(new _content.default({
component: this
}));
this.layoutContent = true;
}
return true;
}
}]);
return Component;
}($e.modules.ComponentModalBase);
exports.default = Component;
/***/ }),
/* 380 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
(0, _inherits2.default)(_default, _Marionette$LayoutVie);
var _super = (0, _createSuper2.default)(_default);
function _default() {
(0, _classCallCheck2.default)(this, _default);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(_default, [{
key: "id",
value: function id() {
return 'elementor-publish';
}
}, {
key: "getTemplate",
value: function getTemplate() {
return Marionette.TemplateCache.get('#tmpl-elementor-component-publish');
}
}, {
key: "regions",
value: function regions() {
return {
screen: '#elementor-publish__screen'
};
}
}, {
key: "templateHelpers",
value: function templateHelpers() {
return {
tabs: this.getOption('component').getTabs()
};
}
}]);
return _default;
}(Marionette.LayoutView);
exports.default = _default;
/***/ }),
/* 381 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _get2 = _interopRequireDefault(__webpack_require__(61));
var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(25));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _default = /*#__PURE__*/function (_elementorModules$com) {
(0, _inherits2.default)(_default, _elementorModules$com);
var _super = (0, _createSuper2.default)(_default);
function _default() {
(0, _classCallCheck2.default)(this, _default);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(_default, [{
key: "getModalOptions",
value: function getModalOptions() {
return {
id: 'elementor-publish__modal',
hide: {
onButtonClick: false
}
};
}
}, {
key: "getLogoOptions",
value: function getLogoOptions() {
return {
title: elementorPro.translate('publish_settings')
};
}
}, {
key: "initModal",
value: function initModal() {
(0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "initModal", this).call(this);
this.modal.addButton({
name: 'publish',
text: elementorPro.translate('save_and_close'),
callback: function callback() {
return $e.run('theme-builder-publish/save');
}
});
this.modal.addButton({
name: 'next',
text: elementorPro.translate('next'),
callback: function callback() {
return $e.run('theme-builder-publish/next');
}
});
var $publishButton = this.modal.getElements('publish');
this.modal.getElements('next').addClass('elementor-button-success').add($publishButton).addClass('elementor-button').removeClass('dialog-button');
}
}]);
return _default;
}(elementorModules.common.views.modal.Layout);
exports.default = _default;
/***/ }),
/* 382 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$keys = __webpack_require__(47);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
var _data = __webpack_require__(383);
_Object$keys(_data).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
_Object$defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _data[key];
}
});
});
var _ui = __webpack_require__(390);
_Object$keys(_ui).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
_Object$defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _ui[key];
}
});
});
/***/ }),
/* 383 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$keys = __webpack_require__(47);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
var _exportNames = {
ThemeBuilderSaveConditions: true,
ThemeBuilderShowConditions: true,
ThemeBuilderPreviewBreak: true
};
_Object$defineProperty(exports, "ThemeBuilderSaveConditions", {
enumerable: true,
get: function get() {
return _saveConditions.ThemeBuilderSaveConditions;
}
});
_Object$defineProperty(exports, "ThemeBuilderShowConditions", {
enumerable: true,
get: function get() {
return _showConditions.ThemeBuilderShowConditions;
}
});
_Object$defineProperty(exports, "ThemeBuilderPreviewBreak", {
enumerable: true,
get: function get() {
return _previewBreak.ThemeBuilderPreviewBreak;
}
});
var _settings = __webpack_require__(384);
_Object$keys(_settings).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
_Object$defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _settings[key];
}
});
});
var _saveConditions = __webpack_require__(387);
var _showConditions = __webpack_require__(388);
var _previewBreak = __webpack_require__(389);
/***/ }),
/* 384 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
_Object$defineProperty(exports, "ThemeBuilderSaveAndReload", {
enumerable: true,
get: function get() {
return _saveAndReload.ThemeBuilderSaveAndReload;
}
});
_Object$defineProperty(exports, "ThemeBuilderUpdatePreviewOptions", {
enumerable: true,
get: function get() {
return _updatePreviewOptions.ThemeBuilderUpdatePreviewOptions;
}
});
var _saveAndReload = __webpack_require__(385);
var _updatePreviewOptions = __webpack_require__(386);
/***/ }),
/* 385 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderSaveAndReload = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
/**
* Hook fired when template: 'single' page layout changed.
*/
var ThemeBuilderSaveAndReload = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(ThemeBuilderSaveAndReload, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(ThemeBuilderSaveAndReload);
function ThemeBuilderSaveAndReload() {
(0, _classCallCheck2.default)(this, ThemeBuilderSaveAndReload);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderSaveAndReload, [{
key: "getCommand",
value: function getCommand() {
return 'document/elements/settings';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-save-and-reload';
}
}, {
key: "getContainerType",
value: function getContainerType() {
return 'document';
}
}, {
key: "getConditions",
value: function getConditions(args) {
return args.settings && args.settings.page_template;
}
}, {
key: "apply",
value: function apply() {
$e.run('document/save/auto', {
force: true,
onSuccess: function onSuccess() {
elementor.reloadPreview();
elementor.once('preview:loaded', function () {
$e.route('panel/page-settings/settings');
});
}
});
}
}]);
return ThemeBuilderSaveAndReload;
}($e.modules.hookData.After);
exports.ThemeBuilderSaveAndReload = ThemeBuilderSaveAndReload;
var _default = ThemeBuilderSaveAndReload;
exports.default = _default;
/***/ }),
/* 386 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderUpdatePreviewOptions = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var ThemeBuilderUpdatePreviewOptions = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(ThemeBuilderUpdatePreviewOptions, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(ThemeBuilderUpdatePreviewOptions);
function ThemeBuilderUpdatePreviewOptions() {
(0, _classCallCheck2.default)(this, ThemeBuilderUpdatePreviewOptions);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderUpdatePreviewOptions, [{
key: "getCommand",
value: function getCommand() {
return 'document/elements/settings';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-update-preview-options';
}
}, {
key: "getContainerType",
value: function getContainerType() {
return 'document';
}
}, {
key: "getConditions",
value: function getConditions(args) {
return args.settings && args.settings.preview_type;
}
}, {
key: "apply",
value: function apply(args) {
var _args$containers = args.containers,
containers = _args$containers === void 0 ? [args.container] : _args$containers,
themeBuilder = elementorPro.modules.themeBuilder;
$e.run('document/elements/settings', {
containers: containers,
settings: {
preview_id: '',
preview_search_term: ''
}
});
if ($e.routes.is('panel/page-settings/settings')) {
themeBuilder.updatePreviewIdOptions(true);
}
}
}]);
return ThemeBuilderUpdatePreviewOptions;
}($e.modules.hookData.After);
exports.ThemeBuilderUpdatePreviewOptions = ThemeBuilderUpdatePreviewOptions;
var _default = ThemeBuilderUpdatePreviewOptions;
exports.default = _default;
/***/ }),
/* 387 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderSaveConditions = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var ThemeBuilderSaveConditions = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(ThemeBuilderSaveConditions, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(ThemeBuilderSaveConditions);
function ThemeBuilderSaveConditions() {
(0, _classCallCheck2.default)(this, ThemeBuilderSaveConditions);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderSaveConditions, [{
key: "getCommand",
value: function getCommand() {
return 'document/save/save';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-save-conditions';
}
}, {
key: "getConditions",
value: function getConditions() {
return !!elementor.config.document.theme_builder;
}
}, {
key: "apply",
value: function apply() {
var conditionsModel = elementorPro.modules.themeBuilder.conditionsModel;
elementorPro.ajax.addRequest('theme_builder_save_conditions', {
data: conditionsModel.toJSON({
remove: ['default']
}),
success: function success() {
elementor.config.document.theme_builder.settings.conditions = conditionsModel.get('conditions');
}
});
}
}]);
return ThemeBuilderSaveConditions;
}($e.modules.hookData.After);
exports.ThemeBuilderSaveConditions = ThemeBuilderSaveConditions;
var _default = ThemeBuilderSaveConditions;
exports.default = _default;
/***/ }),
/* 388 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderShowConditions = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var ThemeBuilderShowConditions = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(ThemeBuilderShowConditions, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(ThemeBuilderShowConditions);
function ThemeBuilderShowConditions() {
(0, _classCallCheck2.default)(this, ThemeBuilderShowConditions);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderShowConditions, [{
key: "getCommand",
value: function getCommand() {
return 'document/save/default';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-show-conditions';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var _args$force = args.force,
force = _args$force === void 0 ? false : _args$force; // If force save, do not show conditions.
if (force) {
return false;
}
var showConditions = false;
var themeBuilder = elementor.config.document.theme_builder;
if (themeBuilder) {
var hasConditions = themeBuilder.settings.conditions.length,
hasLocation = themeBuilder.settings.location,
isDraft = 'draft' === elementor.settings.page.model.get('post_status');
if (hasLocation && (!hasConditions || isDraft)) {
showConditions = true;
}
}
return showConditions;
}
}, {
key: "apply",
value: function apply() {
$e.route('theme-builder-publish/conditions');
return false; // HookBreak.
}
}]);
return ThemeBuilderShowConditions;
}($e.modules.hookData.Dependency);
exports.ThemeBuilderShowConditions = ThemeBuilderShowConditions;
var _default = ThemeBuilderShowConditions;
exports.default = _default;
/***/ }),
/* 389 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderPreviewBreak = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var ThemeBuilderPreviewBreak = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(ThemeBuilderPreviewBreak, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(ThemeBuilderPreviewBreak);
function ThemeBuilderPreviewBreak() {
(0, _classCallCheck2.default)(this, ThemeBuilderPreviewBreak);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderPreviewBreak, [{
key: "getCommand",
value: function getCommand() {
return 'editor/documents/preview';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-preview-break';
}
}, {
key: "getConditions",
value: function getConditions(args) {
// If preview is forced, do not break it.
if (args.force) {
return false;
}
return !!elementor.documents.get(args.id).config.theme_builder;
}
}, {
key: "apply",
value: function apply() {
return false; // HookBreak.
}
}]);
return ThemeBuilderPreviewBreak;
}($e.modules.hookData.Dependency);
exports.ThemeBuilderPreviewBreak = ThemeBuilderPreviewBreak;
var _default = ThemeBuilderPreviewBreak;
exports.default = _default;
/***/ }),
/* 390 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
_Object$defineProperty(exports, "ThemeBuilderAddEditorUI", {
enumerable: true,
get: function get() {
return _addEditorUi.ThemeBuilderAddEditorUI;
}
});
_Object$defineProperty(exports, "ThemeBuilderRemoveEditorUI", {
enumerable: true,
get: function get() {
return _removeEditorUi.ThemeBuilderRemoveEditorUI;
}
});
_Object$defineProperty(exports, "ThemeBuilderToggleMenuConditions", {
enumerable: true,
get: function get() {
return _toggleMenuConditions.ThemeBuilderToggleMenuConditions;
}
});
_Object$defineProperty(exports, "ThemeBuilderFooterSaverAfterSave", {
enumerable: true,
get: function get() {
return _after.ThemeBuilderFooterSaverAfterSave;
}
});
var _addEditorUi = __webpack_require__(391);
var _removeEditorUi = __webpack_require__(396);
var _toggleMenuConditions = __webpack_require__(397);
var _after = __webpack_require__(398);
/***/ }),
/* 391 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderAddEditorUI = void 0;
var _keys = _interopRequireDefault(__webpack_require__(47));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _view = _interopRequireDefault(__webpack_require__(392));
var ThemeBuilderAddEditorUI = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
(0, _inherits2.default)(ThemeBuilderAddEditorUI, _$e$modules$hookUI$Af);
var _super = (0, _createSuper2.default)(ThemeBuilderAddEditorUI);
function ThemeBuilderAddEditorUI() {
(0, _classCallCheck2.default)(this, ThemeBuilderAddEditorUI);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderAddEditorUI, [{
key: "getCommand",
value: function getCommand() {
return 'editor/documents/open';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-add-editor-ui';
}
}, {
key: "getConditions",
value: function getConditions(args) {
return elementor.documents.get(args.id).config.theme_builder;
}
}, {
key: "apply",
value: function apply() {
if (elementor.panel) {
this.addUI();
} else {
// First open, the panel is not available yet.
elementor.once('preview:loaded', this.addUI.bind(this));
}
}
}, {
key: "addUI",
value: function addUI() {
this.addRepeaterControlView();
this.addPanelFooterSubmenuItems();
this.addPublishTabs();
}
}, {
key: "addRepeaterControlView",
value: function addRepeaterControlView() {
elementor.addControlView('Conditions_repeater', __webpack_require__(394));
}
}, {
key: "addPublishTabs",
value: function addPublishTabs() {
var component = $e.components.get('theme-builder-publish'),
themeBuilderModuleConfig = elementor.config.document.theme_builder,
settings = themeBuilderModuleConfig.settings;
component.manager.conditionsModel = new elementorModules.editor.elements.models.BaseSettings(settings, {
controls: themeBuilderModuleConfig.template_conditions.controls
});
component.addTab('conditions', {
title: elementorPro.translate('conditions'),
View: _view.default,
viewOptions: {
model: component.manager.conditionsModel,
controls: component.manager.conditionsModel.controls
},
name: 'conditions',
description: elementorPro.translate('conditions_publish_screen_description'),
image: elementorPro.config.urls.modules + 'theme-builder/assets/images/conditions-tab.svg'
});
}
}, {
key: "addPanelFooterSubmenuItems",
value: function addPanelFooterSubmenuItems() {
var footerView = elementor.getPanelView().footer.currentView,
behavior = footerView._behaviors[(0, _keys.default)(footerView.behaviors()).indexOf('saver')];
footerView.ui.menuConditions = footerView.addSubMenuItem('saver-options', {
before: 'save-template',
name: 'conditions',
icon: 'eicon-flow',
title: elementorPro.translate('display_conditions'),
callback: function callback() {
return $e.route('theme-builder-publish/conditions');
}
});
footerView.ui.menuConditions.toggle(!!elementor.config.document.theme_builder.settings.location);
behavior.ui.buttonPreview.tipsy('disable').html(jQuery('#tmpl-elementor-theme-builder-button-preview').html()).addClass('elementor-panel-footer-theme-builder-buttons-wrapper elementor-toggle-state');
}
}]);
return ThemeBuilderAddEditorUI;
}($e.modules.hookUI.After);
exports.ThemeBuilderAddEditorUI = ThemeBuilderAddEditorUI;
var _default = ThemeBuilderAddEditorUI;
exports.default = _default;
/***/ }),
/* 392 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var inlineControlsStack = __webpack_require__(393);
module.exports = inlineControlsStack.extend({
id: 'elementor-theme-builder-conditions-view',
template: '#tmpl-elementor-theme-builder-conditions-view',
childViewContainer: '#elementor-theme-builder-conditions-controls',
childViewOptions: function childViewOptions() {
return {
elementSettingsModel: this.model
};
}
});
/***/ }),
/* 393 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(275);
__webpack_require__(234);
__webpack_require__(111);
module.exports = elementorModules.editor.views.ControlsStack.extend({
activeTab: 'content',
activeSection: 'settings',
initialize: function initialize() {
this.collection = new Backbone.Collection(_.values(this.options.controls));
},
filter: function filter(model) {
if ('section' === model.get('type')) {
return true;
}
var section = model.get('section');
return !section || section === this.activeSection;
},
childViewOptions: function childViewOptions() {
return {
elementSettingsModel: this.model
};
}
});
/***/ }),
/* 394 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _repeaterRow = _interopRequireDefault(__webpack_require__(395));
module.exports = elementor.modules.controls.Repeater.extend({
childView: _repeaterRow.default,
updateActiveRow: function updateActiveRow() {},
initialize: function initialize() {
elementor.modules.controls.Repeater.prototype.initialize.apply(this, arguments);
this.config = elementor.config.document.theme_builder;
this.updateConditionsOptions(this.config.settings.template_type);
},
updateConditionsOptions: function updateConditionsOptions(templateType) {
var self = this,
conditionType = self.config.types[templateType].condition_type,
options = {};
_([conditionType]).each(function (conditionId, conditionIndex) {
var conditionConfig = self.config.conditions[conditionId],
group = {
label: conditionConfig.label,
options: {}
};
group.options[conditionId] = conditionConfig.all_label;
_(conditionConfig.sub_conditions).each(function (subConditionId) {
group.options[subConditionId] = self.config.conditions[subConditionId].label;
});
options[conditionIndex] = group;
});
var fields = this.model.get('fields');
fields[1].default = conditionType;
if ('general' === conditionType) {
fields[1].groups = options;
} else {
fields[2].groups = options;
}
},
onRender: function onRender() {
this.ui.btnAddRow.text(elementorPro.translate('add_condition'));
}
});
/***/ }),
/* 395 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(110);
module.exports = elementor.modules.controls.RepeaterRow.extend({
template: '#tmpl-elementor-theme-builder-conditions-repeater-row',
childViewContainer: '.elementor-theme-builder-conditions-repeater-row-controls',
conflictCheckedOnFirstRender: false,
id: function id() {
return 'elementor-condition-id-' + this.model.get('_id');
},
onBeforeRender: function onBeforeRender() {
var subNameModel = this.collection.findWhere({
name: 'sub_name'
}),
subIdModel = this.collection.findWhere({
name: 'sub_id'
}),
subConditionConfig = this.config.conditions[this.model.attributes.sub_name];
subNameModel.attributes.groups = this.getOptions();
if (subConditionConfig && subConditionConfig.controls) {
_(subConditionConfig.controls).each(function (control) {
subIdModel.set(control);
subIdModel.set('name', 'sub_id');
});
}
},
initialize: function initialize() {
elementor.modules.controls.RepeaterRow.prototype.initialize.apply(this, arguments);
this.config = elementor.config.document.theme_builder;
},
updateOptions: function updateOptions() {
if (this.model.changed.name) {
this.model.set({
sub_name: '',
sub_id: ''
});
}
if (this.model.changed.name || this.model.changed.sub_name) {
this.model.set('sub_id', '', {
silent: true
});
var subIdModel = this.collection.findWhere({
name: 'sub_id'
});
subIdModel.set({
type: 'select',
options: {
'': 'All'
}
});
this.render();
}
if (this.model.changed.type) {
this.setTypeAttribute();
}
},
getOptions: function getOptions() {
var self = this,
conditionConfig = self.config.conditions[this.model.get('name')];
if (!conditionConfig) {
return;
}
var options = {
'': conditionConfig.all_label
};
_(conditionConfig.sub_conditions).each(function (conditionId, conditionIndex) {
var subConditionConfig = self.config.conditions[conditionId],
group;
if (!subConditionConfig) {
return;
}
if (subConditionConfig.sub_conditions.length) {
group = {
label: subConditionConfig.label,
options: {}
};
group.options[conditionId] = subConditionConfig.all_label;
_(subConditionConfig.sub_conditions).each(function (subConditionId) {
group.options[subConditionId] = self.config.conditions[subConditionId].label;
}); // Use a sting key - to keep order
options['key' + conditionIndex] = group;
} else {
options[conditionId] = subConditionConfig.label;
}
});
return options;
},
setTypeAttribute: function setTypeAttribute() {
var typeView = this.children.findByModel(this.collection.findWhere({
name: 'type'
}));
typeView.$el.attr('data-elementor-condition-type', typeView.getControlValue());
},
// Moved from `modules/theme-builder/assets/js/editor/conditions/repeater.js`.
checkConflicts: function checkConflicts() {
var modelId = this.model.get('_id'),
rowId = 'elementor-condition-id-' + modelId,
errorMessageId = 'elementor-conditions-conflict-message-' + modelId,
$error = jQuery('#' + errorMessageId); // On render - the row isn't exist, so don't cache it.
jQuery('#' + rowId).removeClass('elementor-error');
$error.remove();
elementorPro.ajax.addRequest('theme_builder_conditions_check_conflicts', {
unique_id: rowId,
data: {
condition: this.model.toJSON()
},
success: function success(data) {
if (!_.isEmpty(data)) {
jQuery('#' + rowId).addClass('elementor-error').after('
' + data + '
');
}
}
});
},
onRender: function onRender() {
var nameModel = this.collection.findWhere({
name: 'name'
}),
subNameModel = this.collection.findWhere({
name: 'sub_name'
}),
subIdModel = this.collection.findWhere({
name: 'sub_id'
}),
nameView = this.children.findByModel(nameModel),
subNameView = this.children.findByModel(subNameModel),
subIdView = this.children.findByModel(subIdModel),
conditionConfig = this.config.conditions[this.model.attributes.name],
subConditionConfig = this.config.conditions[this.model.attributes.sub_name],
typeConfig = this.config.types[this.config.settings.template_type];
if (typeConfig.condition_type === nameView.getControlValue() && 'general' !== nameView.getControlValue() && !_.isEmpty(conditionConfig.sub_conditions)) {
nameView.$el.hide();
}
if (!conditionConfig || _.isEmpty(conditionConfig.sub_conditions) && _.isEmpty(conditionConfig.controls) || !nameView.getControlValue() || 'general' === nameView.getControlValue()) {
subNameView.$el.hide();
}
if (!subConditionConfig || _.isEmpty(subConditionConfig.controls) || !subNameView.getControlValue()) {
subIdView.$el.hide();
} // Avoid set a `single` for a-l-l singular types. (conflicted with 404 & custom cpt like Shops and Events plugins).
if ('singular' === typeConfig.condition_type) {
if ('' === subNameView.getControlValue()) {
subNameView.setValue('post');
}
}
this.setTypeAttribute();
if (!this.conflictCheckedOnFirstRender) {
this.checkConflicts();
this.conflictCheckedOnFirstRender = true;
}
},
onModelChange: function onModelChange() {
this.updateOptions();
this.checkConflicts();
}
});
/***/ }),
/* 396 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderRemoveEditorUI = void 0;
var _keys = _interopRequireDefault(__webpack_require__(47));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var ThemeBuilderRemoveEditorUI = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
(0, _inherits2.default)(ThemeBuilderRemoveEditorUI, _$e$modules$hookUI$Af);
var _super = (0, _createSuper2.default)(ThemeBuilderRemoveEditorUI);
function ThemeBuilderRemoveEditorUI() {
(0, _classCallCheck2.default)(this, ThemeBuilderRemoveEditorUI);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderRemoveEditorUI, [{
key: "getCommand",
value: function getCommand() {
return 'editor/documents/unload';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-remove-editor-ui';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var document = args.document;
return document.config.theme_builder;
}
}, {
key: "apply",
value: function apply() {
this.removePanelFooterSubmenuItems();
this.removePublishTabs();
}
}, {
key: "removePanelFooterSubmenuItems",
value: function removePanelFooterSubmenuItems() {
var footerView = elementor.getPanelView().footer.currentView,
behavior = footerView._behaviors[(0, _keys.default)(footerView.behaviors()).indexOf('saver')];
elementor.getPanelView().footer.currentView.removeSubMenuItem('saver-options', {
name: 'conditions'
});
behavior.ui.buttonPreview.tipsy('enable').removeClass('elementor-panel-footer-theme-builder-buttons-wrapper elementor-toggle-state');
}
}, {
key: "removePublishTabs",
value: function removePublishTabs() {
var component = $e.components.get('theme-builder-publish');
component.removeTab('conditions');
}
}]);
return ThemeBuilderRemoveEditorUI;
}($e.modules.hookUI.After);
exports.ThemeBuilderRemoveEditorUI = ThemeBuilderRemoveEditorUI;
var _default = ThemeBuilderRemoveEditorUI;
exports.default = _default;
/***/ }),
/* 397 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ThemeBuilderToggleMenuConditions = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var ThemeBuilderToggleMenuConditions = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
(0, _inherits2.default)(ThemeBuilderToggleMenuConditions, _$e$modules$hookUI$Af);
var _super = (0, _createSuper2.default)(ThemeBuilderToggleMenuConditions);
function ThemeBuilderToggleMenuConditions() {
(0, _classCallCheck2.default)(this, ThemeBuilderToggleMenuConditions);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderToggleMenuConditions, [{
key: "getCommand",
value: function getCommand() {
return 'document/elements/settings';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-theme-builder-toggle-menu-conditions';
}
}, {
key: "getContainerType",
value: function getContainerType() {
return 'document';
}
}, {
key: "getConditions",
value: function getConditions(args) {
return args.settings && args.settings.location;
}
}, {
key: "apply",
value: function apply() {
var themeBuilder = elementorPro.modules.themeBuilder;
themeBuilder.ui.menuConditions.toggle(!!elementor.config.document.theme_builder.settings.location);
}
}]);
return ThemeBuilderToggleMenuConditions;
}($e.modules.hookUI.After);
exports.ThemeBuilderToggleMenuConditions = ThemeBuilderToggleMenuConditions;
var _default = ThemeBuilderToggleMenuConditions;
exports.default = _default;
/***/ }),
/* 398 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.ThemeBuilderFooterSaverAfterSave = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var ThemeBuilderFooterSaverAfterSave = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
(0, _inherits2.default)(ThemeBuilderFooterSaverAfterSave, _$e$modules$hookUI$Af);
var _super = (0, _createSuper2.default)(ThemeBuilderFooterSaverAfterSave);
function ThemeBuilderFooterSaverAfterSave() {
(0, _classCallCheck2.default)(this, ThemeBuilderFooterSaverAfterSave);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(ThemeBuilderFooterSaverAfterSave, [{
key: "getCommand",
value: function getCommand() {
return 'document/save/save';
}
}, {
key: "getId",
value: function getId() {
return 'theme-builder-footer-saver-after-save';
}
}, {
key: "getConditions",
value: function getConditions() {
return elementor.config.document.support_site_editor;
}
}, {
key: "apply",
value: function apply(args, result) {
var status = args.status;
if (result.statusChanged) {
this.onPageStatusChange(status);
}
}
}, {
key: "onPageStatusChange",
value: function onPageStatusChange(newStatus) {
if ('publish' !== newStatus) {
return;
}
var options = {
classes: 'e-theme-builder-save-toaster',
message: elementor.config.document.panel.messages.publish_notification,
buttons: [{
name: 'open_site_editor',
text: '
' + elementorPro.translate('open_site_editor') + '',
callback: function callback() {
$e.run('app/open');
}
}, {
name: 'view_live_site',
text: '
' + elementorPro.translate('view_live_site') + '',
callback: function callback() {
open(elementor.config.document.urls.permalink);
}
}]
};
elementor.notifications.showToast(options);
}
}]);
return ThemeBuilderFooterSaverAfterSave;
}($e.modules.hookUI.After);
exports.ThemeBuilderFooterSaverAfterSave = ThemeBuilderFooterSaverAfterSave;
/***/ }),
/* 399 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _component = _interopRequireDefault(__webpack_require__(400));
var FormsModule = /*#__PURE__*/function (_elementorModules$edi) {
(0, _inherits2.default)(FormsModule, _elementorModules$edi);
var _super = (0, _createSuper2.default)(FormsModule);
function FormsModule() {
(0, _classCallCheck2.default)(this, FormsModule);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(FormsModule, [{
key: "onElementorInit",
value: function onElementorInit() {
var ReplyToField = __webpack_require__(408),
Recaptcha = __webpack_require__(409),
MailerLite = __webpack_require__(410),
Mailchimp = __webpack_require__(412),
Drip = __webpack_require__(413),
ActiveCampaign = __webpack_require__(414),
GetResponse = __webpack_require__(415),
ConvertKit = __webpack_require__(416);
this.replyToField = new ReplyToField();
this.mailchimp = new Mailchimp('form');
this.recaptcha = new Recaptcha('form');
this.drip = new Drip('form');
this.activecampaign = new ActiveCampaign('form');
this.getresponse = new GetResponse('form');
this.convertkit = new ConvertKit('form');
this.mailerlite = new MailerLite('form'); // Form fields
var TimeField = __webpack_require__(417),
DateField = __webpack_require__(418),
AcceptanceField = __webpack_require__(419),
UploadField = __webpack_require__(420),
TelField = __webpack_require__(421);
this.Fields = {
time: new TimeField('form'),
date: new DateField('form'),
tel: new TelField('form'),
acceptance: new AcceptanceField('form'),
upload: new UploadField('form')
};
elementor.addControlView('Fields_map', __webpack_require__(422));
elementor.addControlView('form-fields-repeater', __webpack_require__(423));
}
}, {
key: "onElementorInitComponents",
value: function onElementorInitComponents() {
$e.components.register(new _component.default({
manager: this
}));
}
}]);
return FormsModule;
}(elementorModules.editor.utils.Module);
exports.default = FormsModule;
/***/ }),
/* 400 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireWildcard = __webpack_require__(147);
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var hooks = _interopRequireWildcard(__webpack_require__(401));
var Component = /*#__PURE__*/function (_$e$modules$Component) {
(0, _inherits2.default)(Component, _$e$modules$Component);
var _super = (0, _createSuper2.default)(Component);
function Component() {
(0, _classCallCheck2.default)(this, Component);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(Component, [{
key: "getNamespace",
value: function getNamespace() {
return 'forms';
}
}, {
key: "defaultHooks",
value: function defaultHooks() {
return this.importHooks(hooks);
}
}]);
return Component;
}($e.modules.ComponentBase);
exports.default = Component;
/***/ }),
/* 401 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$keys = __webpack_require__(47);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
var _data = __webpack_require__(402);
_Object$keys(_data).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
_Object$defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _data[key];
}
});
});
var _ui = __webpack_require__(406);
_Object$keys(_ui).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
_Object$defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _ui[key];
}
});
});
/***/ }),
/* 402 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
_Object$defineProperty(exports, "FormFieldsSanitizeCustomId", {
enumerable: true,
get: function get() {
return _formFieldsSanitizeCustomId.FormFieldsSanitizeCustomId;
}
});
_Object$defineProperty(exports, "FormFieldsSetCustomId", {
enumerable: true,
get: function get() {
return _formFieldsSetCustomId.FormFieldsSetCustomId;
}
});
_Object$defineProperty(exports, "FormFieldsAddFirstStep", {
enumerable: true,
get: function get() {
return _formFieldsStep.FormFieldsAddFirstStep;
}
});
var _formFieldsSanitizeCustomId = __webpack_require__(403);
var _formFieldsSetCustomId = __webpack_require__(404);
var _formFieldsStep = __webpack_require__(405);
/***/ }),
/* 403 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.FormFieldsSanitizeCustomId = void 0;
__webpack_require__(19);
__webpack_require__(172);
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(67));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(59));
var FormFieldsSanitizeCustomId = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(FormFieldsSanitizeCustomId, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(FormFieldsSanitizeCustomId);
function FormFieldsSanitizeCustomId() {
var _this;
(0, _classCallCheck2.default)(this, FormFieldsSanitizeCustomId);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = _super.call.apply(_super, [this].concat(args));
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "ID_SANITIZE_FILTER", /[^\w]/g);
return _this;
}
(0, _createClass2.default)(FormFieldsSanitizeCustomId, [{
key: "getCommand",
value: function getCommand() {
return 'document/elements/settings';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-forms-fields-sanitize-custom-id';
}
}, {
key: "getContainerType",
value: function getContainerType() {
return 'repeater';
}
}, {
key: "getConditions",
value: function getConditions(args) {
return undefined !== args.settings.custom_id;
}
}, {
key: "apply",
value: function apply(args) {
var _args$containers = args.containers,
containers = _args$containers === void 0 ? [args.container] : _args$containers,
settings = args.settings,
custom_id = settings.custom_id; // eslint-disable-line camelcase
if (custom_id.match(this.ID_SANITIZE_FILTER)) {
// Re-render with old settings.
containers.forEach(function (container) {
var panelView = container.panel.getControlView('form_fields'),
currentItemView = panelView.children.findByModel(container.settings),
idView = currentItemView.children.find(function (view) {
return 'custom_id' === view.model.get('name');
});
idView.render();
idView.$el.find('input').focus();
}); // Hook-Break.
return false;
}
return true;
}
}]);
return FormFieldsSanitizeCustomId;
}($e.modules.hookData.Dependency);
exports.FormFieldsSanitizeCustomId = FormFieldsSanitizeCustomId;
var _default = FormFieldsSanitizeCustomId;
exports.default = _default;
/***/ }),
/* 404 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.FormFieldsSetCustomId = void 0;
__webpack_require__(19);
__webpack_require__(110);
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var FormFieldsSetCustomId = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(FormFieldsSetCustomId, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(FormFieldsSetCustomId);
function FormFieldsSetCustomId() {
(0, _classCallCheck2.default)(this, FormFieldsSetCustomId);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(FormFieldsSetCustomId, [{
key: "getCommand",
value: function getCommand() {
return 'document/repeater/insert';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-forms-fields-set-custom-id';
}
}, {
key: "getContainerType",
value: function getContainerType() {
return 'widget';
}
}, {
key: "getConditions",
value: function getConditions(args) {
return 'form_fields' === args.name;
}
}, {
key: "apply",
value: function apply(args, model) {
var _args$containers = args.containers,
containers = _args$containers === void 0 ? [args.container] : _args$containers,
isDuplicate = $e.commands.isCurrentFirstTrace('document/repeater/duplicate');
containers.forEach(function (
/** Container */
container) {
var itemContainer = container.repeaters.form_fields.children.find(function (childrenContainer) {
// Sometimes, one of children is {Empty}.
if (childrenContainer) {
return model.get('_id') === childrenContainer.id;
}
return false;
});
if (!isDuplicate && itemContainer.settings.get('custom_id')) {
return;
}
$e.run('document/elements/settings', {
container: itemContainer,
settings: {
custom_id: 'field_' + itemContainer.id
},
options: {
external: true
}
});
});
return true;
}
}]);
return FormFieldsSetCustomId;
}($e.modules.hookData.After);
exports.FormFieldsSetCustomId = FormFieldsSetCustomId;
var _default = FormFieldsSetCustomId;
exports.default = _default;
/***/ }),
/* 405 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.FormFieldsAddFirstStep = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var FormFieldsAddFirstStep = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(FormFieldsAddFirstStep, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(FormFieldsAddFirstStep);
function FormFieldsAddFirstStep() {
(0, _classCallCheck2.default)(this, FormFieldsAddFirstStep);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(FormFieldsAddFirstStep, [{
key: "getCommand",
value: function getCommand() {
return 'document/elements/settings';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-forms-fields-first-step';
}
}, {
key: "getContainerType",
value: function getContainerType() {
return 'repeater';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var _args$containers = args.containers,
containers = _args$containers === void 0 ? [args.container] : _args$containers;
return 'form' === containers[0].parent.parent.model.get('widgetType') && 'step' === args.settings.field_type;
}
}, {
key: "apply",
value: function apply(args) {
var _args$containers2 = args.containers,
containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
containers.forEach(function (
/** Container */
container) {
var firstItem = container.parent.children[0];
if ('step' === firstItem.settings.get('field_type')) {
return;
}
$e.run('document/repeater/insert', {
container: container.parent.parent,
// widget
name: 'form_fields',
model: {
field_type: 'step'
},
options: {
at: 0,
external: true
}
});
});
return true;
}
}]);
return FormFieldsAddFirstStep;
}($e.modules.hookData.After);
exports.FormFieldsAddFirstStep = FormFieldsAddFirstStep;
var _default = FormFieldsAddFirstStep;
exports.default = _default;
/***/ }),
/* 406 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
_Object$defineProperty(exports, "FormFieldsUpdateShortCode", {
enumerable: true,
get: function get() {
return _formFieldsUpdateShortcode.FormFieldsUpdateShortCode;
}
});
var _formFieldsUpdateShortcode = __webpack_require__(407);
/***/ }),
/* 407 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.FormFieldsUpdateShortCode = void 0;
__webpack_require__(19);
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var FormFieldsUpdateShortCode = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
(0, _inherits2.default)(FormFieldsUpdateShortCode, _$e$modules$hookUI$Af);
var _super = (0, _createSuper2.default)(FormFieldsUpdateShortCode);
function FormFieldsUpdateShortCode() {
(0, _classCallCheck2.default)(this, FormFieldsUpdateShortCode);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(FormFieldsUpdateShortCode, [{
key: "getCommand",
value: function getCommand() {
return 'document/elements/settings';
}
}, {
key: "getId",
value: function getId() {
return 'elementor-pro-forms-fields-update-shortcode';
}
}, {
key: "getContainerType",
value: function getContainerType() {
return 'repeater';
}
}, {
key: "getConditions",
value: function getConditions(args) {
if (!$e.routes.isPartOf('panel/editor') || undefined === args.settings.custom_id) {
return false;
}
return true;
}
}, {
key: "apply",
value: function apply(args) {
var _args$containers = args.containers,
containers = _args$containers === void 0 ? [args.container] : _args$containers;
containers.forEach(function (
/** Container */
container) {
var panelView = container.panel.getControlView('form_fields'),
currentItemView = panelView.children.find(function (view) {
return container.id === view.model.get('_id');
}),
shortcodeView = currentItemView.children.find(function (view) {
return 'shortcode' === view.model.get('name');
});
shortcodeView.render();
});
}
}]);
return FormFieldsUpdateShortCode;
}($e.modules.hookUI.After);
exports.FormFieldsUpdateShortCode = FormFieldsUpdateShortCode;
var _default = FormFieldsUpdateShortCode;
exports.default = _default;
/***/ }),
/* 408 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = function () {
var editor, editedModel, replyToControl;
var setReplyToControl = function setReplyToControl() {
replyToControl = editor.collection.findWhere({
name: 'email_reply_to'
});
};
var getReplyToView = function getReplyToView() {
return editor.children.findByModelCid(replyToControl.cid);
};
var refreshReplyToElement = function refreshReplyToElement() {
var replyToView = getReplyToView();
if (replyToView) {
replyToView.render();
}
};
var updateReplyToOptions = function updateReplyToOptions() {
var settingsModel = editedModel.get('settings'),
emailModels = settingsModel.get('form_fields').where({
field_type: 'email'
}),
emailFields;
emailModels = _.reject(emailModels, {
field_label: ''
});
emailFields = _.map(emailModels, function (model) {
return {
id: model.get('custom_id'),
label: elementorPro.translate('x_field', [model.get('field_label')])
};
});
replyToControl.set('options', {
'': replyToControl.get('options')['']
});
_.each(emailFields, function (emailField) {
replyToControl.get('options')[emailField.id] = emailField.label;
});
refreshReplyToElement();
};
var updateDefaultReplyTo = function updateDefaultReplyTo(settingsModel) {
replyToControl.get('options')[''] = settingsModel.get('email_from');
refreshReplyToElement();
};
var onFormFieldsChange = function onFormFieldsChange(changedModel) {
// If it's repeater field
if (changedModel.get('custom_id')) {
if ('email' === changedModel.get('field_type')) {
updateReplyToOptions();
}
}
if (changedModel.changed.email_from) {
updateDefaultReplyTo(changedModel);
}
};
var onPanelShow = function onPanelShow(panel, model) {
editor = panel.getCurrentPageView();
editedModel = model;
setReplyToControl();
var settingsModel = editedModel.get('settings');
settingsModel.on('change', onFormFieldsChange);
updateDefaultReplyTo(settingsModel);
updateReplyToOptions();
};
var init = function init() {
elementor.hooks.addAction('panel/open_editor/widget/form', onPanelShow);
};
init();
};
/***/ }),
/* 409 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(19);
module.exports = elementorModules.editor.utils.Module.extend({
enqueueRecaptchaJs: function enqueueRecaptchaJs(url, type) {
if (!elementorFrontend.elements.$body.find('[src="' + url + '"]').length) {
elementorFrontend.elements.$body.append('
');
}
},
renderField: function renderField(inputField, item) {
inputField += '';
inputField += this.getDataSettings(item);
inputField += '
';
return inputField;
},
getDataSettings: function getDataSettings(item) {
var config = elementorPro.config.forms[item.field_type],
srcURL = 'https://www.google.com/recaptcha/api.js?render=explicit';
if (!config.enabled) {
return '' + config.setup_message + '
';
}
var recaptchaData = 'data-sitekey="' + config.site_key + '" data-type="' + config.type + '"';
switch (config.type) {
case 'v3':
recaptchaData += ' data-action="form" data-size="invisible" data-badge="' + item.recaptcha_badge + '"';
break;
case 'v2_checkbox':
recaptchaData += ' data-theme="' + item.recaptcha_style + '"';
recaptchaData += ' data-size="' + item.recaptcha_size + '"';
break;
}
this.enqueueRecaptchaJs(srcURL, config.type);
return '';
},
filterItem: function filterItem(item) {
if ('recaptcha' === item.field_type) {
item.field_label = false;
}
return item;
},
onInit: function onInit() {
elementor.hooks.addFilter('elementor_pro/forms/content_template/item', this.filterItem);
elementor.hooks.addFilter('elementor_pro/forms/content_template/field/recaptcha', this.renderField, 10, 2);
elementor.hooks.addFilter('elementor_pro/forms/content_template/field/recaptcha_v3', this.renderField, 10, 2);
}
});
/***/ }),
/* 410 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var BaseIntegrationModule = __webpack_require__(199);
module.exports = BaseIntegrationModule.extend({
fields: {},
getName: function getName() {
return 'mailerlite';
},
onElementChange: function onElementChange(setting) {
switch (setting) {
case 'mailerlite_api_key_source':
case 'mailerlite_custom_api_key':
this.onMailerliteApiKeyUpdate();
break;
case 'mailerlite_group':
this.updateFieldsMapping();
break;
}
},
onMailerliteApiKeyUpdate: function onMailerliteApiKeyUpdate() {
var self = this,
controlView = self.getEditorControlView('mailerlite_custom_api_key'),
GlobalApiKeycontrolView = self.getEditorControlView('mailerlite_api_key_source');
if ('default' !== GlobalApiKeycontrolView.getControlValue() && '' === controlView.getControlValue()) {
self.updateOptions('mailerlite_group', []);
self.getEditorControlView('mailerlite_group').setValue('');
return;
}
self.addControlSpinner('mailerlite_group');
var cacheKey = this.getCacheKey({
type: 'groups',
controls: [controlView.getControlValue(), GlobalApiKeycontrolView.getControlValue()]
});
self.getMailerliteCache('groups', 'groups', cacheKey).done(function (data) {
self.updateOptions('mailerlite_group', data.groups);
self.fields = data.fields;
});
},
updateFieldsMapping: function updateFieldsMapping() {
var controlView = this.getEditorControlView('mailerlite_group');
if (!controlView.getControlValue()) {
return;
}
var remoteFields = [{
remote_label: elementor.translate('Email'),
remote_type: 'email',
remote_id: 'email',
remote_required: true
}, {
remote_label: elementor.translate('Name'),
remote_type: 'text',
remote_id: 'name',
remote_required: false
}, {
remote_label: elementor.translate('Last Name'),
remote_type: 'text',
remote_id: 'last_name',
remote_required: false
}, {
remote_label: elementor.translate('Company'),
remote_type: 'text',
remote_id: 'company',
remote_required: false
}, {
remote_label: elementor.translate('Phone'),
remote_type: 'text',
remote_id: 'phone',
remote_required: false
}, {
remote_label: elementor.translate('Country'),
remote_type: 'text',
remote_id: 'country',
remote_required: false
}, {
remote_label: elementor.translate('State'),
remote_type: 'text',
remote_id: 'state',
remote_required: false
}, {
remote_label: elementor.translate('City'),
remote_type: 'text',
remote_id: 'city',
remote_required: false
}, {
remote_label: elementor.translate('Zip'),
remote_type: 'text',
remote_id: 'zip',
remote_required: false
}];
for (var field in this.fields) {
if (this.fields.hasOwnProperty(field)) {
remoteFields.push(this.fields[field]);
}
}
this.getEditorControlView('mailerlite_fields_map').updateMap(remoteFields);
},
getMailerliteCache: function getMailerliteCache(type, action, cacheKey, requestArgs) {
if (_.has(this.cache[type], cacheKey)) {
var data = {};
data[type] = this.cache[type][cacheKey];
return jQuery.Deferred().resolve(data);
}
requestArgs = _.extend({}, requestArgs, {
service: 'mailerlite',
mailerlite_action: action,
custom_api_key: this.getEditorControlView('mailerlite_custom_api_key').getControlValue(),
api_key: this.getEditorControlView('mailerlite_api_key_source').getControlValue()
});
return this.fetchCache(type, cacheKey, requestArgs);
},
onSectionActive: function onSectionActive() {
BaseIntegrationModule.prototype.onSectionActive.apply(this, arguments);
this.onMailerliteApiKeyUpdate();
}
});
/***/ }),
/* 411 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(19);
module.exports = elementorModules.editor.utils.Module.extend({
elementType: null,
__construct: function __construct(elementType) {
this.elementType = elementType;
this.addEditorListener();
},
addEditorListener: function addEditorListener() {
var self = this;
if (self.onElementChange) {
var eventName = 'change';
if ('global' !== self.elementType) {
eventName += ':' + self.elementType;
}
elementor.channels.editor.on(eventName, function (controlView, elementView) {
self.onElementChange(controlView.model.get('name'), controlView, elementView);
});
}
},
addControlSpinner: function addControlSpinner(name) {
var $el = this.getEditorControlView(name).$el,
$input = $el.find(':input');
if ($input.attr('disabled')) {
return;
}
$input.attr('disabled', true);
$el.find('.elementor-control-title').after(' ');
},
removeControlSpinner: function removeControlSpinner(name) {
var $controlEl = this.getEditorControlView(name).$el;
$controlEl.find(':input').attr('disabled', false);
$controlEl.find('.elementor-control-spinner').remove();
},
addSectionListener: function addSectionListener(section, callback) {
var self = this;
elementor.channels.editor.on('section:activated', function (sectionName, editor) {
var model = editor.getOption('editedElementView').getEditModel(),
currentElementType = model.get('elType'),
_arguments = arguments;
if ('widget' === currentElementType) {
currentElementType = model.get('widgetType');
}
if (self.elementType === currentElementType && section === sectionName) {
setTimeout(function () {
callback.apply(self, _arguments);
}, 10);
}
});
}
});
/***/ }),
/* 412 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var BaseIntegrationModule = __webpack_require__(199);
module.exports = BaseIntegrationModule.extend({
getName: function getName() {
return 'mailchimp';
},
onElementChange: function onElementChange(setting) {
switch (setting) {
case 'mailchimp_api_key_source':
case 'mailchimp_api_key':
this.onApiUpdate();
break;
case 'mailchimp_list':
this.onMailchimpListUpdate();
break;
}
},
onApiUpdate: function onApiUpdate() {
var self = this,
controlView = self.getEditorControlView('mailchimp_api_key'),
GlobalApiKeycontrolView = self.getEditorControlView('mailchimp_api_key_source');
if ('default' !== GlobalApiKeycontrolView.getControlValue() && '' === controlView.getControlValue()) {
self.updateOptions('mailchimp_list', []);
self.getEditorControlView('mailchimp_list').setValue('');
return;
}
self.addControlSpinner('mailchimp_list');
var cacheKey = this.getCacheKey({
type: 'lists',
controls: [controlView.getControlValue(), GlobalApiKeycontrolView.getControlValue()]
});
self.getMailchimpCache('lists', 'lists', cacheKey).done(function (data) {
self.updateOptions('mailchimp_list', data.lists);
self.updatMailchimpList();
});
},
onMailchimpListUpdate: function onMailchimpListUpdate() {
this.updateOptions('mailchimp_groups', []);
this.getEditorControlView('mailchimp_groups').setValue('');
this.updatMailchimpList();
},
updatMailchimpList: function updatMailchimpList() {
var self = this,
controlView = self.getEditorControlView('mailchimp_list');
if (!controlView.getControlValue()) {
return;
}
self.addControlSpinner('mailchimp_groups');
this.getCacheKey({
type: 'list_details',
controls: [controlView.getControlValue()]
});
self.getMailchimpCache('list_details', 'list_details', controlView.getControlValue(), {
mailchimp_list: controlView.getControlValue()
}).done(function (data) {
self.updateOptions('mailchimp_groups', data.list_details.groups);
self.getEditorControlView('mailchimp_fields_map').updateMap(data.list_details.fields);
});
},
getMailchimpCache: function getMailchimpCache(type, action, cacheKey, requestArgs) {
if (_.has(this.cache[type], cacheKey)) {
var data = {};
data[type] = this.cache[type][cacheKey];
return jQuery.Deferred().resolve(data);
}
requestArgs = _.extend({}, requestArgs, {
service: 'mailchimp',
mailchimp_action: action,
api_key: this.getEditorControlView('mailchimp_api_key').getControlValue(),
use_global_api_key: this.getEditorControlView('mailchimp_api_key_source').getControlValue()
});
return this.fetchCache(type, cacheKey, requestArgs);
},
onSectionActive: function onSectionActive() {
BaseIntegrationModule.prototype.onSectionActive.apply(this, arguments);
this.onApiUpdate();
}
});
/***/ }),
/* 413 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var BaseIntegrationModule = __webpack_require__(199);
module.exports = BaseIntegrationModule.extend({
getName: function getName() {
return 'drip';
},
onElementChange: function onElementChange(setting) {
switch (setting) {
case 'drip_api_token_source':
case 'drip_custom_api_token':
this.onApiUpdate();
break;
case 'drip_account':
this.onDripAccountsUpdate();
break;
}
},
onApiUpdate: function onApiUpdate() {
var self = this,
controlView = self.getEditorControlView('drip_api_token_source'),
customControlView = self.getEditorControlView('drip_custom_api_token');
if ('default' !== controlView.getControlValue() && '' === customControlView.getControlValue()) {
self.updateOptions('drip_account', []);
self.getEditorControlView('drip_account').setValue('');
return;
}
self.addControlSpinner('drip_account');
this.getCacheKey({
type: 'accounts',
controls: [controlView.getControlValue(), customControlView.getControlValue()]
});
self.getDripCache('accounts', 'accounts', controlView.getControlValue()).done(function (data) {
self.updateOptions('drip_account', data.accounts);
});
},
onDripAccountsUpdate: function onDripAccountsUpdate() {
this.updateFieldsMapping();
},
updateFieldsMapping: function updateFieldsMapping() {
var controlView = this.getEditorControlView('drip_account');
if (!controlView.getControlValue()) {
return;
}
var remoteFields = {
remote_label: elementor.translate('Email'),
remote_type: 'email',
remote_id: 'email',
remote_required: true
};
this.getEditorControlView('drip_fields_map').updateMap([remoteFields]);
},
getDripCache: function getDripCache(type, action, cacheKey, requestArgs) {
if (_.has(this.cache[type], cacheKey)) {
var data = {};
data[type] = this.cache[type][cacheKey];
return jQuery.Deferred().resolve(data);
}
requestArgs = _.extend({}, requestArgs, {
service: 'drip',
drip_action: action,
api_token: this.getEditorControlView('drip_api_token_source').getControlValue(),
custom_api_token: this.getEditorControlView('drip_custom_api_token').getControlValue()
});
return this.fetchCache(type, cacheKey, requestArgs);
}
});
/***/ }),
/* 414 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var BaseIntegrationModule = __webpack_require__(199);
module.exports = BaseIntegrationModule.extend({
fields: {},
getName: function getName() {
return 'activecampaign';
},
onElementChange: function onElementChange(setting) {
switch (setting) {
case 'activecampaign_api_credentials_source':
case 'activecampaign_api_key':
case 'activecampaign_api_url':
this.onApiUpdate();
break;
case 'activecampaign_list':
this.onListUpdate();
break;
}
},
onApiUpdate: function onApiUpdate() {
var self = this,
apikeyControlView = self.getEditorControlView('activecampaign_api_key'),
apiUrlControlView = self.getEditorControlView('activecampaign_api_url'),
apiCredControlView = self.getEditorControlView('activecampaign_api_credentials_source');
if ('default' !== apiCredControlView.getControlValue() && ('' === apikeyControlView.getControlValue() || '' === apiUrlControlView.getControlValue())) {
self.updateOptions('activecampaign_list', []);
self.getEditorControlView('activecampaign_list').setValue('');
return;
}
self.addControlSpinner('activecampaign_list');
var cacheKey = this.getCacheKey({
controls: [apiCredControlView.getControlValue(), apiUrlControlView.getControlValue(), apikeyControlView.getControlValue()]
});
self.getActiveCampaignCache('lists', 'activecampaign_list', cacheKey).done(function (data) {
self.updateOptions('activecampaign_list', data.lists);
self.fields = data.fields;
});
},
onListUpdate: function onListUpdate() {
this.updateFieldsMapping();
},
updateFieldsMapping: function updateFieldsMapping() {
var controlView = this.getEditorControlView('activecampaign_list');
if (!controlView.getControlValue()) {
return;
}
var remoteFields = [{
remote_label: elementor.translate('Email'),
remote_type: 'email',
remote_id: 'email',
remote_required: true
}, {
remote_label: elementor.translate('First Name'),
remote_type: 'text',
remote_id: 'first_name',
remote_required: false
}, {
remote_label: elementor.translate('Last Name'),
remote_type: 'text',
remote_id: 'last_name',
remote_required: false
}, {
remote_label: elementor.translate('Phone'),
remote_type: 'text',
remote_id: 'phone',
remote_required: false
}, {
remote_label: elementor.translate('Organization name'),
remote_type: 'text',
remote_id: 'orgname',
remote_required: false
}];
for (var field in this.fields) {
if (this.fields.hasOwnProperty(field)) {
remoteFields.push(this.fields[field]);
}
}
this.getEditorControlView('activecampaign_fields_map').updateMap(remoteFields);
},
getActiveCampaignCache: function getActiveCampaignCache(type, action, cacheKey, requestArgs) {
if (_.has(this.cache[type], cacheKey)) {
var data = {};
data[type] = this.cache[type][cacheKey];
return jQuery.Deferred().resolve(data);
}
requestArgs = _.extend({}, requestArgs, {
service: 'activecampaign',
activecampaign_action: action,
api_key: this.getEditorControlView('activecampaign_api_key').getControlValue(),
api_url: this.getEditorControlView('activecampaign_api_url').getControlValue(),
api_cred: this.getEditorControlView('activecampaign_api_credentials_source').getControlValue()
});
return this.fetchCache(type, cacheKey, requestArgs);
}
});
/***/ }),
/* 415 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var BaseIntegrationModule = __webpack_require__(199);
module.exports = BaseIntegrationModule.extend({
getName: function getName() {
return 'getresponse';
},
onElementChange: function onElementChange(setting) {
switch (setting) {
case 'getresponse_custom_api_key':
case 'getresponse_api_key_source':
this.onApiUpdate();
break;
case 'getresponse_list':
this.onGetResonseListUpdate();
break;
}
},
onApiUpdate: function onApiUpdate() {
var self = this,
controlView = self.getEditorControlView('getresponse_api_key_source'),
customControlView = self.getEditorControlView('getresponse_custom_api_key');
if ('default' !== controlView.getControlValue() && '' === customControlView.getControlValue()) {
self.updateOptions('getresponse_list', []);
self.getEditorControlView('getresponse_list').setValue('');
return;
}
self.addControlSpinner('getresponse_list');
var cacheKey = this.getCacheKey({
type: 'lists',
controls: [controlView.getControlValue(), customControlView.getControlValue()]
});
self.getCache('lists', 'lists', cacheKey).done(function (data) {
self.updateOptions('getresponse_list', data.lists);
});
},
onGetResonseListUpdate: function onGetResonseListUpdate() {
this.updatGetResonseList();
},
updatGetResonseList: function updatGetResonseList() {
var self = this,
controlView = self.getEditorControlView('getresponse_list');
if (!controlView.getControlValue()) {
return;
}
self.addControlSpinner('getresponse_fields_map');
var cacheKey = this.getCacheKey({
type: 'fields',
controls: [controlView.getControlValue()]
});
self.getCache('fields', 'get_fields', cacheKey, {
getresponse_list: controlView.getControlValue()
}).done(function (data) {
self.getEditorControlView('getresponse_fields_map').updateMap(data.fields);
});
},
getCache: function getCache(type, action, cacheKey, requestArgs) {
if (_.has(this.cache[type], cacheKey)) {
var data = {};
data[type] = this.cache[type][cacheKey];
return jQuery.Deferred().resolve(data);
}
requestArgs = _.extend({}, requestArgs, {
service: 'getresponse',
getresponse_action: action,
api_key: this.getEditorControlView('getresponse_api_key_source').getControlValue(),
custom_api_key: this.getEditorControlView('getresponse_custom_api_key').getControlValue()
});
return this.fetchCache(type, cacheKey, requestArgs);
},
onSectionActive: function onSectionActive() {
BaseIntegrationModule.prototype.onSectionActive.apply(this, arguments);
this.updatGetResonseList();
}
});
/***/ }),
/* 416 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var BaseIntegrationModule = __webpack_require__(199);
module.exports = BaseIntegrationModule.extend({
getName: function getName() {
return 'convertkit';
},
onElementChange: function onElementChange(setting) {
switch (setting) {
case 'convertkit_api_key_source':
case 'convertkit_custom_api_key':
this.onApiUpdate();
break;
case 'convertkit_form':
this.onListUpdate();
break;
}
},
onApiUpdate: function onApiUpdate() {
var self = this,
apiKeyControlView = self.getEditorControlView('convertkit_api_key_source'),
customApikeyControlView = self.getEditorControlView('convertkit_custom_api_key');
if ('default' !== apiKeyControlView.getControlValue() && '' === customApikeyControlView.getControlValue()) {
self.updateOptions('convertkit_form', []);
self.getEditorControlView('convertkit_form').setValue('');
return;
}
self.addControlSpinner('convertkit_form');
var cacheKey = this.getCacheKey({
type: 'data',
controls: [apiKeyControlView.getControlValue(), customApikeyControlView.getControlValue()]
});
self.getConvertKitCache('data', 'convertkit_get_forms', cacheKey).done(function (data) {
self.updateOptions('convertkit_form', data.data.forms);
self.updateOptions('convertkit_tags', data.data.tags);
});
},
onListUpdate: function onListUpdate() {
this.updateFieldsMapping();
},
updateFieldsMapping: function updateFieldsMapping() {
var controlView = this.getEditorControlView('convertkit_form');
if (!controlView.getControlValue()) {
return;
}
var remoteFields = [{
remote_label: elementor.translate('Email'),
remote_type: 'email',
remote_id: 'email',
remote_required: true
}, {
remote_label: elementor.translate('First Name'),
remote_type: 'text',
remote_id: 'first_name',
remote_required: false
}];
this.getEditorControlView('convertkit_fields_map').updateMap(remoteFields);
},
getConvertKitCache: function getConvertKitCache(type, action, cacheKey, requestArgs) {
if (_.has(this.cache[type], cacheKey)) {
var data = {};
data[type] = this.cache[type][cacheKey];
return jQuery.Deferred().resolve(data);
}
requestArgs = _.extend({}, requestArgs, {
service: 'convertkit',
convertkit_action: action,
api_key: this.getEditorControlView('convertkit_api_key_source').getControlValue(),
custom_api_key: this.getEditorControlView('convertkit_custom_api_key').getControlValue()
});
return this.fetchCache(type, cacheKey, requestArgs);
}
});
/***/ }),
/* 417 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
renderField: function renderField(inputField, item, i, settings) {
var itemClasses = _.escape(item.css_classes),
required = '',
placeholder = '';
if (item.required) {
required = 'required';
}
if (item.placeholder) {
placeholder = ' placeholder="' + item.placeholder + '"';
}
if ('yes' === item.use_native_time) {
itemClasses += ' elementor-use-native';
}
return '';
},
onInit: function onInit() {
elementor.hooks.addFilter('elementor_pro/forms/content_template/field/time', this.renderField, 10, 4);
}
});
/***/ }),
/* 418 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
renderField: function renderField(inputField, item, i, settings) {
var itemClasses = _.escape(item.css_classes),
required = '',
min = '',
max = '',
placeholder = '';
if (item.required) {
required = 'required';
}
if (item.min_date) {
min = ' min="' + item.min_date + '"';
}
if (item.max_date) {
max = ' max="' + item.max_date + '"';
}
if (item.placeholder) {
placeholder = ' placeholder="' + item.placeholder + '"';
}
if ('yes' === item.use_native_date) {
itemClasses += ' elementor-use-native';
}
return '';
},
onInit: function onInit() {
elementor.hooks.addFilter('elementor_pro/forms/content_template/field/date', this.renderField, 10, 4);
}
});
/***/ }),
/* 419 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
renderField: function renderField(inputField, item, i, settings) {
var itemClasses = _.escape(item.css_classes),
required = '',
label = '',
checked = '';
if (item.required) {
required = 'required';
}
if (item.acceptance_text) {
label = '';
}
if (item.checked_by_default) {
checked = ' checked="checked"';
}
return '' + '' + ' ' + label + '
';
},
onInit: function onInit() {
elementor.hooks.addFilter('elementor_pro/forms/content_template/field/acceptance', this.renderField, 10, 4);
}
});
/***/ }),
/* 420 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
renderField: function renderField(inputField, item, i, settings) {
var itemClasses = _.escape(item.css_classes),
required = '',
multiple = '',
fieldName = 'form_field_';
if (item.required) {
required = 'required';
}
if (item.allow_multiple_upload) {
multiple = ' multiple="multiple"';
fieldName += '[]';
}
return '';
},
onInit: function onInit() {
elementor.hooks.addFilter('elementor_pro/forms/content_template/field/upload', this.renderField, 10, 4);
}
});
/***/ }),
/* 421 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
renderField: function renderField(inputField, item, i, settings) {
var itemClasses = _.escape(item.css_classes),
required = '',
placeholder = '';
if (item.required) {
required = 'required';
}
if (item.placeholder) {
placeholder = ' placeholder="' + item.placeholder + '"';
}
itemClasses = 'elementor-field-textual ' + itemClasses;
return '';
},
onInit: function onInit() {
elementor.hooks.addFilter('elementor_pro/forms/content_template/field/tel', this.renderField, 10, 4);
}
});
/***/ }),
/* 422 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(19);
module.exports = elementor.modules.controls.Repeater.extend({
onBeforeRender: function onBeforeRender() {
this.$el.hide();
},
updateMap: function updateMap(fields) {
var self = this,
savedMapObject = {};
self.collection.each(function (model) {
savedMapObject[model.get('remote_id')] = model.get('local_id');
});
self.collection.reset();
_.each(fields, function (field) {
var model = {
remote_id: field.remote_id,
remote_label: field.remote_label,
remote_type: field.remote_type ? field.remote_type : '',
remote_required: field.remote_required ? field.remote_required : false,
local_id: savedMapObject[field.remote_id] ? savedMapObject[field.remote_id] : ''
};
self.collection.add(model);
});
self.render();
},
onRender: function onRender() {
elementor.modules.controls.Base.prototype.onRender.apply(this, arguments);
var self = this;
self.children.each(function (view) {
var localFieldsControl = view.children.last(),
options = {
'': '- ' + elementor.translate('None') + ' -'
},
label = view.model.get('remote_label');
if (view.model.get('remote_required')) {
label += '*';
}
_.each(self.elementSettingsModel.get('form_fields').models, function (model, index) {
// If it's an email field, add only email fields from thr form
var remoteType = view.model.get('remote_type');
if ('text' !== remoteType && remoteType !== model.get('field_type')) {
return;
}
options[model.get('custom_id')] = model.get('field_label') || 'Field #' + (index + 1);
});
localFieldsControl.model.set('label', label);
localFieldsControl.model.set('options', options);
localFieldsControl.render();
view.$el.find('.elementor-repeater-row-tools').hide();
view.$el.find('.elementor-repeater-row-controls').removeClass('elementor-repeater-row-controls').find('.elementor-control').css({
paddingBottom: 0
});
});
self.$el.find('.elementor-button-wrapper').remove();
if (self.children.length) {
self.$el.show();
}
}
});
/***/ }),
/* 423 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _get3 = _interopRequireDefault(__webpack_require__(61));
var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(25));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _fieldsRepeaterRow = _interopRequireDefault(__webpack_require__(424));
module.exports = /*#__PURE__*/function (_elementor$modules$co) {
(0, _inherits2.default)(_class, _elementor$modules$co);
var _super = (0, _createSuper2.default)(_class);
function _class() {
(0, _classCallCheck2.default)(this, _class);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(_class, [{
key: "className",
value: function className() {
var classes = (0, _get3.default)((0, _getPrototypeOf2.default)(_class.prototype), "className", this).call(this);
classes += ' elementor-control-type-repeater';
return classes;
}
}, {
key: "getChildView",
value: function getChildView() {
return _fieldsRepeaterRow.default;
}
}, {
key: "initialize",
value: function initialize() {
var _get2,
_this = this;
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
(_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(_class.prototype), "initialize", this)).call.apply(_get2, [this].concat(args));
var formFields = this.container.settings.get('form_fields');
this.listenTo(formFields, 'change', function (model) {
return _this.onFormFieldChange(model);
}).listenTo(formFields, 'remove', function (model) {
return _this.onFormFieldRemove(model);
});
}
}, {
key: "getFirstChild",
value: function getFirstChild() {
return this.children.findByModel(this.collection.models[0]);
}
}, {
key: "lockFirstStep",
value: function lockFirstStep() {
var firstChild = this.getFirstChild();
if ('step' !== firstChild.model.get('field_type')) {
return;
}
var stepFields = this.collection.where({
field_type: 'step'
});
if (1 < stepFields.length) {
firstChild.toggleFieldTypeControl(false);
firstChild.toggleTools(false);
}
firstChild.toggleSort(false);
}
}, {
key: "onFormFieldChange",
value: function onFormFieldChange(model) {
var fieldType = model.changed.field_type;
if (!fieldType || 'step' !== fieldType && 'step' !== model._previousAttributes.field_type) {
return;
}
var isStep = 'step' === fieldType;
this.children.findByModel(model).toggleStepField(isStep);
this.onStepFieldChanged(isStep);
}
}, {
key: "onFormFieldRemove",
value: function onFormFieldRemove(model) {
if ('step' === model.get('field_type')) {
this.onStepFieldChanged(false);
}
}
}, {
key: "onStepFieldChanged",
value: function onStepFieldChanged(isStep) {
if (isStep) {
this.lockFirstStep();
return;
}
var stepFields = this.collection.where({
field_type: 'step'
});
if (stepFields.length > 1) {
return;
}
var firstChild = this.getFirstChild();
if (1 === stepFields.length) {
firstChild.toggleTools(true);
firstChild.toggleFieldTypeControl(true);
return;
}
firstChild.toggleSort(true);
}
}, {
key: "onAddChild",
value: function onAddChild(childView) {
(0, _get3.default)((0, _getPrototypeOf2.default)(_class.prototype), "onAddChild", this).call(this, childView);
if ('step' === childView.model.get('field_type')) {
this.lockFirstStep();
childView.toggleStepField(true);
}
}
}]);
return _class;
}(elementor.modules.controls.Repeater);
/***/ }),
/* 424 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _default = /*#__PURE__*/function (_elementor$modules$co) {
(0, _inherits2.default)(_default, _elementor$modules$co);
var _super = (0, _createSuper2.default)(_default);
function _default() {
(0, _classCallCheck2.default)(this, _default);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(_default, [{
key: "toggleFieldTypeControl",
value: function toggleFieldTypeControl(show) {
var fieldTypeModel = this.collection.findWhere({
name: 'field_type'
}),
fieldTypeControl = this.children.findByModel(fieldTypeModel);
fieldTypeControl.$el.toggle(show);
}
}, {
key: "toggleStepField",
value: function toggleStepField(isStep) {
this.$el.toggleClass('elementor-repeater-row--form-step', isStep);
}
}, {
key: "toggleTools",
value: function toggleTools(show) {
this.ui.removeButton.add(this.ui.duplicateButton).toggle(show);
}
}]);
return _default;
}(elementor.modules.controls.RepeaterRow);
exports.default = _default;
/***/ }),
/* 425 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _component = _interopRequireDefault(__webpack_require__(426));
var Module = /*#__PURE__*/function (_elementorModules$edi) {
(0, _inherits2.default)(Module, _elementorModules$edi);
var _super = (0, _createSuper2.default)(Module);
function Module() {
(0, _classCallCheck2.default)(this, Module);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(Module, [{
key: "onElementorInit",
value: function onElementorInit() {
$e.components.register(new _component.default());
}
}]);
return Module;
}(elementorModules.editor.utils.Module);
exports.default = Module;
/***/ }),
/* 426 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireWildcard = __webpack_require__(147);
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var dataHooks = _interopRequireWildcard(__webpack_require__(427));
var _default = /*#__PURE__*/function (_$e$modules$Component) {
(0, _inherits2.default)(_default, _$e$modules$Component);
var _super = (0, _createSuper2.default)(_default);
function _default() {
(0, _classCallCheck2.default)(this, _default);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(_default, [{
key: "getNamespace",
value: function getNamespace() {
return 'screenshots';
}
}, {
key: "defaultHooks",
value: function defaultHooks() {
return this.importHooks(dataHooks);
}
}]);
return _default;
}($e.modules.ComponentBase);
exports.default = _default;
/***/ }),
/* 427 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
_Object$defineProperty(exports, "DeleteScreenshot", {
enumerable: true,
get: function get() {
return _deleteScreenshot.DeleteScreenshot;
}
});
var _deleteScreenshot = __webpack_require__(428);
/***/ }),
/* 428 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.DeleteScreenshot = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var DeleteScreenshot = /*#__PURE__*/function (_$e$modules$hookData$) {
(0, _inherits2.default)(DeleteScreenshot, _$e$modules$hookData$);
var _super = (0, _createSuper2.default)(DeleteScreenshot);
function DeleteScreenshot() {
(0, _classCallCheck2.default)(this, DeleteScreenshot);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(DeleteScreenshot, [{
key: "getCommand",
value: function getCommand() {
return 'document/save/save';
}
}, {
key: "getConditions",
value: function getConditions(args) {
var status = args.status,
config = elementor.documents.getCurrent().config;
return 'publish' === status && config.support_site_editor;
}
}, {
key: "getId",
value: function getId() {
return 'document/save/save::delete-screenshot';
}
}, {
key: "apply",
value: function apply() {
var postId = elementor.documents.getCurrent().id;
return elementorCommon.ajax.addRequest('screenshot_delete', {
unique_id: "delete_screenshot_".concat(postId),
data: {
post_id: postId
}
});
}
}]);
return DeleteScreenshot;
}($e.modules.hookData.After);
exports.DeleteScreenshot = DeleteScreenshot;
var _default = DeleteScreenshot;
exports.default = _default;
/***/ }),
/* 429 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(1);
var _Object$defineProperty = __webpack_require__(0);
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(3));
var _createClass2 = _interopRequireDefault(__webpack_require__(6));
var _inherits2 = _interopRequireDefault(__webpack_require__(4));
var _createSuper2 = _interopRequireDefault(__webpack_require__(5));
var _component = _interopRequireDefault(__webpack_require__(239));
var _commands = __webpack_require__(181);
var Module = /*#__PURE__*/function (_elementorModules$edi) {
(0, _inherits2.default)(Module, _elementorModules$edi);
var _super = (0, _createSuper2.default)(Module);
function Module() {
(0, _classCallCheck2.default)(this, Module);
return _super.apply(this, arguments);
}
(0, _createClass2.default)(Module, [{
key: "onElementorInit",
value: function onElementorInit() {
var config = elementor.documents.getCurrent().config;
if (config.support_site_editor) {
$e.components.register(new _component.default());
$e.data.deleteCache($e.components.get(_component.default.namespace), _commands.Templates.signature);
}
}
}]);
return Module;
}(elementorModules.editor.utils.Module);
exports.default = Module;
/***/ }),
/* 430 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
onElementorPreviewLoaded: function onElementorPreviewLoaded() {
elementor.addControlView('Query', __webpack_require__(431));
}
});
/***/ }),
/* 431 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(19);
module.exports = elementor.modules.controls.Select2.extend({
cache: null,
isTitlesReceived: false,
getSelect2Placeholder: function getSelect2Placeholder() {
return {
id: '',
text: elementorPro.translate('all')
};
},
getControlValueByName: function getControlValueByName(controlName) {
var name = this.model.get('group_prefix') + controlName;
return this.elementSettingsModel.attributes[name];
},
getQueryDataDeprecated: function getQueryDataDeprecated() {
return {
filter_type: this.model.get('filter_type'),
object_type: this.model.get('object_type'),
include_type: this.model.get('include_type'),
query: this.model.get('query')
};
},
getQueryData: function getQueryData() {
// Use a clone to keep model data unchanged:
var autocomplete = elementorCommon.helpers.cloneObject(this.model.get('autocomplete'));
if (_.isEmpty(autocomplete.query)) {
autocomplete.query = {};
} // Specific for Group_Control_Query
if ('cpt_tax' === autocomplete.object) {
autocomplete.object = 'tax';
if (_.isEmpty(autocomplete.query) || _.isEmpty(autocomplete.query.post_type)) {
autocomplete.query.post_type = this.getControlValueByName('post_type');
}
}
return {
autocomplete: autocomplete
};
},
getSelect2DefaultOptions: function getSelect2DefaultOptions() {
var self = this;
return jQuery.extend(elementor.modules.controls.Select2.prototype.getSelect2DefaultOptions.apply(this, arguments), {
ajax: {
transport: function transport(params, success, failure) {
var bcFormat = !_.isEmpty(self.model.get('filter_type'));
var data = {},
action = 'panel_posts_control_filter_autocomplete';
if (bcFormat) {
data = self.getQueryDataDeprecated();
action = 'panel_posts_control_filter_autocomplete_deprecated';
} else {
data = self.getQueryData();
}
data.q = params.data.q;
return elementorPro.ajax.addRequest(action, {
data: data,
success: success,
error: failure
});
},
data: function data(params) {
return {
q: params.term,
page: params.page
};
},
cache: true
},
escapeMarkup: function escapeMarkup(markup) {
return markup;
},
minimumInputLength: 1
});
},
getValueTitles: function getValueTitles() {
var self = this,
data = {},
bcFormat = !_.isEmpty(this.model.get('filter_type'));
var ids = this.getControlValue(),
action = 'query_control_value_titles',
filterTypeName = 'autocomplete',
filterType = {};
if (bcFormat) {
filterTypeName = 'filter_type';
filterType = this.model.get(filterTypeName).object;
data.filter_type = filterType;
data.object_type = self.model.get('object_type');
data.include_type = self.model.get('include_type');
data.unique_id = '' + self.cid + filterType;
action = 'query_control_value_titles_deprecated';
} else {
filterType = this.model.get(filterTypeName).object;
data.get_titles = self.getQueryData().autocomplete;
data.unique_id = '' + self.cid + filterType;
}
if (!ids || !filterType) {
return;
}
if (!_.isArray(ids)) {
ids = [ids];
}
elementorCommon.ajax.loadObjects({
action: action,
ids: ids,
data: data,
before: function before() {
self.addControlSpinner();
},
success: function success(ajaxData) {
self.isTitlesReceived = true;
self.model.set('options', ajaxData);
self.render();
}
});
},
addControlSpinner: function addControlSpinner() {
this.ui.select.prop('disabled', true);
this.$el.find('.elementor-control-title').after(' ');
},
onReady: function onReady() {
if (!this.isTitlesReceived) {
this.getValueTitles();
}
}
});
/***/ }),
/* 432 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
onElementorPreviewLoaded: function onElementorPreviewLoaded() {
var EditButton = __webpack_require__(433);
this.editButton = new EditButton();
}
});
/***/ }),
/* 433 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(19);
module.exports = function () {
var self = this;
self.onPanelShow = function (panel) {
var model = panel.content.currentView.collection.findWhere({
name: 'template_id'
});
self.templateIdView = panel.content.currentView.children.findByModelCid(model.cid); // Change Edit link on render & on change template.
self.templateIdView.elementSettingsModel.on('change', self.onTemplateIdChange);
self.templateIdView.on('render', self.onTemplateIdChange);
};
self.onTemplateIdChange = function () {
var templateID = self.templateIdView.elementSettingsModel.get('template_id'),
$editButton = self.templateIdView.$el.find('.elementor-edit-template');
if (!templateID) {
$editButton.remove();
return;
}
var editUrl = ElementorConfig.home_url + '?p=' + templateID + '&elementor';
if ($editButton.length) {
$editButton.prop('href', editUrl);
} else {
$editButton = jQuery('', {
target: '_blank',
class: 'elementor-button elementor-button-default elementor-edit-template',
href: editUrl,
html: ' ' + elementorPro.config.i18n.edit_template
});
self.templateIdView.$el.find('.elementor-control-input-wrapper').after($editButton);
}
};
self.init = function () {
elementor.hooks.addAction('panel/open_editor/widget/template', self.onPanelShow);
};
self.init();
};
/***/ }),
/* 434 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(19);
module.exports = elementorModules.editor.utils.Module.extend({
onElementorInit: function onElementorInit() {
elementor.channels.editor.on('section:activated', this.onSectionActivated);
},
onSectionActivated: function onSectionActivated(sectionName, editor) {
var editedElement = editor.getOption('editedElementView');
if ('flip-box' !== editedElement.model.get('widgetType')) {
return;
}
var isSideBSection = -1 !== ['section_side_b_content', 'section_style_b'].indexOf(sectionName);
editedElement.$el.toggleClass('elementor-flip-box--flipped', isSideBSection);
var $backLayer = editedElement.$el.find('.elementor-flip-box__back');
if (isSideBSection) {
$backLayer.css('transition', 'none');
}
if (!isSideBSection) {
setTimeout(function () {
$backLayer.css('transition', '');
}, 10);
}
}
});
/***/ }),
/* 435 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
config: elementorPro.config.shareButtonsNetworks,
networksClassDictionary: {
google: 'fab fa-google-plus',
pocket: 'fab fa-get-pocket',
email: 'fas fa-envelope'
},
getNetworkClass: function getNetworkClass(networkName) {
var networkClass = this.networksClassDictionary[networkName] || 'fab fa-' + networkName;
if (elementor.config.icons_update_needed) {
networkClass = 'fa ' + networkClass;
}
return networkClass;
},
getNetworkTitle: function getNetworkTitle(buttonSettings) {
return buttonSettings.text || this.config[buttonSettings.button].title;
},
hasCounter: function hasCounter(networkName, settings) {
return 'icon' !== settings.view && 'yes' === settings.show_counter && this.config[networkName].has_counter;
}
});
/***/ }),
/* 436 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
onElementorInit: function onElementorInit() {
var FontsManager = __webpack_require__(437);
this.assets = {
font: new FontsManager()
};
}
});
/***/ }),
/* 437 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
__webpack_require__(19);
module.exports = elementorModules.Module.extend({
_enqueuedFonts: [],
_enqueuedTypekit: false,
onFontChange: function onFontChange(fontType, font) {
if ('custom' !== fontType && 'typekit' !== fontType) {
return;
}
if (-1 !== this._enqueuedFonts.indexOf(font)) {
return;
}
if ('typekit' === fontType && this._enqueuedTypekit) {
return;
}
this.getCustomFont(fontType, font);
},
getCustomFont: function getCustomFont(fontType, font) {
elementorPro.ajax.addRequest('assets_manager_panel_action_data', {
unique_id: 'font_' + fontType + font,
data: {
service: 'font',
type: fontType,
font: font
},
success: function success(data) {
if (data.font_face) {
elementor.$previewContents.find('style:last').after('');
}
if (data.font_url) {
elementor.$previewContents.find('link:last').after('');
}
}
});
this._enqueuedFonts.push(font);
if ('typekit' === fontType) {
this._enqueuedTypekit = true;
}
},
onInit: function onInit() {
elementor.channels.editor.on('font:insertion', this.onFontChange.bind(this));
}
});
/***/ }),
/* 438 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = elementorModules.editor.utils.Module.extend({
onElementorPreviewLoaded: function onElementorPreviewLoaded() {
var CommentsSkin = __webpack_require__(439);
this.commentsSkin = new CommentsSkin();
}
});
/***/ }),
/* 439 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
module.exports = function () {
var self = this;
self.onPanelShow = function (panel, model) {
var settingsModel = model.get('settings'); // If no skins - set the skin to `theme_comments`.
if (!settingsModel.controls._skin.default) {
settingsModel.set('_skin', 'theme_comments');
}
};
self.init = function () {
elementor.hooks.addAction('panel/open_editor/widget/post-comments', self.onPanelShow);
};
self.init();
};
/***/ })
/******/ ]);
//# sourceMappingURL=editor.js.map