PluginProbe
Elementor Website Builder – more than just a page builder / 4.0.0-dev3
Elementor Website Builder – more than just a page builder v4.0.0-dev3
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/gutenberg.js +192 -125 4.3.0-beta1 → 4.0.0-dev3 View file →
@@ -1,130 +1,197 @@
1 -(function(_wordpress_i18n) {
1 +/******/ (() => { // webpackBootstrap
2 +/******/ "use strict";
3 +/******/ var __webpack_modules__ = ({
2 4
3 -//#region \0rolldown/runtime.js
4 - var __defProp = Object.defineProperty;
5 - var __name = (target, value) => __defProp(target, "name", {
6 - value,
7 - configurable: true
8 - });
5 +/***/ "@wordpress/i18n":
6 +/*!**************************!*\
7 + !*** external "wp.i18n" ***!
8 + \**************************/
9 +/***/ ((module) => {
9 10
10 -//#endregion
11 +module.exports = wp.i18n;
11 12
12 -//#region assets/dev/js/admin/gutenberg.js
13 - (function($) {
14 - "use strict";
15 - var ElementorGutenbergApp = {
16 - cacheElements: function cacheElements() {
17 - var self = this;
18 - self.isElementorMode = ElementorGutenbergSettings.isElementorMode;
19 - self.cache = {};
20 - self.cache.$gutenberg = $("#editor");
21 - self.cache.$switchMode = $($("#elementor-gutenberg-button-switch-mode").html());
22 - self.cache.$switchModeButton = self.cache.$switchMode.find("#elementor-switch-mode-button");
23 - self.bindEvents();
24 - self.toggleStatus();
25 - wp.data.subscribe(function() {
26 - setTimeout(function() {
27 - self.buildPanel();
28 - }, 1);
29 - });
30 - },
31 - buildPanel: function buildPanel() {
32 - var self = this;
33 - if (!self.cache.$gutenberg.find("#elementor-switch-mode").length) self.cache.$gutenberg.find(".edit-post-header-toolbar").append(self.cache.$switchMode);
34 - if (this.hasIframe()) this.handleIframe();
35 - if (!$("#elementor-editor").length) {
36 - self.cache.$editorPanel = $($("#elementor-gutenberg-panel").html());
37 - var editorButtonParent = self.cache.$gutenberg.find(".block-editor-writing-flow");
38 - if (!editorButtonParent.length) editorButtonParent = self.cache.$gutenberg.find(".is-desktop-preview");
39 - self.cache.$gurenbergBlockList = editorButtonParent;
40 - self.cache.$gurenbergBlockList.append(self.cache.$editorPanel);
41 - self.cache.$editorPanelButton = self.cache.$editorPanel.find("#elementor-go-to-edit-page-link");
42 - self.cache.$editorPanelButton.on("click", function(event) {
43 - event.preventDefault();
44 - self.handleEditButtonClick();
45 - });
46 - }
47 - },
48 - handleIframe: function handleIframe() {
49 - this.hideIframeContent();
50 - this.buildPanelTopBar();
51 - },
52 - hasIframe: function hasIframe() {
53 - return !!this.cache.$gutenberg.find("iframe[name=\"editor-canvas\"]").length;
54 - },
55 - hideIframeContent: function hideIframeContent() {
56 - if (!this.isElementorMode) return;
57 - this.cache.$gutenberg.find("iframe[name=\"editor-canvas\"]").contents().find("body").append("<style>\n .editor-post-text-editor,\n .block-editor-block-list__layout {\n display: none;\n }\n\n body {\n padding: 0 !important;\n }\n </style>");
58 - },
59 - buildPanelTopBar: function buildPanelTopBar() {
60 - var self = this;
61 - if (!$("#elementor-edit-mode-button").length && this.isElementorMode) {
62 - self.cache.$editorBtnTop = $($("#elementor-gutenberg-button-tmpl").html());
63 - self.cache.$gutenberg.find(".edit-post-header-toolbar").append(self.cache.$editorBtnTop);
64 - $("#elementor-edit-mode-button").on("click", function(event) {
65 - event.preventDefault();
66 - self.handleEditButtonClick(false);
67 - });
68 - }
69 - },
70 - handleEditButtonClick: function handleEditButtonClick() {
71 - var withAnimation = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
72 - var self = this;
73 - if (withAnimation) self.animateLoader();
74 - if ("auto-draft" === wp.data.select("core/editor").getCurrentPost().status) {
75 - if (!wp.data.select("core/editor").getEditedPostAttribute("title")) wp.data.dispatch("core/editor").editPost({ title: "Elementor #" + $("#post_ID").val() });
76 - wp.data.dispatch("core/editor").savePost();
77 - }
78 - self.redirectWhenSave();
79 - },
80 - bindEvents: function bindEvents() {
81 - var self = this;
82 - self.cache.$switchModeButton.on("click", function() {
83 - if (self.isElementorMode) elementorCommon.dialogsManager.createWidget("confirm", {
84 - message: (0, _wordpress_i18n.__)("Please note that you are switching to WordPress default editor. Your current layout, design and content might break.", "elementor"),
85 - headerMessage: (0, _wordpress_i18n.__)("Back to WordPress Editor", "elementor"),
86 - strings: {
87 - confirm: (0, _wordpress_i18n.__)("Continue", "elementor"),
88 - cancel: (0, _wordpress_i18n.__)("Cancel", "elementor")
89 - },
90 - defaultOption: "confirm",
91 - onConfirm: function onConfirm() {
92 - var wpEditor = wp.data.dispatch("core/editor");
93 - wpEditor.editPost({ gutenberg_elementor_mode: false });
94 - wpEditor.savePost();
95 - self.isElementorMode = !self.isElementorMode;
96 - self.toggleStatus();
97 - }
98 - }).show();
99 - else {
100 - self.isElementorMode = !self.isElementorMode;
101 - self.toggleStatus();
102 - self.cache.$editorPanelButton.trigger("click");
103 - }
104 - });
105 - },
106 - redirectWhenSave: function redirectWhenSave() {
107 - var self = this;
108 - setTimeout(function() {
109 - if (wp.data.select("core/editor").isSavingPost()) self.redirectWhenSave();
110 - else location.href = ElementorGutenbergSettings.editLink;
111 - }, 300);
112 - },
113 - animateLoader: function animateLoader() {
114 - this.cache.$editorPanelButton.addClass("elementor-animate");
115 - },
116 - toggleStatus: function toggleStatus() {
117 - jQuery("body").toggleClass("elementor-editor-active", this.isElementorMode).toggleClass("elementor-editor-inactive", !this.isElementorMode);
118 - },
119 - init: function init() {
120 - this.cacheElements();
121 - }
122 - };
123 - $(function() {
124 - ElementorGutenbergApp.init();
125 - });
126 - })(jQuery);
13 +/***/ })
127 14
128 -//#endregion
129 -})(wp.i18n);
15 +/******/ });
16 +/************************************************************************/
17 +/******/ // The module cache
18 +/******/ var __webpack_module_cache__ = {};
19 +/******/
20 +/******/ // The require function
21 +/******/ function __webpack_require__(moduleId) {
22 +/******/ // Check if module is in cache
23 +/******/ var cachedModule = __webpack_module_cache__[moduleId];
24 +/******/ if (cachedModule !== undefined) {
25 +/******/ return cachedModule.exports;
26 +/******/ }
27 +/******/ // Create a new module (and put it into the cache)
28 +/******/ var module = __webpack_module_cache__[moduleId] = {
29 +/******/ // no module.id needed
30 +/******/ // no module.loaded needed
31 +/******/ exports: {}
32 +/******/ };
33 +/******/
34 +/******/ // Execute the module function
35 +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
36 +/******/
37 +/******/ // Return the exports of the module
38 +/******/ return module.exports;
39 +/******/ }
40 +/******/
41 +/************************************************************************/
42 +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk.
43 +(() => {
44 +/*!*******************************************!*\
45 + !*** ../assets/dev/js/admin/gutenberg.js ***!
46 + \*******************************************/
47 +/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
48 +
49 +
50 +/* global ElementorGutenbergSettings */
51 +(function ($) {
52 + 'use strict';
53 +
54 + var ElementorGutenbergApp = {
55 + cacheElements: function cacheElements() {
56 + var self = this;
57 + self.isElementorMode = ElementorGutenbergSettings.isElementorMode;
58 + self.cache = {};
59 + self.cache.$gutenberg = $('#editor');
60 + self.cache.$switchMode = $($('#elementor-gutenberg-button-switch-mode').html());
61 + self.cache.$switchModeButton = self.cache.$switchMode.find('#elementor-switch-mode-button');
62 + self.bindEvents();
63 + self.toggleStatus();
64 + wp.data.subscribe(function () {
65 + setTimeout(function () {
66 + self.buildPanel();
67 + }, 1);
68 + });
69 + },
70 + buildPanel: function buildPanel() {
71 + var self = this;
72 + if (!self.cache.$gutenberg.find('#elementor-switch-mode').length) {
73 + self.cache.$gutenberg.find('.edit-post-header-toolbar').append(self.cache.$switchMode);
74 + }
75 + if (this.hasIframe()) {
76 + this.handleIframe();
77 + }
78 + if (!$('#elementor-editor').length) {
79 + self.cache.$editorPanel = $($('#elementor-gutenberg-panel').html());
80 + var editorButtonParent = self.cache.$gutenberg.find('.block-editor-writing-flow');
81 + if (!editorButtonParent.length) {
82 + editorButtonParent = self.cache.$gutenberg.find('.is-desktop-preview');
83 + }
84 + self.cache.$gurenbergBlockList = editorButtonParent;
85 + self.cache.$gurenbergBlockList.append(self.cache.$editorPanel);
86 + self.cache.$editorPanelButton = self.cache.$editorPanel.find('#elementor-go-to-edit-page-link');
87 + self.cache.$editorPanelButton.on('click', function (event) {
88 + event.preventDefault();
89 + self.handleEditButtonClick();
90 + });
91 + }
92 + },
93 + handleIframe: function handleIframe() {
94 + this.hideIframeContent();
95 + this.buildPanelTopBar();
96 + },
97 + // Sometimes Gutenberg uses iframe instead of div.
98 + hasIframe: function hasIframe() {
99 + return !!this.cache.$gutenberg.find('iframe[name="editor-canvas"]').length;
100 + },
101 + hideIframeContent: function hideIframeContent() {
102 + if (!this.isElementorMode) {
103 + return;
104 + }
105 + var style = "<style>\n\t\t\t\t.editor-post-text-editor,\n\t\t\t\t.block-editor-block-list__layout {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\n\t\t\t\tbody {\n\t\t\t\t\tpadding: 0 !important;\n\t\t\t\t}\n\t\t\t</style>";
106 + this.cache.$gutenberg.find('iframe[name="editor-canvas"]').contents().find('body').append(style);
107 + },
108 + buildPanelTopBar: function buildPanelTopBar() {
109 + var self = this;
110 + if (!$('#elementor-edit-mode-button').length && this.isElementorMode) {
111 + self.cache.$editorBtnTop = $($('#elementor-gutenberg-button-tmpl').html());
112 + self.cache.$gutenberg.find('.edit-post-header-toolbar').append(self.cache.$editorBtnTop);
113 + $('#elementor-edit-mode-button').on('click', function (event) {
114 + event.preventDefault();
115 + self.handleEditButtonClick(false);
116 + });
117 + }
118 + },
119 + handleEditButtonClick: function handleEditButtonClick() {
120 + var withAnimation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
121 + var self = this;
122 + if (withAnimation) {
123 + self.animateLoader();
124 + }
125 +
126 + // A new post is initialized as an 'auto-draft'.
127 + // if the post is not a new post it should not save it to avoid some saving conflict between elementor and gutenberg.
128 + var isNewPost = 'auto-draft' === wp.data.select('core/editor').getCurrentPost().status;
129 + if (isNewPost) {
130 + var documentTitle = wp.data.select('core/editor').getEditedPostAttribute('title');
131 + if (!documentTitle) {
132 + wp.data.dispatch('core/editor').editPost({
133 + title: 'Elementor #' + $('#post_ID').val()
134 + });
135 + }
136 + wp.data.dispatch('core/editor').savePost();
137 + }
138 + self.redirectWhenSave();
139 + },
140 + bindEvents: function bindEvents() {
141 + var self = this;
142 + self.cache.$switchModeButton.on('click', function () {
143 + if (self.isElementorMode) {
144 + elementorCommon.dialogsManager.createWidget('confirm', {
145 + message: __('Please note that you are switching to WordPress default editor. Your current layout, design and content might break.', 'elementor'),
146 + headerMessage: __('Back to WordPress Editor', 'elementor'),
147 + strings: {
148 + confirm: __('Continue', 'elementor'),
149 + cancel: __('Cancel', 'elementor')
150 + },
151 + defaultOption: 'confirm',
152 + onConfirm: function onConfirm() {
153 + var wpEditor = wp.data.dispatch('core/editor');
154 + wpEditor.editPost({
155 + gutenberg_elementor_mode: false
156 + });
157 + wpEditor.savePost();
158 + self.isElementorMode = !self.isElementorMode;
159 + self.toggleStatus();
160 + }
161 + }).show();
162 + } else {
163 + self.isElementorMode = !self.isElementorMode;
164 + self.toggleStatus();
165 + self.cache.$editorPanelButton.trigger('click');
166 + }
167 + });
168 + },
169 + redirectWhenSave: function redirectWhenSave() {
170 + var self = this;
171 + setTimeout(function () {
172 + if (wp.data.select('core/editor').isSavingPost()) {
173 + self.redirectWhenSave();
174 + } else {
175 + location.href = ElementorGutenbergSettings.editLink;
176 + }
177 + }, 300);
178 + },
179 + animateLoader: function animateLoader() {
180 + this.cache.$editorPanelButton.addClass('elementor-animate');
181 + },
182 + toggleStatus: function toggleStatus() {
183 + jQuery('body').toggleClass('elementor-editor-active', this.isElementorMode).toggleClass('elementor-editor-inactive', !this.isElementorMode);
184 + },
185 + init: function init() {
186 + this.cacheElements();
187 + }
188 + };
189 + $(function () {
190 + ElementorGutenbergApp.init();
191 + });
192 +})(jQuery);
193 +})();
194 +
195 +/******/ })()
196 +;
130 197 //# sourceMappingURL=gutenberg.js.map