PluginProbe
Elementor Website Builder – more than just a page builder / 3.17.1
Elementor Website Builder – more than just a page builder v3.17.1
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 4.0.7 All 451 releases
elementor / assets / js / admin.js

admin.js in Elementor Website Builder – more than just a page builder 3.17.1, at assets/js/admin.js

2,462 lines 110.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*! elementor - v3.17.0 - 25-10-2023 */
2 /******/ (() => { // webpackBootstrap
3 /******/ var __webpack_modules__ = ({
4
5 /***/ "../assets/dev/js/admin/maintenance-mode.js":
6 /*!**************************************************!*\
7 !*** ../assets/dev/js/admin/maintenance-mode.js ***!
8 \**************************************************/
9 /***/ ((module) => {
10
11 "use strict";
12
13
14 module.exports = elementorModules.ViewModule.extend({
15 getDefaultSettings: function getDefaultSettings() {
16 return {
17 selectors: {
18 modeSelect: '.elementor_maintenance_mode_mode select',
19 maintenanceModeTable: '#tab-maintenance_mode table',
20 maintenanceModeDescriptions: '.elementor-maintenance-mode-description',
21 excludeModeSelect: '.elementor_maintenance_mode_exclude_mode select',
22 excludeRolesArea: '.elementor_maintenance_mode_exclude_roles',
23 templateSelect: '.elementor_maintenance_mode_template_id select',
24 editTemplateButton: '.elementor-edit-template',
25 maintenanceModeError: '.elementor-maintenance-mode-error'
26 },
27 classes: {
28 isEnabled: 'elementor-maintenance-mode-is-enabled'
29 }
30 };
31 },
32 getDefaultElements: function getDefaultElements() {
33 var elements = {},
34 selectors = this.getSettings('selectors');
35 elements.$modeSelect = jQuery(selectors.modeSelect);
36 elements.$maintenanceModeTable = elements.$modeSelect.parents(selectors.maintenanceModeTable);
37 elements.$excludeModeSelect = elements.$maintenanceModeTable.find(selectors.excludeModeSelect);
38 elements.$excludeRolesArea = elements.$maintenanceModeTable.find(selectors.excludeRolesArea);
39 elements.$templateSelect = elements.$maintenanceModeTable.find(selectors.templateSelect);
40 elements.$editTemplateButton = elements.$maintenanceModeTable.find(selectors.editTemplateButton);
41 elements.$maintenanceModeDescriptions = elements.$maintenanceModeTable.find(selectors.maintenanceModeDescriptions);
42 elements.$maintenanceModeError = elements.$maintenanceModeTable.find(selectors.maintenanceModeError);
43 return elements;
44 },
45 handleModeSelectChange: function handleModeSelectChange() {
46 var settings = this.getSettings(),
47 elements = this.elements;
48 elements.$maintenanceModeTable.toggleClass(settings.classes.isEnabled, !!elements.$modeSelect.val());
49 elements.$maintenanceModeDescriptions.hide();
50 elements.$maintenanceModeDescriptions.filter('[data-value="' + elements.$modeSelect.val() + '"]').show();
51 },
52 handleExcludeModeSelectChange: function handleExcludeModeSelectChange() {
53 var elements = this.elements;
54 elements.$excludeRolesArea.toggle('custom' === elements.$excludeModeSelect.val());
55 },
56 handleTemplateSelectChange: function handleTemplateSelectChange() {
57 var elements = this.elements;
58 var templateID = elements.$templateSelect.val();
59 if (!templateID) {
60 elements.$editTemplateButton.hide();
61 elements.$maintenanceModeError.show();
62 return;
63 }
64 var editUrl = elementorAdmin.config.home_url + '?p=' + templateID + '&elementor';
65 elements.$editTemplateButton.prop('href', editUrl).show();
66 elements.$maintenanceModeError.hide();
67 },
68 bindEvents: function bindEvents() {
69 var elements = this.elements;
70 elements.$modeSelect.on('change', this.handleModeSelectChange.bind(this));
71 elements.$excludeModeSelect.on('change', this.handleExcludeModeSelectChange.bind(this));
72 elements.$templateSelect.on('change', this.handleTemplateSelectChange.bind(this));
73 },
74 onAdminInit: function onAdminInit() {
75 this.handleModeSelectChange();
76 this.handleExcludeModeSelectChange();
77 this.handleTemplateSelectChange();
78 },
79 onInit: function onInit() {
80 elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
81 elementorCommon.elements.$window.on('elementor/admin/init', this.onAdminInit);
82 }
83 });
84
85 /***/ }),
86
87 /***/ "../assets/dev/js/admin/menu-handler.js":
88 /*!**********************************************!*\
89 !*** ../assets/dev/js/admin/menu-handler.js ***!
90 \**********************************************/
91 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92
93 "use strict";
94
95
96 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
97 Object.defineProperty(exports, "__esModule", ({
98 value: true
99 }));
100 exports["default"] = void 0;
101 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
102 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
103 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/get */ "../node_modules/@babel/runtime/helpers/get.js"));
104 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
105 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
106 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
107 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
108 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
109 var MenuHandler = /*#__PURE__*/function (_elementorModules$Vie) {
110 (0, _inherits2.default)(MenuHandler, _elementorModules$Vie);
111 var _super = _createSuper(MenuHandler);
112 function MenuHandler() {
113 (0, _classCallCheck2.default)(this, MenuHandler);
114 return _super.apply(this, arguments);
115 }
116 (0, _createClass2.default)(MenuHandler, [{
117 key: "getDefaultSettings",
118 value: function getDefaultSettings() {
119 return {
120 selectors: {
121 currentSubmenuItems: '#adminmenu .current'
122 }
123 };
124 }
125 }, {
126 key: "getDefaultElements",
127 value: function getDefaultElements() {
128 var settings = this.getSettings();
129 return {
130 $currentSubmenuItems: jQuery(settings.selectors.currentSubmenuItems),
131 $adminPageMenuLink: jQuery("a[href=\"".concat(settings.path, "\"]"))
132 };
133 }
134
135 // This method highlights the currently visited submenu item for the slug provided as an argument to this handler.
136 // This method also accepts a jQuery instance of a custom submenu item to highlight. If provided, the provided
137 // item will be the one highlighted.
138 }, {
139 key: "highlightSubMenuItem",
140 value: function highlightSubMenuItem() {
141 var $element = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
142 var $submenuItem = $element || this.elements.$adminPageMenuLink;
143 if (this.elements.$currentSubmenuItems.length) {
144 this.elements.$currentSubmenuItems.removeClass('current');
145 }
146 $submenuItem.addClass('current');
147
148 // Need to add the 'current' class to the link element's parent `<li>` element as well.
149 $submenuItem.parent().addClass('current');
150 }
151 }, {
152 key: "highlightTopLevelMenuItem",
153 value: function highlightTopLevelMenuItem($elementToHighlight) {
154 var $elementToRemove = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
155 var activeClasses = 'wp-has-current-submenu wp-menu-open current';
156 $elementToHighlight.parent().addClass(activeClasses).removeClass('wp-not-current-submenu');
157 if ($elementToRemove) {
158 $elementToRemove.removeClass(activeClasses);
159 }
160 }
161 }, {
162 key: "onInit",
163 value: function onInit() {
164 (0, _get2.default)((0, _getPrototypeOf2.default)(MenuHandler.prototype), "onInit", this).call(this);
165 var settings = this.getSettings();
166 if (window.location.href.includes(settings.path)) {
167 this.highlightSubMenuItem();
168 }
169 }
170 }]);
171 return MenuHandler;
172 }(elementorModules.ViewModule);
173 exports["default"] = MenuHandler;
174
175 /***/ }),
176
177 /***/ "../assets/dev/js/admin/new-template/template-controls.js":
178 /*!****************************************************************!*\
179 !*** ../assets/dev/js/admin/new-template/template-controls.js ***!
180 \****************************************************************/
181 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
182
183 "use strict";
184
185
186 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
187 Object.defineProperty(exports, "__esModule", ({
188 value: true
189 }));
190 exports["default"] = void 0;
191 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
192 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
193 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
194 var TemplateControls = /*#__PURE__*/function () {
195 function TemplateControls() {
196 (0, _classCallCheck2.default)(this, TemplateControls);
197 }
198 (0, _createClass2.default)(TemplateControls, [{
199 key: "setDynamicControlsVisibility",
200 value: function setDynamicControlsVisibility(lookupControlIdPrefix, controls) {
201 if (undefined === controls) {
202 return;
203 }
204 var controlsArray = Object.entries(controls);
205 for (var _i = 0, _controlsArray = controlsArray; _i < _controlsArray.length; _i++) {
206 var _controlsArray$_i = (0, _slicedToArray2.default)(_controlsArray[_i], 2),
207 controlId = _controlsArray$_i[0],
208 controlSettings = _controlsArray$_i[1];
209 this.setVisibilityForControl(lookupControlIdPrefix, controlSettings, controlId);
210 }
211 }
212 }, {
213 key: "setVisibilityForControl",
214 value: function setVisibilityForControl(lookupControlIdPrefix, controlSettings, controlId) {
215 var _controlSettings$cond,
216 _this = this;
217 var conditions = Object.entries((_controlSettings$cond = controlSettings.conditions) !== null && _controlSettings$cond !== void 0 ? _controlSettings$cond : {});
218 conditions.forEach(function (condition) {
219 _this.changeVisibilityBasedOnCondition(lookupControlIdPrefix, condition, controlId);
220 });
221 }
222 }, {
223 key: "changeVisibilityBasedOnCondition",
224 value: function changeVisibilityBasedOnCondition(lookupControlIdPrefix, condition, controlId) {
225 var _condition = (0, _slicedToArray2.default)(condition, 2),
226 conditionKey = _condition[0],
227 conditionValue = _condition[1];
228 var targetControlWrapper = document.getElementById(lookupControlIdPrefix + controlId + '__wrapper');
229 var lookupControl = document.getElementById(lookupControlIdPrefix + conditionKey);
230 targetControlWrapper.classList.toggle('elementor-hidden', !lookupControl || conditionValue !== lookupControl.value);
231 }
232 }]);
233 return TemplateControls;
234 }();
235 exports["default"] = TemplateControls;
236
237 /***/ }),
238
239 /***/ "../assets/dev/js/editor/utils/files-upload-handler.js":
240 /*!*************************************************************!*\
241 !*** ../assets/dev/js/editor/utils/files-upload-handler.js ***!
242 \*************************************************************/
243 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
244
245 "use strict";
246 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
247
248
249 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
250 Object.defineProperty(exports, "__esModule", ({
251 value: true
252 }));
253 exports["default"] = void 0;
254 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
255 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
256 var FilesUploadHandler = /*#__PURE__*/function () {
257 function FilesUploadHandler() {
258 (0, _classCallCheck2.default)(this, FilesUploadHandler);
259 }
260 (0, _createClass2.default)(FilesUploadHandler, null, [{
261 key: "isUploadEnabled",
262 value: function isUploadEnabled(mediaType) {
263 var unfilteredFilesTypes = ['svg', 'application/json'];
264 if (!unfilteredFilesTypes.includes(mediaType)) {
265 return true;
266 }
267 return elementorCommon.config.filesUpload.unfilteredFiles;
268 }
269 }, {
270 key: "setUploadTypeCaller",
271 value: function setUploadTypeCaller(frame) {
272 frame.uploader.uploader.param('uploadTypeCaller', 'elementor-wp-media-upload');
273 }
274 }, {
275 key: "getUnfilteredFilesNotEnabledDialog",
276 value: function getUnfilteredFilesNotEnabledDialog(callback) {
277 var onConfirm = function onConfirm() {
278 elementorCommon.ajax.addRequest('enable_unfiltered_files_upload', {}, true);
279 elementorCommon.config.filesUpload.unfilteredFiles = true;
280 callback();
281 };
282 return elementor.helpers.getSimpleDialog('e-enable-unfiltered-files-dialog', __('Enable Unfiltered File Uploads', 'elementor'), __('Before you enable unfiltered files upload, note that such files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.', 'elementor'), __('Enable', 'elementor'), onConfirm);
283 }
284 }, {
285 key: "getUnfilteredFilesNotEnabledImportTemplateDialog",
286 value: function getUnfilteredFilesNotEnabledImportTemplateDialog(callback) {
287 return elementorCommon.dialogsManager.createWidget('confirm', {
288 id: 'e-enable-unfiltered-files-dialog-import-template',
289 headerMessage: __('Enable Unfiltered File Uploads', 'elementor'),
290 message: __('Before you enable unfiltered files upload, note that such files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.', 'elementor') + '<br /><br />' + __('If you do not enable uploading unfiltered files, any SVG or JSON (including lottie) files used in the uploaded template will not be imported.', 'elementor'),
291 position: {
292 my: 'center center',
293 at: 'center center'
294 },
295 strings: {
296 confirm: __('Enable and Import', 'elementor'),
297 cancel: __('Import Without Enabling', 'elementor')
298 },
299 onConfirm: function onConfirm() {
300 elementorCommon.ajax.addRequest('enable_unfiltered_files_upload', {
301 success: function success() {
302 // This utility is used in both the admin and the Editor.
303 elementorCommon.config.filesUpload.unfilteredFiles = true;
304 callback();
305 }
306 }, true);
307 },
308 onCancel: function onCancel() {
309 return callback();
310 }
311 });
312 }
313 }]);
314 return FilesUploadHandler;
315 }();
316 exports["default"] = FilesUploadHandler;
317
318 /***/ }),
319
320 /***/ "../assets/dev/js/utils/events.js":
321 /*!****************************************!*\
322 !*** ../assets/dev/js/utils/events.js ***!
323 \****************************************/
324 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
325
326 "use strict";
327
328
329 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
330 Object.defineProperty(exports, "__esModule", ({
331 value: true
332 }));
333 exports["default"] = exports.Events = void 0;
334 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
335 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
336 var Events = /*#__PURE__*/function () {
337 function Events() {
338 (0, _classCallCheck2.default)(this, Events);
339 }
340 (0, _createClass2.default)(Events, null, [{
341 key: "dispatch",
342 value:
343 /**
344 * Dispatch an Elementor event.
345 *
346 * Will dispatch both native event & jQuery event (as BC).
347 * By default, `bcEvent` is `null`.
348 *
349 * @param {Object} context - The context that will dispatch the event.
350 * @param {string} event - Event to dispatch.
351 * @param {*} data - Data to pass to the event, default to `null`.
352 * @param {string|null} bcEvent - BC event to dispatch, default to `null`.
353 *
354 * @return {void}
355 */
356 function dispatch(context, event) {
357 var data = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
358 var bcEvent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
359 // Make sure to use the native context if it's a jQuery instance.
360 context = context instanceof jQuery ? context[0] : context;
361
362 // Dispatch the BC event only if exists.
363 if (bcEvent) {
364 context.dispatchEvent(new CustomEvent(bcEvent, {
365 detail: data
366 }));
367 }
368
369 // jQuery's `.on()` listens also to native custom events, so there is no need
370 // to dispatch also a jQuery event.
371 context.dispatchEvent(new CustomEvent(event, {
372 detail: data
373 }));
374 }
375 }]);
376 return Events;
377 }();
378 exports.Events = Events;
379 var _default = Events;
380 exports["default"] = _default;
381
382 /***/ }),
383
384 /***/ "../assets/dev/js/utils/json-upload-warning-message.js":
385 /*!*************************************************************!*\
386 !*** ../assets/dev/js/utils/json-upload-warning-message.js ***!
387 \*************************************************************/
388 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
389
390 "use strict";
391 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
392
393
394 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
395 Object.defineProperty(exports, "__esModule", ({
396 value: true
397 }));
398 exports.showJsonUploadWarningMessageIfNeeded = showJsonUploadWarningMessageIfNeeded;
399 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
400 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
401 var genericMessageIntroductionKey = 'upload_json_warning_generic_message';
402 /**
403 * @type {import('../utils/introduction').default | null}
404 */
405 var genericWarningModal = null;
406 function showJsonUploadWarningMessageIfNeeded(_ref) {
407 var introductionMap = _ref.introductionMap,
408 IntroductionClass = _ref.IntroductionClass,
409 _ref$waitForSetViewed = _ref.waitForSetViewed,
410 waitForSetViewed = _ref$waitForSetViewed === void 0 ? false : _ref$waitForSetViewed;
411 if (!genericWarningModal) {
412 genericWarningModal = createGenericWarningModal(IntroductionClass);
413 }
414 genericWarningModal.setIntroductionMap(introductionMap);
415 if (genericWarningModal.introductionViewed) {
416 return Promise.resolve();
417 }
418 var dialog = genericWarningModal.getDialog();
419 return new Promise(function (resolve, reject) {
420 dialog.onHide = function () {
421 // When closing the dialog (esc, click on background, etc.) we need to reject the promise.
422 reject();
423 };
424 dialog.onConfirm = /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
425 return _regenerator.default.wrap(function _callee$(_context) {
426 while (1) switch (_context.prev = _context.next) {
427 case 0:
428 if (!dialog.getElements('checkbox-dont-show-again').prop('checked')) {
429 _context.next = 7;
430 break;
431 }
432 if (!waitForSetViewed) {
433 _context.next = 6;
434 break;
435 }
436 _context.next = 4;
437 return genericWarningModal.setViewed();
438 case 4:
439 _context.next = 7;
440 break;
441 case 6:
442 genericWarningModal.setViewed();
443 case 7:
444 // Hack: we need to resolve the promise and then hide it manually, to avoid rejecting the promise.
445 // this because when closing the dialog (esc, click on background, etc.) it does not trigger `onCancel` method.
446 resolve();
447 dialog.hide();
448 case 9:
449 case "end":
450 return _context.stop();
451 }
452 }, _callee);
453 }));
454 dialog.onCancel = function () {
455 dialog.hide();
456 };
457 genericWarningModal.show();
458 });
459 }
460
461 /**
462 * @param {import('../utils/introduction').default.prototype.constructor} IntroductionClass
463 *
464 * @return {import('../utils/introduction').default}
465 */
466 function createGenericWarningModal(IntroductionClass) {
467 var _introduction$getDial, _introduction$getDial2;
468 var dialogId = 'e-generic-warning-modal-for-json-upload';
469 var introduction = new IntroductionClass({
470 introductionKey: genericMessageIntroductionKey,
471 dialogType: 'confirm',
472 dialogOptions: {
473 id: dialogId,
474 headerMessage: __('Warning: JSON files may be unsafe', 'elementor'),
475 message: __('Uploading JSON files from unknown sources can be harmful and put your site at risk. For maximum safety, only install JSON files from trusted sources.', 'elementor'),
476 effects: {
477 show: 'fadeIn',
478 hide: 'fadeOut'
479 },
480 hide: {
481 onBackgroundClick: true,
482 onButtonClick: false
483 },
484 strings: {
485 confirm: __('Continue', 'elementor'),
486 cancel: __('Cancel', 'elementor')
487 }
488 }
489 });
490 var _createCheckboxAndLab = createCheckboxAndLabel(dialogId),
491 checkbox = _createCheckboxAndLab.checkbox,
492 label = _createCheckboxAndLab.label;
493 introduction.getDialog().addElement('checkbox-dont-show-again', checkbox);
494 (_introduction$getDial = introduction.getDialog().getElements('message')) === null || _introduction$getDial === void 0 ? void 0 : (_introduction$getDial2 = _introduction$getDial.append) === null || _introduction$getDial2 === void 0 ? void 0 : _introduction$getDial2.call(_introduction$getDial, label); // `getElements` return JQuery object.
495
496 return introduction;
497 }
498 function createCheckboxAndLabel(dialogId) {
499 var checkboxId = "".concat(dialogId, "-dont-show-again");
500 var checkbox = document.createElement('input');
501 checkbox.type = 'checkbox';
502 checkbox.name = checkboxId;
503 checkbox.id = checkboxId;
504 var label = document.createElement('label');
505 label.htmlFor = checkboxId;
506 label.textContent = __('Do not show this message again', 'elementor');
507 label.style.display = 'block';
508 label.style.marginTop = '20px';
509 label.style.marginBottom = '20px';
510 label.prepend(checkbox);
511 return {
512 checkbox: checkbox,
513 label: label
514 };
515 }
516
517 /***/ }),
518
519 /***/ "../core/common/assets/js/utils/environment.js":
520 /*!*****************************************************!*\
521 !*** ../core/common/assets/js/utils/environment.js ***!
522 \*****************************************************/
523 /***/ ((__unused_webpack_module, exports) => {
524
525 "use strict";
526
527
528 Object.defineProperty(exports, "__esModule", ({
529 value: true
530 }));
531 exports["default"] = void 0;
532 var matchUserAgent = function matchUserAgent(UserAgentStr) {
533 return userAgent.indexOf(UserAgentStr) >= 0;
534 },
535 userAgent = navigator.userAgent,
536 // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
537
538 // Opera 8.0+
539 isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
540 // Firefox 1.0+
541 isFirefox = matchUserAgent('Firefox'),
542 // Safari 3.0+ "[object HTMLElementConstructor]"
543 isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function (p) {
544 return '[object SafariRemoteNotification]' === p.toString();
545 }(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
546 // Internet Explorer 6-11
547 isIE = /Trident|MSIE/.test(userAgent) && ( /* @cc_on!@*/ false || !!document.documentMode),
548 // Edge 20+
549 isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
550 // Google Chrome (Not accurate)
551 isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
552 // Blink engine
553 isBlink = matchUserAgent('Chrome') && !!window.CSS,
554 // Apple Webkit engine
555 isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
556 isTouchDevice = 'ontouchstart' in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0,
557 environment = {
558 isTouchDevice: isTouchDevice,
559 appleWebkit: isAppleWebkit,
560 blink: isBlink,
561 chrome: isChrome,
562 edge: isEdge,
563 firefox: isFirefox,
564 ie: isIE,
565 mac: matchUserAgent('Macintosh'),
566 opera: isOpera,
567 safari: isSafari,
568 webkit: matchUserAgent('AppleWebKit')
569 };
570 var _default = environment;
571 exports["default"] = _default;
572
573 /***/ }),
574
575 /***/ "../core/experiments/assets/js/admin/behaviors/experiments-messages.js":
576 /*!*****************************************************************************!*\
577 !*** ../core/experiments/assets/js/admin/behaviors/experiments-messages.js ***!
578 \*****************************************************************************/
579 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
580
581 "use strict";
582 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
583
584
585 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
586 Object.defineProperty(exports, "__esModule", ({
587 value: true
588 }));
589 exports["default"] = void 0;
590 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
591 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
592 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
593 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
594 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
595 var STATE_ACTIVE = 'active';
596 var STATE_INACTIVE = 'inactive';
597 var STATE_DEFAULT = 'default';
598 var ExperimentsMessages = /*#__PURE__*/function () {
599 function ExperimentsMessages(_ref) {
600 var selects = _ref.selects,
601 submit = _ref.submit;
602 (0, _classCallCheck2.default)(this, ExperimentsMessages);
603 (0, _defineProperty2.default)(this, "elements", {});
604 this.elements = {
605 /**
606 * @type {HTMLSelectElement[]}
607 */
608 selects: selects,
609 /**
610 * @type {HTMLInputElement}
611 */
612 submit: submit
613 };
614 }
615 (0, _createClass2.default)(ExperimentsMessages, [{
616 key: "bindEvents",
617 value: function bindEvents() {
618 var _this = this;
619 this.elements.selects.forEach(function (select) {
620 select.addEventListener('change', function (e) {
621 return _this.onExperimentStateChange(e);
622 });
623 });
624 }
625 }, {
626 key: "onExperimentStateChange",
627 value: function onExperimentStateChange(e) {
628 var experimentId = e.currentTarget.dataset.experimentId,
629 experimentNewState = this.getExperimentActualState(experimentId);
630 switch (experimentNewState) {
631 case STATE_ACTIVE:
632 if (this.shouldShowDependenciesDialog(experimentId)) {
633 this.showDependenciesDialog(experimentId);
634 }
635 break;
636 case STATE_INACTIVE:
637 if (this.shouldShowDeactivationDialog(experimentId)) {
638 this.showDeactivationDialog(experimentId);
639 } else {
640 this.deactivateDependantExperiments(experimentId);
641 }
642 break;
643 default:
644 break;
645 }
646 }
647 }, {
648 key: "getExperimentData",
649 value: function getExperimentData(experimentId) {
650 return elementorAdminConfig.experiments[experimentId];
651 }
652 }, {
653 key: "getExperimentDependencies",
654 value: function getExperimentDependencies(experimentId) {
655 var _this2 = this;
656 return this.getExperimentData(experimentId).dependencies.map(function (dependencyId) {
657 return _this2.getExperimentData(dependencyId);
658 });
659 }
660 }, {
661 key: "getExperimentSelect",
662 value: function getExperimentSelect(experimentId) {
663 return this.elements.selects.find(function (select) {
664 return select.matches("[data-experiment-id=\"".concat(experimentId, "\"]"));
665 });
666 }
667 }, {
668 key: "setExperimentState",
669 value: function setExperimentState(experimentId, state) {
670 this.getExperimentSelect(experimentId).value = state;
671 }
672 }, {
673 key: "getExperimentActualState",
674 value: function getExperimentActualState(experimentId) {
675 var _this$getExperimentSe;
676 var state = (_this$getExperimentSe = this.getExperimentSelect(experimentId)) === null || _this$getExperimentSe === void 0 ? void 0 : _this$getExperimentSe.value;
677 if (!state) {
678 return this.getExperimentData(experimentId).state;
679 }
680 if (state !== STATE_DEFAULT) {
681 return state;
682 }
683
684 // Normalize the "default" state to the actual state value.
685 return this.isExperimentActiveByDefault(experimentId) ? STATE_ACTIVE : STATE_INACTIVE;
686 }
687 }, {
688 key: "isExperimentActive",
689 value: function isExperimentActive(experimentId) {
690 return this.getExperimentActualState(experimentId) === STATE_ACTIVE;
691 }
692 }, {
693 key: "isExperimentActiveByDefault",
694 value: function isExperimentActiveByDefault(experimentId) {
695 return this.getExperimentData(experimentId).default === STATE_ACTIVE;
696 }
697 }, {
698 key: "areAllDependenciesActive",
699 value: function areAllDependenciesActive(dependencies) {
700 var _this3 = this;
701 return dependencies.every(function (dependency) {
702 return _this3.isExperimentActive(dependency.name);
703 });
704 }
705 }, {
706 key: "deactivateDependantExperiments",
707 value: function deactivateDependantExperiments(experimentId) {
708 var _this4 = this;
709 Object.entries(elementorAdminConfig.experiments).forEach(function (_ref2) {
710 var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
711 id = _ref3[0],
712 experimentData = _ref3[1];
713 var isDependant = experimentData.dependencies.includes(experimentId),
714 isActive = _this4.getExperimentActualState(id) === STATE_ACTIVE;
715 if (isDependant && isActive) {
716 _this4.setExperimentState(id, STATE_INACTIVE);
717 }
718 });
719 }
720 }, {
721 key: "shouldShowDependenciesDialog",
722 value: function shouldShowDependenciesDialog(experimentId) {
723 var dependencies = this.getExperimentDependencies(experimentId);
724 return !this.areAllDependenciesActive(dependencies);
725 }
726 }, {
727 key: "shouldShowDeactivationDialog",
728 value: function shouldShowDeactivationDialog(experimentId) {
729 var getExperimentData = this.getExperimentData(experimentId),
730 isInitialStateActive = getExperimentData.state === STATE_ACTIVE || getExperimentData.state === STATE_DEFAULT && getExperimentData.default === STATE_ACTIVE,
731 hasMessage = !!this.getMessage(experimentId, 'on_deactivate');
732 return hasMessage && isInitialStateActive;
733 }
734 }, {
735 key: "showDialog",
736 value: function showDialog(dialog) {
737 return elementorCommon.dialogsManager.createWidget('confirm', {
738 id: 'e-experiments-messages-dialog',
739 headerMessage: dialog.headerMessage,
740 message: dialog.message,
741 position: {
742 my: 'center center',
743 at: 'center center'
744 },
745 strings: {
746 confirm: dialog.strings.confirm,
747 cancel: dialog.strings.cancel
748 },
749 hide: {
750 onOutsideClick: false,
751 onBackgroundClick: false,
752 onEscKeyPress: false
753 },
754 onConfirm: dialog.onConfirm,
755 onCancel: dialog.onCancel
756 }).show();
757 }
758 }, {
759 key: "joinDependenciesNames",
760 value: function joinDependenciesNames(array) {
761 var glue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
762 var finalGlue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
763 if ('' === finalGlue) {
764 return array.join(glue);
765 }
766 if (!array.length) {
767 return '';
768 }
769 if (1 === array.length) {
770 return array[0];
771 }
772 var clone = (0, _toConsumableArray2.default)(array),
773 lastItem = clone.pop();
774 return clone.join(glue) + finalGlue + lastItem;
775 }
776 }, {
777 key: "showDependenciesDialog",
778 value: function showDependenciesDialog(experimentId) {
779 var _this5 = this;
780 var experiment = this.getExperimentData(experimentId),
781 experimentName = experiment.title,
782 dialogMessage = this.joinDependenciesNames(this.getExperimentDependencies(experimentId).map(function (d) {
783 return d.title;
784 }));
785
786 // Translators: %1$s: Experiment title, %2$s: Comma-separated dependencies list
787 var message = __('In order to use %1$s, first you need to activate %2$s.', 'elementor').replace('%1$s', "<strong>".concat(experimentName, "</strong>")).replace('%2$s', dialogMessage);
788 this.showDialog({
789 message: message,
790 headerMessage: __('First, activate another experiment.', 'elementor'),
791 strings: {
792 confirm: __('Activate', 'elementor'),
793 cancel: __('Cancel', 'elementor')
794 },
795 onConfirm: function onConfirm() {
796 _this5.getExperimentDependencies(experimentId).forEach(function (dependency) {
797 _this5.setExperimentState(dependency.name, STATE_ACTIVE);
798 });
799 _this5.elements.submit.click();
800 },
801 onCancel: function onCancel() {
802 _this5.setExperimentState(experimentId, STATE_INACTIVE);
803 }
804 });
805 }
806 }, {
807 key: "showDeactivationDialog",
808 value: function showDeactivationDialog(experimentId) {
809 var _this6 = this;
810 this.showDialog({
811 message: this.getMessage(experimentId, 'on_deactivate'),
812 headerMessage: __('Are you sure?', 'elementor'),
813 strings: {
814 confirm: __('Deactivate', 'elementor'),
815 cancel: __('Dismiss', 'elementor')
816 },
817 onConfirm: function onConfirm() {
818 _this6.setExperimentState(experimentId, STATE_INACTIVE);
819 _this6.deactivateDependantExperiments(experimentId);
820 _this6.elements.submit.click();
821 },
822 onCancel: function onCancel() {
823 _this6.setExperimentState(experimentId, STATE_ACTIVE);
824 }
825 });
826 }
827 }, {
828 key: "getMessage",
829 value: function getMessage(experimentId, messageId) {
830 var _this$getExperimentDa;
831 return (_this$getExperimentDa = this.getExperimentData(experimentId)) === null || _this$getExperimentDa === void 0 ? void 0 : _this$getExperimentDa.messages[messageId];
832 }
833 }]);
834 return ExperimentsMessages;
835 }();
836 exports["default"] = ExperimentsMessages;
837
838 /***/ }),
839
840 /***/ "../core/experiments/assets/js/admin/module.js":
841 /*!*****************************************************!*\
842 !*** ../core/experiments/assets/js/admin/module.js ***!
843 \*****************************************************/
844 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
845
846 "use strict";
847
848
849 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
850 Object.defineProperty(exports, "__esModule", ({
851 value: true
852 }));
853 exports["default"] = void 0;
854 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
855 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
856 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/get */ "../node_modules/@babel/runtime/helpers/get.js"));
857 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
858 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
859 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
860 var _experimentsMessages = _interopRequireDefault(__webpack_require__(/*! ./behaviors/experiments-messages */ "../core/experiments/assets/js/admin/behaviors/experiments-messages.js"));
861 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
862 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
863 var ExperimentsModule = /*#__PURE__*/function (_elementorModules$Vie) {
864 (0, _inherits2.default)(ExperimentsModule, _elementorModules$Vie);
865 var _super = _createSuper(ExperimentsModule);
866 function ExperimentsModule() {
867 (0, _classCallCheck2.default)(this, ExperimentsModule);
868 return _super.apply(this, arguments);
869 }
870 (0, _createClass2.default)(ExperimentsModule, [{
871 key: "getDefaultSettings",
872 value: function getDefaultSettings() {
873 return {
874 selectors: {
875 experimentIndicators: '.e-experiment__title__indicator',
876 experimentForm: '#elementor-settings-form',
877 experimentSelects: '.e-experiment__select',
878 experimentsButtons: '.e-experiment__button'
879 }
880 };
881 }
882 }, {
883 key: "getDefaultElements",
884 value: function getDefaultElements() {
885 var _this$getSettings = this.getSettings(),
886 selectors = _this$getSettings.selectors;
887 return {
888 $experimentIndicators: jQuery(selectors.experimentIndicators),
889 $experimentForm: jQuery(selectors.experimentForm),
890 $experimentSelects: jQuery(selectors.experimentSelects),
891 $experimentsButtons: jQuery(selectors.experimentsButtons)
892 };
893 }
894 }, {
895 key: "bindEvents",
896 value: function bindEvents() {
897 var _this = this;
898 this.elements.$experimentsButtons.on('click', function (event) {
899 return _this.onExperimentsButtonsClick(event);
900 });
901 }
902 }, {
903 key: "onExperimentsButtonsClick",
904 value: function onExperimentsButtonsClick(event) {
905 var submitButton = jQuery(event.currentTarget);
906 this.elements.$experimentSelects.val(submitButton.val());
907 this.elements.$experimentForm.find('#submit').trigger('click');
908 }
909 }, {
910 key: "addTipsy",
911 value: function addTipsy($element) {
912 $element.tipsy({
913 gravity: 's',
914 offset: 8,
915 title: function title() {
916 return this.getAttribute('data-tooltip');
917 }
918 });
919 }
920 }, {
921 key: "addIndicatorsTooltips",
922 value: function addIndicatorsTooltips() {
923 var _this2 = this;
924 this.elements.$experimentIndicators.each(function (index, experimentIndicator) {
925 return _this2.addTipsy(jQuery(experimentIndicator));
926 });
927 }
928 }, {
929 key: "onInit",
930 value: function onInit() {
931 var _this3 = this;
932 (0, _get2.default)((0, _getPrototypeOf2.default)(ExperimentsModule.prototype), "onInit", this).call(this);
933 this.experimentsDependency = new _experimentsMessages.default({
934 selects: this.elements.$experimentSelects.toArray(),
935 submit: this.elements.$experimentForm.find('#submit').get(0)
936 });
937 this.experimentsDependency.bindEvents();
938 if (this.elements.$experimentIndicators.length) {
939 import( /* webpackIgnore: true */"".concat(elementorCommon.config.urls.assets, "lib/tipsy/tipsy.min.js?ver=1.0.0")).then(function () {
940 return _this3.addIndicatorsTooltips();
941 });
942 }
943 }
944 }]);
945 return ExperimentsModule;
946 }(elementorModules.ViewModule);
947 exports["default"] = ExperimentsModule;
948
949 /***/ }),
950
951 /***/ "../modules/landing-pages/assets/js/admin/landing-pages.js":
952 /*!*****************************************************************!*\
953 !*** ../modules/landing-pages/assets/js/admin/landing-pages.js ***!
954 \*****************************************************************/
955 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
956
957 "use strict";
958
959
960 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
961 Object.defineProperty(exports, "__esModule", ({
962 value: true
963 }));
964 exports["default"] = void 0;
965 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
966 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
967 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/get */ "../node_modules/@babel/runtime/helpers/get.js"));
968 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
969 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
970 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
971 var _menuHandler = _interopRequireDefault(__webpack_require__(/*! elementor-admin/menu-handler */ "../assets/dev/js/admin/menu-handler.js"));
972 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
973 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
974 var LandingPagesHandler = /*#__PURE__*/function (_AdminMenuHandler) {
975 (0, _inherits2.default)(LandingPagesHandler, _AdminMenuHandler);
976 var _super = _createSuper(LandingPagesHandler);
977 function LandingPagesHandler() {
978 (0, _classCallCheck2.default)(this, LandingPagesHandler);
979 return _super.apply(this, arguments);
980 }
981 (0, _createClass2.default)(LandingPagesHandler, [{
982 key: "getDefaultSettings",
983 value: function getDefaultSettings() {
984 var pageName = 'e-landing-page',
985 adminMenuSelectors = {
986 // The escaping is done because jQuery requires it for selectors.
987 landingPagesTablePage: 'a[href="edit.php?post_type=' + pageName + '"]',
988 landingPagesAddNewPage: 'a[href="edit.php?post_type=elementor_library&page=' + pageName + '"]'
989 };
990 return {
991 selectors: {
992 addButton: '.page-title-action:first',
993 pagesMenuItemAndLink: '#menu-pages, #menu-pages > a',
994 landingPagesMenuItem: "".concat(adminMenuSelectors.landingPagesTablePage, ", ").concat(adminMenuSelectors.landingPagesAddNewPage),
995 templatesMenuItem: '.menu-icon-elementor_library'
996 }
997 };
998 }
999 }, {
1000 key: "getDefaultElements",
1001 value: function getDefaultElements() {
1002 var selectors = this.getSettings('selectors'),
1003 elements = (0, _get2.default)((0, _getPrototypeOf2.default)(LandingPagesHandler.prototype), "getDefaultElements", this).call(this);
1004 elements.$landingPagesMenuItem = jQuery(selectors.landingPagesMenuItem);
1005 elements.$templatesMenuItem = jQuery(selectors.templatesMenuItem);
1006 elements.$pagesMenuItemAndLink = jQuery(selectors.pagesMenuItemAndLink);
1007 return elements;
1008 }
1009 }, {
1010 key: "onInit",
1011 value: function onInit() {
1012 (0, _get2.default)((0, _getPrototypeOf2.default)(LandingPagesHandler.prototype), "onInit", this).call(this);
1013 var settings = this.getSettings(),
1014 isLandingPagesTablePage = !!window.location.href.includes(settings.paths.landingPagesTablePage),
1015 isLandingPagesTrashPage = !!window.location.href.includes(settings.paths.landingPagesTrashPage),
1016 isLandingPagesCreateYourFirstPage = !!window.location.href.includes(settings.paths.landingPagesAddNewPage);
1017
1018 // If the current page is a Landing Pages Page (the Posts Table page, "Create Your First.." page, or a native
1019 // WordPress dashboard page edit screen when using WordPress' Classic Editor).
1020 if (isLandingPagesTablePage || isLandingPagesTrashPage || isLandingPagesCreateYourFirstPage || settings.isLandingPageAdminEdit) {
1021 // Make sure the active admin top level menu item is 'Templates', and not 'Pages'.
1022 this.highlightTopLevelMenuItem(this.elements.$templatesMenuItem, this.elements.$pagesMenuItemAndLink);
1023 this.highlightSubMenuItem(this.elements.$landingPagesMenuItem);
1024
1025 // Overwrite the 'Add New' button at the top of the page to open in Elementor with the library module open.
1026 jQuery(settings.selectors.addButton).attr('href', elementorAdminConfig.urls.addNewLandingPageUrl);
1027 }
1028 }
1029 }]);
1030 return LandingPagesHandler;
1031 }(_menuHandler.default);
1032 exports["default"] = LandingPagesHandler;
1033
1034 /***/ }),
1035
1036 /***/ "../modules/landing-pages/assets/js/admin/module.js":
1037 /*!**********************************************************!*\
1038 !*** ../modules/landing-pages/assets/js/admin/module.js ***!
1039 \**********************************************************/
1040 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1041
1042 "use strict";
1043
1044
1045 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1046 Object.defineProperty(exports, "__esModule", ({
1047 value: true
1048 }));
1049 exports["default"] = void 0;
1050 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
1051 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
1052 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
1053 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
1054 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
1055 var _landingPages = _interopRequireDefault(__webpack_require__(/*! ./landing-pages */ "../modules/landing-pages/assets/js/admin/landing-pages.js"));
1056 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
1057 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
1058 var _default = /*#__PURE__*/function (_elementorModules$Mod) {
1059 (0, _inherits2.default)(_default, _elementorModules$Mod);
1060 var _super = _createSuper(_default);
1061 function _default() {
1062 var _this;
1063 (0, _classCallCheck2.default)(this, _default);
1064 _this = _super.call(this);
1065 elementorCommon.elements.$window.on('elementor/admin/init', function () {
1066 _this.runHandler();
1067 });
1068 return _this;
1069 }
1070 (0, _createClass2.default)(_default, [{
1071 key: "runHandler",
1072 value: function runHandler() {
1073 var _elementorAdmin$confi, _elementorAdmin$confi2;
1074 var pageName = 'e-landing-page',
1075 paths = {
1076 landingPagesTablePage: 'edit.php?post_type=' + pageName,
1077 landingPagesAddNewPage: 'edit.php?post_type=elementor_library&page=' + pageName,
1078 landingPagesTrashPage: 'edit.php?post_status=trash&post_type=' + pageName
1079 },
1080 args = {
1081 path: (_elementorAdmin$confi = elementorAdmin.config.landingPages) !== null && _elementorAdmin$confi !== void 0 && _elementorAdmin$confi.landingPagesHasPages ? paths.landingPagesTablePage : paths.landingPagesAddNewPage,
1082 isLandingPageAdminEdit: (_elementorAdmin$confi2 = elementorAdmin.config.landingPages) === null || _elementorAdmin$confi2 === void 0 ? void 0 : _elementorAdmin$confi2.isLandingPageAdminEdit,
1083 paths: paths
1084 };
1085
1086 // This class modifies elements in the WordPress admin that are rendered "wrong" by the WordPress core
1087 // and could not be modified in the backend.
1088 new _landingPages.default(args);
1089 }
1090 }]);
1091 return _default;
1092 }(elementorModules.Module);
1093 exports["default"] = _default;
1094
1095 /***/ }),
1096
1097 /***/ "@wordpress/i18n":
1098 /*!**************************!*\
1099 !*** external "wp.i18n" ***!
1100 \**************************/
1101 /***/ ((module) => {
1102
1103 "use strict";
1104 module.exports = wp.i18n;
1105
1106 /***/ }),
1107
1108 /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
1109 /*!******************************************************************!*\
1110 !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
1111 \******************************************************************/
1112 /***/ ((module) => {
1113
1114 function _arrayLikeToArray(arr, len) {
1115 if (len == null || len > arr.length) len = arr.length;
1116 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
1117 return arr2;
1118 }
1119 module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
1120
1121 /***/ }),
1122
1123 /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
1124 /*!****************************************************************!*\
1125 !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
1126 \****************************************************************/
1127 /***/ ((module) => {
1128
1129 function _arrayWithHoles(arr) {
1130 if (Array.isArray(arr)) return arr;
1131 }
1132 module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
1133
1134 /***/ }),
1135
1136 /***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
1137 /*!*******************************************************************!*\
1138 !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
1139 \*******************************************************************/
1140 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1141
1142 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
1143 function _arrayWithoutHoles(arr) {
1144 if (Array.isArray(arr)) return arrayLikeToArray(arr);
1145 }
1146 module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
1147
1148 /***/ }),
1149
1150 /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
1151 /*!***********************************************************************!*\
1152 !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
1153 \***********************************************************************/
1154 /***/ ((module) => {
1155
1156 function _assertThisInitialized(self) {
1157 if (self === void 0) {
1158 throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
1159 }
1160 return self;
1161 }
1162 module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
1163
1164 /***/ }),
1165
1166 /***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js":
1167 /*!******************************************************************!*\
1168 !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
1169 \******************************************************************/
1170 /***/ ((module) => {
1171
1172 function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
1173 try {
1174 var info = gen[key](arg);
1175 var value = info.value;
1176 } catch (error) {
1177 reject(error);
1178 return;
1179 }
1180 if (info.done) {
1181 resolve(value);
1182 } else {
1183 Promise.resolve(value).then(_next, _throw);
1184 }
1185 }
1186 function _asyncToGenerator(fn) {
1187 return function () {
1188 var self = this,
1189 args = arguments;
1190 return new Promise(function (resolve, reject) {
1191 var gen = fn.apply(self, args);
1192 function _next(value) {
1193 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
1194 }
1195 function _throw(err) {
1196 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
1197 }
1198 _next(undefined);
1199 });
1200 };
1201 }
1202 module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
1203
1204 /***/ }),
1205
1206 /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
1207 /*!****************************************************************!*\
1208 !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
1209 \****************************************************************/
1210 /***/ ((module) => {
1211
1212 function _classCallCheck(instance, Constructor) {
1213 if (!(instance instanceof Constructor)) {
1214 throw new TypeError("Cannot call a class as a function");
1215 }
1216 }
1217 module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
1218
1219 /***/ }),
1220
1221 /***/ "../node_modules/@babel/runtime/helpers/createClass.js":
1222 /*!*************************************************************!*\
1223 !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
1224 \*************************************************************/
1225 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1226
1227 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
1228 function _defineProperties(target, props) {
1229 for (var i = 0; i < props.length; i++) {
1230 var descriptor = props[i];
1231 descriptor.enumerable = descriptor.enumerable || false;
1232 descriptor.configurable = true;
1233 if ("value" in descriptor) descriptor.writable = true;
1234 Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
1235 }
1236 }
1237 function _createClass(Constructor, protoProps, staticProps) {
1238 if (protoProps) _defineProperties(Constructor.prototype, protoProps);
1239 if (staticProps) _defineProperties(Constructor, staticProps);
1240 Object.defineProperty(Constructor, "prototype", {
1241 writable: false
1242 });
1243 return Constructor;
1244 }
1245 module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
1246
1247 /***/ }),
1248
1249 /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
1250 /*!****************************************************************!*\
1251 !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
1252 \****************************************************************/
1253 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1254
1255 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
1256 function _defineProperty(obj, key, value) {
1257 key = toPropertyKey(key);
1258 if (key in obj) {
1259 Object.defineProperty(obj, key, {
1260 value: value,
1261 enumerable: true,
1262 configurable: true,
1263 writable: true
1264 });
1265 } else {
1266 obj[key] = value;
1267 }
1268 return obj;
1269 }
1270 module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
1271
1272 /***/ }),
1273
1274 /***/ "../node_modules/@babel/runtime/helpers/get.js":
1275 /*!*****************************************************!*\
1276 !*** ../node_modules/@babel/runtime/helpers/get.js ***!
1277 \*****************************************************/
1278 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1279
1280 var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime/helpers/superPropBase.js");
1281 function _get() {
1282 if (typeof Reflect !== "undefined" && Reflect.get) {
1283 module.exports = _get = Reflect.get.bind(), module.exports.__esModule = true, module.exports["default"] = module.exports;
1284 } else {
1285 module.exports = _get = function _get(target, property, receiver) {
1286 var base = superPropBase(target, property);
1287 if (!base) return;
1288 var desc = Object.getOwnPropertyDescriptor(base, property);
1289 if (desc.get) {
1290 return desc.get.call(arguments.length < 3 ? target : receiver);
1291 }
1292 return desc.value;
1293 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
1294 }
1295 return _get.apply(this, arguments);
1296 }
1297 module.exports = _get, module.exports.__esModule = true, module.exports["default"] = module.exports;
1298
1299 /***/ }),
1300
1301 /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
1302 /*!****************************************************************!*\
1303 !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
1304 \****************************************************************/
1305 /***/ ((module) => {
1306
1307 function _getPrototypeOf(o) {
1308 module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
1309 return o.__proto__ || Object.getPrototypeOf(o);
1310 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
1311 return _getPrototypeOf(o);
1312 }
1313 module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
1314
1315 /***/ }),
1316
1317 /***/ "../node_modules/@babel/runtime/helpers/inherits.js":
1318 /*!**********************************************************!*\
1319 !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
1320 \**********************************************************/
1321 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1322
1323 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
1324 function _inherits(subClass, superClass) {
1325 if (typeof superClass !== "function" && superClass !== null) {
1326 throw new TypeError("Super expression must either be null or a function");
1327 }
1328 subClass.prototype = Object.create(superClass && superClass.prototype, {
1329 constructor: {
1330 value: subClass,
1331 writable: true,
1332 configurable: true
1333 }
1334 });
1335 Object.defineProperty(subClass, "prototype", {
1336 writable: false
1337 });
1338 if (superClass) setPrototypeOf(subClass, superClass);
1339 }
1340 module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
1341
1342 /***/ }),
1343
1344 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
1345 /*!***********************************************************************!*\
1346 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
1347 \***********************************************************************/
1348 /***/ ((module) => {
1349
1350 function _interopRequireDefault(obj) {
1351 return obj && obj.__esModule ? obj : {
1352 "default": obj
1353 };
1354 }
1355 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
1356
1357 /***/ }),
1358
1359 /***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
1360 /*!*****************************************************************!*\
1361 !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
1362 \*****************************************************************/
1363 /***/ ((module) => {
1364
1365 function _iterableToArray(iter) {
1366 if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
1367 }
1368 module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
1369
1370 /***/ }),
1371
1372 /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
1373 /*!**********************************************************************!*\
1374 !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
1375 \**********************************************************************/
1376 /***/ ((module) => {
1377
1378 function _iterableToArrayLimit(arr, i) {
1379 var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
1380 if (null != _i) {
1381 var _s,
1382 _e,
1383 _x,
1384 _r,
1385 _arr = [],
1386 _n = !0,
1387 _d = !1;
1388 try {
1389 if (_x = (_i = _i.call(arr)).next, 0 === i) {
1390 if (Object(_i) !== _i) return;
1391 _n = !1;
1392 } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
1393 } catch (err) {
1394 _d = !0, _e = err;
1395 } finally {
1396 try {
1397 if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return;
1398 } finally {
1399 if (_d) throw _e;
1400 }
1401 }
1402 return _arr;
1403 }
1404 }
1405 module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
1406
1407 /***/ }),
1408
1409 /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
1410 /*!*****************************************************************!*\
1411 !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
1412 \*****************************************************************/
1413 /***/ ((module) => {
1414
1415 function _nonIterableRest() {
1416 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1417 }
1418 module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
1419
1420 /***/ }),
1421
1422 /***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
1423 /*!*******************************************************************!*\
1424 !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
1425 \*******************************************************************/
1426 /***/ ((module) => {
1427
1428 function _nonIterableSpread() {
1429 throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1430 }
1431 module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
1432
1433 /***/ }),
1434
1435 /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
1436 /*!***************************************************************************!*\
1437 !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
1438 \***************************************************************************/
1439 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1440
1441 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
1442 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
1443 function _possibleConstructorReturn(self, call) {
1444 if (call && (_typeof(call) === "object" || typeof call === "function")) {
1445 return call;
1446 } else if (call !== void 0) {
1447 throw new TypeError("Derived constructors may only return object or undefined");
1448 }
1449 return assertThisInitialized(self);
1450 }
1451 module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
1452
1453 /***/ }),
1454
1455 /***/ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js":
1456 /*!********************************************************************!*\
1457 !*** ../node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
1458 \********************************************************************/
1459 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1460
1461 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
1462 function _regeneratorRuntime() {
1463 "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
1464 module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
1465 return exports;
1466 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
1467 var exports = {},
1468 Op = Object.prototype,
1469 hasOwn = Op.hasOwnProperty,
1470 defineProperty = Object.defineProperty || function (obj, key, desc) {
1471 obj[key] = desc.value;
1472 },
1473 $Symbol = "function" == typeof Symbol ? Symbol : {},
1474 iteratorSymbol = $Symbol.iterator || "@@iterator",
1475 asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator",
1476 toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
1477 function define(obj, key, value) {
1478 return Object.defineProperty(obj, key, {
1479 value: value,
1480 enumerable: !0,
1481 configurable: !0,
1482 writable: !0
1483 }), obj[key];
1484 }
1485 try {
1486 define({}, "");
1487 } catch (err) {
1488 define = function define(obj, key, value) {
1489 return obj[key] = value;
1490 };
1491 }
1492 function wrap(innerFn, outerFn, self, tryLocsList) {
1493 var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,
1494 generator = Object.create(protoGenerator.prototype),
1495 context = new Context(tryLocsList || []);
1496 return defineProperty(generator, "_invoke", {
1497 value: makeInvokeMethod(innerFn, self, context)
1498 }), generator;
1499 }
1500 function tryCatch(fn, obj, arg) {
1501 try {
1502 return {
1503 type: "normal",
1504 arg: fn.call(obj, arg)
1505 };
1506 } catch (err) {
1507 return {
1508 type: "throw",
1509 arg: err
1510 };
1511 }
1512 }
1513 exports.wrap = wrap;
1514 var ContinueSentinel = {};
1515 function Generator() {}
1516 function GeneratorFunction() {}
1517 function GeneratorFunctionPrototype() {}
1518 var IteratorPrototype = {};
1519 define(IteratorPrototype, iteratorSymbol, function () {
1520 return this;
1521 });
1522 var getProto = Object.getPrototypeOf,
1523 NativeIteratorPrototype = getProto && getProto(getProto(values([])));
1524 NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);
1525 var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);
1526 function defineIteratorMethods(prototype) {
1527 ["next", "throw", "return"].forEach(function (method) {
1528 define(prototype, method, function (arg) {
1529 return this._invoke(method, arg);
1530 });
1531 });
1532 }
1533 function AsyncIterator(generator, PromiseImpl) {
1534 function invoke(method, arg, resolve, reject) {
1535 var record = tryCatch(generator[method], generator, arg);
1536 if ("throw" !== record.type) {
1537 var result = record.arg,
1538 value = result.value;
1539 return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) {
1540 invoke("next", value, resolve, reject);
1541 }, function (err) {
1542 invoke("throw", err, resolve, reject);
1543 }) : PromiseImpl.resolve(value).then(function (unwrapped) {
1544 result.value = unwrapped, resolve(result);
1545 }, function (error) {
1546 return invoke("throw", error, resolve, reject);
1547 });
1548 }
1549 reject(record.arg);
1550 }
1551 var previousPromise;
1552 defineProperty(this, "_invoke", {
1553 value: function value(method, arg) {
1554 function callInvokeWithMethodAndArg() {
1555 return new PromiseImpl(function (resolve, reject) {
1556 invoke(method, arg, resolve, reject);
1557 });
1558 }
1559 return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
1560 }
1561 });
1562 }
1563 function makeInvokeMethod(innerFn, self, context) {
1564 var state = "suspendedStart";
1565 return function (method, arg) {
1566 if ("executing" === state) throw new Error("Generator is already running");
1567 if ("completed" === state) {
1568 if ("throw" === method) throw arg;
1569 return doneResult();
1570 }
1571 for (context.method = method, context.arg = arg;;) {
1572 var delegate = context.delegate;
1573 if (delegate) {
1574 var delegateResult = maybeInvokeDelegate(delegate, context);
1575 if (delegateResult) {
1576 if (delegateResult === ContinueSentinel) continue;
1577 return delegateResult;
1578 }
1579 }
1580 if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) {
1581 if ("suspendedStart" === state) throw state = "completed", context.arg;
1582 context.dispatchException(context.arg);
1583 } else "return" === context.method && context.abrupt("return", context.arg);
1584 state = "executing";
1585 var record = tryCatch(innerFn, self, context);
1586 if ("normal" === record.type) {
1587 if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue;
1588 return {
1589 value: record.arg,
1590 done: context.done
1591 };
1592 }
1593 "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg);
1594 }
1595 };
1596 }
1597 function maybeInvokeDelegate(delegate, context) {
1598 var methodName = context.method,
1599 method = delegate.iterator[methodName];
1600 if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel;
1601 var record = tryCatch(method, delegate.iterator, context.arg);
1602 if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel;
1603 var info = record.arg;
1604 return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel);
1605 }
1606 function pushTryEntry(locs) {
1607 var entry = {
1608 tryLoc: locs[0]
1609 };
1610 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);
1611 }
1612 function resetTryEntry(entry) {
1613 var record = entry.completion || {};
1614 record.type = "normal", delete record.arg, entry.completion = record;
1615 }
1616 function Context(tryLocsList) {
1617 this.tryEntries = [{
1618 tryLoc: "root"
1619 }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);
1620 }
1621 function values(iterable) {
1622 if (iterable) {
1623 var iteratorMethod = iterable[iteratorSymbol];
1624 if (iteratorMethod) return iteratorMethod.call(iterable);
1625 if ("function" == typeof iterable.next) return iterable;
1626 if (!isNaN(iterable.length)) {
1627 var i = -1,
1628 next = function next() {
1629 for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;
1630 return next.value = undefined, next.done = !0, next;
1631 };
1632 return next.next = next;
1633 }
1634 }
1635 return {
1636 next: doneResult
1637 };
1638 }
1639 function doneResult() {
1640 return {
1641 value: undefined,
1642 done: !0
1643 };
1644 }
1645 return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", {
1646 value: GeneratorFunctionPrototype,
1647 configurable: !0
1648 }), defineProperty(GeneratorFunctionPrototype, "constructor", {
1649 value: GeneratorFunction,
1650 configurable: !0
1651 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) {
1652 var ctor = "function" == typeof genFun && genFun.constructor;
1653 return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name));
1654 }, exports.mark = function (genFun) {
1655 return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun;
1656 }, exports.awrap = function (arg) {
1657 return {
1658 __await: arg
1659 };
1660 }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {
1661 return this;
1662 }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {
1663 void 0 === PromiseImpl && (PromiseImpl = Promise);
1664 var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);
1665 return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {
1666 return result.done ? result.value : iter.next();
1667 });
1668 }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () {
1669 return this;
1670 }), define(Gp, "toString", function () {
1671 return "[object Generator]";
1672 }), exports.keys = function (val) {
1673 var object = Object(val),
1674 keys = [];
1675 for (var key in object) keys.push(key);
1676 return keys.reverse(), function next() {
1677 for (; keys.length;) {
1678 var key = keys.pop();
1679 if (key in object) return next.value = key, next.done = !1, next;
1680 }
1681 return next.done = !0, next;
1682 };
1683 }, exports.values = values, Context.prototype = {
1684 constructor: Context,
1685 reset: function reset(skipTempReset) {
1686 if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);
1687 },
1688 stop: function stop() {
1689 this.done = !0;
1690 var rootRecord = this.tryEntries[0].completion;
1691 if ("throw" === rootRecord.type) throw rootRecord.arg;
1692 return this.rval;
1693 },
1694 dispatchException: function dispatchException(exception) {
1695 if (this.done) throw exception;
1696 var context = this;
1697 function handle(loc, caught) {
1698 return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught;
1699 }
1700 for (var i = this.tryEntries.length - 1; i >= 0; --i) {
1701 var entry = this.tryEntries[i],
1702 record = entry.completion;
1703 if ("root" === entry.tryLoc) return handle("end");
1704 if (entry.tryLoc <= this.prev) {
1705 var hasCatch = hasOwn.call(entry, "catchLoc"),
1706 hasFinally = hasOwn.call(entry, "finallyLoc");
1707 if (hasCatch && hasFinally) {
1708 if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
1709 if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
1710 } else if (hasCatch) {
1711 if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
1712 } else {
1713 if (!hasFinally) throw new Error("try statement without catch or finally");
1714 if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
1715 }
1716 }
1717 }
1718 },
1719 abrupt: function abrupt(type, arg) {
1720 for (var i = this.tryEntries.length - 1; i >= 0; --i) {
1721 var entry = this.tryEntries[i];
1722 if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) {
1723 var finallyEntry = entry;
1724 break;
1725 }
1726 }
1727 finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);
1728 var record = finallyEntry ? finallyEntry.completion : {};
1729 return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);
1730 },
1731 complete: function complete(record, afterLoc) {
1732 if ("throw" === record.type) throw record.arg;
1733 return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;
1734 },
1735 finish: function finish(finallyLoc) {
1736 for (var i = this.tryEntries.length - 1; i >= 0; --i) {
1737 var entry = this.tryEntries[i];
1738 if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;
1739 }
1740 },
1741 "catch": function _catch(tryLoc) {
1742 for (var i = this.tryEntries.length - 1; i >= 0; --i) {
1743 var entry = this.tryEntries[i];
1744 if (entry.tryLoc === tryLoc) {
1745 var record = entry.completion;
1746 if ("throw" === record.type) {
1747 var thrown = record.arg;
1748 resetTryEntry(entry);
1749 }
1750 return thrown;
1751 }
1752 }
1753 throw new Error("illegal catch attempt");
1754 },
1755 delegateYield: function delegateYield(iterable, resultName, nextLoc) {
1756 return this.delegate = {
1757 iterator: values(iterable),
1758 resultName: resultName,
1759 nextLoc: nextLoc
1760 }, "next" === this.method && (this.arg = undefined), ContinueSentinel;
1761 }
1762 }, exports;
1763 }
1764 module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
1765
1766 /***/ }),
1767
1768 /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
1769 /*!****************************************************************!*\
1770 !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
1771 \****************************************************************/
1772 /***/ ((module) => {
1773
1774 function _setPrototypeOf(o, p) {
1775 module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
1776 o.__proto__ = p;
1777 return o;
1778 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
1779 return _setPrototypeOf(o, p);
1780 }
1781 module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
1782
1783 /***/ }),
1784
1785 /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
1786 /*!***************************************************************!*\
1787 !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
1788 \***************************************************************/
1789 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1790
1791 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
1792 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
1793 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
1794 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
1795 function _slicedToArray(arr, i) {
1796 return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
1797 }
1798 module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
1799
1800 /***/ }),
1801
1802 /***/ "../node_modules/@babel/runtime/helpers/superPropBase.js":
1803 /*!***************************************************************!*\
1804 !*** ../node_modules/@babel/runtime/helpers/superPropBase.js ***!
1805 \***************************************************************/
1806 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1807
1808 var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js");
1809 function _superPropBase(object, property) {
1810 while (!Object.prototype.hasOwnProperty.call(object, property)) {
1811 object = getPrototypeOf(object);
1812 if (object === null) break;
1813 }
1814 return object;
1815 }
1816 module.exports = _superPropBase, module.exports.__esModule = true, module.exports["default"] = module.exports;
1817
1818 /***/ }),
1819
1820 /***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
1821 /*!*******************************************************************!*\
1822 !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
1823 \*******************************************************************/
1824 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1825
1826 var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
1827 var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
1828 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
1829 var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
1830 function _toConsumableArray(arr) {
1831 return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
1832 }
1833 module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
1834
1835 /***/ }),
1836
1837 /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
1838 /*!*************************************************************!*\
1839 !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
1840 \*************************************************************/
1841 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1842
1843 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
1844 function _toPrimitive(input, hint) {
1845 if (_typeof(input) !== "object" || input === null) return input;
1846 var prim = input[Symbol.toPrimitive];
1847 if (prim !== undefined) {
1848 var res = prim.call(input, hint || "default");
1849 if (_typeof(res) !== "object") return res;
1850 throw new TypeError("@@toPrimitive must return a primitive value.");
1851 }
1852 return (hint === "string" ? String : Number)(input);
1853 }
1854 module.exports = _toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
1855
1856 /***/ }),
1857
1858 /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
1859 /*!***************************************************************!*\
1860 !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
1861 \***************************************************************/
1862 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1863
1864 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
1865 var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
1866 function _toPropertyKey(arg) {
1867 var key = toPrimitive(arg, "string");
1868 return _typeof(key) === "symbol" ? key : String(key);
1869 }
1870 module.exports = _toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
1871
1872 /***/ }),
1873
1874 /***/ "../node_modules/@babel/runtime/helpers/typeof.js":
1875 /*!********************************************************!*\
1876 !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
1877 \********************************************************/
1878 /***/ ((module) => {
1879
1880 function _typeof(obj) {
1881 "@babel/helpers - typeof";
1882
1883 return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
1884 return typeof obj;
1885 } : function (obj) {
1886 return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
1887 }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(obj);
1888 }
1889 module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
1890
1891 /***/ }),
1892
1893 /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
1894 /*!****************************************************************************!*\
1895 !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
1896 \****************************************************************************/
1897 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1898
1899 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
1900 function _unsupportedIterableToArray(o, minLen) {
1901 if (!o) return;
1902 if (typeof o === "string") return arrayLikeToArray(o, minLen);
1903 var n = Object.prototype.toString.call(o).slice(8, -1);
1904 if (n === "Object" && o.constructor) n = o.constructor.name;
1905 if (n === "Map" || n === "Set") return Array.from(o);
1906 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
1907 }
1908 module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
1909
1910 /***/ }),
1911
1912 /***/ "../node_modules/@babel/runtime/regenerator/index.js":
1913 /*!***********************************************************!*\
1914 !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
1915 \***********************************************************/
1916 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1917
1918 // TODO(Babel 8): Remove this file.
1919
1920 var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js")();
1921 module.exports = runtime;
1922
1923 // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
1924 try {
1925 regeneratorRuntime = runtime;
1926 } catch (accidentalStrictMode) {
1927 if (typeof globalThis === "object") {
1928 globalThis.regeneratorRuntime = runtime;
1929 } else {
1930 Function("r", "regeneratorRuntime = r")(runtime);
1931 }
1932 }
1933
1934
1935 /***/ })
1936
1937 /******/ });
1938 /************************************************************************/
1939 /******/ // The module cache
1940 /******/ var __webpack_module_cache__ = {};
1941 /******/
1942 /******/ // The require function
1943 /******/ function __webpack_require__(moduleId) {
1944 /******/ // Check if module is in cache
1945 /******/ var cachedModule = __webpack_module_cache__[moduleId];
1946 /******/ if (cachedModule !== undefined) {
1947 /******/ return cachedModule.exports;
1948 /******/ }
1949 /******/ // Create a new module (and put it into the cache)
1950 /******/ var module = __webpack_module_cache__[moduleId] = {
1951 /******/ // no module.id needed
1952 /******/ // no module.loaded needed
1953 /******/ exports: {}
1954 /******/ };
1955 /******/
1956 /******/ // Execute the module function
1957 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
1958 /******/
1959 /******/ // Return the exports of the module
1960 /******/ return module.exports;
1961 /******/ }
1962 /******/
1963 /************************************************************************/
1964 var __webpack_exports__ = {};
1965 // This entry need to be wrapped in an IIFE because it need to be in strict mode.
1966 (() => {
1967 "use strict";
1968 /*!***************************************!*\
1969 !*** ../assets/dev/js/admin/admin.js ***!
1970 \***************************************/
1971 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
1972
1973
1974 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1975 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
1976 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
1977 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1978 var _module = _interopRequireDefault(__webpack_require__(/*! elementor/modules/landing-pages/assets/js/admin/module */ "../modules/landing-pages/assets/js/admin/module.js"));
1979 var _module2 = _interopRequireDefault(__webpack_require__(/*! elementor/core/experiments/assets/js/admin/module */ "../core/experiments/assets/js/admin/module.js"));
1980 var _environment = _interopRequireDefault(__webpack_require__(/*! ../../../../core/common/assets/js/utils/environment */ "../core/common/assets/js/utils/environment.js"));
1981 var _events = _interopRequireDefault(__webpack_require__(/*! elementor-utils/events */ "../assets/dev/js/utils/events.js"));
1982 var _filesUploadHandler = _interopRequireDefault(__webpack_require__(/*! ../editor/utils/files-upload-handler */ "../assets/dev/js/editor/utils/files-upload-handler.js"));
1983 var _templateControls = _interopRequireDefault(__webpack_require__(/*! ./new-template/template-controls.js */ "../assets/dev/js/admin/new-template/template-controls.js"));
1984 var _jsonUploadWarningMessage = __webpack_require__(/*! elementor-utils/json-upload-warning-message */ "../assets/dev/js/utils/json-upload-warning-message.js");
1985 (function ($) {
1986 var ElementorAdmin = elementorModules.ViewModule.extend({
1987 maintenanceMode: null,
1988 config: elementorAdminConfig,
1989 getDefaultElements: function getDefaultElements() {
1990 var elements = {
1991 $switchMode: $('#elementor-switch-mode'),
1992 $goToEditLink: $('#elementor-go-to-edit-page-link'),
1993 $switchModeInput: $('#elementor-switch-mode-input'),
1994 $switchModeButton: $('#elementor-switch-mode-button'),
1995 $elementorLoader: $('.elementor-loader'),
1996 $builderEditor: $('#elementor-editor'),
1997 $importButton: $('#elementor-import-template-trigger'),
1998 $importNowButton: $('#e-import-template-action'),
1999 $importArea: $('#elementor-import-template-area'),
2000 $importForm: $('#elementor-import-template-form'),
2001 $importFormFileInput: $('#elementor-import-template-form input[type="file"]'),
2002 $settingsForm: $('#elementor-settings-form'),
2003 $settingsTabsWrapper: $('#elementor-settings-tabs-wrapper'),
2004 $menuGetHelpLink: $('a[href="admin.php?page=go_knowledge_base_site"]'),
2005 $menuGoProLink: $('a[href="admin.php?page=go_elementor_pro"]'),
2006 $reMigrateGlobalsButton: $('.elementor-re-migrate-globals-button')
2007 };
2008 elements.$settingsFormPages = elements.$settingsForm.find('.elementor-settings-form-page');
2009 elements.$activeSettingsPage = elements.$settingsFormPages.filter('.elementor-active');
2010 elements.$settingsTabs = elements.$settingsTabsWrapper.children();
2011 elements.$activeSettingsTab = elements.$settingsTabs.filter('.nav-tab-active');
2012 return elements;
2013 },
2014 toggleStatus: function toggleStatus() {
2015 var isElementorMode = this.isElementorMode();
2016 elementorCommon.elements.$body.toggleClass('elementor-editor-active', isElementorMode).toggleClass('elementor-editor-inactive', !isElementorMode);
2017 },
2018 bindEvents: function bindEvents() {
2019 var self = this;
2020 self.elements.$switchModeButton.on('click', function (event) {
2021 event.preventDefault();
2022 if (self.isElementorMode()) {
2023 elementorCommon.dialogsManager.createWidget('confirm', {
2024 message: __('Please note that you are switching to WordPress default editor. Your current layout, design and content might break.', 'elementor'),
2025 headerMessage: __('Back to WordPress Editor', 'elementor'),
2026 strings: {
2027 confirm: __('Continue', 'elementor'),
2028 cancel: __('Cancel', 'elementor')
2029 },
2030 defaultOption: 'confirm',
2031 onConfirm: function onConfirm() {
2032 self.elements.$switchModeInput.val('');
2033 self.toggleStatus();
2034 }
2035 }).show();
2036 } else {
2037 self.elements.$switchModeInput.val(true);
2038 var $wpTitle = $('#title');
2039 if (!$wpTitle.val()) {
2040 $wpTitle.val('Elementor #' + $('#post_ID').val());
2041 }
2042 if (wp.autosave) {
2043 wp.autosave.server.triggerSave();
2044 }
2045 self.animateLoader();
2046 $(document).on('heartbeat-tick.autosave', function () {
2047 elementorCommon.elements.$window.off('beforeunload.edit-post');
2048 location.href = self.elements.$goToEditLink.attr('href');
2049 });
2050 self.toggleStatus();
2051 }
2052 });
2053 self.elements.$goToEditLink.on('click', function () {
2054 self.animateLoader();
2055 });
2056 $('.e-notice--dismissible').on('click', '.e-notice__dismiss, .e-notice-dismiss', function (event) {
2057 event.preventDefault();
2058 var $wrapperElm = $(this).closest('.e-notice--dismissible');
2059 $.post(ajaxurl, {
2060 action: 'elementor_set_admin_notice_viewed',
2061 notice_id: $wrapperElm.data('notice_id')
2062 });
2063 $wrapperElm.fadeTo(100, 0, function () {
2064 $wrapperElm.slideUp(100, function () {
2065 $wrapperElm.remove();
2066 });
2067 });
2068 });
2069 $('#elementor-clear-cache-button').on('click', function (event) {
2070 event.preventDefault();
2071 var $thisButton = $(this);
2072 $thisButton.removeClass('success').addClass('loading');
2073 $.post(ajaxurl, {
2074 action: 'elementor_clear_cache',
2075 _nonce: $thisButton.data('nonce')
2076 }).done(function () {
2077 $thisButton.removeClass('loading').addClass('success');
2078 });
2079 });
2080 $('#elementor-library-sync-button').on('click', function (event) {
2081 event.preventDefault();
2082 var $thisButton = $(this);
2083 $thisButton.removeClass('success').addClass('loading');
2084 $.post(ajaxurl, {
2085 action: 'elementor_reset_library',
2086 _nonce: $thisButton.data('nonce')
2087 }).done(function () {
2088 $thisButton.removeClass('loading').addClass('success');
2089 });
2090 });
2091 $('#elementor-recreate-kit-button').on('click', function (event) {
2092 event.preventDefault();
2093 var $thisButton = $(this);
2094 $thisButton.removeClass('success error').addClass('loading').next('.e-recreate-kit-error-message').remove();
2095 $.post(ajaxurl, {
2096 action: 'elementor_recreate_kit',
2097 _nonce: $thisButton.data('nonce')
2098 }).done(function () {
2099 $thisButton.removeClass('loading').addClass('success');
2100 }).fail(function (_ref) {
2101 var _responseJSON$data;
2102 var responseJSON = _ref.responseJSON;
2103 $thisButton.removeClass('loading').addClass('error');
2104 if ((_responseJSON$data = responseJSON.data) !== null && _responseJSON$data !== void 0 && _responseJSON$data.message) {
2105 $thisButton.after("<div class=\"e-recreate-kit-error-message\">".concat(responseJSON.data.message, "</div>"));
2106 }
2107 });
2108 });
2109 $('#elementor-replace-url-button').on('click', function (event) {
2110 event.preventDefault();
2111 var $this = $(this),
2112 $tr = $this.parents('tr'),
2113 $from = $tr.find('[name="from"]'),
2114 $to = $tr.find('[name="to"]');
2115 $this.removeClass('success').addClass('loading');
2116 $.post(ajaxurl, {
2117 action: 'elementor_replace_url',
2118 from: $from.val(),
2119 to: $to.val(),
2120 _nonce: $this.data('nonce')
2121 }).done(function (response) {
2122 $this.removeClass('loading');
2123 if (response.success) {
2124 $this.addClass('success');
2125 }
2126 elementorCommon.dialogsManager.createWidget('alert', {
2127 message: response.data
2128 }).show();
2129 });
2130 });
2131 $('#elementor_upgrade_fa_button').on('click', function (event) {
2132 event.preventDefault();
2133 var $updateButton = $(this);
2134 $updateButton.addClass('loading');
2135 elementorCommon.dialogsManager.createWidget('confirm', {
2136 id: 'confirm_fa_migration_admin_modal',
2137 message: __('I understand that by upgrading to Font Awesome 5,', 'elementor') + '<br>' + __('I acknowledge that some changes may affect my website and that this action cannot be undone.', 'elementor'),
2138 headerMessage: __('Font Awesome 5 Migration', 'elementor'),
2139 strings: {
2140 confirm: __('Continue', 'elementor'),
2141 cancel: __('Cancel', 'elementor')
2142 },
2143 defaultOption: 'confirm',
2144 onConfirm: function onConfirm() {
2145 $updateButton.removeClass('error').addClass('loading');
2146 var _$updateButton$data = $updateButton.data(),
2147 _nonce = _$updateButton$data._nonce,
2148 action = _$updateButton$data.action,
2149 redirectUrl = _$updateButton$data.redirectUrl;
2150 $.post(ajaxurl, {
2151 action: action,
2152 _nonce: _nonce
2153 }).done(function (response) {
2154 $updateButton.removeClass('loading').addClass('success');
2155 var messageElement = document.createElement('p');
2156 messageElement.appendChild(document.createTextNode(response.data.message));
2157 $('#elementor_upgrade_fa_button').parent().append(messageElement);
2158 if (redirectUrl) {
2159 location.href = decodeURIComponent(redirectUrl);
2160 return;
2161 }
2162 history.go(-1);
2163 }).fail(function () {
2164 $updateButton.removeClass('loading').addClass('error');
2165 });
2166 },
2167 onCancel: function onCancel() {
2168 $updateButton.removeClass('loading').addClass('error');
2169 }
2170 }).show();
2171 });
2172 self.elements.$settingsTabs.on({
2173 click: function click(event) {
2174 event.preventDefault();
2175 event.currentTarget.focus(); // Safari does not focus the tab automatically
2176 },
2177 focus: function focus() {
2178 // Using focus event to enable navigation by tab key
2179 var hrefWithoutHash = location.href.replace(/#.*/, '');
2180 history.pushState({}, '', hrefWithoutHash + this.hash);
2181 self.goToSettingsTabFromHash();
2182 }
2183 });
2184 $('select.elementor-rollback-select').on('change', function () {
2185 var $this = $(this),
2186 $rollbackButton = $this.next('.elementor-rollback-button'),
2187 placeholderText = $rollbackButton.data('placeholder-text'),
2188 placeholderUrl = $rollbackButton.data('placeholder-url');
2189 $rollbackButton.html(placeholderText.replace('{VERSION}', $this.val()));
2190 $rollbackButton.attr('href', placeholderUrl.replace('VERSION', $this.val()));
2191 }).trigger('change');
2192 $('.elementor-rollback-button').on('click', function (event) {
2193 event.preventDefault();
2194 var $this = $(this);
2195 elementorCommon.dialogsManager.createWidget('confirm', {
2196 headerMessage: __('Rollback to Previous Version', 'elementor'),
2197 message: __('Are you sure you want to reinstall previous version?', 'elementor'),
2198 strings: {
2199 confirm: __('Continue', 'elementor'),
2200 cancel: __('Cancel', 'elementor')
2201 },
2202 onConfirm: function onConfirm() {
2203 $this.addClass('loading');
2204 location.href = $this.attr('href');
2205 }
2206 }).show();
2207 });
2208 self.elements.$reMigrateGlobalsButton.on('click', function (event) {
2209 event.preventDefault();
2210 var $this = $(event.currentTarget);
2211 elementorCommon.dialogsManager.createWidget('confirm', {
2212 headerMessage: __('Migrate to v3.0', 'elementor'),
2213 message: __('Please note that this process will revert all changes made to Global Colors and Fonts since upgrading to v3.x.', 'elementor'),
2214 strings: {
2215 confirm: __('Continue', 'elementor'),
2216 cancel: __('Cancel', 'elementor')
2217 },
2218 onConfirm: function onConfirm() {
2219 $this.removeClass('success').addClass('loading');
2220 elementorCommon.ajax.addRequest('re_migrate_globals', {
2221 success: function success() {
2222 return $this.removeClass('loading').addClass('success');
2223 }
2224 });
2225 }
2226 }).show();
2227 });
2228 $('.elementor_css_print_method select').on('change', function () {
2229 var $descriptions = $('.elementor-css-print-method-description');
2230 $descriptions.hide();
2231 $descriptions.filter('[data-value="' + $(this).val() + '"]').show();
2232 }).trigger('change');
2233 $('.elementor_google_font select').on('change', function () {
2234 $('.elementor_font_display').toggle('1' === $(this).val());
2235 }).trigger('change');
2236 },
2237 onInit: function onInit() {
2238 elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
2239 this.initTemplatesImport();
2240 this.initMaintenanceMode();
2241 this.goToSettingsTabFromHash();
2242 this.openLinksInNewTab();
2243 this.addUserAgentClasses();
2244 this.roleManager.init();
2245 if (elementorCommon.config.experimentalFeatures['landing-pages']) {
2246 new _module.default();
2247 }
2248 this.templateControls = new _templateControls.default();
2249 new _module2.default();
2250 },
2251 addUserAgentClasses: function addUserAgentClasses() {
2252 var body = document.querySelector('body');
2253 Object.entries(_environment.default).forEach(function (_ref2) {
2254 var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
2255 key = _ref3[0],
2256 value = _ref3[1];
2257 if (!value) {
2258 return;
2259 }
2260 body.classList.add('e--ua-' + key);
2261 });
2262 },
2263 /**
2264 * Open Links in New Tab
2265 *
2266 * Adds a `target="_blank"` attribute to the Admin Dashboard menu items specified in the `elements` array,
2267 * if the elements are found in the DOM. The items in the `elements` array should be jQuery instances.
2268 *
2269 * @since 3.6.0
2270 */
2271 openLinksInNewTab: function openLinksInNewTab() {
2272 var elements = [this.elements.$menuGetHelpLink, this.elements.$menuGoProLink];
2273 elements.forEach(function ($element) {
2274 // Only add the attribute if the element is found.
2275 if ($element.length) {
2276 $element.attr('target', '_blank');
2277 }
2278 });
2279 },
2280 initTemplatesImport: function initTemplatesImport() {
2281 if (!elementorCommon.elements.$body.hasClass('post-type-elementor_library')) {
2282 return;
2283 }
2284 var self = this,
2285 $importForm = self.elements.$importForm,
2286 $importButton = self.elements.$importButton,
2287 $importArea = self.elements.$importArea,
2288 $importNowButton = self.elements.$importNowButton,
2289 $importFormFileInput = self.elements.$importFormFileInput;
2290 self.elements.$formAnchor = $('.wp-header-end');
2291 $('#wpbody-content').find('.page-title-action').last().after($importButton);
2292 self.elements.$formAnchor.after($importArea);
2293 $importButton.on('click', function () {
2294 $('#elementor-import-template-area').toggle();
2295 });
2296 var messageShown = false;
2297 var originalButtonValue = $importNowButton[0].value;
2298 $importForm.on('submit', /*#__PURE__*/function () {
2299 var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(event) {
2300 var enableUnfilteredFilesModal;
2301 return _regenerator.default.wrap(function _callee$(_context) {
2302 while (1) switch (_context.prev = _context.next) {
2303 case 0:
2304 $importNowButton[0].disabled = true;
2305 $importNowButton[0].value = __('Importing...', 'elementor');
2306 if (messageShown) {
2307 _context.next = 16;
2308 break;
2309 }
2310 event.preventDefault();
2311 _context.prev = 4;
2312 _context.next = 7;
2313 return (0, _jsonUploadWarningMessage.showJsonUploadWarningMessageIfNeeded)({
2314 IntroductionClass: window.elementorModules.admin.utils.Introduction,
2315 introductionMap: window.elementorAdmin.config.user.introduction,
2316 waitForSetViewed: true
2317 });
2318 case 7:
2319 messageShown = true;
2320 $importForm.trigger('submit');
2321 _context.next = 15;
2322 break;
2323 case 11:
2324 _context.prev = 11;
2325 _context.t0 = _context["catch"](4);
2326 $importNowButton[0].disabled = false;
2327 $importNowButton[0].value = originalButtonValue;
2328 case 15:
2329 return _context.abrupt("return");
2330 case 16:
2331 if (!($importFormFileInput[0].files.length && !elementorCommon.config.filesUpload.unfilteredFiles)) {
2332 _context.next = 21;
2333 break;
2334 }
2335 event.preventDefault();
2336 enableUnfilteredFilesModal = _filesUploadHandler.default.getUnfilteredFilesNotEnabledImportTemplateDialog(function () {
2337 $importForm.trigger('submit');
2338 });
2339 enableUnfilteredFilesModal.show();
2340 return _context.abrupt("return");
2341 case 21:
2342 messageShown = false;
2343 case 22:
2344 case "end":
2345 return _context.stop();
2346 }
2347 }, _callee, null, [[4, 11]]);
2348 }));
2349 return function (_x) {
2350 return _ref4.apply(this, arguments);
2351 };
2352 }());
2353 },
2354 initMaintenanceMode: function initMaintenanceMode() {
2355 var MaintenanceMode = __webpack_require__(/*! elementor-admin/maintenance-mode */ "../assets/dev/js/admin/maintenance-mode.js");
2356 this.maintenanceMode = new MaintenanceMode();
2357 },
2358 isElementorMode: function isElementorMode() {
2359 return !!this.elements.$switchModeInput.val();
2360 },
2361 animateLoader: function animateLoader() {
2362 this.elements.$goToEditLink.addClass('elementor-animate');
2363 },
2364 goToSettingsTabFromHash: function goToSettingsTabFromHash() {
2365 var hash = location.hash.slice(1);
2366 if (hash) {
2367 this.goToSettingsTab(hash);
2368 }
2369 },
2370 goToSettingsTab: function goToSettingsTab(tabName) {
2371 var $pages = this.elements.$settingsFormPages;
2372 if (!$pages.length) {
2373 return;
2374 }
2375 var $activePage = $pages.filter('#' + tabName);
2376 this.elements.$activeSettingsPage.removeClass('elementor-active');
2377 this.elements.$activeSettingsTab.removeClass('nav-tab-active');
2378 var $activeTab = this.elements.$settingsTabs.filter('#elementor-settings-' + tabName);
2379 $activePage.addClass('elementor-active');
2380 $activeTab.addClass('nav-tab-active');
2381 this.elements.$settingsForm.attr('action', 'options.php#' + tabName);
2382 this.elements.$activeSettingsPage = $activePage;
2383 this.elements.$activeSettingsTab = $activeTab;
2384 },
2385 translate: function translate(stringKey, templateArgs) {
2386 return elementorCommon.translate(stringKey, null, templateArgs, this.config.i18n);
2387 },
2388 roleManager: {
2389 selectors: {
2390 body: 'elementor-role-manager',
2391 row: '.elementor-role-row',
2392 label: '.elementor-role-label',
2393 excludedIndicator: '.elementor-role-excluded-indicator',
2394 excludedField: 'input[name="elementor_exclude_user_roles[]"]',
2395 controlsContainer: '.elementor-role-controls',
2396 toggleHandle: '.elementor-role-toggle',
2397 arrowUp: 'dashicons-arrow-up',
2398 arrowDown: 'dashicons-arrow-down'
2399 },
2400 toggle: function toggle($trigger) {
2401 var self = this,
2402 $row = $trigger.closest(self.selectors.row),
2403 $toggleHandleIcon = $row.find(self.selectors.toggleHandle).find('.dashicons'),
2404 $controls = $row.find(self.selectors.controlsContainer);
2405 $controls.toggleClass('hidden');
2406 if ($controls.hasClass('hidden')) {
2407 $toggleHandleIcon.removeClass(self.selectors.arrowUp).addClass(self.selectors.arrowDown);
2408 } else {
2409 $toggleHandleIcon.removeClass(self.selectors.arrowDown).addClass(self.selectors.arrowUp);
2410 }
2411 self.updateLabel($row);
2412 },
2413 updateLabel: function updateLabel($row) {
2414 var self = this,
2415 $indicator = $row.find(self.selectors.excludedIndicator),
2416 excluded = $row.find(self.selectors.excludedField).is(':checked');
2417 if (excluded) {
2418 $indicator.html($indicator.data('excluded-label'));
2419 } else {
2420 $indicator.html('');
2421 }
2422 self.setAdvancedState($row, excluded);
2423 },
2424 setAdvancedState: function setAdvancedState($row, state) {
2425 var self = this,
2426 $controls = $row.find('input[type="checkbox"]').not(self.selectors.excludedField);
2427 $controls.each(function (index, input) {
2428 $(input).prop('disabled', state);
2429 });
2430 },
2431 bind: function bind() {
2432 var self = this;
2433 $(document).on('click', self.selectors.label + ',' + self.selectors.toggleHandle, function (event) {
2434 event.stopPropagation();
2435 event.preventDefault();
2436 self.toggle($(this));
2437 }).on('change', self.selectors.excludedField, function () {
2438 self.updateLabel($(this).closest(self.selectors.row));
2439 });
2440 },
2441 init: function init() {
2442 var self = this;
2443 if (!$('body[class*="' + self.selectors.body + '"]').length) {
2444 return;
2445 }
2446 self.bind();
2447 $(self.selectors.row).each(function (index, row) {
2448 self.updateLabel($(row));
2449 });
2450 }
2451 }
2452 });
2453 $(function () {
2454 window.elementorAdmin = new ElementorAdmin();
2455 _events.default.dispatch(elementorCommon.elements.$window, 'elementor/admin/init');
2456 });
2457 })(jQuery);
2458 })();
2459
2460 /******/ })()
2461 ;
2462 //# sourceMappingURL=admin.js.map