PluginProbe
Elementor Website Builder – more than just a page builder / 3.7.0-dev1
Elementor Website Builder – more than just a page builder v3.7.0-dev1
4.3.1 4.3.0 4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 All 454 releases
← All changes | assets/js/new-template.js +133 -290 4.3.0 → 3.7.0-dev1 View file →
@@ -1,303 +1,146 @@
1 -(function(_wordpress_i18n) {
1 +/*! elementor - v3.5.6 - 16-03-2022 */
2 +/******/ (() => { // webpackBootstrap
3 +/******/ "use strict";
4 +/******/ var __webpack_modules__ = ({
2 5
3 -//#region \0rolldown/runtime.js
4 - var __defProp = Object.defineProperty;
5 - var __name = (target, value) => __defProp(target, "name", {
6 - value,
7 - configurable: true
8 - });
9 - var __esmMin = (fn, res, err) => () => {
10 - if (err) throw err[0];
11 - try {
12 - return fn && (res = fn(fn = 0)), res;
13 - } catch (e) {
14 - throw err = [e], e;
15 - }
16 - };
17 - var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
6 +/***/ "../assets/dev/js/admin/new-template/layout.js":
7 +/*!*****************************************************!*\
8 + !*** ../assets/dev/js/admin/new-template/layout.js ***!
9 + \*****************************************************/
10 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
18 11
19 -//#endregion
12 +/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
20 13
21 -//#region node_modules/@babel/runtime/helpers/esm/classCallCheck.js
22 - function _classCallCheck(a, n) {
23 - if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function");
24 - }
25 - var init_classCallCheck = __esmMin((() => {}));
26 14
27 -//#endregion
28 -//#region node_modules/@babel/runtime/helpers/esm/typeof.js
29 - function _typeof(o) {
30 - "@babel/helpers - typeof";
31 - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
32 - return typeof o;
33 - } : function(o) {
34 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
35 - }, _typeof(o);
36 - }
37 - var init_typeof = __esmMin((() => {}));
15 +var NewTemplateView = __webpack_require__(/*! elementor-admin/new-template/view */ "../assets/dev/js/admin/new-template/view.js");
38 16
39 -//#endregion
40 -//#region node_modules/@babel/runtime/helpers/esm/toPrimitive.js
41 - function toPrimitive(t, r) {
42 - if ("object" != _typeof(t) || !t) return t;
43 - var e = t[Symbol.toPrimitive];
44 - if (void 0 !== e) {
45 - var i = e.call(t, r || "default");
46 - if ("object" != _typeof(i)) return i;
47 - throw new TypeError("@@toPrimitive must return a primitive value.");
48 - }
49 - return ("string" === r ? String : Number)(t);
50 - }
51 - var init_toPrimitive = __esmMin((() => {
52 - init_typeof();
53 - }));
17 +module.exports = elementorModules.common.views.modal.Layout.extend({
18 + getModalOptions: function getModalOptions() {
19 + return {
20 + id: 'elementor-new-template-modal'
21 + };
22 + },
23 + getLogoOptions: function getLogoOptions() {
24 + return {
25 + title: __('New Template', 'elementor')
26 + };
27 + },
28 + initialize: function initialize() {
29 + elementorModules.common.views.modal.Layout.prototype.initialize.apply(this, arguments);
30 + this.showLogo();
31 + this.showContentView();
32 + },
33 + showContentView: function showContentView() {
34 + this.modalContent.show(new NewTemplateView());
35 + }
36 +});
54 37
55 -//#endregion
56 -//#region node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
57 - function toPropertyKey(t) {
58 - var i = toPrimitive(t, "string");
59 - return "symbol" == _typeof(i) ? i : i + "";
60 - }
61 - var init_toPropertyKey = __esmMin((() => {
62 - init_typeof();
63 - init_toPrimitive();
64 - }));
38 +/***/ }),
65 39
66 -//#endregion
67 -//#region node_modules/@babel/runtime/helpers/esm/createClass.js
68 - function _defineProperties(e, r) {
69 - for (var t = 0; t < r.length; t++) {
70 - var o = r[t];
71 - o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);
72 - }
73 - }
74 - function _createClass(e, r, t) {
75 - return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
76 - }
77 - var init_createClass = __esmMin((() => {
78 - init_toPropertyKey();
79 - }));
40 +/***/ "../assets/dev/js/admin/new-template/view.js":
41 +/*!***************************************************!*\
42 + !*** ../assets/dev/js/admin/new-template/view.js ***!
43 + \***************************************************/
44 +/***/ ((module) => {
80 45
81 -//#endregion
82 -//#region assets/dev/js/admin/new-template/behaviors/lock-pro.js
83 - var LockPro;
84 - var init_lock_pro = __esmMin((() => {
85 - init_classCallCheck();
86 - init_createClass();
87 - LockPro = /*#__PURE__*/ function() {
88 - function LockPro(elements) {
89 - _classCallCheck(this, LockPro);
90 - this.elements = elements;
91 - }
92 - return _createClass(LockPro, [
93 - {
94 - key: "bindEvents",
95 - value: function bindEvents() {
96 - var _this$elements = this.elements;
97 - var form = _this$elements.form;
98 - var templateType = _this$elements.templateType;
99 - form.addEventListener("submit", this.onFormSubmit.bind(this));
100 - templateType.addEventListener("change", this.onTemplateTypeChange.bind(this));
101 - this.onTemplateTypeChange();
102 - }
103 - },
104 - {
105 - key: "onFormSubmit",
106 - value: function onFormSubmit(e) {
107 - if (this.getCurrentLockOptions().is_locked) e.preventDefault();
108 - }
109 - },
110 - {
111 - key: "onTemplateTypeChange",
112 - value: function onTemplateTypeChange() {
113 - var lockOptions = this.getCurrentLockOptions();
114 - if (lockOptions.is_locked) this.lock(lockOptions);
115 - else this.unlock();
116 - }
117 - },
118 - {
119 - key: "getCurrentLockOptions",
120 - value: function getCurrentLockOptions() {
121 - var templateType = this.elements.templateType;
122 - var currentOption = templateType.options[templateType.selectedIndex];
123 - return JSON.parse(currentOption.dataset.lock || "{}");
124 - }
125 - },
126 - {
127 - key: "lock",
128 - value: function lock(lockOptions) {
129 - this.showLockBadge(lockOptions.badge);
130 - this.showLockButton(lockOptions.button);
131 - this.hideSubmitButton();
132 - }
133 - },
134 - {
135 - key: "unlock",
136 - value: function unlock() {
137 - this.hideLockBadge();
138 - this.hideLockButton();
139 - this.showSubmitButton();
140 - }
141 - },
142 - {
143 - key: "showLockBadge",
144 - value: function showLockBadge(badgeConfig) {
145 - var _this$elements2 = this.elements;
146 - var lockBadge = _this$elements2.lockBadge;
147 - var lockBadgeText = _this$elements2.lockBadgeText;
148 - var lockBadgeIcon = _this$elements2.lockBadgeIcon;
149 - lockBadgeText.innerText = badgeConfig.text;
150 - lockBadgeIcon.className = badgeConfig.icon;
151 - lockBadge.classList.remove("e-hidden");
152 - }
153 - },
154 - {
155 - key: "hideLockBadge",
156 - value: function hideLockBadge() {
157 - this.elements.lockBadge.classList.add("e-hidden");
158 - }
159 - },
160 - {
161 - key: "showLockButton",
162 - value: function showLockButton(buttonConfig) {
163 - var lockButton = this.elements.lockButton;
164 - lockButton.href = this.replaceLockLinkPlaceholders(buttonConfig.url);
165 - lockButton.innerText = buttonConfig.text;
166 - lockButton.classList.remove("e-hidden");
167 - }
168 - },
169 - {
170 - key: "hideLockButton",
171 - value: function hideLockButton() {
172 - this.elements.lockButton.classList.add("e-hidden");
173 - }
174 - },
175 - {
176 - key: "showSubmitButton",
177 - value: function showSubmitButton() {
178 - this.elements.submitButton.classList.remove("e-hidden");
179 - }
180 - },
181 - {
182 - key: "hideSubmitButton",
183 - value: function hideSubmitButton() {
184 - this.elements.submitButton.classList.add("e-hidden");
185 - }
186 - },
187 - {
188 - key: "replaceLockLinkPlaceholders",
189 - value: function replaceLockLinkPlaceholders(link) {
190 - return link.replace(/%%utm_source%%/g, "wp-add-new").replace(/%%utm_medium%%/g, "wp-dash");
191 - }
192 - }
193 - ]);
194 - }();
195 - }));
196 46
197 -//#endregion
198 -//#region assets/dev/js/admin/new-template/view.js
199 - var require_view = /* @__PURE__ */ __commonJSMin(((exports, module) => {
200 - module.exports = Marionette.ItemView.extend({
201 - id: "elementor-new-template-dialog-content",
202 - template: "#tmpl-elementor-new-template",
203 - ui: {},
204 - events: {},
205 - onRender: function onRender() {}
206 - });
207 - }));
208 47
209 -//#endregion
210 -//#region assets/dev/js/admin/new-template/layout.js
211 - var require_layout = /* @__PURE__ */ __commonJSMin(((exports, module) => {
212 - init_lock_pro();
213 - var NewTemplateView = require_view();
214 - module.exports = elementorModules.common.views.modal.Layout.extend({
215 - getModalOptions: function getModalOptions() {
216 - return { id: "elementor-new-template-modal" };
217 - },
218 - getLogoOptions: function getLogoOptions() {
219 - return { title: (0, _wordpress_i18n.__)("New Template", "elementor") };
220 - },
221 - initialize: function initialize() {
222 - elementorModules.common.views.modal.Layout.prototype.initialize.apply(this, arguments);
223 - this.showLogo();
224 - this.showContentView();
225 - this.initElements();
226 - this.lockProBehavior = new LockPro(this.elements);
227 - this.lockProBehavior.bindEvents();
228 - this.setupDynamicControlsVisibility();
229 - },
230 - setupDynamicControlsVisibility: function setupDynamicControlsVisibility() {
231 - if (!("undefined" !== typeof elementor_new_template_form_controls)) return;
232 - var CONTROL_ID_PREFIX = "elementor-new-template__form__";
233 - var templateTypeSelectId = "".concat(CONTROL_ID_PREFIX, "template-type");
234 - var dynamicControlsVisibilityListener = function dynamicControlsVisibilityListener() {
235 - elementorAdmin.templateControls.setDynamicControlsVisibility(CONTROL_ID_PREFIX, elementor_new_template_form_controls);
236 - };
237 - this.getModal().onShow = function() {
238 - dynamicControlsVisibilityListener();
239 - document.getElementById(templateTypeSelectId).addEventListener("change", dynamicControlsVisibilityListener);
240 - };
241 - this.getModal().onHide = function() {
242 - document.getElementById(templateTypeSelectId).removeEventListener("change", dynamicControlsVisibilityListener);
243 - };
244 - },
245 - initElements: function initElements() {
246 - var container = this.$el[0];
247 - var root = "#elementor-new-template__form";
248 - this.elements = {
249 - form: container.querySelector(root),
250 - submitButton: container.querySelector("".concat(root, "__submit")),
251 - lockButton: container.querySelector("".concat(root, "__lock_button")),
252 - templateType: container.querySelector("".concat(root, "__template-type")),
253 - lockBadge: container.querySelector("".concat(root, "__template-type-badge")),
254 - lockBadgeText: container.querySelector("".concat(root, "__template-type-badge__text")),
255 - lockBadgeIcon: container.querySelector("".concat(root, "__template-type-badge__icon"))
256 - };
257 - },
258 - showContentView: function showContentView() {
259 - this.modalContent.show(new NewTemplateView());
260 - }
261 - });
262 - }));
48 +module.exports = Marionette.ItemView.extend({
49 + id: 'elementor-new-template-dialog-content',
50 + template: '#tmpl-elementor-new-template',
51 + ui: {},
52 + events: {},
53 + onRender: function onRender() {}
54 +});
263 55
264 -//#endregion
265 -//#region assets/dev/js/admin/new-template/new-template.js
266 - var NewTemplateLayout = require_layout();
267 - var NewTemplateModule = elementorModules.ViewModule.extend({
268 - getDefaultSettings: function getDefaultSettings() {
269 - return { selectors: { addButton: "a.page-title-action[href*=\"post-new.php?post_type=elementor_library\"], #elementor-template-library-add-new" } };
270 - },
271 - getDefaultElements: function getDefaultElements() {
272 - var selectors = this.getSettings("selectors");
273 - return { $addButton: jQuery(selectors.addButton) };
274 - },
275 - bindEvents: function bindEvents() {
276 - this.elements.$addButton.on("click", this.onAddButtonClick);
277 - elementorCommon.elements.$window.on("hashchange", this.showModalByHash.bind(this));
278 - },
279 - showModalByHash: function showModalByHash() {
280 - if ("#add_new" === location.hash) {
281 - var _this$layout;
282 - (_this$layout = this.layout) === null || _this$layout === void 0 || _this$layout.showModal();
283 - location.hash = "";
284 - }
285 - },
286 - onInit: function onInit() {
287 - elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
288 - this.layout = new NewTemplateLayout();
289 - this.showModalByHash();
290 - },
291 - onAddButtonClick: function onAddButtonClick(event) {
292 - var _this$layout2;
293 - event.preventDefault();
294 - (_this$layout2 = this.layout) === null || _this$layout2 === void 0 || _this$layout2.showModal();
295 - }
296 - });
297 - jQuery(function() {
298 - window.elementorNewTemplate = new NewTemplateModule();
299 - });
56 +/***/ }),
300 57
301 -//#endregion
302 -})(wp.i18n);
58 +/***/ "@wordpress/i18n":
59 +/*!**************************!*\
60 + !*** external "wp.i18n" ***!
61 + \**************************/
62 +/***/ ((module) => {
63 +
64 +module.exports = wp.i18n;
65 +
66 +/***/ })
67 +
68 +/******/ });
69 +/************************************************************************/
70 +/******/ // The module cache
71 +/******/ var __webpack_module_cache__ = {};
72 +/******/
73 +/******/ // The require function
74 +/******/ function __webpack_require__(moduleId) {
75 +/******/ // Check if module is in cache
76 +/******/ var cachedModule = __webpack_module_cache__[moduleId];
77 +/******/ if (cachedModule !== undefined) {
78 +/******/ return cachedModule.exports;
79 +/******/ }
80 +/******/ // Create a new module (and put it into the cache)
81 +/******/ var module = __webpack_module_cache__[moduleId] = {
82 +/******/ // no module.id needed
83 +/******/ // no module.loaded needed
84 +/******/ exports: {}
85 +/******/ };
86 +/******/
87 +/******/ // Execute the module function
88 +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
89 +/******/
90 +/******/ // Return the exports of the module
91 +/******/ return module.exports;
92 +/******/ }
93 +/******/
94 +/************************************************************************/
95 +var __webpack_exports__ = {};
96 +// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
97 +(() => {
98 +/*!***********************************************************!*\
99 + !*** ../assets/dev/js/admin/new-template/new-template.js ***!
100 + \***********************************************************/
101 +
102 +
103 +var NewTemplateLayout = __webpack_require__(/*! elementor-admin/new-template/layout */ "../assets/dev/js/admin/new-template/layout.js");
104 +
105 +var NewTemplateModule = elementorModules.ViewModule.extend({
106 + getDefaultSettings: function getDefaultSettings() {
107 + return {
108 + selectors: {
109 + addButton: '.page-title-action:first, #elementor-template-library-add-new'
110 + }
111 + };
112 + },
113 + getDefaultElements: function getDefaultElements() {
114 + var selectors = this.getSettings('selectors');
115 + return {
116 + $addButton: jQuery(selectors.addButton)
117 + };
118 + },
119 + bindEvents: function bindEvents() {
120 + this.elements.$addButton.on('click', this.onAddButtonClick);
121 + elementorCommon.elements.$window.on('hashchange', this.showModalByHash.bind(this));
122 + },
123 + showModalByHash: function showModalByHash() {
124 + if ('#add_new' === location.hash) {
125 + this.layout.showModal();
126 + location.hash = '';
127 + }
128 + },
129 + onInit: function onInit() {
130 + elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
131 + this.layout = new NewTemplateLayout();
132 + this.showModalByHash();
133 + },
134 + onAddButtonClick: function onAddButtonClick(event) {
135 + event.preventDefault();
136 + this.layout.showModal();
137 + }
138 +});
139 +jQuery(function () {
140 + window.elementorNewTemplate = new NewTemplateModule();
141 +});
142 +})();
143 +
144 +/******/ })()
145 +;
303 146 //# sourceMappingURL=new-template.js.map