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.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 4.1.0-beta1 4.1.0-dev1 All 452 releases
elementor / assets / js / design-system-sync.js

design-system-sync.js in Elementor Website Builder – more than just a page builder 4.0.0-dev3, at assets/js/design-system-sync.js

71 lines 2.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /******/ (() => { // webpackBootstrap
2 /******/ "use strict";
3 /*!*****************************************************************************!*\
4 !*** ../modules/design-system-sync/assets/js/design-system-sync-handler.js ***!
5 \*****************************************************************************/
6
7
8 (function () {
9 'use strict';
10
11 var SYNC_ENDPOINT = wpApiSettings.root + 'elementor/v1/design-system-sync/stylesheet';
12 var SYNC_STYLESHEET_ID = 'elementor-design-system-sync-css';
13 var DEBOUNCE_MS = 500;
14 var syncTimeout;
15 function syncDesignSystem() {
16 fetch(SYNC_ENDPOINT, {
17 method: 'POST',
18 headers: {
19 'X-WP-Nonce': wpApiSettings.nonce
20 }
21 }).then(function (response) {
22 if (!response.ok) {
23 return;
24 }
25 return response.json();
26 }).then(function (data) {
27 if (!data) {
28 return;
29 }
30 refreshGlobals();
31 reloadCanvasDesignSyncStyles(data);
32 });
33 }
34 function refreshGlobals() {
35 var globals = $e.components.get('globals');
36 globals === null || globals === void 0 || globals.refreshGlobalData();
37 globals === null || globals === void 0 || globals.populateGlobalData();
38 }
39 function reloadCanvasDesignSyncStyles(_ref) {
40 var url = _ref.url,
41 version = _ref.version;
42 var previewFrame = document.getElementById('elementor-preview-iframe');
43 if (!(previewFrame !== null && previewFrame !== void 0 && previewFrame.contentDocument)) {
44 return;
45 }
46 var link = previewFrame.contentDocument.getElementById(SYNC_STYLESHEET_ID);
47 if (!link) {
48 link = previewFrame.contentDocument.createElement('link');
49 link.id = SYNC_STYLESHEET_ID;
50 link.rel = 'stylesheet';
51 previewFrame.contentDocument.head.appendChild(link);
52 }
53 link.href = url + '?ver=' + version;
54 }
55 function onClassesUpdated(event) {
56 var context = event.detail.context;
57 if (context !== 'frontend') {
58 return;
59 }
60 clearTimeout(syncTimeout);
61 syncTimeout = setTimeout(syncDesignSystem, DEBOUNCE_MS);
62 }
63 window.addEventListener('classes:updated', onClassesUpdated);
64 window.addEventListener('variables:updated', function () {
65 clearTimeout(syncTimeout);
66 syncTimeout = setTimeout(syncDesignSystem, DEBOUNCE_MS);
67 });
68 })();
69 /******/ })()
70 ;
71 //# sourceMappingURL=design-system-sync.js.map