PluginProbe
Elementor Website Builder – more than just a page builder / 3.35.7
Elementor Website Builder – more than just a page builder v3.35.7
4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 All 452 releases
elementor / assets / js / e-home-screen.js

e-home-screen.js in Elementor Website Builder – more than just a page builder 3.35.7, at assets/js/e-home-screen.js

5,945 lines 248.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /******/ (() => { // webpackBootstrap
2 /******/ var __webpack_modules__ = ({
3
4 /***/ "../app/assets/js/event-track/dashboard/action-controls.js":
5 /*!*****************************************************************!*\
6 !*** ../app/assets/js/event-track/dashboard/action-controls.js ***!
7 \*****************************************************************/
8 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9
10 "use strict";
11
12
13 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
14 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
15 Object.defineProperty(exports, "__esModule", ({
16 value: true
17 }));
18 exports["default"] = void 0;
19 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
20 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
21 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
22 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
23 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
24 var _wpDashboardTracking = _interopRequireWildcard(__webpack_require__(/*! ../wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
25 var _utils = __webpack_require__(/*! ./utils */ "../app/assets/js/event-track/dashboard/utils.js");
26 var _baseTracking = _interopRequireDefault(__webpack_require__(/*! ./base-tracking */ "../app/assets/js/event-track/dashboard/base-tracking.js"));
27 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
28 function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
29 function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
30 function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
31 function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
32 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
33 var EXCLUDED_SELECTORS = {
34 ADMIN_MENU: '#adminmenu',
35 TOP_BAR: '.e-admin-top-bar',
36 TOP_BAR_EDITOR_ONE: '#editor-one-top-bar',
37 WP_ADMIN_BAR: '#wpadminbar',
38 SUBMENU: '.wp-submenu',
39 PROMO_PAGE: '.e-feature-promotion',
40 PROMO_BLANK_STATE: '.elementor-blank_state',
41 APP: '.e-app',
42 SIDEBAR_NAVIGATION: '#editor-one-sidebar-navigation',
43 FLYOUT_MENU: '.elementor-submenu-flyout'
44 };
45 var ActionControlTracking = /*#__PURE__*/function (_BaseTracking) {
46 function ActionControlTracking() {
47 (0, _classCallCheck2.default)(this, ActionControlTracking);
48 return _callSuper(this, ActionControlTracking, arguments);
49 }
50 (0, _inherits2.default)(ActionControlTracking, _BaseTracking);
51 return (0, _createClass2.default)(ActionControlTracking, null, [{
52 key: "init",
53 value: function init() {
54 if (!_utils.DashboardUtils.isElementorPage()) {
55 return;
56 }
57 this.attachDelegatedHandlers();
58 this.addTrackingAttributesToFilterButtons();
59 this.initializeLinkDataIds();
60 }
61 }, {
62 key: "initializeLinkDataIds",
63 value: function initializeLinkDataIds() {
64 var _this = this;
65 var initializeLinks = function initializeLinks() {
66 var links = document.querySelectorAll('a[href]');
67 links.forEach(function (link) {
68 if (_this.isExcludedElement(link) || _this.isNavigationLink(link) || link.hasAttribute('data-id')) {
69 return;
70 }
71 var href = link.getAttribute('href');
72 if (!href) {
73 return;
74 }
75 var cleanedHref = _this.removeNonceFromUrl(href);
76 if (cleanedHref) {
77 link.setAttribute('data-id', cleanedHref);
78 }
79 });
80 };
81 if ('loading' === document.readyState) {
82 document.addEventListener('DOMContentLoaded', initializeLinks);
83 } else {
84 initializeLinks();
85 }
86 }
87 }, {
88 key: "addTrackingAttributesToFilterButtons",
89 value: function addTrackingAttributesToFilterButtons() {
90 var body = document.body;
91 if (!body) {
92 return;
93 }
94 var screenPrefix = '';
95 switch (true) {
96 case body.classList.contains('post-type-elementor_library'):
97 screenPrefix = 'elementor_library-library';
98 break;
99 case body.classList.contains('post-type-e-floating-buttons'):
100 screenPrefix = 'e-floating-buttons';
101 break;
102 default:
103 return;
104 }
105 var addDataIdToListTableButtons = function addDataIdToListTableButtons() {
106 var buttonConfigs = [{
107 id: 'post-query-submit',
108 suffix: 'filter'
109 }, {
110 id: 'search-submit',
111 suffix: 'search'
112 }, {
113 id: 'doaction',
114 suffix: 'apply'
115 }, {
116 id: 'doaction2',
117 suffix: 'apply-bottom'
118 }];
119 buttonConfigs.forEach(function (config) {
120 var button = document.getElementById(config.id);
121 if (!button || button.hasAttribute('data-id')) {
122 return;
123 }
124 button.setAttribute('data-id', "".concat(screenPrefix, "-button-").concat(config.suffix));
125 });
126 };
127 if ('loading' === document.readyState) {
128 document.addEventListener('DOMContentLoaded', addDataIdToListTableButtons);
129 } else {
130 addDataIdToListTableButtons();
131 }
132 }
133 }, {
134 key: "isExcludedElement",
135 value: function isExcludedElement(element) {
136 for (var _i = 0, _Object$values = Object.values(EXCLUDED_SELECTORS); _i < _Object$values.length; _i++) {
137 var selector = _Object$values[_i];
138 if (element.closest(selector)) {
139 return true;
140 }
141 }
142 if (element.classList.contains('go-pro')) {
143 return true;
144 }
145 return false;
146 }
147 }, {
148 key: "attachDelegatedHandlers",
149 value: function attachDelegatedHandlers() {
150 var _this2 = this;
151 var FILTER_BUTTON_IDS = ['search-submit', 'post-query-submit'];
152 this.addEventListenerTracked(document, 'click', function (event) {
153 var _event$target;
154 var base = event.target && 1 === event.target.nodeType ? event.target : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.parentElement;
155 if (!base) {
156 return;
157 }
158 var toggle = base.closest('.elementor-role-toggle');
159 if (toggle && !_this2.isExcludedElement(toggle)) {
160 _this2.trackControl(toggle, _wpDashboardTracking.CONTROL_TYPES.TOGGLE);
161 return;
162 }
163 var button = base.closest('button, input[type="submit"], input[type="button"], .button, .e-btn');
164 if (button && !_this2.isExcludedElement(button)) {
165 if (FILTER_BUTTON_IDS.includes(button.id)) {
166 _this2.trackControl(button, _wpDashboardTracking.CONTROL_TYPES.FILTER);
167 return;
168 }
169 _this2.trackControl(button, _wpDashboardTracking.CONTROL_TYPES.BUTTON);
170 return;
171 }
172 var link = base.closest('a');
173 if (link && !_this2.isExcludedElement(link) && !_this2.isNavigationLink(link)) {
174 _this2.trackControl(link, _wpDashboardTracking.CONTROL_TYPES.LINK);
175 }
176 }, {
177 capture: false
178 });
179 this.addEventListenerTracked(document, 'change', function (event) {
180 var _event$target2;
181 var base = event.target && 1 === event.target.nodeType ? event.target : (_event$target2 = event.target) === null || _event$target2 === void 0 ? void 0 : _event$target2.parentElement;
182 if (!base) {
183 return;
184 }
185 var toggle = null;
186 if (_wpDashboardTracking.default.isEditorOneActive()) {
187 toggle = base.closest('.MuiSwitch-switchBase');
188 } else {
189 toggle = base.closest('.components-toggle-control');
190 }
191 if (toggle && !_this2.isExcludedElement(toggle)) {
192 _this2.trackControl(toggle, _wpDashboardTracking.CONTROL_TYPES.TOGGLE);
193 return;
194 }
195 var checkbox = base.closest('input[type="checkbox"]');
196 if (checkbox && !_this2.isExcludedElement(checkbox)) {
197 _this2.trackControl(checkbox, _wpDashboardTracking.CONTROL_TYPES.CHECKBOX);
198 return;
199 }
200 var radio = base.closest('input[type="radio"]');
201 if (radio && !_this2.isExcludedElement(radio)) {
202 _this2.trackControl(radio, _wpDashboardTracking.CONTROL_TYPES.RADIO);
203 return;
204 }
205 var select = base.closest('select');
206 if (select && !_this2.isExcludedElement(select)) {
207 _this2.trackControl(select, _wpDashboardTracking.CONTROL_TYPES.SELECT);
208 }
209 });
210 }
211 }, {
212 key: "isNavigationLink",
213 value: function isNavigationLink(link) {
214 var href = link.getAttribute('href');
215 if (!href) {
216 return false;
217 }
218 if (href.startsWith('#') && href.includes('tab')) {
219 return true;
220 }
221 if (link.classList.contains('nav-tab')) {
222 return true;
223 }
224 var isInNavigation = link.closest('.wp-submenu, #adminmenu, .e-admin-top-bar, #wpadminbar');
225 return !!isInNavigation;
226 }
227 }, {
228 key: "trackControl",
229 value: function trackControl(element, controlType) {
230 var controlIdentifier = this.extractControlIdentifier(element, controlType);
231 if (!controlIdentifier) {
232 return;
233 }
234 _wpDashboardTracking.default.trackActionControl(controlIdentifier, controlType);
235 }
236 }, {
237 key: "extractControlIdentifier",
238 value: function extractControlIdentifier(element, controlType) {
239 if (_wpDashboardTracking.CONTROL_TYPES.RADIO === controlType) {
240 var name = element.getAttribute('name');
241 var value = element.value || element.getAttribute('value');
242 if (name && value) {
243 return "".concat(name, "-").concat(value);
244 }
245 if (name) {
246 return name;
247 }
248 }
249 if (_wpDashboardTracking.CONTROL_TYPES.SELECT === controlType) {
250 var _name = element.getAttribute('name');
251 if (_name) {
252 return _name;
253 }
254 }
255 if (_wpDashboardTracking.CONTROL_TYPES.CHECKBOX === controlType) {
256 var _name2 = element.getAttribute('name');
257 if (_name2) {
258 var checkboxesWithSameName = document.querySelectorAll("input[type=\"checkbox\"][name=\"".concat(CSS.escape(_name2), "\"]"));
259 if (checkboxesWithSameName.length > 1) {
260 var _value = element.value || element.getAttribute('value');
261 if (_value) {
262 return "".concat(_name2, "-").concat(_value);
263 }
264 }
265 return _name2;
266 }
267 }
268 if (_wpDashboardTracking.CONTROL_TYPES.LINK === controlType) {
269 var dataId = element.getAttribute('data-id');
270 if (dataId) {
271 return dataId;
272 }
273 var href = element.getAttribute('href');
274 if (href) {
275 return this.removeNonceFromUrl(href);
276 }
277 }
278 if (_wpDashboardTracking.CONTROL_TYPES.BUTTON === controlType || _wpDashboardTracking.CONTROL_TYPES.TOGGLE === controlType || _wpDashboardTracking.CONTROL_TYPES.FILTER === controlType) {
279 var _dataId = element.getAttribute('data-id');
280 if (_dataId) {
281 return _dataId;
282 }
283 var classIdMatch = this.extractClassId(element);
284 if (classIdMatch) {
285 return classIdMatch;
286 }
287 }
288 return '';
289 }
290 }, {
291 key: "extractClassId",
292 value: function extractClassId(element) {
293 var classes = element.className;
294 if (!classes || 'string' !== typeof classes) {
295 return '';
296 }
297 var classList = classes.split(' ');
298 var _iterator = _createForOfIteratorHelper(classList),
299 _step;
300 try {
301 for (_iterator.s(); !(_step = _iterator.n()).done;) {
302 var cls = _step.value;
303 if (cls.startsWith('e-id-')) {
304 return cls.substring(5);
305 }
306 }
307 } catch (err) {
308 _iterator.e(err);
309 } finally {
310 _iterator.f();
311 }
312 return '';
313 }
314 }, {
315 key: "removeNonceFromUrl",
316 value: function removeNonceFromUrl(url) {
317 try {
318 var urlObj = new URL(url, window.location.origin);
319 urlObj.searchParams.delete('_wpnonce');
320 var postParam = urlObj.searchParams.get('post');
321 if (postParam !== null && /^[0-9]+$/.test(postParam)) {
322 urlObj.searchParams.delete('post');
323 }
324 return urlObj.pathname + urlObj.search + urlObj.hash;
325 } catch (e) {
326 return url;
327 }
328 }
329 }]);
330 }(_baseTracking.default);
331 var _default = exports["default"] = ActionControlTracking;
332
333 /***/ }),
334
335 /***/ "../app/assets/js/event-track/dashboard/base-tracking.js":
336 /*!***************************************************************!*\
337 !*** ../app/assets/js/event-track/dashboard/base-tracking.js ***!
338 \***************************************************************/
339 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
340
341 "use strict";
342
343
344 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
345 Object.defineProperty(exports, "__esModule", ({
346 value: true
347 }));
348 exports["default"] = void 0;
349 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
350 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
351 var BaseTracking = /*#__PURE__*/function () {
352 function BaseTracking() {
353 (0, _classCallCheck2.default)(this, BaseTracking);
354 }
355 return (0, _createClass2.default)(BaseTracking, null, [{
356 key: "ensureOwnArrays",
357 value: function ensureOwnArrays() {
358 if (!Object.prototype.hasOwnProperty.call(this, 'observers')) {
359 this.observers = [];
360 }
361 if (!Object.prototype.hasOwnProperty.call(this, 'eventListeners')) {
362 this.eventListeners = [];
363 }
364 }
365 }, {
366 key: "destroy",
367 value: function destroy() {
368 this.ensureOwnArrays();
369 this.observers.forEach(function (observer) {
370 return observer.disconnect();
371 });
372 this.observers = [];
373 this.eventListeners.forEach(function (_ref) {
374 var target = _ref.target,
375 type = _ref.type,
376 handler = _ref.handler,
377 options = _ref.options;
378 target.removeEventListener(type, handler, options);
379 });
380 this.eventListeners = [];
381 }
382 }, {
383 key: "addObserver",
384 value: function addObserver(target, options, callback) {
385 this.ensureOwnArrays();
386 var observer = new MutationObserver(callback);
387 observer.observe(target, options);
388 this.observers.push(observer);
389 return observer;
390 }
391 }, {
392 key: "addEventListenerTracked",
393 value: function addEventListenerTracked(target, type, handler) {
394 var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
395 this.ensureOwnArrays();
396 target.addEventListener(type, handler, options);
397 this.eventListeners.push({
398 target: target,
399 type: type,
400 handler: handler,
401 options: options
402 });
403 }
404 }]);
405 }();
406 var _default = exports["default"] = BaseTracking;
407
408 /***/ }),
409
410 /***/ "../app/assets/js/event-track/dashboard/menu-promotion.js":
411 /*!****************************************************************!*\
412 !*** ../app/assets/js/event-track/dashboard/menu-promotion.js ***!
413 \****************************************************************/
414 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
415
416 "use strict";
417
418
419 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
420 Object.defineProperty(exports, "__esModule", ({
421 value: true
422 }));
423 exports["default"] = void 0;
424 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
425 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
426 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
427 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
428 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
429 var _wpDashboardTracking = _interopRequireDefault(__webpack_require__(/*! ../wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
430 var _baseTracking = _interopRequireDefault(__webpack_require__(/*! ./base-tracking */ "../app/assets/js/event-track/dashboard/base-tracking.js"));
431 function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
432 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
433 var PROMO_MENU_ITEMS = {
434 go_elementor_pro: 'Upgrade'
435 };
436 var MenuPromotionTracking = /*#__PURE__*/function (_BaseTracking) {
437 function MenuPromotionTracking() {
438 (0, _classCallCheck2.default)(this, MenuPromotionTracking);
439 return _callSuper(this, MenuPromotionTracking, arguments);
440 }
441 (0, _inherits2.default)(MenuPromotionTracking, _BaseTracking);
442 return (0, _createClass2.default)(MenuPromotionTracking, null, [{
443 key: "init",
444 value: function init() {
445 this.attachDelegatedTracking();
446 }
447 }, {
448 key: "attachDelegatedTracking",
449 value: function attachDelegatedTracking() {
450 var _this = this;
451 this.addEventListenerTracked(document, 'click', function (event) {
452 var target = event.target;
453 if (!target) {
454 return;
455 }
456 var link = target.closest('a');
457 if (!link) {
458 return;
459 }
460 var href = link.getAttribute('href');
461 if (!href) {
462 return;
463 }
464 var menuItemKey = _this.extractPromoMenuKey(href);
465 if (!menuItemKey) {
466 return;
467 }
468 _this.handleMenuPromoClick(link, menuItemKey);
469 }, {
470 capture: true
471 });
472 }
473 }, {
474 key: "extractPromoMenuKey",
475 value: function extractPromoMenuKey(href) {
476 for (var _i = 0, _Object$keys = Object.keys(PROMO_MENU_ITEMS); _i < _Object$keys.length; _i++) {
477 var menuItemKey = _Object$keys[_i];
478 if (href.includes("page=".concat(menuItemKey))) {
479 return menuItemKey;
480 }
481 }
482 return null;
483 }
484 }, {
485 key: "handleMenuPromoClick",
486 value: function handleMenuPromoClick(menuItem, menuItemKey) {
487 var destination = menuItem.getAttribute('href');
488 var promoName = PROMO_MENU_ITEMS[menuItemKey];
489 var path = menuItemKey.replace('elementor_', '').replace(/_/g, '/');
490 _wpDashboardTracking.default.trackPromoClicked(promoName, destination, path);
491 }
492 }]);
493 }(_baseTracking.default);
494 var _default = exports["default"] = MenuPromotionTracking;
495
496 /***/ }),
497
498 /***/ "../app/assets/js/event-track/dashboard/navigation.js":
499 /*!************************************************************!*\
500 !*** ../app/assets/js/event-track/dashboard/navigation.js ***!
501 \************************************************************/
502 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
503
504 "use strict";
505
506
507 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
508 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
509 Object.defineProperty(exports, "__esModule", ({
510 value: true
511 }));
512 exports["default"] = void 0;
513 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
514 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
515 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
516 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
517 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
518 var _wpDashboardTracking = _interopRequireWildcard(__webpack_require__(/*! ../wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
519 var _baseTracking = _interopRequireDefault(__webpack_require__(/*! ./base-tracking */ "../app/assets/js/event-track/dashboard/base-tracking.js"));
520 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
521 function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
522 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
523 var ELEMENTOR_MENU_SELECTORS = {
524 ELEMENTOR_TOP_LEVEL: 'li#toplevel_page_elementor',
525 TEMPLATES_TOP_LEVEL: 'li#menu-posts-elementor_library',
526 ELEMENTOR_HOME_TOP_LEVEL: 'li#toplevel_page_elementor-home',
527 ADMIN_MENU: '#adminmenu',
528 TOP_LEVEL_LINK: '.wp-menu-name',
529 SUBMENU_CONTAINER: '.wp-submenu',
530 SUBMENU_ITEM: '.wp-submenu li a',
531 SUBMENU_ITEM_TOP_LEVEL: '.wp-has-submenu',
532 SIDEBAR_NAVIGATION: '#editor-one-sidebar-navigation'
533 };
534 var NavigationTracking = /*#__PURE__*/function (_BaseTracking) {
535 function NavigationTracking() {
536 (0, _classCallCheck2.default)(this, NavigationTracking);
537 return _callSuper(this, NavigationTracking, arguments);
538 }
539 (0, _inherits2.default)(NavigationTracking, _BaseTracking);
540 return (0, _createClass2.default)(NavigationTracking, null, [{
541 key: "init",
542 value: function init() {
543 if (_wpDashboardTracking.default.isEditorOneActive()) {
544 this.attachSidebarNavigationTracking();
545 this.attachElementorHomeMenuTracking();
546 } else {
547 this.attachElementorMenuTracking();
548 this.attachTemplatesMenuTracking();
549 }
550 }
551 }, {
552 key: "attachTemplatesMenuTracking",
553 value: function attachTemplatesMenuTracking() {
554 var templatesMenu = document.querySelector(ELEMENTOR_MENU_SELECTORS.TEMPLATES_TOP_LEVEL);
555 if (!templatesMenu) {
556 return;
557 }
558 this.attachMenuTracking(templatesMenu, 'Templates');
559 }
560 }, {
561 key: "attachElementorHomeMenuTracking",
562 value: function attachElementorHomeMenuTracking() {
563 var elementorHomeMenu = document.querySelector(ELEMENTOR_MENU_SELECTORS.ELEMENTOR_HOME_TOP_LEVEL);
564 if (!elementorHomeMenu) {
565 return;
566 }
567 this.attachMenuTracking(elementorHomeMenu, 'Elementor');
568 }
569 }, {
570 key: "attachElementorMenuTracking",
571 value: function attachElementorMenuTracking() {
572 var elementorMenu = document.querySelector(ELEMENTOR_MENU_SELECTORS.ELEMENTOR_TOP_LEVEL);
573 if (!elementorMenu) {
574 return;
575 }
576 this.attachMenuTracking(elementorMenu, 'Elementor');
577 }
578 }, {
579 key: "attachSidebarNavigationTracking",
580 value: function attachSidebarNavigationTracking() {
581 var sidebar = document.querySelector(ELEMENTOR_MENU_SELECTORS.SIDEBAR_NAVIGATION);
582 if (sidebar) {
583 this.attachSidebarClickListener(sidebar);
584 }
585 }
586 }, {
587 key: "attachSidebarClickListener",
588 value: function attachSidebarClickListener(sidebar) {
589 var _this = this;
590 this.addEventListenerTracked(sidebar, 'click', function (event) {
591 _this.handleSidebarClick(event);
592 }, {
593 capture: true
594 });
595 }
596 }, {
597 key: "attachMenuTracking",
598 value: function attachMenuTracking(menuElement, menuName) {
599 var _this2 = this;
600 this.addEventListenerTracked(menuElement, 'click', function (event) {
601 _this2.handleMenuClick(event, menuName);
602 });
603 }
604 }, {
605 key: "handleMenuClick",
606 value: function handleMenuClick(event, menuName) {
607 var link = event.target.closest('a');
608 if (!link) {
609 return;
610 }
611 var isTopLevel = link.classList.contains('menu-top');
612 var itemId = this.extractItemId(link);
613 var area = this.determineNavArea(link);
614 _wpDashboardTracking.default.trackNavClicked(itemId, isTopLevel ? null : menuName, area);
615 }
616 }, {
617 key: "handleSidebarClick",
618 value: function handleSidebarClick(event) {
619 var clickedElement = event.target.closest('a, button, [role="button"]');
620 if (!clickedElement) {
621 return;
622 }
623 var itemId = this.extractSidebarItemId(clickedElement);
624 _wpDashboardTracking.default.trackNavClicked(itemId, null, _wpDashboardTracking.NAV_AREAS.SIDEBAR_MENU);
625 }
626 }, {
627 key: "extractSidebarItemId",
628 value: function extractSidebarItemId(element) {
629 var paragraph = element.querySelector('p');
630 if (paragraph) {
631 return paragraph.textContent.trim();
632 }
633 var textContent = element.textContent.trim();
634 if (textContent) {
635 return textContent;
636 }
637 return 'unknown';
638 }
639 }, {
640 key: "extractPageFromUrl",
641 value: function extractPageFromUrl(href) {
642 var urlParams = new URLSearchParams(href.split('?')[1] || '');
643 var page = urlParams.get('page');
644 if (page) {
645 return page;
646 }
647 var postType = urlParams.get('post_type');
648 if (postType) {
649 return postType;
650 }
651 return 'unknown';
652 }
653 }, {
654 key: "extractItemId",
655 value: function extractItemId(link) {
656 var textContent = link.textContent.trim();
657 if (textContent) {
658 return textContent;
659 }
660 var href = link.getAttribute('href');
661 if (href) {
662 return this.extractPageFromUrl(href);
663 }
664 var linkId = link.getAttribute('id');
665 if (linkId) {
666 return linkId;
667 }
668 return 'unknown';
669 }
670 }, {
671 key: "determineNavArea",
672 value: function determineNavArea(link) {
673 var parentMenu = link.closest('li.menu-top');
674 if (parentMenu) {
675 var isSubmenuItem = link.closest(ELEMENTOR_MENU_SELECTORS.SUBMENU_CONTAINER);
676 if (isSubmenuItem) {
677 var submenuElement = link.closest(ELEMENTOR_MENU_SELECTORS.SUBMENU_ITEM_TOP_LEVEL);
678 if (submenuElement.classList.contains('wp-not-current-submenu')) {
679 return _wpDashboardTracking.NAV_AREAS.HOVER_MENU;
680 }
681 return _wpDashboardTracking.NAV_AREAS.SUBMENU;
682 }
683 return _wpDashboardTracking.NAV_AREAS.LEFT_MENU;
684 }
685 return _wpDashboardTracking.NAV_AREAS.LEFT_MENU;
686 }
687 }]);
688 }(_baseTracking.default);
689 var _default = exports["default"] = NavigationTracking;
690
691 /***/ }),
692
693 /***/ "../app/assets/js/event-track/dashboard/plugin-actions.js":
694 /*!****************************************************************!*\
695 !*** ../app/assets/js/event-track/dashboard/plugin-actions.js ***!
696 \****************************************************************/
697 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
698
699 "use strict";
700
701
702 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
703 Object.defineProperty(exports, "__esModule", ({
704 value: true
705 }));
706 exports["default"] = void 0;
707 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
708 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
709 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
710 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
711 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
712 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
713 var _wpDashboardTracking = _interopRequireDefault(__webpack_require__(/*! ../wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
714 var _baseTracking = _interopRequireDefault(__webpack_require__(/*! ./base-tracking */ "../app/assets/js/event-track/dashboard/base-tracking.js"));
715 function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
716 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
717 var PLUGIN_TYPE = {
718 ELEMENTOR: 'core',
719 ELEMENTOR_PRO: 'pro'
720 };
721 var PluginActions = /*#__PURE__*/function (_BaseTracking) {
722 function PluginActions() {
723 (0, _classCallCheck2.default)(this, PluginActions);
724 return _callSuper(this, PluginActions, arguments);
725 }
726 (0, _inherits2.default)(PluginActions, _BaseTracking);
727 return (0, _createClass2.default)(PluginActions, null, [{
728 key: "init",
729 value: function init() {
730 this.attachCoreDeactivationTracking();
731 this.attachProDeactivationTracking();
732 this.attachProDeletionTracking();
733 }
734 }, {
735 key: "attachCoreDeactivationTracking",
736 value: function attachCoreDeactivationTracking() {
737 var _this = this;
738 var dialogForm = document.querySelector('#elementor-deactivate-feedback-dialog-form');
739 if (!dialogForm) {
740 return;
741 }
742 this.addEventListenerTracked(dialogForm, 'change', function (event) {
743 var target = event.target;
744 if (target.classList.contains('elementor-deactivate-feedback-dialog-input')) {
745 _this.selectedReason = target.value;
746 }
747 });
748 this.observeModalButtons();
749 }
750 }, {
751 key: "attachProDeactivationTracking",
752 value: function attachProDeactivationTracking() {
753 var _this2 = this;
754 var pluginsTable = document.querySelector('.plugins');
755 if (!pluginsTable) {
756 return;
757 }
758 this.addEventListenerTracked(pluginsTable, 'click', function (event) {
759 var link = event.target.closest('a');
760 if (link && 'deactivate-elementor-pro' === link.id) {
761 _this2.trackProDeactivation();
762 }
763 }, {
764 capture: true
765 });
766 }
767 }, {
768 key: "observeModalButtons",
769 value: function observeModalButtons() {
770 var _this3 = this;
771 var checkAndAttachDelegation = function checkAndAttachDelegation() {
772 var modal = document.querySelector('#elementor-deactivate-feedback-modal');
773 if (!modal) {
774 return false;
775 }
776 _this3.addEventListenerTracked(modal, 'click', function (event) {
777 var submitButton = event.target.closest('.dialog-submit');
778 var skipButton = event.target.closest('.dialog-skip');
779 if (submitButton) {
780 _this3.trackCoreDeactivation('submit&deactivate');
781 } else if (skipButton) {
782 _this3.trackCoreDeactivation('skip&deactivate');
783 }
784 }, {
785 capture: true
786 });
787 return true;
788 };
789 if (checkAndAttachDelegation()) {
790 return;
791 }
792 this.addObserver(document.body, {
793 childList: true,
794 subtree: true
795 }, function (mutations, observer) {
796 if (checkAndAttachDelegation()) {
797 observer.disconnect();
798 }
799 });
800 }
801 }, {
802 key: "getUserInput",
803 value: function getUserInput() {
804 var reasonsWithInput = ['found_a_better_plugin', 'other'];
805 if (!this.selectedReason || !reasonsWithInput.includes(this.selectedReason)) {
806 return null;
807 }
808 var inputField = document.querySelector("input[name=\"reason_".concat(this.selectedReason, "\"]"));
809 if (inputField && inputField.value) {
810 return inputField.value;
811 }
812 return null;
813 }
814 }, {
815 key: "trackCoreDeactivation",
816 value: function trackCoreDeactivation(action) {
817 var properties = {
818 deactivate_form_submit: action,
819 deactivate_plugin_type: PLUGIN_TYPE.ELEMENTOR
820 };
821 if (this.selectedReason) {
822 properties.deactivate_feedback_reason = this.selectedReason;
823 }
824 var userInput = this.getUserInput();
825 if (userInput) {
826 properties.deactivate_feedback_reason += "/".concat(userInput);
827 }
828 _wpDashboardTracking.default.dispatchEvent('wpdash_deactivate_plugin', properties, {
829 send_immediately: true
830 });
831 }
832 }, {
833 key: "trackProDeactivation",
834 value: function trackProDeactivation() {
835 this.trackProAction('deactivate');
836 }
837 }, {
838 key: "attachProDeletionTracking",
839 value: function attachProDeletionTracking() {
840 var _this4 = this;
841 if ('undefined' === typeof jQuery) {
842 return;
843 }
844 jQuery(document).on('wp-plugin-deleting', function (event, args) {
845 if ('elementor-pro' === (args === null || args === void 0 ? void 0 : args.slug)) {
846 _this4.trackProAction('delete');
847 }
848 });
849 }
850 }, {
851 key: "destroy",
852 value: function destroy() {
853 if ('undefined' !== typeof jQuery) {
854 jQuery(document).off('wp-plugin-deleting');
855 }
856 _baseTracking.default.destroy.call(this);
857 }
858 }, {
859 key: "trackProAction",
860 value: function trackProAction(action) {
861 var eventMap = {
862 deactivate: {
863 eventName: 'wpdash_deactivate_plugin',
864 propertyKey: 'deactivate_plugin_type'
865 },
866 delete: {
867 eventName: 'wpdash_delete_plugin',
868 propertyKey: 'plugin_delete'
869 }
870 };
871 var config = eventMap[action];
872 if (!config) {
873 return;
874 }
875 var properties = (0, _defineProperty2.default)({}, config.propertyKey, PLUGIN_TYPE.ELEMENTOR_PRO);
876 _wpDashboardTracking.default.dispatchEvent(config.eventName, properties, {
877 send_immediately: true
878 });
879 }
880 }]);
881 }(_baseTracking.default);
882 (0, _defineProperty2.default)(PluginActions, "selectedReason", null);
883 var _default = exports["default"] = PluginActions;
884
885 /***/ }),
886
887 /***/ "../app/assets/js/event-track/dashboard/promotion.js":
888 /*!***********************************************************!*\
889 !*** ../app/assets/js/event-track/dashboard/promotion.js ***!
890 \***********************************************************/
891 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
892
893 "use strict";
894
895
896 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
897 Object.defineProperty(exports, "__esModule", ({
898 value: true
899 }));
900 exports["default"] = void 0;
901 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
902 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
903 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
904 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
905 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
906 var _wpDashboardTracking = _interopRequireDefault(__webpack_require__(/*! ../wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
907 var _baseTracking = _interopRequireDefault(__webpack_require__(/*! ./base-tracking */ "../app/assets/js/event-track/dashboard/base-tracking.js"));
908 function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
909 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
910 var PROMO_SELECTORS = {
911 PROMO_PAGE: '.e-feature-promotion, .elementor-settings-form-page, #elementor-element-manager-wrap',
912 PROMO_BLANK_STATE: '.elementor-blank_state',
913 CTA_BUTTON: '.go-pro',
914 TITLE: 'h3'
915 };
916 var PromotionTracking = /*#__PURE__*/function (_BaseTracking) {
917 function PromotionTracking() {
918 (0, _classCallCheck2.default)(this, PromotionTracking);
919 return _callSuper(this, PromotionTracking, arguments);
920 }
921 (0, _inherits2.default)(PromotionTracking, _BaseTracking);
922 return (0, _createClass2.default)(PromotionTracking, null, [{
923 key: "init",
924 value: function init() {
925 this.attachDelegatedTracking();
926 }
927 }, {
928 key: "attachDelegatedTracking",
929 value: function attachDelegatedTracking() {
930 var _this = this;
931 this.addEventListenerTracked(document, 'click', function (event) {
932 var target = event.target;
933 if (!target) {
934 return;
935 }
936 var button = target.closest("a".concat(PROMO_SELECTORS.CTA_BUTTON));
937 if (!button) {
938 return;
939 }
940 var promoPage = button.closest("".concat(PROMO_SELECTORS.PROMO_PAGE, ", ").concat(PROMO_SELECTORS.PROMO_BLANK_STATE));
941 if (!promoPage) {
942 return;
943 }
944 _this.handlePromoClick(button, promoPage);
945 }, {
946 capture: true
947 });
948 }
949 }, {
950 key: "handlePromoClick",
951 value: function handlePromoClick(button, promoPage) {
952 var promoTitle = this.extractPromoTitle(promoPage, button);
953 var destination = button.getAttribute('href');
954 var path = this.extractPromoPath();
955 _wpDashboardTracking.default.trackPromoClicked(promoTitle, destination, path);
956 }
957 }, {
958 key: "extractPromoTitle",
959 value: function extractPromoTitle(promoPage, button) {
960 var titleElement = promoPage.querySelector(PROMO_SELECTORS.TITLE);
961 return titleElement ? titleElement.textContent.trim() : button.textContent.trim();
962 }
963 }, {
964 key: "extractPromoPath",
965 value: function extractPromoPath() {
966 var urlParams = new URLSearchParams(window.location.search);
967 var page = urlParams.get('page');
968 if (!page) {
969 return 'elementor';
970 }
971 return page.replace('elementor_', '').replace(/_/g, '/');
972 }
973 }]);
974 }(_baseTracking.default);
975 var _default = exports["default"] = PromotionTracking;
976
977 /***/ }),
978
979 /***/ "../app/assets/js/event-track/dashboard/screen-view.js":
980 /*!*************************************************************!*\
981 !*** ../app/assets/js/event-track/dashboard/screen-view.js ***!
982 \*************************************************************/
983 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
984
985 "use strict";
986
987
988 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
989 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
990 Object.defineProperty(exports, "__esModule", ({
991 value: true
992 }));
993 exports["default"] = void 0;
994 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
995 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
996 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
997 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
998 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/get */ "../node_modules/@babel/runtime/helpers/get.js"));
999 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
1000 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1001 var _wpDashboardTracking = _interopRequireWildcard(__webpack_require__(/*! ../wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
1002 var _utils = __webpack_require__(/*! ./utils */ "../app/assets/js/event-track/dashboard/utils.js");
1003 var _baseTracking = _interopRequireDefault(__webpack_require__(/*! ./base-tracking */ "../app/assets/js/event-track/dashboard/base-tracking.js"));
1004 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
1005 function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
1006 function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
1007 function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
1008 function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
1009 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
1010 function _superPropGet(t, o, e, r) { var p = (0, _get2.default)((0, _getPrototypeOf2.default)(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
1011 var SCREEN_SELECTORS = {
1012 NAV_TAB_WRAPPER: '.nav-tab-wrapper',
1013 NAV_TAB: '.nav-tab',
1014 NAV_TAB_ACTIVE: '.nav-tab-active',
1015 SETTINGS_FORM_PAGE: '.elementor-settings-form-page',
1016 SETTINGS_FORM_PAGE_ACTIVE: '.elementor-settings-form-page.elementor-active',
1017 FLOATING_ELEMENTS_MODAL: '#elementor-new-floating-elements-modal',
1018 TEMPLATE_DIALOG_MODAL: '#elementor-new-template-dialog-content'
1019 };
1020 var TRACKED_MODALS = [SCREEN_SELECTORS.FLOATING_ELEMENTS_MODAL, SCREEN_SELECTORS.TEMPLATE_DIALOG_MODAL];
1021 var ScreenViewTracking = /*#__PURE__*/function (_BaseTracking) {
1022 function ScreenViewTracking() {
1023 (0, _classCallCheck2.default)(this, ScreenViewTracking);
1024 return _callSuper(this, ScreenViewTracking, arguments);
1025 }
1026 (0, _inherits2.default)(ScreenViewTracking, _BaseTracking);
1027 return (0, _createClass2.default)(ScreenViewTracking, null, [{
1028 key: "init",
1029 value: function init() {
1030 if (!_utils.DashboardUtils.isElementorPage()) {
1031 return;
1032 }
1033 this.attachTabChangeTracking();
1034 }
1035 }, {
1036 key: "destroy",
1037 value: function destroy() {
1038 _superPropGet(ScreenViewTracking, "destroy", this, 2)([]);
1039 this.trackedScreens.clear();
1040 }
1041 }, {
1042 key: "getScreenData",
1043 value: function getScreenData() {
1044 var urlParams = new URLSearchParams(window.location.search);
1045 var page = urlParams.get('page');
1046 var postType = urlParams.get('post_type');
1047 var hash = window.location.hash;
1048 var screenId = '';
1049 var screenType = '';
1050 if (page) {
1051 screenId = page;
1052 } else if (postType) {
1053 screenId = postType;
1054 } else {
1055 screenId = this.getScreenIdFromBody();
1056 }
1057 if (this.isElementorAppPage()) {
1058 var appScreenData = this.getAppScreenData(hash);
1059 if (appScreenData) {
1060 return appScreenData;
1061 }
1062 }
1063 var hasNavTabs = document.querySelector(SCREEN_SELECTORS.NAV_TAB_WRAPPER);
1064 var hasSettingsTabs = document.querySelectorAll(SCREEN_SELECTORS.SETTINGS_FORM_PAGE).length > 1;
1065 if (hasNavTabs || hasSettingsTabs || hash && !this.isElementorAppPage()) {
1066 screenType = _wpDashboardTracking.SCREEN_TYPES.TAB;
1067 if (hash) {
1068 var tabId = hash.replace(/^#(tab-)?/, '');
1069 screenId = "".concat(screenId, "-").concat(tabId);
1070 } else if (hasNavTabs) {
1071 var activeTab = document.querySelector(SCREEN_SELECTORS.NAV_TAB_ACTIVE);
1072 if (activeTab) {
1073 var tabText = activeTab.textContent.trim();
1074 var tabHref = activeTab.getAttribute('href');
1075 if (tabText) {
1076 screenId = "".concat(screenId, "-").concat(this.sanitizeScreenId(tabText));
1077 } else if (tabHref && tabHref.includes('#')) {
1078 var _tabId = tabHref.split('#')[1];
1079 screenId = "".concat(screenId, "-").concat(_tabId);
1080 }
1081 }
1082 } else if (hasSettingsTabs) {
1083 var activeSettingsTab = document.querySelector(SCREEN_SELECTORS.SETTINGS_FORM_PAGE_ACTIVE);
1084 if (activeSettingsTab) {
1085 var _tabId2 = activeSettingsTab.id;
1086 if (_tabId2) {
1087 screenId = "".concat(screenId, "-").concat(_tabId2);
1088 }
1089 }
1090 }
1091 }
1092 return {
1093 screenId: screenId,
1094 screenType: screenType
1095 };
1096 }
1097 }, {
1098 key: "isElementorAppPage",
1099 value: function isElementorAppPage() {
1100 var urlParams = new URLSearchParams(window.location.search);
1101 return 'elementor-app' === urlParams.get('page');
1102 }
1103 }, {
1104 key: "getAppScreenData",
1105 value: function getAppScreenData(hash) {
1106 if (!hash) {
1107 return null;
1108 }
1109 var cleanHash = hash.replace(/^#/, '');
1110 if (!cleanHash.startsWith('/')) {
1111 return null;
1112 }
1113 var pathParts = cleanHash.split('/').filter(Boolean);
1114 if (0 === pathParts.length) {
1115 return null;
1116 }
1117 var screenId = pathParts.join('/');
1118 var screenType = _wpDashboardTracking.SCREEN_TYPES.APP_SCREEN;
1119 return {
1120 screenId: screenId,
1121 screenType: screenType
1122 };
1123 }
1124 }, {
1125 key: "getScreenIdFromBody",
1126 value: function getScreenIdFromBody() {
1127 var body = document.body;
1128 var bodyClasses = body.className.split(' ');
1129 var _iterator = _createForOfIteratorHelper(bodyClasses),
1130 _step;
1131 try {
1132 for (_iterator.s(); !(_step = _iterator.n()).done;) {
1133 var cls = _step.value;
1134 if (cls.startsWith('elementor') && (cls.includes('page') || cls.includes('post-type'))) {
1135 return cls;
1136 }
1137 }
1138 } catch (err) {
1139 _iterator.e(err);
1140 } finally {
1141 _iterator.f();
1142 }
1143 return 'elementor-unknown';
1144 }
1145 }, {
1146 key: "sanitizeScreenId",
1147 value: function sanitizeScreenId(text) {
1148 return text.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
1149 }
1150 }, {
1151 key: "attachTabChangeTracking",
1152 value: function attachTabChangeTracking() {
1153 this.attachNavTabTracking();
1154 this.attachHashChangeTracking();
1155 this.attachSettingsTabTracking();
1156 this.attachModalTracking();
1157 }
1158 }, {
1159 key: "attachNavTabTracking",
1160 value: function attachNavTabTracking() {
1161 var _this = this;
1162 var wrapper = document.querySelector(SCREEN_SELECTORS.NAV_TAB_WRAPPER);
1163 if (!wrapper) {
1164 return;
1165 }
1166 this.addEventListenerTracked(wrapper, 'click', function (event) {
1167 var navTab = event.target.closest(SCREEN_SELECTORS.NAV_TAB);
1168 if (navTab && !navTab.classList.contains('nav-tab-active')) {
1169 var screenData = _this.getScreenData();
1170 if (screenData) {
1171 _this.trackScreen(screenData.screenId, screenData.screenType);
1172 }
1173 }
1174 });
1175 }
1176 }, {
1177 key: "attachHashChangeTracking",
1178 value: function attachHashChangeTracking() {
1179 var _this2 = this;
1180 this.addEventListenerTracked(window, 'hashchange', function () {
1181 var screenData = _this2.getScreenData();
1182 if (screenData) {
1183 _this2.trackScreen(screenData.screenId, screenData.screenType);
1184 }
1185 });
1186 }
1187 }, {
1188 key: "attachSettingsTabTracking",
1189 value: function attachSettingsTabTracking() {
1190 var _this3 = this;
1191 var settingsPages = document.querySelectorAll(SCREEN_SELECTORS.SETTINGS_FORM_PAGE);
1192 if (0 === settingsPages.length) {
1193 return;
1194 }
1195 settingsPages.forEach(function (page) {
1196 _this3.addObserver(page, {
1197 attributes: true,
1198 attributeFilter: ['class']
1199 }, function () {
1200 var screenData = _this3.getScreenData();
1201 if (screenData) {
1202 _this3.trackScreen(screenData.screenId, screenData.screenType);
1203 }
1204 });
1205 });
1206 }
1207 }, {
1208 key: "attachModalTracking",
1209 value: function attachModalTracking() {
1210 var _this4 = this;
1211 this.addObserver(document.body, {
1212 childList: true,
1213 subtree: true
1214 }, function (mutations) {
1215 var _iterator2 = _createForOfIteratorHelper(mutations),
1216 _step2;
1217 try {
1218 for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1219 var mutation = _step2.value;
1220 if ('childList' === mutation.type) {
1221 TRACKED_MODALS.forEach(function (modalSelector) {
1222 var modal = document.querySelector(modalSelector);
1223 if (modal && _this4.isModalVisible(modal)) {
1224 var modalId = modalSelector.replace('#', '');
1225 _this4.trackScreen(modalId, _wpDashboardTracking.SCREEN_TYPES.POPUP);
1226 }
1227 });
1228 }
1229 }
1230 } catch (err) {
1231 _iterator2.e(err);
1232 } finally {
1233 _iterator2.f();
1234 }
1235 });
1236 }
1237 }, {
1238 key: "isModalVisible",
1239 value: function isModalVisible(element) {
1240 if (!element) {
1241 return false;
1242 }
1243 var style = window.getComputedStyle(element);
1244 return 'none' !== style.display && 0 !== parseFloat(style.opacity);
1245 }
1246 }, {
1247 key: "trackScreen",
1248 value: function trackScreen(screenId) {
1249 var screenType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _wpDashboardTracking.SCREEN_TYPES.TOP_LEVEL_PAGE;
1250 var trackingKey = "".concat(screenId, "-").concat(screenType);
1251 if (this.trackedScreens.has(trackingKey)) {
1252 return;
1253 }
1254 this.trackedScreens.add(trackingKey);
1255 _wpDashboardTracking.default.trackScreenViewed(screenId, screenType);
1256 }
1257 }]);
1258 }(_baseTracking.default);
1259 (0, _defineProperty2.default)(ScreenViewTracking, "trackedScreens", new Set());
1260 var _default = exports["default"] = ScreenViewTracking;
1261
1262 /***/ }),
1263
1264 /***/ "../app/assets/js/event-track/dashboard/top-bar.js":
1265 /*!*********************************************************!*\
1266 !*** ../app/assets/js/event-track/dashboard/top-bar.js ***!
1267 \*********************************************************/
1268 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1269
1270 "use strict";
1271
1272
1273 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1274 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1275 Object.defineProperty(exports, "__esModule", ({
1276 value: true
1277 }));
1278 exports["default"] = void 0;
1279 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
1280 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
1281 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
1282 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
1283 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
1284 var _wpDashboardTracking = _interopRequireWildcard(__webpack_require__(/*! ../wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
1285 var _baseTracking = _interopRequireDefault(__webpack_require__(/*! ./base-tracking */ "../app/assets/js/event-track/dashboard/base-tracking.js"));
1286 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
1287 function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
1288 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
1289 var TOP_BAR_SELECTORS = {
1290 TOP_BAR_ROOT: '.e-admin-top-bar',
1291 BAR_BUTTON: '.e-admin-top-bar__bar-button',
1292 BUTTON_TITLE: '.e-admin-top-bar__bar-button-title',
1293 MAIN_AREA: '.e-admin-top-bar__main-area',
1294 SECONDARY_AREA: '.e-admin-top-bar__secondary-area'
1295 };
1296 var TopBarTracking = /*#__PURE__*/function (_BaseTracking) {
1297 function TopBarTracking() {
1298 (0, _classCallCheck2.default)(this, TopBarTracking);
1299 return _callSuper(this, TopBarTracking, arguments);
1300 }
1301 (0, _inherits2.default)(TopBarTracking, _BaseTracking);
1302 return (0, _createClass2.default)(TopBarTracking, null, [{
1303 key: "init",
1304 value: function init() {
1305 this.waitForTopBar();
1306 }
1307 }, {
1308 key: "waitForTopBar",
1309 value: function waitForTopBar() {
1310 var _this = this;
1311 var topBar = document.querySelector(TOP_BAR_SELECTORS.TOP_BAR_ROOT);
1312 if (topBar) {
1313 this.attachTopBarTracking(topBar);
1314 return;
1315 }
1316 var observer = this.addObserver(document.body, {
1317 childList: true,
1318 subtree: true
1319 }, function () {
1320 var foundTopBar = document.querySelector(TOP_BAR_SELECTORS.TOP_BAR_ROOT);
1321 if (foundTopBar) {
1322 _this.attachTopBarTracking(foundTopBar);
1323 observer.disconnect();
1324 clearTimeout(timeoutId);
1325 }
1326 });
1327 var timeoutId = setTimeout(function () {
1328 observer.disconnect();
1329 }, 10000);
1330 }
1331 }, {
1332 key: "attachTopBarTracking",
1333 value: function attachTopBarTracking(topBar) {
1334 var _this2 = this;
1335 var buttons = topBar.querySelectorAll(TOP_BAR_SELECTORS.BAR_BUTTON);
1336 buttons.forEach(function (button) {
1337 _this2.addEventListenerTracked(button, 'click', function (event) {
1338 _this2.handleTopBarClick(event);
1339 });
1340 });
1341 this.observeTopBarChanges(topBar);
1342 }
1343 }, {
1344 key: "observeTopBarChanges",
1345 value: function observeTopBarChanges(topBar) {
1346 var _this3 = this;
1347 this.addObserver(topBar, {
1348 childList: true,
1349 subtree: true
1350 }, function (mutations) {
1351 mutations.forEach(function (mutation) {
1352 if ('childList' === mutation.type) {
1353 mutation.addedNodes.forEach(function (node) {
1354 if (1 === node.nodeType) {
1355 if (node.matches && node.matches(TOP_BAR_SELECTORS.BAR_BUTTON)) {
1356 _this3.addEventListenerTracked(node, 'click', function (event) {
1357 _this3.handleTopBarClick(event);
1358 });
1359 } else {
1360 var buttons = node.querySelectorAll ? node.querySelectorAll(TOP_BAR_SELECTORS.BAR_BUTTON) : [];
1361 buttons.forEach(function (button) {
1362 _this3.addEventListenerTracked(button, 'click', function (event) {
1363 _this3.handleTopBarClick(event);
1364 });
1365 });
1366 }
1367 }
1368 });
1369 }
1370 });
1371 });
1372 }
1373 }, {
1374 key: "handleTopBarClick",
1375 value: function handleTopBarClick(event) {
1376 var button = event.currentTarget;
1377 var itemId = this.extractItemId(button);
1378 _wpDashboardTracking.default.trackNavClicked(itemId, null, _wpDashboardTracking.NAV_AREAS.TOP_BAR);
1379 }
1380 }, {
1381 key: "extractItemId",
1382 value: function extractItemId(button) {
1383 var titleElement = button.querySelector(TOP_BAR_SELECTORS.BUTTON_TITLE);
1384 if (titleElement && titleElement.textContent.trim()) {
1385 return titleElement.textContent.trim();
1386 }
1387 var textContent = button.textContent.trim();
1388 if (textContent) {
1389 return textContent;
1390 }
1391 var href = button.getAttribute('href');
1392 if (href) {
1393 var urlParams = new URLSearchParams(href.split('?')[1] || '');
1394 var page = urlParams.get('page');
1395 if (page) {
1396 return page;
1397 }
1398 if (href.includes('/wp-admin/')) {
1399 var pathParts = href.split('/wp-admin/')[1];
1400 if (pathParts) {
1401 return pathParts.split('?')[0];
1402 }
1403 }
1404 try {
1405 var url = new URL(href, window.location.origin);
1406 return url.pathname.split('/').filter(Boolean).pop() || url.hostname;
1407 } catch (error) {
1408 return href;
1409 }
1410 }
1411 var dataInfo = button.getAttribute('data-info');
1412 if (dataInfo) {
1413 return dataInfo;
1414 }
1415 var classes = button.className.split(' ').filter(function (cls) {
1416 return cls && 'e-admin-top-bar__bar-button' !== cls;
1417 });
1418 if (classes.length > 0) {
1419 return classes.join('-');
1420 }
1421 return 'unknown-top-bar-button';
1422 }
1423 }]);
1424 }(_baseTracking.default);
1425 var _default = exports["default"] = TopBarTracking;
1426
1427 /***/ }),
1428
1429 /***/ "../app/assets/js/event-track/dashboard/utils.js":
1430 /*!*******************************************************!*\
1431 !*** ../app/assets/js/event-track/dashboard/utils.js ***!
1432 \*******************************************************/
1433 /***/ ((__unused_webpack_module, exports) => {
1434
1435 "use strict";
1436
1437
1438 Object.defineProperty(exports, "__esModule", ({
1439 value: true
1440 }));
1441 exports.DashboardUtils = void 0;
1442 var DashboardUtils = exports.DashboardUtils = {
1443 isElementorPage: function isElementorPage() {
1444 var urlParams = new URLSearchParams(window.location.search);
1445 var page = urlParams.get('page');
1446 if (page && (page.startsWith('elementor') || page.includes('elementor'))) {
1447 return true;
1448 }
1449 var postType = urlParams.get('post_type');
1450 if ('elementor_library' === postType || 'e-floating-buttons' === postType) {
1451 return true;
1452 }
1453 var body = document.body;
1454 var bodyClasses = body.className.split(' ');
1455 return bodyClasses.some(function (cls) {
1456 return cls.includes('elementor') && (cls.includes('page') || cls.includes('post-type'));
1457 });
1458 }
1459 };
1460
1461 /***/ }),
1462
1463 /***/ "../app/assets/js/event-track/wp-dashboard-tracking.js":
1464 /*!*************************************************************!*\
1465 !*** ../app/assets/js/event-track/wp-dashboard-tracking.js ***!
1466 \*************************************************************/
1467 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1468
1469 "use strict";
1470
1471
1472 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1473 Object.defineProperty(exports, "__esModule", ({
1474 value: true
1475 }));
1476 exports["default"] = exports.SCREEN_TYPES = exports.NAV_AREAS = exports.CONTROL_TYPES = void 0;
1477 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
1478 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
1479 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1480 var _navigation = _interopRequireDefault(__webpack_require__(/*! ./dashboard/navigation */ "../app/assets/js/event-track/dashboard/navigation.js"));
1481 var _pluginActions = _interopRequireDefault(__webpack_require__(/*! ./dashboard/plugin-actions */ "../app/assets/js/event-track/dashboard/plugin-actions.js"));
1482 var _promotion = _interopRequireDefault(__webpack_require__(/*! ./dashboard/promotion */ "../app/assets/js/event-track/dashboard/promotion.js"));
1483 var _screenView = _interopRequireDefault(__webpack_require__(/*! ./dashboard/screen-view */ "../app/assets/js/event-track/dashboard/screen-view.js"));
1484 var _menuPromotion = _interopRequireDefault(__webpack_require__(/*! ./dashboard/menu-promotion */ "../app/assets/js/event-track/dashboard/menu-promotion.js"));
1485 var _actionControls = _interopRequireDefault(__webpack_require__(/*! ./dashboard/action-controls */ "../app/assets/js/event-track/dashboard/action-controls.js"));
1486 var _topBar = _interopRequireDefault(__webpack_require__(/*! ./dashboard/top-bar */ "../app/assets/js/event-track/dashboard/top-bar.js"));
1487 var SESSION_TIMEOUT_MINUTES = 30;
1488 var MINUTE_MS = 60 * 1000;
1489 var SESSION_TIMEOUT = SESSION_TIMEOUT_MINUTES * MINUTE_MS;
1490 var ACTIVITY_CHECK_INTERVAL = 1 * MINUTE_MS;
1491 var SESSION_STORAGE_KEY = 'elementor_wpdash_session';
1492 var PENDING_NAV_CLICK_KEY = 'elementor_wpdash_pending_nav';
1493 var CONTROL_TYPES = exports.CONTROL_TYPES = {
1494 BUTTON: 'button',
1495 CHECKBOX: 'checkbox',
1496 RADIO: 'radio',
1497 LINK: 'link',
1498 SELECT: 'select',
1499 TOGGLE: 'toggle',
1500 FILTER: 'filter'
1501 };
1502 var NAV_AREAS = exports.NAV_AREAS = {
1503 LEFT_MENU: 'left_menu',
1504 SUBMENU: 'submenu',
1505 HOVER_MENU: 'hover_menu',
1506 TOP_BAR: 'top_bar',
1507 SIDEBAR_MENU: 'sidebar'
1508 };
1509 var SCREEN_TYPES = exports.SCREEN_TYPES = {
1510 TAB: 'tab',
1511 POPUP: 'popup',
1512 APP_SCREEN: 'app_screen'
1513 };
1514 var WpDashboardTracking = exports["default"] = /*#__PURE__*/function () {
1515 function WpDashboardTracking() {
1516 (0, _classCallCheck2.default)(this, WpDashboardTracking);
1517 }
1518 return (0, _createClass2.default)(WpDashboardTracking, null, [{
1519 key: "getElementorCommon",
1520 value: function getElementorCommon() {
1521 return window.elementorCommon;
1522 }
1523 }, {
1524 key: "init",
1525 value: function init() {
1526 if (this.initialized) {
1527 return;
1528 }
1529 this.restoreOrCreateSession();
1530 if (this.isEventsManagerAvailable()) {
1531 this.startSessionMonitoring();
1532 this.attachActivityListeners();
1533 this.attachNavigationListener();
1534 this.initialized = true;
1535 }
1536 }
1537 }, {
1538 key: "restoreOrCreateSession",
1539 value: function restoreOrCreateSession() {
1540 var storedSession = this.getStoredSession();
1541 if (storedSession) {
1542 this.sessionStartTime = storedSession.sessionStartTime;
1543 this.navItemsVisited = new Set(storedSession.navItemsVisited);
1544 this.lastActivityTime = Date.now();
1545 this.sessionEnded = false;
1546 } else {
1547 this.sessionStartTime = Date.now();
1548 this.lastActivityTime = Date.now();
1549 this.sessionEnded = false;
1550 this.navItemsVisited = new Set();
1551 }
1552 this.processPendingNavClick();
1553 this.saveSessionToStorage();
1554 }
1555 }, {
1556 key: "isEditorOneActive",
1557 value: function isEditorOneActive() {
1558 var _elementorCommon$conf, _elementorCommon$conf2;
1559 var elementorCommon = this.getElementorCommon();
1560 return (_elementorCommon$conf = elementorCommon === null || elementorCommon === void 0 || (_elementorCommon$conf2 = elementorCommon.config) === null || _elementorCommon$conf2 === void 0 || (_elementorCommon$conf2 = _elementorCommon$conf2.editor_events) === null || _elementorCommon$conf2 === void 0 ? void 0 : _elementorCommon$conf2.isEditorOneActive) !== null && _elementorCommon$conf !== void 0 ? _elementorCommon$conf : false;
1561 }
1562 }, {
1563 key: "processPendingNavClick",
1564 value: function processPendingNavClick() {
1565 try {
1566 var pendingNav = sessionStorage.getItem(PENDING_NAV_CLICK_KEY);
1567 if (pendingNav) {
1568 var _JSON$parse = JSON.parse(pendingNav),
1569 itemId = _JSON$parse.itemId,
1570 rootItem = _JSON$parse.rootItem,
1571 area = _JSON$parse.area;
1572 this.navItemsVisited.add(itemId);
1573 var properties = {
1574 wpdash_nav_item_id: itemId,
1575 wpdash_nav_area: area
1576 };
1577 if (rootItem) {
1578 properties.wpdash_nav_item_root = rootItem;
1579 }
1580 this.dispatchEvent('wpdash_nav_clicked', properties, {
1581 send_immediately: true
1582 });
1583 sessionStorage.removeItem(PENDING_NAV_CLICK_KEY);
1584 }
1585 } catch (error) {
1586 sessionStorage.removeItem(PENDING_NAV_CLICK_KEY);
1587 }
1588 }
1589 }, {
1590 key: "getStoredSession",
1591 value: function getStoredSession() {
1592 try {
1593 var stored = sessionStorage.getItem(SESSION_STORAGE_KEY);
1594 return stored ? JSON.parse(stored) : null;
1595 } catch (error) {
1596 return null;
1597 }
1598 }
1599 }, {
1600 key: "saveSessionToStorage",
1601 value: function saveSessionToStorage() {
1602 var sessionData = {
1603 sessionStartTime: this.sessionStartTime,
1604 navItemsVisited: Array.from(this.navItemsVisited)
1605 };
1606 sessionStorage.setItem(SESSION_STORAGE_KEY, JSON.stringify(sessionData));
1607 }
1608 }, {
1609 key: "clearStoredSession",
1610 value: function clearStoredSession() {
1611 sessionStorage.removeItem(SESSION_STORAGE_KEY);
1612 }
1613 }, {
1614 key: "isEventsManagerAvailable",
1615 value: function isEventsManagerAvailable() {
1616 var elementorCommon = this.getElementorCommon();
1617 return (elementorCommon === null || elementorCommon === void 0 ? void 0 : elementorCommon.eventsManager) && 'function' === typeof elementorCommon.eventsManager.dispatchEvent;
1618 }
1619 }, {
1620 key: "canSendEvents",
1621 value: function canSendEvents() {
1622 var _elementorCommon$conf3, _elementorCommon$conf4;
1623 var elementorCommon = this.getElementorCommon();
1624 return (_elementorCommon$conf3 = elementorCommon === null || elementorCommon === void 0 || (_elementorCommon$conf4 = elementorCommon.config) === null || _elementorCommon$conf4 === void 0 || (_elementorCommon$conf4 = _elementorCommon$conf4.editor_events) === null || _elementorCommon$conf4 === void 0 ? void 0 : _elementorCommon$conf4.can_send_events) !== null && _elementorCommon$conf3 !== void 0 ? _elementorCommon$conf3 : false;
1625 }
1626 }, {
1627 key: "dispatchEvent",
1628 value: function dispatchEvent(eventName) {
1629 var _elementorCommon$even;
1630 var properties = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1631 var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1632 if (!this.isEventsManagerAvailable() || !this.canSendEvents()) {
1633 return;
1634 }
1635 var elementorCommon = this.getElementorCommon();
1636 elementorCommon === null || elementorCommon === void 0 || (_elementorCommon$even = elementorCommon.eventsManager) === null || _elementorCommon$even === void 0 || _elementorCommon$even.dispatchEvent(eventName, properties, options);
1637 }
1638 }, {
1639 key: "updateActivity",
1640 value: function updateActivity() {
1641 this.lastActivityTime = Date.now();
1642 }
1643 }, {
1644 key: "startSessionMonitoring",
1645 value: function startSessionMonitoring() {
1646 var _this = this;
1647 this.activityCheckInterval = setInterval(function () {
1648 _this.checkSessionTimeout();
1649 }, ACTIVITY_CHECK_INTERVAL);
1650 window.addEventListener('beforeunload', function () {
1651 if (!_this.sessionEnded && !_this.isNavigatingToElementor) {
1652 _this.trackSessionEnd('tab_closed');
1653 }
1654 });
1655 document.addEventListener('visibilitychange', function () {
1656 if (!_this.sessionEnded && document.hidden) {
1657 var timeSinceLastActivity = Date.now() - _this.lastActivityTime;
1658 if (timeSinceLastActivity > SESSION_TIMEOUT) {
1659 _this.trackSessionEnd('tab_inactive');
1660 }
1661 }
1662 });
1663 }
1664 }, {
1665 key: "isElementorPage",
1666 value: function isElementorPage(url) {
1667 try {
1668 var urlObj = new URL(url, window.location.origin);
1669 var params = urlObj.searchParams;
1670 var page = params.get('page');
1671 var postType = params.get('post_type');
1672 var action = params.get('action');
1673 var elementorPages = ['elementor', 'go_knowledge_base_site', 'e-form-submissions'];
1674 var elementorPostTypes = ['elementor_library', 'e-floating-buttons'];
1675 return page && elementorPages.some(function (p) {
1676 return page.includes(p);
1677 }) || postType && elementorPostTypes.includes(postType) || action && action.includes('elementor');
1678 } catch (error) {
1679 return false;
1680 }
1681 }
1682 }, {
1683 key: "isPluginsPage",
1684 value: function isPluginsPage(url) {
1685 try {
1686 var urlObj = new URL(url, window.location.origin);
1687 return urlObj.pathname.includes('plugins.php');
1688 } catch (error) {
1689 return false;
1690 }
1691 }
1692 }, {
1693 key: "isNavigatingAwayFromElementor",
1694 value: function isNavigatingAwayFromElementor(targetUrl) {
1695 if (!targetUrl) {
1696 return false;
1697 }
1698 if (targetUrl.startsWith('#')) {
1699 return false;
1700 }
1701 return !this.isElementorPage(targetUrl);
1702 }
1703 }, {
1704 key: "isLinkOpeningInNewTab",
1705 value: function isLinkOpeningInNewTab(link) {
1706 var target = link.getAttribute('target');
1707 return '_blank' === target || '_new' === target;
1708 }
1709 }, {
1710 key: "attachNavigationListener",
1711 value: function attachNavigationListener() {
1712 var _this2 = this;
1713 var handleLinkClick = function handleLinkClick(event) {
1714 var link = event.target.closest('a');
1715 if (link && link.href) {
1716 if (_this2.isLinkOpeningInNewTab(link)) {
1717 return;
1718 }
1719 if (!_this2.sessionEnded && _this2.isNavigatingAwayFromElementor(link.href)) {
1720 _this2.trackSessionEnd('navigate_away');
1721 } else if (_this2.isElementorPage(link.href)) {
1722 _this2.isNavigatingToElementor = true;
1723 }
1724 }
1725 var isSidebar = event.target.closest('#editor-one-sidebar-navigation');
1726 if (isSidebar) {
1727 _this2.isNavigatingToElementor = true;
1728 }
1729 };
1730 var handleFormSubmit = function handleFormSubmit(event) {
1731 var form = event.target;
1732 if (form.action) {
1733 if (!_this2.sessionEnded && _this2.isNavigatingAwayFromElementor(form.action)) {
1734 _this2.trackSessionEnd('navigate_away');
1735 } else if (_this2.isElementorPage(form.action)) {
1736 _this2.isNavigatingToElementor = true;
1737 }
1738 }
1739 };
1740 document.addEventListener('click', handleLinkClick, true);
1741 document.addEventListener('submit', handleFormSubmit, true);
1742 this.navigationListeners.push({
1743 type: 'click',
1744 handler: handleLinkClick
1745 }, {
1746 type: 'submit',
1747 handler: handleFormSubmit
1748 });
1749 }
1750 }, {
1751 key: "checkSessionTimeout",
1752 value: function checkSessionTimeout() {
1753 var timeSinceLastActivity = Date.now() - this.lastActivityTime;
1754 if (timeSinceLastActivity > SESSION_TIMEOUT && !this.sessionEnded) {
1755 this.trackSessionEnd('timeout');
1756 }
1757 }
1758 }, {
1759 key: "attachActivityListeners",
1760 value: function attachActivityListeners() {
1761 var _this3 = this;
1762 var events = ['mousedown', 'keydown', 'scroll', 'touchstart', 'click'];
1763 events.forEach(function (event) {
1764 document.addEventListener(event, function () {
1765 _this3.updateActivity();
1766 }, {
1767 capture: true,
1768 passive: true
1769 });
1770 });
1771 }
1772 }, {
1773 key: "formatDuration",
1774 value: function formatDuration(milliseconds) {
1775 var totalSeconds = Math.floor(milliseconds / 1000);
1776 return Number(totalSeconds.toFixed(2));
1777 }
1778 }, {
1779 key: "trackNavClicked",
1780 value: function trackNavClicked(itemId) {
1781 var rootItem = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1782 var area = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : NAV_AREAS.LEFT_MENU;
1783 if (!this.initialized) {
1784 var pendingNav = {
1785 itemId: itemId,
1786 rootItem: rootItem,
1787 area: area
1788 };
1789 sessionStorage.setItem(PENDING_NAV_CLICK_KEY, JSON.stringify(pendingNav));
1790 return;
1791 }
1792 this.updateActivity();
1793 this.navItemsVisited.add(itemId);
1794 this.saveSessionToStorage();
1795 var properties = {
1796 wpdash_nav_item_id: itemId,
1797 wpdash_nav_area: area
1798 };
1799 if (rootItem) {
1800 properties.wpdash_nav_item_root = rootItem;
1801 }
1802 this.dispatchEvent('wpdash_nav_clicked', properties);
1803 }
1804 }, {
1805 key: "trackScreenViewed",
1806 value: function trackScreenViewed(screenId) {
1807 var screenType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : SCREEN_TYPES.TAB;
1808 this.updateActivity();
1809 var properties = {
1810 wpdash_screen_id: screenId,
1811 wpdash_screen_type: screenType
1812 };
1813 this.dispatchEvent('wpdash_screen_viewed', properties);
1814 }
1815 }, {
1816 key: "trackActionControl",
1817 value: function trackActionControl(controlIdentifier, controlType) {
1818 this.updateActivity();
1819 var properties = {
1820 wpdash_action_control_interacted: controlIdentifier,
1821 wpdash_control_type: controlType
1822 };
1823 this.dispatchEvent('wpdash_action_control', properties);
1824 }
1825 }, {
1826 key: "trackPromoClicked",
1827 value: function trackPromoClicked(promoName, destination, clickPath) {
1828 this.updateActivity();
1829 var properties = {
1830 wpdash_promo_name: promoName,
1831 wpdash_promo_destination: destination,
1832 wpdash_promo_clicked_path: clickPath
1833 };
1834 this.dispatchEvent('wpdash_promo_clicked', properties);
1835 }
1836 }, {
1837 key: "trackSessionEnd",
1838 value: function trackSessionEnd() {
1839 var reason = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'timeout';
1840 if (this.sessionEnded) {
1841 return;
1842 }
1843 this.sessionEnded = true;
1844 if (this.activityCheckInterval) {
1845 clearInterval(this.activityCheckInterval);
1846 this.activityCheckInterval = null;
1847 }
1848 var duration = Date.now() - this.sessionStartTime;
1849 var properties = {
1850 wpdash_endstate_nav_summary: Array.from(this.navItemsVisited),
1851 wpdash_endstate_nav_count: this.navItemsVisited.size,
1852 wpdash_endstate_duration: this.formatDuration(duration),
1853 reason: reason
1854 };
1855 this.dispatchEvent('wpdash_session_end_state', properties);
1856 this.clearStoredSession();
1857 }
1858 }, {
1859 key: "destroy",
1860 value: function destroy() {
1861 if (this.activityCheckInterval) {
1862 clearInterval(this.activityCheckInterval);
1863 }
1864 this.navigationListeners.forEach(function (_ref) {
1865 var type = _ref.type,
1866 handler = _ref.handler;
1867 document.removeEventListener(type, handler, true);
1868 });
1869 this.navigationListeners = [];
1870 _screenView.default.destroy();
1871 _promotion.default.destroy();
1872 _menuPromotion.default.destroy();
1873 _actionControls.default.destroy();
1874 if (!WpDashboardTracking.isEditorOneActive()) {
1875 _topBar.default.destroy();
1876 }
1877 this.initialized = false;
1878 }
1879 }]);
1880 }();
1881 (0, _defineProperty2.default)(WpDashboardTracking, "sessionStartTime", Date.now());
1882 (0, _defineProperty2.default)(WpDashboardTracking, "lastActivityTime", Date.now());
1883 (0, _defineProperty2.default)(WpDashboardTracking, "sessionEnded", false);
1884 (0, _defineProperty2.default)(WpDashboardTracking, "navItemsVisited", new Set());
1885 (0, _defineProperty2.default)(WpDashboardTracking, "activityCheckInterval", null);
1886 (0, _defineProperty2.default)(WpDashboardTracking, "initialized", false);
1887 (0, _defineProperty2.default)(WpDashboardTracking, "navigationListeners", []);
1888 (0, _defineProperty2.default)(WpDashboardTracking, "isNavigatingToElementor", false);
1889 window.addEventListener('elementor/admin/init', function () {
1890 var currentUrl = window.location.href;
1891 var isPluginsPage = WpDashboardTracking.isPluginsPage(currentUrl);
1892 var isElementorPage = WpDashboardTracking.isElementorPage(currentUrl);
1893 if (isPluginsPage) {
1894 _pluginActions.default.init();
1895 }
1896 _navigation.default.init();
1897 if (isElementorPage) {
1898 WpDashboardTracking.init();
1899 _screenView.default.init();
1900 _promotion.default.init();
1901 _menuPromotion.default.init();
1902 _actionControls.default.init();
1903 if (!WpDashboardTracking.isEditorOneActive()) {
1904 _topBar.default.init();
1905 }
1906 }
1907 });
1908 window.addEventListener('beforeunload', function () {
1909 _navigation.default.destroy();
1910 _pluginActions.default.destroy();
1911 WpDashboardTracking.destroy();
1912 });
1913
1914 /***/ }),
1915
1916 /***/ "../assets/dev/js/utils/react.js":
1917 /*!***************************************!*\
1918 !*** ../assets/dev/js/utils/react.js ***!
1919 \***************************************/
1920 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1921
1922 "use strict";
1923
1924
1925 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1926 Object.defineProperty(exports, "__esModule", ({
1927 value: true
1928 }));
1929 exports["default"] = void 0;
1930 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1931 var ReactDOM = _interopRequireWildcard(__webpack_require__(/*! react-dom */ "react-dom"));
1932 var _client = __webpack_require__(/*! react-dom/client */ "../node_modules/react-dom/client.js");
1933 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
1934 /**
1935 * Support conditional rendering of a React App to the DOM, based on the React version.
1936 * We use `createRoot` when available, but fallback to `ReactDOM.render` for older versions.
1937 *
1938 * @param { React.ReactElement } app The app to render.
1939 * @param { HTMLElement } domElement The DOM element to render the app into.
1940 *
1941 * @return {{ unmount: () => void }} The unmount function.
1942 */
1943 function render(app, domElement) {
1944 var unmountFunction;
1945 try {
1946 var root = (0, _client.createRoot)(domElement);
1947 root.render(app);
1948 unmountFunction = function unmountFunction() {
1949 root.unmount();
1950 };
1951 } catch (e) {
1952 // eslint-disable-next-line react/no-deprecated
1953 ReactDOM.render(app, domElement);
1954 unmountFunction = function unmountFunction() {
1955 // eslint-disable-next-line react/no-deprecated
1956 ReactDOM.unmountComponentAtNode(domElement);
1957 };
1958 }
1959 return {
1960 unmount: unmountFunction
1961 };
1962 }
1963 var _default = exports["default"] = {
1964 render: render
1965 };
1966
1967 /***/ }),
1968
1969 /***/ "../modules/home/assets/js/components/editor-screen/addons-section.js":
1970 /*!****************************************************************************!*\
1971 !*** ../modules/home/assets/js/components/editor-screen/addons-section.js ***!
1972 \****************************************************************************/
1973 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1974
1975 "use strict";
1976 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
1977
1978
1979 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1980 Object.defineProperty(exports, "__esModule", ({
1981 value: true
1982 }));
1983 exports["default"] = void 0;
1984 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1985 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
1986 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1987 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1988 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
1989 var _Link = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Link */ "@elementor/ui/Link"));
1990 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
1991 var _Card = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Card */ "@elementor/ui/Card"));
1992 var _CardActions = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/CardActions */ "@elementor/ui/CardActions"));
1993 var _CardContent = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/CardContent */ "@elementor/ui/CardContent"));
1994 var _CardMedia = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/CardMedia */ "@elementor/ui/CardMedia"));
1995 var _promoTracking = __webpack_require__(/*! ../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
1996 var Addons = function Addons(_ref) {
1997 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
1998 var domain = props.adminUrl.replace('wp-admin/', '');
1999 var addonsArray = props.addonsData.repeater;
2000 var cardsPerRow = 3 === addonsArray.length ? 3 : 2;
2001 var handleAddonClick = function handleAddonClick(title, url) {
2002 (0, _promoTracking.trackPromoClick)(title, url, (0, _promoTracking.getHomeScreenPath)('addons'));
2003 };
2004 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2005 elevation: 0,
2006 sx: {
2007 py: 3,
2008 px: {
2009 xs: 3,
2010 md: 4
2011 },
2012 display: 'flex',
2013 flexDirection: 'column',
2014 gap: 2,
2015 borderRadius: 2,
2016 border: '1px solid rgba(0, 0, 0, 0.12)'
2017 }
2018 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2019 variant: "h6"
2020 }, props.addonsData.header.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2021 variant: "body2",
2022 color: "text.secondary"
2023 }, props.addonsData.header.description)), /*#__PURE__*/_react.default.createElement(_List.default, {
2024 sx: {
2025 display: 'grid',
2026 gridTemplateColumns: {
2027 md: "repeat(".concat(cardsPerRow, ", 1fr)"),
2028 xs: 'repeat(1, 1fr)'
2029 },
2030 gap: 2
2031 }
2032 }, addonsArray.map(function (item) {
2033 var linkTarget = item.hasOwnProperty('target') ? item.target : '_blank';
2034 return /*#__PURE__*/_react.default.createElement(_Card.default, {
2035 key: item.title,
2036 elevation: 0,
2037 sx: {
2038 display: 'flex',
2039 border: 1,
2040 borderRadius: 1,
2041 borderColor: 'action.focus'
2042 }
2043 }, /*#__PURE__*/_react.default.createElement(_CardContent.default, {
2044 sx: {
2045 display: 'flex',
2046 flexDirection: 'column',
2047 justifyContent: 'space-between',
2048 gap: 3,
2049 p: 3
2050 }
2051 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_CardMedia.default, {
2052 image: item.image,
2053 sx: {
2054 height: '58px',
2055 width: '58px',
2056 mb: 2
2057 }
2058 }), /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2059 variant: "subtitle2"
2060 }, item.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2061 variant: "body2",
2062 color: "text.secondary"
2063 }, item.description))), /*#__PURE__*/_react.default.createElement(_CardActions.default, {
2064 sx: {
2065 p: 0
2066 }
2067 }, /*#__PURE__*/_react.default.createElement(_Button.default, {
2068 variant: "outlined",
2069 size: "small",
2070 color: "promotion",
2071 href: item.url,
2072 target: linkTarget,
2073 onClick: function onClick() {
2074 return handleAddonClick(item.title, item.url);
2075 }
2076 }, item.button_label))));
2077 })), /*#__PURE__*/_react.default.createElement(_Link.default, {
2078 variant: "body2",
2079 color: "info.main",
2080 underline: "none",
2081 href: "".concat(domain).concat(props.addonsData.footer.file_path)
2082 }, props.addonsData.footer.label));
2083 };
2084 var _default = exports["default"] = Addons;
2085 Addons.propTypes = {
2086 addonsData: PropTypes.object.isRequired,
2087 adminUrl: PropTypes.string.isRequired
2088 };
2089
2090 /***/ }),
2091
2092 /***/ "../modules/home/assets/js/components/editor-screen/create-new-page-dialog.js":
2093 /*!************************************************************************************!*\
2094 !*** ../modules/home/assets/js/components/editor-screen/create-new-page-dialog.js ***!
2095 \************************************************************************************/
2096 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2097
2098 "use strict";
2099 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
2100 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2101
2102
2103 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2104 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
2105 Object.defineProperty(exports, "__esModule", ({
2106 value: true
2107 }));
2108 exports["default"] = void 0;
2109 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
2110 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2111 var _DialogHeader = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogHeader */ "@elementor/ui/DialogHeader"));
2112 var _DialogHeaderGroup = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogHeaderGroup */ "@elementor/ui/DialogHeaderGroup"));
2113 var _DialogTitle = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogTitle */ "@elementor/ui/DialogTitle"));
2114 var _DialogContent = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogContent */ "@elementor/ui/DialogContent"));
2115 var _DialogContentText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogContentText */ "@elementor/ui/DialogContentText"));
2116 var _TextField = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/TextField */ "@elementor/ui/TextField"));
2117 var _DialogActions = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogActions */ "@elementor/ui/DialogActions"));
2118 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
2119 var _Dialog = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Dialog */ "@elementor/ui/Dialog"));
2120 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
2121 var CreateNewPageDialog = function CreateNewPageDialog(_ref) {
2122 var url = _ref.url,
2123 isOpen = _ref.isOpen,
2124 closedDialogCallback = _ref.closedDialogCallback;
2125 var _React$useState = _react.default.useState(false),
2126 _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
2127 open = _React$useState2[0],
2128 setOpen = _React$useState2[1];
2129 var _React$useState3 = _react.default.useState(''),
2130 _React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
2131 pageName = _React$useState4[0],
2132 setPageName = _React$useState4[1];
2133 (0, _react.useEffect)(function () {
2134 setOpen(isOpen);
2135 }, [isOpen]);
2136 var handleDialogClose = function handleDialogClose() {
2137 setOpen(false);
2138 closedDialogCallback();
2139 };
2140 var handleChange = function handleChange(event) {
2141 var urlParams = new URLSearchParams();
2142 urlParams.append('post_data[post_title]', event.target.value);
2143 setPageName(urlParams.toString());
2144 };
2145 return /*#__PURE__*/_react.default.createElement(_Dialog.default, {
2146 open: open,
2147 onClose: handleDialogClose,
2148 maxWidth: "xs",
2149 width: "xs",
2150 fullWidth: true
2151 }, /*#__PURE__*/_react.default.createElement(_DialogHeader.default, null, /*#__PURE__*/_react.default.createElement(_DialogHeaderGroup.default, null, /*#__PURE__*/_react.default.createElement(_DialogTitle.default, null, __('Name your page', 'elementor')))), /*#__PURE__*/_react.default.createElement(_DialogContent.default, {
2152 dividers: true
2153 }, /*#__PURE__*/_react.default.createElement(_DialogContentText.default, {
2154 sx: {
2155 mb: 2
2156 }
2157 }, __('To proceed, please name your first page,', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), __('or rename it later.', 'elementor')), /*#__PURE__*/_react.default.createElement(_TextField.default, {
2158 onChange: handleChange,
2159 fullWidth: true,
2160 placeholder: __('New Page', 'elementor')
2161 })), /*#__PURE__*/_react.default.createElement(_DialogActions.default, null, /*#__PURE__*/_react.default.createElement(_Button.default, {
2162 onClick: handleDialogClose,
2163 color: "secondary"
2164 }, __('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_Button.default, {
2165 variant: "contained",
2166 href: pageName ? url + '&' + pageName : url,
2167 target: "_blank"
2168 }, __('Save', 'elementor'))));
2169 };
2170 var _default = exports["default"] = CreateNewPageDialog;
2171 CreateNewPageDialog.propTypes = {
2172 url: PropTypes.string.isRequired,
2173 isOpen: PropTypes.bool.isRequired,
2174 closedDialogCallback: PropTypes.func.isRequired
2175 };
2176
2177 /***/ }),
2178
2179 /***/ "../modules/home/assets/js/components/editor-screen/create-with-ai-banner.js":
2180 /*!***********************************************************************************!*\
2181 !*** ../modules/home/assets/js/components/editor-screen/create-with-ai-banner.js ***!
2182 \***********************************************************************************/
2183 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2184
2185 "use strict";
2186 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2187
2188
2189 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2190 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
2191 Object.defineProperty(exports, "__esModule", ({
2192 value: true
2193 }));
2194 exports["default"] = void 0;
2195 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
2196 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2197 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
2198 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2199 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2200 var _Typography = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Typography */ "@elementor/ui/Typography"));
2201 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
2202 var _promoTracking = __webpack_require__(/*! ../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
2203 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
2204 var CreateWithAIBanner = function CreateWithAIBanner(_ref) {
2205 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
2206 var createWithAIData = props.createWithAIData;
2207 var _useState = (0, _react.useState)(''),
2208 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2209 inputValue = _useState2[0],
2210 setInputValue = _useState2[1];
2211 if (!createWithAIData) {
2212 return null;
2213 }
2214 var title = createWithAIData.title,
2215 description = createWithAIData.description,
2216 inputPlaceholder = createWithAIData.input_placeholder,
2217 buttonTitle = createWithAIData.button_title,
2218 buttonCtaUrl = createWithAIData.button_cta_url,
2219 backgroundImage = createWithAIData.background_image,
2220 utmSource = createWithAIData.utm_source,
2221 utmMedium = createWithAIData.utm_medium,
2222 utmCampaign = createWithAIData.utm_campaign;
2223 var handleInputChange = function handleInputChange(event) {
2224 setInputValue(event.target.value);
2225 };
2226 var getButtonHref = function getButtonHref() {
2227 if (!inputValue) {
2228 return buttonCtaUrl;
2229 }
2230 var url = new URL(buttonCtaUrl);
2231 url.searchParams.append('prompt', inputValue);
2232 url.searchParams.append('utm_source', utmSource);
2233 url.searchParams.append('utm_medium', utmMedium);
2234 url.searchParams.append('utm_campaign', utmCampaign);
2235 return url.toString();
2236 };
2237 var handleNavigation = function handleNavigation() {
2238 if (!inputValue) {
2239 return;
2240 }
2241 var destination = getButtonHref();
2242 (0, _promoTracking.trackPromoClick)(title, destination, (0, _promoTracking.getHomeScreenPath)('ai_banner'));
2243 window.open(destination, '_blank');
2244 setInputValue('');
2245 };
2246 var handleKeyDown = function handleKeyDown(event) {
2247 if ('Enter' === event.key) {
2248 event.preventDefault();
2249 handleNavigation();
2250 }
2251 };
2252 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2253 elevation: 0,
2254 sx: {
2255 display: 'flex',
2256 flexDirection: 'column',
2257 py: 3,
2258 px: {
2259 xs: 3,
2260 md: 4
2261 },
2262 gap: 2,
2263 backgroundImage: "url(".concat(backgroundImage, ")"),
2264 backgroundSize: 'cover',
2265 backgroundPosition: 'right center',
2266 backgroundRepeat: 'no-repeat',
2267 borderRadius: 1,
2268 border: '1px solid rgba(0, 0, 0, 0.12)'
2269 }
2270 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2271 gap: 1,
2272 justifyContent: "center"
2273 }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
2274 variant: "h6"
2275 }, title), /*#__PURE__*/_react.default.createElement(_Typography.default, {
2276 variant: "body2",
2277 color: "secondary"
2278 }, description)), /*#__PURE__*/_react.default.createElement(_ui.Box, {
2279 sx: {
2280 display: 'flex',
2281 flexDirection: {
2282 xs: 'column',
2283 sm: 'row'
2284 },
2285 gap: 2,
2286 mt: 1
2287 }
2288 }, /*#__PURE__*/_react.default.createElement(_ui.TextField, {
2289 fullWidth: true,
2290 placeholder: inputPlaceholder,
2291 variant: "outlined",
2292 color: "secondary",
2293 size: "small",
2294 sx: {
2295 flex: 1
2296 },
2297 value: inputValue,
2298 onChange: handleInputChange,
2299 onKeyDown: handleKeyDown
2300 }), /*#__PURE__*/_react.default.createElement(_Button.default, {
2301 variant: "outlined",
2302 size: "small",
2303 color: "secondary",
2304 startIcon: /*#__PURE__*/_react.default.createElement("span", {
2305 className: "eicon-ai"
2306 }),
2307 onClick: handleNavigation
2308 }, buttonTitle)));
2309 };
2310 CreateWithAIBanner.propTypes = {
2311 createWithAIData: PropTypes.object
2312 };
2313 var _default = exports["default"] = CreateWithAIBanner;
2314
2315 /***/ }),
2316
2317 /***/ "../modules/home/assets/js/components/editor-screen/external-links-section.js":
2318 /*!************************************************************************************!*\
2319 !*** ../modules/home/assets/js/components/editor-screen/external-links-section.js ***!
2320 \************************************************************************************/
2321 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2322
2323 "use strict";
2324 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2325
2326
2327 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2328 Object.defineProperty(exports, "__esModule", ({
2329 value: true
2330 }));
2331 exports["default"] = void 0;
2332 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2333 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
2334 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2335 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2336 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
2337 var _ListItemButton = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemButton */ "@elementor/ui/ListItemButton"));
2338 var _ListItemText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemText */ "@elementor/ui/ListItemText"));
2339 var ExternalLinksSection = function ExternalLinksSection(_ref) {
2340 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
2341 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2342 elevation: 0,
2343 sx: {
2344 py: 3,
2345 px: {
2346 xs: 3,
2347 md: 4
2348 },
2349 borderRadius: 1,
2350 border: '1px solid rgba(0, 0, 0, 0.12)'
2351 }
2352 }, /*#__PURE__*/_react.default.createElement(_List.default, {
2353 sx: {
2354 display: 'flex',
2355 flexDirection: {
2356 xs: 'column',
2357 sm: 'row'
2358 },
2359 rowGap: 2,
2360 columnGap: 7.5,
2361 flexWrap: 'wrap'
2362 }
2363 }, props.externalLinksData.map(function (item) {
2364 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
2365 key: item.label,
2366 sx: {
2367 display: 'flex',
2368 alignItems: 'center'
2369 }
2370 }, /*#__PURE__*/_react.default.createElement(_ListItemButton.default, {
2371 href: item.url,
2372 target: "_blank",
2373 sx: {
2374 '&:hover': {
2375 backgroundColor: 'initial'
2376 },
2377 gap: 2,
2378 px: 0,
2379 py: 0
2380 }
2381 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
2382 component: "img",
2383 src: item.image,
2384 sx: {
2385 width: '38px'
2386 }
2387 }), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
2388 sx: {
2389 color: 'text.secondary'
2390 },
2391 primary: item.label
2392 })));
2393 })));
2394 };
2395 var _default = exports["default"] = ExternalLinksSection;
2396 ExternalLinksSection.propTypes = {
2397 externalLinksData: PropTypes.array.isRequired
2398 };
2399
2400 /***/ }),
2401
2402 /***/ "../modules/home/assets/js/components/editor-screen/get-started-list-item.js":
2403 /*!***********************************************************************************!*\
2404 !*** ../modules/home/assets/js/components/editor-screen/get-started-list-item.js ***!
2405 \***********************************************************************************/
2406 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2407
2408 "use strict";
2409 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2410
2411
2412 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2413 Object.defineProperty(exports, "__esModule", ({
2414 value: true
2415 }));
2416 exports["default"] = void 0;
2417 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2418 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2419 var _ListItem = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItem */ "@elementor/ui/ListItem"));
2420 var _ListItemText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemText */ "@elementor/ui/ListItemText"));
2421 var _Link = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Link */ "@elementor/ui/Link"));
2422 var _Box = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Box */ "@elementor/ui/Box"));
2423 var _createNewPageDialog = _interopRequireDefault(__webpack_require__(/*! ./create-new-page-dialog */ "../modules/home/assets/js/components/editor-screen/create-new-page-dialog.js"));
2424 var GetStartedListItem = function GetStartedListItem(_ref) {
2425 var item = _ref.item,
2426 image = _ref.image,
2427 adminUrl = _ref.adminUrl;
2428 var url = item.is_relative_url ? adminUrl + item.url : item.url;
2429 var _React$useState = _react.default.useState(false),
2430 _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
2431 isOpen = _React$useState2[0],
2432 openDialog = _React$useState2[1];
2433 var handleLinkClick = function handleLinkClick(event) {
2434 if (!item.new_page) {
2435 return;
2436 }
2437 event.preventDefault();
2438 openDialog(true);
2439 };
2440 return /*#__PURE__*/_react.default.createElement(_ListItem.default, {
2441 alignItems: "flex-start",
2442 sx: {
2443 gap: 1,
2444 p: 0,
2445 maxWidth: '150px'
2446 }
2447 }, /*#__PURE__*/_react.default.createElement(_Box.default, {
2448 component: "img",
2449 src: image
2450 }), /*#__PURE__*/_react.default.createElement(_Box.default, null, /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
2451 primary: item.title,
2452 primaryTypographyProps: {
2453 variant: 'subtitle1'
2454 },
2455 sx: {
2456 my: 0
2457 }
2458 }), /*#__PURE__*/_react.default.createElement(_Link.default, {
2459 variant: "body2",
2460 color: item.title_small_color ? item.title_small_color : 'text.tertiary',
2461 underline: "hover",
2462 href: url,
2463 target: "_blank",
2464 onClick: handleLinkClick
2465 }, item.title_small)), item.new_page && /*#__PURE__*/_react.default.createElement(_createNewPageDialog.default, {
2466 url: url,
2467 isOpen: isOpen,
2468 closedDialogCallback: function closedDialogCallback() {
2469 return openDialog(false);
2470 }
2471 }));
2472 };
2473 var _default = exports["default"] = GetStartedListItem;
2474 GetStartedListItem.propTypes = {
2475 item: PropTypes.shape({
2476 title: PropTypes.string.isRequired,
2477 title_small: PropTypes.string.isRequired,
2478 url: PropTypes.string.isRequired,
2479 new_page: PropTypes.bool,
2480 is_relative_url: PropTypes.bool,
2481 title_small_color: PropTypes.string
2482 }).isRequired,
2483 adminUrl: PropTypes.string.isRequired,
2484 image: PropTypes.string
2485 };
2486
2487 /***/ }),
2488
2489 /***/ "../modules/home/assets/js/components/editor-screen/get-started-section.js":
2490 /*!*********************************************************************************!*\
2491 !*** ../modules/home/assets/js/components/editor-screen/get-started-section.js ***!
2492 \*********************************************************************************/
2493 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2494
2495 "use strict";
2496
2497
2498 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2499 Object.defineProperty(exports, "__esModule", ({
2500 value: true
2501 }));
2502 exports["default"] = void 0;
2503 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2504 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
2505 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2506 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2507 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
2508 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2509 var _getStartedListItem = _interopRequireDefault(__webpack_require__(/*! ./get-started-list-item */ "../modules/home/assets/js/components/editor-screen/get-started-list-item.js"));
2510 var GetStarted = function GetStarted(_ref) {
2511 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
2512 var hasSidebarPromotion = props.homeScreenData.hasOwnProperty('sidebar_promotion_variants');
2513 var mdGridColumns = hasSidebarPromotion ? 'repeat(3, 1fr)' : 'repeat(4, 1fr)';
2514 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2515 elevation: 0,
2516 sx: {
2517 py: 3,
2518 px: {
2519 xs: 3,
2520 md: 4
2521 },
2522 display: 'flex',
2523 flexDirection: 'column',
2524 gap: 2,
2525 borderRadius: 1,
2526 border: '1px solid rgba(0, 0, 0, 0.12)'
2527 }
2528 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2529 variant: "h6"
2530 }, props.getStartedData.header.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2531 variant: "body2",
2532 color: "text.secondary"
2533 }, props.getStartedData.header.description)), /*#__PURE__*/_react.default.createElement(_List.default, {
2534 sx: {
2535 display: 'grid',
2536 gridTemplateColumns: {
2537 xl: 'repeat(4, 1fr)',
2538 md: mdGridColumns,
2539 xs: 'repeat(2, 1fr)'
2540 },
2541 columnGap: {
2542 md: 9,
2543 xs: 7
2544 },
2545 rowGap: 3
2546 }
2547 }, props.getStartedData.repeater.map(function (item) {
2548 return /*#__PURE__*/_react.default.createElement(_getStartedListItem.default, {
2549 key: item.title,
2550 item: item,
2551 image: item.image,
2552 adminUrl: props.adminUrl
2553 });
2554 })));
2555 };
2556 var _default = exports["default"] = GetStarted;
2557 GetStarted.propTypes = {
2558 getStartedData: _propTypes.default.object.isRequired,
2559 adminUrl: _propTypes.default.string.isRequired,
2560 homeScreenData: _propTypes.default.object.isRequired
2561 };
2562
2563 /***/ }),
2564
2565 /***/ "../modules/home/assets/js/components/editor-screen/header-section.js":
2566 /*!****************************************************************************!*\
2567 !*** ../modules/home/assets/js/components/editor-screen/header-section.js ***!
2568 \****************************************************************************/
2569 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2570
2571 "use strict";
2572
2573
2574 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2575 Object.defineProperty(exports, "__esModule", ({
2576 value: true
2577 }));
2578 exports["default"] = void 0;
2579 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2580 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2581 var _Typography = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Typography */ "@elementor/ui/Typography"));
2582 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
2583 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2584 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
2585 var HeaderSection = function HeaderSection(props) {
2586 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2587 elevation: 0,
2588 sx: {
2589 display: 'flex',
2590 flexDirection: 'row',
2591 justifyContent: 'space-between',
2592 alignItems: 'center',
2593 pt: 2.5
2594 }
2595 }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
2596 variant: "h5"
2597 }, (0, _i18n.__)('Quick Start', 'elementor')), /*#__PURE__*/_react.default.createElement(_Button.default, {
2598 variant: "contained",
2599 size: "medium",
2600 color: "primary",
2601 href: props.editWebsiteUrl,
2602 target: "_blank",
2603 rel: "noopener noreferrer"
2604 }, (0, _i18n.__)('Edit site', 'elementor')));
2605 };
2606 HeaderSection.propTypes = {
2607 editWebsiteUrl: _propTypes.default.string.isRequired
2608 };
2609 var _default = exports["default"] = HeaderSection;
2610
2611 /***/ }),
2612
2613 /***/ "../modules/home/assets/js/components/editor-screen/home-screen.js":
2614 /*!*************************************************************************!*\
2615 !*** ../modules/home/assets/js/components/editor-screen/home-screen.js ***!
2616 \*************************************************************************/
2617 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2618
2619 "use strict";
2620 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2621
2622
2623 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2624 Object.defineProperty(exports, "__esModule", ({
2625 value: true
2626 }));
2627 exports["default"] = void 0;
2628 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2629 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2630 var _headerSection = _interopRequireDefault(__webpack_require__(/*! ./header-section */ "../modules/home/assets/js/components/editor-screen/header-section.js"));
2631 var _topSection = _interopRequireDefault(__webpack_require__(/*! ./top-section */ "../modules/home/assets/js/components/editor-screen/top-section.js"));
2632 var _sidebarPromotion = _interopRequireDefault(__webpack_require__(/*! ./sidebar-promotion */ "../modules/home/assets/js/components/editor-screen/sidebar-promotion.js"));
2633 var _addonsSection = _interopRequireDefault(__webpack_require__(/*! ./addons-section */ "../modules/home/assets/js/components/editor-screen/addons-section.js"));
2634 var _externalLinksSection = _interopRequireDefault(__webpack_require__(/*! ./external-links-section */ "../modules/home/assets/js/components/editor-screen/external-links-section.js"));
2635 var _getStartedSection = _interopRequireDefault(__webpack_require__(/*! ./get-started-section */ "../modules/home/assets/js/components/editor-screen/get-started-section.js"));
2636 var _createWithAiBanner = _interopRequireDefault(__webpack_require__(/*! ./create-with-ai-banner */ "../modules/home/assets/js/components/editor-screen/create-with-ai-banner.js"));
2637 var EditorScreen = function EditorScreen(props) {
2638 var hasSidebarPromotion = props.homeScreenData.hasOwnProperty('sidebar_promotion_variants');
2639 return /*#__PURE__*/ /* Box wrapper around the Container is needed to neutralize wp-content area left-padding */_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Container, {
2640 disableGutters: true,
2641 maxWidth: "lg",
2642 sx: {
2643 display: 'flex',
2644 flexDirection: 'column',
2645 gap: 2.5,
2646 px: {
2647 xs: 1.5,
2648 md: 4
2649 }
2650 }
2651 }, /*#__PURE__*/_react.default.createElement(_headerSection.default, {
2652 editWebsiteUrl: props.homeScreenData.edit_website_url
2653 }), props.homeScreenData.top_with_licences && /*#__PURE__*/_react.default.createElement(_topSection.default, {
2654 topData: props.homeScreenData.top_with_licences,
2655 buttonCtaUrl: props.homeScreenData.button_cta_url
2656 }), /*#__PURE__*/_react.default.createElement(_ui.Box, {
2657 sx: {
2658 display: 'flex',
2659 flexDirection: {
2660 xs: 'column',
2661 sm: 'row'
2662 },
2663 justifyContent: 'space-between',
2664 gap: 2.5
2665 }
2666 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2667 sx: {
2668 flex: 1,
2669 gap: 2.5
2670 }
2671 }, props.homeScreenData.create_with_ai && /*#__PURE__*/_react.default.createElement(_createWithAiBanner.default, {
2672 createWithAIData: props.homeScreenData.create_with_ai
2673 }), /*#__PURE__*/_react.default.createElement(_getStartedSection.default, {
2674 getStartedData: props.homeScreenData.get_started,
2675 adminUrl: props.adminUrl,
2676 homeScreenData: props.homeScreenData
2677 }), props.homeScreenData.add_ons && /*#__PURE__*/_react.default.createElement(_addonsSection.default, {
2678 addonsData: props.homeScreenData.add_ons,
2679 adminUrl: props.adminUrl
2680 }), /*#__PURE__*/_react.default.createElement(_externalLinksSection.default, {
2681 externalLinksData: props.homeScreenData.external_links
2682 })), hasSidebarPromotion && /*#__PURE__*/_react.default.createElement(_ui.Container, {
2683 maxWidth: "xs",
2684 disableGutters: true,
2685 sx: {
2686 width: {
2687 sm: '305px'
2688 },
2689 display: 'flex',
2690 flexDirection: 'column',
2691 gap: 2.5
2692 }
2693 }, /*#__PURE__*/_react.default.createElement(_sidebarPromotion.default, {
2694 sideData: props.homeScreenData.sidebar_promotion_variants
2695 })))));
2696 };
2697 EditorScreen.propTypes = {
2698 homeScreenData: PropTypes.object,
2699 adminUrl: PropTypes.string
2700 };
2701 var _default = exports["default"] = EditorScreen;
2702
2703 /***/ }),
2704
2705 /***/ "../modules/home/assets/js/components/editor-screen/promotions/sidebar-banner.js":
2706 /*!***************************************************************************************!*\
2707 !*** ../modules/home/assets/js/components/editor-screen/promotions/sidebar-banner.js ***!
2708 \***************************************************************************************/
2709 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2710
2711 "use strict";
2712 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2713
2714
2715 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2716 Object.defineProperty(exports, "__esModule", ({
2717 value: true
2718 }));
2719 exports["default"] = void 0;
2720 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2721 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2722 var _Link = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Link */ "@elementor/ui/Link"));
2723 var _promoTracking = __webpack_require__(/*! ../../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
2724 var SidebarBanner = function SidebarBanner(_ref) {
2725 var image = _ref.image,
2726 link = _ref.link;
2727 var handleClick = function handleClick() {
2728 (0, _promoTracking.trackPromoClick)('Sidebar Banner', link, (0, _promoTracking.getHomeScreenPath)('sidebar'));
2729 };
2730 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2731 elevation: 0,
2732 sx: {
2733 overflow: 'hidden',
2734 borderRadius: 1
2735 }
2736 }, /*#__PURE__*/_react.default.createElement(_Link.default, {
2737 target: "_blank",
2738 href: link,
2739 onClick: handleClick,
2740 sx: {
2741 lineHeight: 0,
2742 display: 'block',
2743 width: '100%',
2744 height: '100%',
2745 boxShadow: 'none',
2746 '&:focus': {
2747 boxShadow: 'none'
2748 },
2749 '&:active': {
2750 boxShadow: 'none'
2751 }
2752 }
2753 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
2754 component: 'img',
2755 src: image,
2756 sx: {
2757 width: '100%',
2758 height: '100%'
2759 }
2760 })));
2761 };
2762 var _default = exports["default"] = SidebarBanner;
2763 SidebarBanner.propTypes = {
2764 image: PropTypes.string.isRequired,
2765 link: PropTypes.string.isRequired
2766 };
2767
2768 /***/ }),
2769
2770 /***/ "../modules/home/assets/js/components/editor-screen/promotions/sidebar-default.js":
2771 /*!****************************************************************************************!*\
2772 !*** ../modules/home/assets/js/components/editor-screen/promotions/sidebar-default.js ***!
2773 \****************************************************************************************/
2774 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2775
2776 "use strict";
2777 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2778
2779
2780 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2781 Object.defineProperty(exports, "__esModule", ({
2782 value: true
2783 }));
2784 exports["default"] = void 0;
2785 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2786 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2787 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
2788 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
2789 var _ListItem = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItem */ "@elementor/ui/ListItem"));
2790 var _sideBarCheckIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/side-bar-check-icon */ "../modules/home/assets/js/icons/side-bar-check-icon.js"));
2791 var _ListItemText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemText */ "@elementor/ui/ListItemText"));
2792 var _promoTracking = __webpack_require__(/*! ../../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
2793 var SidebarDefault = function SidebarDefault(_ref) {
2794 var header = _ref.header,
2795 cta = _ref.cta,
2796 repeater = _ref.repeater;
2797 var handleCtaClick = function handleCtaClick() {
2798 (0, _promoTracking.trackPromoClick)(header.title, cta.url, (0, _promoTracking.getHomeScreenPath)('sidebar'));
2799 };
2800 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2801 elevation: 0,
2802 sx: {
2803 p: 3,
2804 borderRadius: 1
2805 }
2806 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2807 gap: 1.5,
2808 alignItems: "center",
2809 textAlign: "center",
2810 sx: {
2811 pb: 4
2812 }
2813 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
2814 component: "img",
2815 src: header.image
2816 }), /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2817 variant: "h6"
2818 }, header.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2819 variant: "body2",
2820 color: "text.secondary"
2821 }, header.description)), /*#__PURE__*/_react.default.createElement(_Button.default, {
2822 variant: "contained",
2823 size: "medium",
2824 color: "promotion",
2825 href: cta.url,
2826 onClick: handleCtaClick,
2827 startIcon: /*#__PURE__*/_react.default.createElement(_ui.Box, {
2828 component: "img",
2829 src: cta.image,
2830 sx: {
2831 width: '16px'
2832 }
2833 }),
2834 target: "_blank",
2835 sx: {
2836 maxWidth: 'fit-content'
2837 }
2838 }, cta.label)), /*#__PURE__*/_react.default.createElement(_List.default, {
2839 sx: {
2840 p: 0
2841 }
2842 }, repeater.map(function (item, index) {
2843 return /*#__PURE__*/_react.default.createElement(_ListItem.default, {
2844 key: index,
2845 sx: {
2846 p: 0,
2847 gap: 1
2848 }
2849 }, /*#__PURE__*/_react.default.createElement(_sideBarCheckIcon.default, null), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
2850 primaryTypographyProps: {
2851 variant: 'body2'
2852 },
2853 primary: item.title
2854 }));
2855 })));
2856 };
2857 var _default = exports["default"] = SidebarDefault;
2858 SidebarDefault.propTypes = {
2859 header: PropTypes.object.isRequired,
2860 cta: PropTypes.object.isRequired,
2861 repeater: PropTypes.array
2862 };
2863
2864 /***/ }),
2865
2866 /***/ "../modules/home/assets/js/components/editor-screen/sidebar-promotion.js":
2867 /*!*******************************************************************************!*\
2868 !*** ../modules/home/assets/js/components/editor-screen/sidebar-promotion.js ***!
2869 \*******************************************************************************/
2870 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2871
2872 "use strict";
2873 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2874
2875
2876 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2877 Object.defineProperty(exports, "__esModule", ({
2878 value: true
2879 }));
2880 exports["default"] = void 0;
2881 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2882 var _sidebarBanner = _interopRequireDefault(__webpack_require__(/*! ./promotions/sidebar-banner */ "../modules/home/assets/js/components/editor-screen/promotions/sidebar-banner.js"));
2883 var _sidebarDefault = _interopRequireDefault(__webpack_require__(/*! ./promotions/sidebar-default */ "../modules/home/assets/js/components/editor-screen/promotions/sidebar-default.js"));
2884 var SideBarPromotion = function SideBarPromotion(_ref) {
2885 var sideData = _ref.sideData;
2886 if ('banner' === sideData.type) {
2887 return /*#__PURE__*/_react.default.createElement(_sidebarBanner.default, sideData.data);
2888 }
2889 return /*#__PURE__*/_react.default.createElement(_sidebarDefault.default, sideData.data);
2890 };
2891 var _default = exports["default"] = SideBarPromotion;
2892 SideBarPromotion.propTypes = {
2893 sideData: PropTypes.object.isRequired
2894 };
2895
2896 /***/ }),
2897
2898 /***/ "../modules/home/assets/js/components/editor-screen/top-section.js":
2899 /*!*************************************************************************!*\
2900 !*** ../modules/home/assets/js/components/editor-screen/top-section.js ***!
2901 \*************************************************************************/
2902 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2903
2904 "use strict";
2905 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
2906
2907
2908 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2909 Object.defineProperty(exports, "__esModule", ({
2910 value: true
2911 }));
2912 exports["default"] = void 0;
2913 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2914 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
2915 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2916 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2917 var _Typography = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Typography */ "@elementor/ui/Typography"));
2918 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
2919 var _youtubeIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/youtube-icon */ "../modules/home/assets/js/icons/youtube-icon.js"));
2920 var _promoTracking = __webpack_require__(/*! ../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
2921 var TopSection = function TopSection(_ref) {
2922 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
2923 var topData = props.topData,
2924 buttonCtaUrl = props.buttonCtaUrl;
2925 if (!topData) {
2926 return null;
2927 }
2928 var title = topData.title,
2929 description = topData.description,
2930 buttonCtaTitle = topData.button_cta_text,
2931 buttonCreatePageTitle = topData.button_create_page_title,
2932 youtubeEmbeddedId = topData.youtube_embed_id,
2933 buttonWatchURL = topData.button_watch_url,
2934 buttonWatchTitle = topData.button_watch_title;
2935 var ctaButtonTitle = buttonCtaTitle !== null && buttonCtaTitle !== void 0 ? buttonCtaTitle : buttonCreatePageTitle;
2936 var handleCtaClick = function handleCtaClick() {
2937 (0, _promoTracking.trackPromoClick)(ctaButtonTitle, buttonCtaUrl, (0, _promoTracking.getHomeScreenPath)('top_section'));
2938 };
2939 var handleWatchClick = function handleWatchClick() {
2940 (0, _promoTracking.trackPromoClick)(buttonWatchTitle, buttonWatchURL, (0, _promoTracking.getHomeScreenPath)('top_section'));
2941 };
2942 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
2943 elevation: 0,
2944 sx: {
2945 display: 'flex',
2946 flexDirection: {
2947 xs: 'column',
2948 sm: 'row'
2949 },
2950 justifyContent: 'space-between',
2951 py: 3,
2952 px: {
2953 xs: 3,
2954 md: 4
2955 },
2956 gap: {
2957 xs: 2,
2958 sm: 3,
2959 lg: 10,
2960 xl: 22
2961 },
2962 borderRadius: 1,
2963 border: '1px solid rgba(0, 0, 0, 0.12)'
2964 }
2965 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2966 gap: 3,
2967 justifyContent: "center"
2968 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_Typography.default, {
2969 variant: "h6"
2970 }, title), /*#__PURE__*/_react.default.createElement(_Typography.default, {
2971 variant: "body2",
2972 color: "secondary"
2973 }, description)), /*#__PURE__*/_react.default.createElement(_ui.Box, {
2974 sx: {
2975 display: 'flex',
2976 gap: 1
2977 }
2978 }, /*#__PURE__*/_react.default.createElement(_Button.default, {
2979 "data-testid": "e-create-button",
2980 variant: "contained",
2981 size: "small",
2982 href: buttonCtaUrl,
2983 target: "_blank",
2984 onClick: handleCtaClick
2985 }, ctaButtonTitle), /*#__PURE__*/_react.default.createElement(_Button.default, {
2986 variant: "outlined",
2987 color: "secondary",
2988 size: "small",
2989 startIcon: /*#__PURE__*/_react.default.createElement(_youtubeIcon.default, null),
2990 href: buttonWatchURL,
2991 target: "_blank",
2992 onClick: handleWatchClick
2993 }, buttonWatchTitle))), /*#__PURE__*/_react.default.createElement(_ui.Box, {
2994 component: "iframe",
2995 src: "https://www.youtube.com/embed/".concat(youtubeEmbeddedId),
2996 title: "YouTube video player",
2997 frameBorder: "0",
2998 allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
2999 allowFullScreen: true,
3000 sx: {
3001 aspectRatio: '16/9',
3002 borderRadius: 1,
3003 display: 'flex',
3004 width: '100%',
3005 maxWidth: '365px'
3006 }
3007 }));
3008 };
3009 TopSection.propTypes = {
3010 topData: PropTypes.object.isRequired,
3011 buttonCtaUrl: PropTypes.string.isRequired
3012 };
3013 var _default = exports["default"] = TopSection;
3014
3015 /***/ }),
3016
3017 /***/ "../modules/home/assets/js/components/home-screen/addons-section.js":
3018 /*!**************************************************************************!*\
3019 !*** ../modules/home/assets/js/components/home-screen/addons-section.js ***!
3020 \**************************************************************************/
3021 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3022
3023 "use strict";
3024 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3025
3026
3027 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3028 Object.defineProperty(exports, "__esModule", ({
3029 value: true
3030 }));
3031 exports["default"] = void 0;
3032 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3033 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
3034 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3035 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3036 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
3037 var _Link = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Link */ "@elementor/ui/Link"));
3038 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
3039 var _Card = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Card */ "@elementor/ui/Card"));
3040 var _CardActions = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/CardActions */ "@elementor/ui/CardActions"));
3041 var _CardContent = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/CardContent */ "@elementor/ui/CardContent"));
3042 var _CardMedia = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/CardMedia */ "@elementor/ui/CardMedia"));
3043 var _promoTracking = __webpack_require__(/*! ../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
3044 var Addons = function Addons(_ref) {
3045 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
3046 var domain = props.adminUrl.replace('wp-admin/', '');
3047 var addonsArray = props.addonsData.repeater;
3048 var cardsPerRow = 3 === addonsArray.length ? 3 : 2;
3049 var handleAddonClick = function handleAddonClick(title, url) {
3050 (0, _promoTracking.trackPromoClick)(title, url, (0, _promoTracking.getHomeScreenPath)('addons'));
3051 };
3052 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
3053 elevation: 0,
3054 sx: {
3055 p: 3,
3056 display: 'flex',
3057 flexDirection: 'column',
3058 gap: 2
3059 }
3060 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3061 variant: "h6"
3062 }, props.addonsData.header.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3063 variant: "body2",
3064 color: "text.secondary"
3065 }, props.addonsData.header.description)), /*#__PURE__*/_react.default.createElement(_List.default, {
3066 sx: {
3067 display: 'grid',
3068 gridTemplateColumns: {
3069 md: "repeat(".concat(cardsPerRow, ", 1fr)"),
3070 xs: 'repeat(1, 1fr)'
3071 },
3072 gap: 2
3073 }
3074 }, addonsArray.map(function (item) {
3075 var linkTarget = item.hasOwnProperty('target') ? item.target : '_blank';
3076 return /*#__PURE__*/_react.default.createElement(_Card.default, {
3077 key: item.title,
3078 elevation: 0,
3079 sx: {
3080 display: 'flex',
3081 border: 1,
3082 borderRadius: 1,
3083 borderColor: 'action.focus'
3084 }
3085 }, /*#__PURE__*/_react.default.createElement(_CardContent.default, {
3086 sx: {
3087 display: 'flex',
3088 flexDirection: 'column',
3089 justifyContent: 'space-between',
3090 gap: 3,
3091 p: 3
3092 }
3093 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_CardMedia.default, {
3094 image: item.image,
3095 sx: {
3096 height: '58px',
3097 width: '58px',
3098 mb: 2
3099 }
3100 }), /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3101 variant: "subtitle2"
3102 }, item.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3103 variant: "body2",
3104 color: "text.secondary"
3105 }, item.description))), /*#__PURE__*/_react.default.createElement(_CardActions.default, {
3106 sx: {
3107 p: 0
3108 }
3109 }, /*#__PURE__*/_react.default.createElement(_Button.default, {
3110 variant: "outlined",
3111 size: "small",
3112 color: "promotion",
3113 href: item.url,
3114 target: linkTarget,
3115 onClick: function onClick() {
3116 return handleAddonClick(item.title, item.url);
3117 }
3118 }, item.button_label))));
3119 })), /*#__PURE__*/_react.default.createElement(_Link.default, {
3120 variant: "body2",
3121 color: "info.main",
3122 underline: "none",
3123 href: "".concat(domain).concat(props.addonsData.footer.file_path)
3124 }, props.addonsData.footer.label));
3125 };
3126 var _default = exports["default"] = Addons;
3127 Addons.propTypes = {
3128 addonsData: PropTypes.object.isRequired,
3129 adminUrl: PropTypes.string.isRequired
3130 };
3131
3132 /***/ }),
3133
3134 /***/ "../modules/home/assets/js/components/home-screen/create-new-page-dialog.js":
3135 /*!**********************************************************************************!*\
3136 !*** ../modules/home/assets/js/components/home-screen/create-new-page-dialog.js ***!
3137 \**********************************************************************************/
3138 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3139
3140 "use strict";
3141 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
3142 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3143
3144
3145 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3146 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3147 Object.defineProperty(exports, "__esModule", ({
3148 value: true
3149 }));
3150 exports["default"] = void 0;
3151 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3152 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3153 var _DialogHeader = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogHeader */ "@elementor/ui/DialogHeader"));
3154 var _DialogHeaderGroup = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogHeaderGroup */ "@elementor/ui/DialogHeaderGroup"));
3155 var _DialogTitle = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogTitle */ "@elementor/ui/DialogTitle"));
3156 var _DialogContent = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogContent */ "@elementor/ui/DialogContent"));
3157 var _DialogContentText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogContentText */ "@elementor/ui/DialogContentText"));
3158 var _TextField = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/TextField */ "@elementor/ui/TextField"));
3159 var _DialogActions = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/DialogActions */ "@elementor/ui/DialogActions"));
3160 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
3161 var _Dialog = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Dialog */ "@elementor/ui/Dialog"));
3162 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
3163 var CreateNewPageDialog = function CreateNewPageDialog(_ref) {
3164 var url = _ref.url,
3165 isOpen = _ref.isOpen,
3166 closedDialogCallback = _ref.closedDialogCallback;
3167 var _React$useState = _react.default.useState(false),
3168 _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
3169 open = _React$useState2[0],
3170 setOpen = _React$useState2[1];
3171 var _React$useState3 = _react.default.useState(''),
3172 _React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
3173 pageName = _React$useState4[0],
3174 setPageName = _React$useState4[1];
3175 (0, _react.useEffect)(function () {
3176 setOpen(isOpen);
3177 }, [isOpen]);
3178 var handleDialogClose = function handleDialogClose() {
3179 setOpen(false);
3180 closedDialogCallback();
3181 };
3182 var handleChange = function handleChange(event) {
3183 var urlParams = new URLSearchParams();
3184 urlParams.append('post_data[post_title]', event.target.value);
3185 setPageName(urlParams.toString());
3186 };
3187 return /*#__PURE__*/_react.default.createElement(_Dialog.default, {
3188 open: open,
3189 onClose: handleDialogClose,
3190 maxWidth: "xs",
3191 width: "xs",
3192 fullWidth: true
3193 }, /*#__PURE__*/_react.default.createElement(_DialogHeader.default, null, /*#__PURE__*/_react.default.createElement(_DialogHeaderGroup.default, null, /*#__PURE__*/_react.default.createElement(_DialogTitle.default, null, __('Name your page', 'elementor')))), /*#__PURE__*/_react.default.createElement(_DialogContent.default, {
3194 dividers: true
3195 }, /*#__PURE__*/_react.default.createElement(_DialogContentText.default, {
3196 sx: {
3197 mb: 2
3198 }
3199 }, __('To proceed, please name your first page,', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), __('or rename it later.', 'elementor')), /*#__PURE__*/_react.default.createElement(_TextField.default, {
3200 onChange: handleChange,
3201 fullWidth: true,
3202 placeholder: __('New Page', 'elementor')
3203 })), /*#__PURE__*/_react.default.createElement(_DialogActions.default, null, /*#__PURE__*/_react.default.createElement(_Button.default, {
3204 onClick: handleDialogClose,
3205 color: "secondary"
3206 }, __('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_Button.default, {
3207 variant: "contained",
3208 href: pageName ? url + '&' + pageName : url,
3209 target: "_blank"
3210 }, __('Save', 'elementor'))));
3211 };
3212 var _default = exports["default"] = CreateNewPageDialog;
3213 CreateNewPageDialog.propTypes = {
3214 url: PropTypes.string.isRequired,
3215 isOpen: PropTypes.bool.isRequired,
3216 closedDialogCallback: PropTypes.func.isRequired
3217 };
3218
3219 /***/ }),
3220
3221 /***/ "../modules/home/assets/js/components/home-screen/create-with-ai-banner.js":
3222 /*!*********************************************************************************!*\
3223 !*** ../modules/home/assets/js/components/home-screen/create-with-ai-banner.js ***!
3224 \*********************************************************************************/
3225 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3226
3227 "use strict";
3228 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3229
3230
3231 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3232 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3233 Object.defineProperty(exports, "__esModule", ({
3234 value: true
3235 }));
3236 exports["default"] = void 0;
3237 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3238 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3239 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
3240 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3241 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3242 var _Typography = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Typography */ "@elementor/ui/Typography"));
3243 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
3244 var _promoTracking = __webpack_require__(/*! ../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
3245 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
3246 var CreateWithAIBanner = function CreateWithAIBanner(_ref) {
3247 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
3248 var createWithAIData = props.createWithAIData;
3249 var _useState = (0, _react.useState)(''),
3250 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3251 inputValue = _useState2[0],
3252 setInputValue = _useState2[1];
3253 if (!createWithAIData) {
3254 return null;
3255 }
3256 var title = createWithAIData.title,
3257 description = createWithAIData.description,
3258 inputPlaceholder = createWithAIData.input_placeholder,
3259 buttonTitle = createWithAIData.button_title,
3260 buttonCtaUrl = createWithAIData.button_cta_url,
3261 backgroundImage = createWithAIData.background_image,
3262 utmSource = createWithAIData.utm_source,
3263 utmMedium = createWithAIData.utm_medium,
3264 utmCampaign = createWithAIData.utm_campaign;
3265 var handleInputChange = function handleInputChange(event) {
3266 setInputValue(event.target.value);
3267 };
3268 var getButtonHref = function getButtonHref() {
3269 if (!inputValue) {
3270 return buttonCtaUrl;
3271 }
3272 var url = new URL(buttonCtaUrl);
3273 url.searchParams.append('prompt', inputValue);
3274 url.searchParams.append('utm_source', utmSource);
3275 url.searchParams.append('utm_medium', utmMedium);
3276 url.searchParams.append('utm_campaign', utmCampaign);
3277 return url.toString();
3278 };
3279 var handleNavigation = function handleNavigation() {
3280 if (!inputValue) {
3281 return;
3282 }
3283 var destination = getButtonHref();
3284 (0, _promoTracking.trackPromoClick)(title, destination, (0, _promoTracking.getHomeScreenPath)('ai_banner'));
3285 window.open(destination, '_blank');
3286 setInputValue('');
3287 };
3288 var handleKeyDown = function handleKeyDown(event) {
3289 if ('Enter' === event.key) {
3290 event.preventDefault();
3291 handleNavigation();
3292 }
3293 };
3294 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
3295 elevation: 0,
3296 sx: {
3297 display: 'flex',
3298 flexDirection: 'column',
3299 py: 3,
3300 px: 4,
3301 gap: 2,
3302 backgroundImage: "url(".concat(backgroundImage, ")"),
3303 backgroundSize: 'cover',
3304 backgroundPosition: 'right center',
3305 backgroundRepeat: 'no-repeat'
3306 }
3307 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3308 gap: 1,
3309 justifyContent: "center"
3310 }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
3311 variant: "h6"
3312 }, title), /*#__PURE__*/_react.default.createElement(_Typography.default, {
3313 variant: "body2",
3314 color: "secondary"
3315 }, description)), /*#__PURE__*/_react.default.createElement(_ui.Box, {
3316 sx: {
3317 display: 'flex',
3318 flexDirection: {
3319 xs: 'column',
3320 sm: 'row'
3321 },
3322 gap: 2,
3323 mt: 1
3324 }
3325 }, /*#__PURE__*/_react.default.createElement(_ui.TextField, {
3326 fullWidth: true,
3327 placeholder: inputPlaceholder,
3328 variant: "outlined",
3329 color: "secondary",
3330 size: "small",
3331 sx: {
3332 flex: 1
3333 },
3334 value: inputValue,
3335 onChange: handleInputChange,
3336 onKeyDown: handleKeyDown
3337 }), /*#__PURE__*/_react.default.createElement(_Button.default, {
3338 variant: "outlined",
3339 size: "small",
3340 color: "secondary",
3341 startIcon: /*#__PURE__*/_react.default.createElement("span", {
3342 className: "eicon-ai"
3343 }),
3344 onClick: handleNavigation
3345 }, buttonTitle)));
3346 };
3347 CreateWithAIBanner.propTypes = {
3348 createWithAIData: PropTypes.object
3349 };
3350 var _default = exports["default"] = CreateWithAIBanner;
3351
3352 /***/ }),
3353
3354 /***/ "../modules/home/assets/js/components/home-screen/external-links-section.js":
3355 /*!**********************************************************************************!*\
3356 !*** ../modules/home/assets/js/components/home-screen/external-links-section.js ***!
3357 \**********************************************************************************/
3358 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3359
3360 "use strict";
3361 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3362
3363
3364 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3365 Object.defineProperty(exports, "__esModule", ({
3366 value: true
3367 }));
3368 exports["default"] = void 0;
3369 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3370 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
3371 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3372 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3373 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
3374 var _ListItemButton = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemButton */ "@elementor/ui/ListItemButton"));
3375 var _ListItemText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemText */ "@elementor/ui/ListItemText"));
3376 var _Divider = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Divider */ "@elementor/ui/Divider"));
3377 var ExternalLinksSection = function ExternalLinksSection(_ref) {
3378 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
3379 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
3380 elevation: 0,
3381 sx: {
3382 px: 3
3383 }
3384 }, /*#__PURE__*/_react.default.createElement(_List.default, null, props.externalLinksData.map(function (item, index) {
3385 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3386 key: item.label
3387 }, /*#__PURE__*/_react.default.createElement(_ListItemButton.default, {
3388 href: item.url,
3389 target: "_blank",
3390 sx: {
3391 '&:hover': {
3392 backgroundColor: 'initial'
3393 },
3394 gap: 2,
3395 px: 0,
3396 py: 2
3397 }
3398 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
3399 component: "img",
3400 src: item.image,
3401 sx: {
3402 width: '38px'
3403 }
3404 }), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
3405 sx: {
3406 color: 'text.secondary'
3407 },
3408 primary: item.label
3409 })), index < props.externalLinksData.length - 1 && /*#__PURE__*/_react.default.createElement(_Divider.default, null));
3410 })));
3411 };
3412 var _default = exports["default"] = ExternalLinksSection;
3413 ExternalLinksSection.propTypes = {
3414 externalLinksData: PropTypes.array.isRequired
3415 };
3416
3417 /***/ }),
3418
3419 /***/ "../modules/home/assets/js/components/home-screen/get-started-list-item.js":
3420 /*!*********************************************************************************!*\
3421 !*** ../modules/home/assets/js/components/home-screen/get-started-list-item.js ***!
3422 \*********************************************************************************/
3423 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3424
3425 "use strict";
3426 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3427
3428
3429 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3430 Object.defineProperty(exports, "__esModule", ({
3431 value: true
3432 }));
3433 exports["default"] = void 0;
3434 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3435 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3436 var _ListItem = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItem */ "@elementor/ui/ListItem"));
3437 var _ListItemText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemText */ "@elementor/ui/ListItemText"));
3438 var _Link = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Link */ "@elementor/ui/Link"));
3439 var _Box = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Box */ "@elementor/ui/Box"));
3440 var _createNewPageDialog = _interopRequireDefault(__webpack_require__(/*! ./create-new-page-dialog */ "../modules/home/assets/js/components/home-screen/create-new-page-dialog.js"));
3441 var GetStartedListItem = function GetStartedListItem(_ref) {
3442 var item = _ref.item,
3443 image = _ref.image,
3444 adminUrl = _ref.adminUrl;
3445 var url = item.is_relative_url ? adminUrl + item.url : item.url;
3446 var _React$useState = _react.default.useState(false),
3447 _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
3448 isOpen = _React$useState2[0],
3449 openDialog = _React$useState2[1];
3450 var handleLinkClick = function handleLinkClick(event) {
3451 if (!item.new_page) {
3452 return;
3453 }
3454 event.preventDefault();
3455 openDialog(true);
3456 };
3457 return /*#__PURE__*/_react.default.createElement(_ListItem.default, {
3458 alignItems: "flex-start",
3459 sx: {
3460 gap: 1,
3461 p: 0,
3462 maxWidth: '150px'
3463 }
3464 }, /*#__PURE__*/_react.default.createElement(_Box.default, {
3465 component: "img",
3466 src: image
3467 }), /*#__PURE__*/_react.default.createElement(_Box.default, null, /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
3468 primary: item.title,
3469 primaryTypographyProps: {
3470 variant: 'subtitle1'
3471 },
3472 sx: {
3473 my: 0
3474 }
3475 }), /*#__PURE__*/_react.default.createElement(_Link.default, {
3476 variant: "body2",
3477 color: item.title_small_color ? item.title_small_color : 'text.tertiary',
3478 underline: "hover",
3479 href: url,
3480 target: "_blank",
3481 onClick: handleLinkClick
3482 }, item.title_small)), item.new_page && /*#__PURE__*/_react.default.createElement(_createNewPageDialog.default, {
3483 url: url,
3484 isOpen: isOpen,
3485 closedDialogCallback: function closedDialogCallback() {
3486 return openDialog(false);
3487 }
3488 }));
3489 };
3490 var _default = exports["default"] = GetStartedListItem;
3491 GetStartedListItem.propTypes = {
3492 item: PropTypes.shape({
3493 title: PropTypes.string.isRequired,
3494 title_small: PropTypes.string.isRequired,
3495 url: PropTypes.string.isRequired,
3496 new_page: PropTypes.bool,
3497 is_relative_url: PropTypes.bool,
3498 title_small_color: PropTypes.string
3499 }).isRequired,
3500 adminUrl: PropTypes.string.isRequired,
3501 image: PropTypes.string
3502 };
3503
3504 /***/ }),
3505
3506 /***/ "../modules/home/assets/js/components/home-screen/get-started-section.js":
3507 /*!*******************************************************************************!*\
3508 !*** ../modules/home/assets/js/components/home-screen/get-started-section.js ***!
3509 \*******************************************************************************/
3510 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3511
3512 "use strict";
3513 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3514
3515
3516 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3517 Object.defineProperty(exports, "__esModule", ({
3518 value: true
3519 }));
3520 exports["default"] = void 0;
3521 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3522 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
3523 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3524 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3525 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
3526 var _getStartedListItem = _interopRequireDefault(__webpack_require__(/*! ./get-started-list-item */ "../modules/home/assets/js/components/home-screen/get-started-list-item.js"));
3527 var GetStarted = function GetStarted(_ref) {
3528 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
3529 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
3530 elevation: 0,
3531 sx: {
3532 p: 3,
3533 display: 'flex',
3534 flexDirection: 'column',
3535 gap: 2
3536 }
3537 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3538 variant: "h6"
3539 }, props.getStartedData.header.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3540 variant: "body2",
3541 color: "text.secondary"
3542 }, props.getStartedData.header.description)), /*#__PURE__*/_react.default.createElement(_List.default, {
3543 sx: {
3544 display: 'grid',
3545 gridTemplateColumns: {
3546 md: 'repeat(4, 1fr)',
3547 xs: 'repeat(2, 1fr)'
3548 },
3549 columnGap: {
3550 md: 9,
3551 xs: 7
3552 },
3553 rowGap: 3
3554 }
3555 }, props.getStartedData.repeater.map(function (item) {
3556 return /*#__PURE__*/_react.default.createElement(_getStartedListItem.default, {
3557 key: item.title,
3558 item: item,
3559 image: item.image,
3560 adminUrl: props.adminUrl
3561 });
3562 })));
3563 };
3564 var _default = exports["default"] = GetStarted;
3565 GetStarted.propTypes = {
3566 getStartedData: PropTypes.object.isRequired,
3567 adminUrl: PropTypes.string.isRequired
3568 };
3569
3570 /***/ }),
3571
3572 /***/ "../modules/home/assets/js/components/home-screen/home-screen.js":
3573 /*!***********************************************************************!*\
3574 !*** ../modules/home/assets/js/components/home-screen/home-screen.js ***!
3575 \***********************************************************************/
3576 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3577
3578 "use strict";
3579 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3580
3581
3582 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3583 Object.defineProperty(exports, "__esModule", ({
3584 value: true
3585 }));
3586 exports["default"] = void 0;
3587 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3588 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3589 var _topSection = _interopRequireDefault(__webpack_require__(/*! ./top-section */ "../modules/home/assets/js/components/home-screen/top-section.js"));
3590 var _sidebarPromotion = _interopRequireDefault(__webpack_require__(/*! ./sidebar-promotion */ "../modules/home/assets/js/components/home-screen/sidebar-promotion.js"));
3591 var _addonsSection = _interopRequireDefault(__webpack_require__(/*! ./addons-section */ "../modules/home/assets/js/components/home-screen/addons-section.js"));
3592 var _externalLinksSection = _interopRequireDefault(__webpack_require__(/*! ./external-links-section */ "../modules/home/assets/js/components/home-screen/external-links-section.js"));
3593 var _getStartedSection = _interopRequireDefault(__webpack_require__(/*! ./get-started-section */ "../modules/home/assets/js/components/home-screen/get-started-section.js"));
3594 var _createWithAiBanner = _interopRequireDefault(__webpack_require__(/*! ./create-with-ai-banner */ "../modules/home/assets/js/components/home-screen/create-with-ai-banner.js"));
3595 var HomeScreen = function HomeScreen(props) {
3596 var hasSidebarPromotion = props.homeScreenData.hasOwnProperty('sidebar_promotion_variants');
3597 return /*#__PURE__*/ /* Box wrapper around the Container is needed to neutralize wp-content area left-padding */_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Container, {
3598 disableGutters: true,
3599 maxWidth: "lg",
3600 sx: {
3601 display: 'flex',
3602 flexDirection: 'column',
3603 gap: {
3604 xs: 1,
3605 md: 3
3606 },
3607 pt: {
3608 xs: 2,
3609 md: 6
3610 },
3611 pb: 2
3612 }
3613 }, props.homeScreenData.top_with_licences && /*#__PURE__*/_react.default.createElement(_topSection.default, {
3614 topData: props.homeScreenData.top_with_licences,
3615 buttonCtaUrl: props.homeScreenData.button_cta_url
3616 }), /*#__PURE__*/_react.default.createElement(_ui.Box, {
3617 sx: {
3618 display: 'flex',
3619 flexDirection: {
3620 xs: 'column',
3621 sm: 'row'
3622 },
3623 justifyContent: 'space-between',
3624 gap: 3
3625 }
3626 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3627 sx: {
3628 flex: 1,
3629 gap: 3
3630 }
3631 }, props.homeScreenData.create_with_ai && /*#__PURE__*/_react.default.createElement(_createWithAiBanner.default, {
3632 createWithAIData: props.homeScreenData.create_with_ai
3633 }), /*#__PURE__*/_react.default.createElement(_getStartedSection.default, {
3634 getStartedData: props.homeScreenData.get_started,
3635 adminUrl: props.adminUrl
3636 }), props.homeScreenData.add_ons && /*#__PURE__*/_react.default.createElement(_addonsSection.default, {
3637 addonsData: props.homeScreenData.add_ons,
3638 adminUrl: props.adminUrl
3639 })), /*#__PURE__*/_react.default.createElement(_ui.Container, {
3640 maxWidth: "xs",
3641 disableGutters: true,
3642 sx: {
3643 width: {
3644 sm: '305px'
3645 },
3646 display: 'flex',
3647 flexDirection: 'column',
3648 gap: 3
3649 }
3650 }, hasSidebarPromotion && /*#__PURE__*/_react.default.createElement(_sidebarPromotion.default, {
3651 sideData: props.homeScreenData.sidebar_promotion_variants
3652 }), /*#__PURE__*/_react.default.createElement(_externalLinksSection.default, {
3653 externalLinksData: props.homeScreenData.external_links
3654 })))));
3655 };
3656 HomeScreen.propTypes = {
3657 homeScreenData: PropTypes.object,
3658 adminUrl: PropTypes.string
3659 };
3660 var _default = exports["default"] = HomeScreen;
3661
3662 /***/ }),
3663
3664 /***/ "../modules/home/assets/js/components/home-screen/promotions/sidebar-banner.js":
3665 /*!*************************************************************************************!*\
3666 !*** ../modules/home/assets/js/components/home-screen/promotions/sidebar-banner.js ***!
3667 \*************************************************************************************/
3668 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3669
3670 "use strict";
3671 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3672
3673
3674 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3675 Object.defineProperty(exports, "__esModule", ({
3676 value: true
3677 }));
3678 exports["default"] = void 0;
3679 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3680 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3681 var _Link = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Link */ "@elementor/ui/Link"));
3682 var _promoTracking = __webpack_require__(/*! ../../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
3683 var SidebarBanner = function SidebarBanner(_ref) {
3684 var image = _ref.image,
3685 link = _ref.link;
3686 var handleClick = function handleClick() {
3687 (0, _promoTracking.trackPromoClick)('Sidebar Banner', link, (0, _promoTracking.getHomeScreenPath)('sidebar'));
3688 };
3689 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
3690 elevation: 0,
3691 sx: {
3692 overflow: 'hidden'
3693 }
3694 }, /*#__PURE__*/_react.default.createElement(_Link.default, {
3695 target: "_blank",
3696 href: link,
3697 onClick: handleClick,
3698 sx: {
3699 lineHeight: 0,
3700 display: 'block',
3701 width: '100%',
3702 height: '100%',
3703 boxShadow: 'none',
3704 '&:focus': {
3705 boxShadow: 'none'
3706 },
3707 '&:active': {
3708 boxShadow: 'none'
3709 }
3710 }
3711 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
3712 component: 'img',
3713 src: image,
3714 sx: {
3715 width: '100%',
3716 height: '100%'
3717 }
3718 })));
3719 };
3720 var _default = exports["default"] = SidebarBanner;
3721 SidebarBanner.propTypes = {
3722 image: PropTypes.string.isRequired,
3723 link: PropTypes.string.isRequired
3724 };
3725
3726 /***/ }),
3727
3728 /***/ "../modules/home/assets/js/components/home-screen/promotions/sidebar-default.js":
3729 /*!**************************************************************************************!*\
3730 !*** ../modules/home/assets/js/components/home-screen/promotions/sidebar-default.js ***!
3731 \**************************************************************************************/
3732 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3733
3734 "use strict";
3735 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3736
3737
3738 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3739 Object.defineProperty(exports, "__esModule", ({
3740 value: true
3741 }));
3742 exports["default"] = void 0;
3743 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3744 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3745 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
3746 var _List = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/List */ "@elementor/ui/List"));
3747 var _ListItem = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItem */ "@elementor/ui/ListItem"));
3748 var _sideBarCheckIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/side-bar-check-icon */ "../modules/home/assets/js/icons/side-bar-check-icon.js"));
3749 var _ListItemText = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/ListItemText */ "@elementor/ui/ListItemText"));
3750 var _promoTracking = __webpack_require__(/*! ../../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
3751 var SidebarDefault = function SidebarDefault(_ref) {
3752 var header = _ref.header,
3753 cta = _ref.cta,
3754 repeater = _ref.repeater;
3755 var handleCtaClick = function handleCtaClick() {
3756 (0, _promoTracking.trackPromoClick)(header.title, cta.url, (0, _promoTracking.getHomeScreenPath)('sidebar'));
3757 };
3758 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
3759 elevation: 0,
3760 sx: {
3761 p: 3
3762 }
3763 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3764 gap: 1.5,
3765 alignItems: "center",
3766 textAlign: "center",
3767 sx: {
3768 pb: 4
3769 }
3770 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
3771 component: "img",
3772 src: header.image
3773 }), /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3774 variant: "h6"
3775 }, header.title), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3776 variant: "body2",
3777 color: "text.secondary"
3778 }, header.description)), /*#__PURE__*/_react.default.createElement(_Button.default, {
3779 variant: "contained",
3780 size: "medium",
3781 color: "promotion",
3782 href: cta.url,
3783 onClick: handleCtaClick,
3784 startIcon: /*#__PURE__*/_react.default.createElement(_ui.Box, {
3785 component: "img",
3786 src: cta.image,
3787 sx: {
3788 width: '16px'
3789 }
3790 }),
3791 target: "_blank",
3792 sx: {
3793 maxWidth: 'fit-content'
3794 }
3795 }, cta.label)), /*#__PURE__*/_react.default.createElement(_List.default, {
3796 sx: {
3797 p: 0
3798 }
3799 }, repeater.map(function (item, index) {
3800 return /*#__PURE__*/_react.default.createElement(_ListItem.default, {
3801 key: index,
3802 sx: {
3803 p: 0,
3804 gap: 1
3805 }
3806 }, /*#__PURE__*/_react.default.createElement(_sideBarCheckIcon.default, null), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
3807 primaryTypographyProps: {
3808 variant: 'body2'
3809 },
3810 primary: item.title
3811 }));
3812 })));
3813 };
3814 var _default = exports["default"] = SidebarDefault;
3815 SidebarDefault.propTypes = {
3816 header: PropTypes.object.isRequired,
3817 cta: PropTypes.object.isRequired,
3818 repeater: PropTypes.array
3819 };
3820
3821 /***/ }),
3822
3823 /***/ "../modules/home/assets/js/components/home-screen/sidebar-promotion.js":
3824 /*!*****************************************************************************!*\
3825 !*** ../modules/home/assets/js/components/home-screen/sidebar-promotion.js ***!
3826 \*****************************************************************************/
3827 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3828
3829 "use strict";
3830 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3831
3832
3833 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3834 Object.defineProperty(exports, "__esModule", ({
3835 value: true
3836 }));
3837 exports["default"] = void 0;
3838 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3839 var _sidebarBanner = _interopRequireDefault(__webpack_require__(/*! ./promotions/sidebar-banner */ "../modules/home/assets/js/components/home-screen/promotions/sidebar-banner.js"));
3840 var _sidebarDefault = _interopRequireDefault(__webpack_require__(/*! ./promotions/sidebar-default */ "../modules/home/assets/js/components/home-screen/promotions/sidebar-default.js"));
3841 var SideBarPromotion = function SideBarPromotion(_ref) {
3842 var sideData = _ref.sideData;
3843 if ('banner' === sideData.type) {
3844 return /*#__PURE__*/_react.default.createElement(_sidebarBanner.default, sideData.data);
3845 }
3846 return /*#__PURE__*/_react.default.createElement(_sidebarDefault.default, sideData.data);
3847 };
3848 var _default = exports["default"] = SideBarPromotion;
3849 SideBarPromotion.propTypes = {
3850 sideData: PropTypes.object.isRequired
3851 };
3852
3853 /***/ }),
3854
3855 /***/ "../modules/home/assets/js/components/home-screen/top-section.js":
3856 /*!***********************************************************************!*\
3857 !*** ../modules/home/assets/js/components/home-screen/top-section.js ***!
3858 \***********************************************************************/
3859 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3860
3861 "use strict";
3862 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
3863
3864
3865 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3866 Object.defineProperty(exports, "__esModule", ({
3867 value: true
3868 }));
3869 exports["default"] = void 0;
3870 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3871 var _objectDestructuringEmpty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js"));
3872 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3873 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3874 var _Typography = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Typography */ "@elementor/ui/Typography"));
3875 var _Button = _interopRequireDefault(__webpack_require__(/*! @elementor/ui/Button */ "@elementor/ui/Button"));
3876 var _youtubeIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/youtube-icon */ "../modules/home/assets/js/icons/youtube-icon.js"));
3877 var _promoTracking = __webpack_require__(/*! ../../utils/promo-tracking */ "../modules/home/assets/js/utils/promo-tracking.js");
3878 var TopSection = function TopSection(_ref) {
3879 var props = (0, _extends2.default)({}, ((0, _objectDestructuringEmpty2.default)(_ref), _ref));
3880 var topData = props.topData,
3881 buttonCtaUrl = props.buttonCtaUrl;
3882 if (!topData) {
3883 return null;
3884 }
3885 var title = topData.title,
3886 description = topData.description,
3887 buttonCtaTitle = topData.button_cta_text,
3888 buttonCreatePageTitle = topData.button_create_page_title,
3889 youtubeEmbeddedId = topData.youtube_embed_id,
3890 buttonWatchURL = topData.button_watch_url,
3891 buttonWatchTitle = topData.button_watch_title;
3892 var ctaButtonTitle = buttonCtaTitle !== null && buttonCtaTitle !== void 0 ? buttonCtaTitle : buttonCreatePageTitle;
3893 var handleCtaClick = function handleCtaClick() {
3894 (0, _promoTracking.trackPromoClick)(ctaButtonTitle, buttonCtaUrl, (0, _promoTracking.getHomeScreenPath)('top_section'));
3895 };
3896 var handleWatchClick = function handleWatchClick() {
3897 (0, _promoTracking.trackPromoClick)(buttonWatchTitle, buttonWatchURL, (0, _promoTracking.getHomeScreenPath)('top_section'));
3898 };
3899 return /*#__PURE__*/_react.default.createElement(_ui.Paper, {
3900 elevation: 0,
3901 sx: {
3902 display: 'flex',
3903 flexDirection: {
3904 xs: 'column',
3905 sm: 'row'
3906 },
3907 justifyContent: 'space-between',
3908 py: {
3909 xs: 3,
3910 md: 3
3911 },
3912 px: {
3913 xs: 3,
3914 md: 4
3915 },
3916 gap: {
3917 xs: 2,
3918 sm: 3,
3919 lg: 22
3920 }
3921 }
3922 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3923 gap: 3,
3924 justifyContent: "center"
3925 }, /*#__PURE__*/_react.default.createElement(_ui.Box, null, /*#__PURE__*/_react.default.createElement(_Typography.default, {
3926 variant: "h6"
3927 }, title), /*#__PURE__*/_react.default.createElement(_Typography.default, {
3928 variant: "body2",
3929 color: "secondary"
3930 }, description)), /*#__PURE__*/_react.default.createElement(_ui.Box, {
3931 sx: {
3932 display: 'flex',
3933 gap: 1
3934 }
3935 }, /*#__PURE__*/_react.default.createElement(_Button.default, {
3936 "data-testid": "e-create-button",
3937 variant: "contained",
3938 size: "small",
3939 href: buttonCtaUrl,
3940 target: "_blank",
3941 onClick: handleCtaClick
3942 }, ctaButtonTitle), /*#__PURE__*/_react.default.createElement(_Button.default, {
3943 variant: "outlined",
3944 color: "secondary",
3945 size: "small",
3946 startIcon: /*#__PURE__*/_react.default.createElement(_youtubeIcon.default, null),
3947 href: buttonWatchURL,
3948 target: "_blank",
3949 onClick: handleWatchClick
3950 }, buttonWatchTitle))), /*#__PURE__*/_react.default.createElement(_ui.Box, {
3951 component: "iframe",
3952 src: "https://www.youtube.com/embed/".concat(youtubeEmbeddedId),
3953 title: "YouTube video player",
3954 frameBorder: "0",
3955 allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
3956 allowFullScreen: true,
3957 sx: {
3958 aspectRatio: '16/9',
3959 borderRadius: 1,
3960 display: 'flex',
3961 width: '100%',
3962 maxWidth: '365px'
3963 }
3964 }));
3965 };
3966 TopSection.propTypes = {
3967 topData: PropTypes.object.isRequired,
3968 buttonCtaUrl: PropTypes.string.isRequired
3969 };
3970 var _default = exports["default"] = TopSection;
3971
3972 /***/ }),
3973
3974 /***/ "../modules/home/assets/js/icons/side-bar-check-icon.js":
3975 /*!**************************************************************!*\
3976 !*** ../modules/home/assets/js/icons/side-bar-check-icon.js ***!
3977 \**************************************************************/
3978 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3979
3980 "use strict";
3981
3982
3983 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3984 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3985 Object.defineProperty(exports, "__esModule", ({
3986 value: true
3987 }));
3988 exports["default"] = void 0;
3989 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3990 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3991 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3992 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
3993 var SideBarCheckIcon = function SideBarCheckIcon(props) {
3994 return /*#__PURE__*/React.createElement(_ui.SvgIcon, (0, _extends2.default)({
3995 viewBox: "0 0 24 24"
3996 }, props), /*#__PURE__*/React.createElement("path", {
3997 fillRule: "evenodd",
3998 clipRule: "evenodd",
3999 d: "M9.09013 3.69078C10.273 3.2008 11.5409 2.94861 12.8213 2.94861C14.1017 2.94861 15.3695 3.2008 16.5525 3.69078C17.7354 4.18077 18.8102 4.89895 19.7156 5.80432C20.621 6.70969 21.3391 7.78452 21.8291 8.96744C22.3191 10.1504 22.5713 11.4182 22.5713 12.6986C22.5713 13.979 22.3191 15.2468 21.8291 16.4298C21.3391 17.6127 20.621 18.6875 19.7156 19.5929C18.8102 20.4983 17.7354 21.2165 16.5525 21.7064C15.3695 22.1964 14.1017 22.4486 12.8213 22.4486C11.5409 22.4486 10.2731 22.1964 9.09013 21.7064C7.9072 21.2165 6.83237 20.4983 5.927 19.5929C5.02163 18.6875 4.30345 17.6127 3.81346 16.4298C3.32348 15.2468 3.07129 13.979 3.07129 12.6986C3.07129 11.4182 3.32348 10.1504 3.81346 8.96744C4.30345 7.78452 5.02163 6.70969 5.927 5.80432C6.83237 4.89895 7.9072 4.18077 9.09013 3.69078ZM12.8213 4.44861C11.7379 4.44861 10.6651 4.662 9.66415 5.0766C8.66321 5.4912 7.75374 6.09889 6.98766 6.86498C6.22157 7.63106 5.61388 8.54053 5.19928 9.54147C4.78468 10.5424 4.57129 11.6152 4.57129 12.6986C4.57129 13.782 4.78468 14.8548 5.19928 15.8557C5.61388 16.8567 6.22157 17.7662 6.98766 18.5322C7.75374 19.2983 8.66322 19.906 9.66415 20.3206C10.6651 20.7352 11.7379 20.9486 12.8213 20.9486C13.9047 20.9486 14.9775 20.7352 15.9784 20.3206C16.9794 19.906 17.8888 19.2983 18.6549 18.5322C19.421 17.7662 20.0287 16.8567 20.4433 15.8557C20.8579 14.8548 21.0713 13.782 21.0713 12.6986C21.0713 11.6152 20.8579 10.5424 20.4433 9.54147C20.0287 8.54053 19.421 7.63106 18.6549 6.86498C17.8888 6.09889 16.9794 5.4912 15.9784 5.0766C14.9775 4.662 13.9047 4.44861 12.8213 4.44861Z",
4000 fill: "#93003F"
4001 }), /*#__PURE__*/React.createElement("path", {
4002 fillRule: "evenodd",
4003 clipRule: "evenodd",
4004 d: "M17.3213 9.69424C17.6142 9.98713 17.6142 10.462 17.3213 10.7549L12.3732 15.703C12.0803 15.9959 11.6054 15.9959 11.3125 15.703L8.83851 13.2289C8.54562 12.936 8.54562 12.4612 8.83851 12.1683C9.1314 11.8754 9.60628 11.8754 9.89917 12.1683L11.8429 14.112L16.2606 9.69424C16.5535 9.40135 17.0284 9.40135 17.3213 9.69424Z",
4005 fill: "#93003F"
4006 }));
4007 };
4008 var _default = exports["default"] = SideBarCheckIcon;
4009
4010 /***/ }),
4011
4012 /***/ "../modules/home/assets/js/icons/youtube-icon.js":
4013 /*!*******************************************************!*\
4014 !*** ../modules/home/assets/js/icons/youtube-icon.js ***!
4015 \*******************************************************/
4016 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4017
4018 "use strict";
4019
4020
4021 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4022 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4023 Object.defineProperty(exports, "__esModule", ({
4024 value: true
4025 }));
4026 exports["default"] = void 0;
4027 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4028 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4029 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4030 function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
4031 var YoutubeIcon = function YoutubeIcon(props) {
4032 return /*#__PURE__*/React.createElement(_ui.SvgIcon, (0, _extends2.default)({
4033 viewBox: "0 0 24 24"
4034 }, props), /*#__PURE__*/React.createElement("path", {
4035 fillRule: "evenodd",
4036 clipRule: "evenodd",
4037 d: "M7 5.75C5.20507 5.75 3.75 7.20507 3.75 9V15C3.75 16.7949 5.20507 18.25 7 18.25H17C18.7949 18.25 20.25 16.7949 20.25 15V9C20.25 7.20507 18.7949 5.75 17 5.75H7ZM2.25 9C2.25 6.37665 4.37665 4.25 7 4.25H17C19.6234 4.25 21.75 6.37665 21.75 9V15C21.75 17.6234 19.6234 19.75 17 19.75H7C4.37665 19.75 2.25 17.6234 2.25 15V9ZM9.63048 8.34735C9.86561 8.21422 10.1542 8.21786 10.3859 8.35688L15.3859 11.3569C15.6118 11.4924 15.75 11.7366 15.75 12C15.75 12.2634 15.6118 12.5076 15.3859 12.6431L10.3859 15.6431C10.1542 15.7821 9.86561 15.7858 9.63048 15.6526C9.39534 15.5195 9.25 15.2702 9.25 15V9C9.25 8.7298 9.39534 8.48048 9.63048 8.34735ZM10.75 10.3246V13.6754L13.5423 12L10.75 10.3246Z"
4038 }));
4039 };
4040 var _default = exports["default"] = YoutubeIcon;
4041
4042 /***/ }),
4043
4044 /***/ "../modules/home/assets/js/utils/promo-tracking.js":
4045 /*!*********************************************************!*\
4046 !*** ../modules/home/assets/js/utils/promo-tracking.js ***!
4047 \*********************************************************/
4048 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4049
4050 "use strict";
4051
4052
4053 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4054 Object.defineProperty(exports, "__esModule", ({
4055 value: true
4056 }));
4057 exports.trackPromoClick = exports.getHomeScreenPath = void 0;
4058 var _wpDashboardTracking = _interopRequireDefault(__webpack_require__(/*! ../../../../../app/assets/js/event-track/wp-dashboard-tracking */ "../app/assets/js/event-track/wp-dashboard-tracking.js"));
4059 var trackPromoClick = exports.trackPromoClick = function trackPromoClick(promoName, destination, path) {
4060 if (_wpDashboardTracking.default && 'function' === typeof _wpDashboardTracking.default.trackPromoClicked) {
4061 _wpDashboardTracking.default.trackPromoClicked(promoName, destination, path);
4062 }
4063 };
4064 var getHomeScreenPath = exports.getHomeScreenPath = function getHomeScreenPath(section) {
4065 return ['home', section];
4066 };
4067
4068 /***/ }),
4069
4070 /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
4071 /*!******************************************************************!*\
4072 !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
4073 \******************************************************************/
4074 /***/ ((module) => {
4075
4076 function _arrayLikeToArray(r, a) {
4077 (null == a || a > r.length) && (a = r.length);
4078 for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
4079 return n;
4080 }
4081 module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
4082
4083 /***/ }),
4084
4085 /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
4086 /*!****************************************************************!*\
4087 !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
4088 \****************************************************************/
4089 /***/ ((module) => {
4090
4091 function _arrayWithHoles(r) {
4092 if (Array.isArray(r)) return r;
4093 }
4094 module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
4095
4096 /***/ }),
4097
4098 /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
4099 /*!***********************************************************************!*\
4100 !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
4101 \***********************************************************************/
4102 /***/ ((module) => {
4103
4104 function _assertThisInitialized(e) {
4105 if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
4106 return e;
4107 }
4108 module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
4109
4110 /***/ }),
4111
4112 /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
4113 /*!****************************************************************!*\
4114 !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
4115 \****************************************************************/
4116 /***/ ((module) => {
4117
4118 function _classCallCheck(a, n) {
4119 if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function");
4120 }
4121 module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
4122
4123 /***/ }),
4124
4125 /***/ "../node_modules/@babel/runtime/helpers/createClass.js":
4126 /*!*************************************************************!*\
4127 !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
4128 \*************************************************************/
4129 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4130
4131 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
4132 function _defineProperties(e, r) {
4133 for (var t = 0; t < r.length; t++) {
4134 var o = r[t];
4135 o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);
4136 }
4137 }
4138 function _createClass(e, r, t) {
4139 return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", {
4140 writable: !1
4141 }), e;
4142 }
4143 module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
4144
4145 /***/ }),
4146
4147 /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
4148 /*!****************************************************************!*\
4149 !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
4150 \****************************************************************/
4151 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4152
4153 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
4154 function _defineProperty(e, r, t) {
4155 return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
4156 value: t,
4157 enumerable: !0,
4158 configurable: !0,
4159 writable: !0
4160 }) : e[r] = t, e;
4161 }
4162 module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
4163
4164 /***/ }),
4165
4166 /***/ "../node_modules/@babel/runtime/helpers/extends.js":
4167 /*!*********************************************************!*\
4168 !*** ../node_modules/@babel/runtime/helpers/extends.js ***!
4169 \*********************************************************/
4170 /***/ ((module) => {
4171
4172 function _extends() {
4173 return module.exports = _extends = Object.assign ? Object.assign.bind() : function (n) {
4174 for (var e = 1; e < arguments.length; e++) {
4175 var t = arguments[e];
4176 for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
4177 }
4178 return n;
4179 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _extends.apply(null, arguments);
4180 }
4181 module.exports = _extends, module.exports.__esModule = true, module.exports["default"] = module.exports;
4182
4183 /***/ }),
4184
4185 /***/ "../node_modules/@babel/runtime/helpers/get.js":
4186 /*!*****************************************************!*\
4187 !*** ../node_modules/@babel/runtime/helpers/get.js ***!
4188 \*****************************************************/
4189 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4190
4191 var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime/helpers/superPropBase.js");
4192 function _get() {
4193 return module.exports = _get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function (e, t, r) {
4194 var p = superPropBase(e, t);
4195 if (p) {
4196 var n = Object.getOwnPropertyDescriptor(p, t);
4197 return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value;
4198 }
4199 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _get.apply(null, arguments);
4200 }
4201 module.exports = _get, module.exports.__esModule = true, module.exports["default"] = module.exports;
4202
4203 /***/ }),
4204
4205 /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
4206 /*!****************************************************************!*\
4207 !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
4208 \****************************************************************/
4209 /***/ ((module) => {
4210
4211 function _getPrototypeOf(t) {
4212 return module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) {
4213 return t.__proto__ || Object.getPrototypeOf(t);
4214 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _getPrototypeOf(t);
4215 }
4216 module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
4217
4218 /***/ }),
4219
4220 /***/ "../node_modules/@babel/runtime/helpers/inherits.js":
4221 /*!**********************************************************!*\
4222 !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
4223 \**********************************************************/
4224 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4225
4226 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
4227 function _inherits(t, e) {
4228 if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function");
4229 t.prototype = Object.create(e && e.prototype, {
4230 constructor: {
4231 value: t,
4232 writable: !0,
4233 configurable: !0
4234 }
4235 }), Object.defineProperty(t, "prototype", {
4236 writable: !1
4237 }), e && setPrototypeOf(t, e);
4238 }
4239 module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
4240
4241 /***/ }),
4242
4243 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
4244 /*!***********************************************************************!*\
4245 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
4246 \***********************************************************************/
4247 /***/ ((module) => {
4248
4249 function _interopRequireDefault(e) {
4250 return e && e.__esModule ? e : {
4251 "default": e
4252 };
4253 }
4254 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
4255
4256 /***/ }),
4257
4258 /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
4259 /*!**********************************************************************!*\
4260 !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
4261 \**********************************************************************/
4262 /***/ ((module) => {
4263
4264 function _iterableToArrayLimit(r, l) {
4265 var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
4266 if (null != t) {
4267 var e,
4268 n,
4269 i,
4270 u,
4271 a = [],
4272 f = !0,
4273 o = !1;
4274 try {
4275 if (i = (t = t.call(r)).next, 0 === l) {
4276 if (Object(t) !== t) return;
4277 f = !1;
4278 } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
4279 } catch (r) {
4280 o = !0, n = r;
4281 } finally {
4282 try {
4283 if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
4284 } finally {
4285 if (o) throw n;
4286 }
4287 }
4288 return a;
4289 }
4290 }
4291 module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
4292
4293 /***/ }),
4294
4295 /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
4296 /*!*****************************************************************!*\
4297 !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
4298 \*****************************************************************/
4299 /***/ ((module) => {
4300
4301 function _nonIterableRest() {
4302 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
4303 }
4304 module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
4305
4306 /***/ }),
4307
4308 /***/ "../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js":
4309 /*!**************************************************************************!*\
4310 !*** ../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js ***!
4311 \**************************************************************************/
4312 /***/ ((module) => {
4313
4314 function _objectDestructuringEmpty(t) {
4315 if (null == t) throw new TypeError("Cannot destructure " + t);
4316 }
4317 module.exports = _objectDestructuringEmpty, module.exports.__esModule = true, module.exports["default"] = module.exports;
4318
4319 /***/ }),
4320
4321 /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
4322 /*!***************************************************************************!*\
4323 !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
4324 \***************************************************************************/
4325 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4326
4327 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
4328 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
4329 function _possibleConstructorReturn(t, e) {
4330 if (e && ("object" == _typeof(e) || "function" == typeof e)) return e;
4331 if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined");
4332 return assertThisInitialized(t);
4333 }
4334 module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
4335
4336 /***/ }),
4337
4338 /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
4339 /*!****************************************************************!*\
4340 !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
4341 \****************************************************************/
4342 /***/ ((module) => {
4343
4344 function _setPrototypeOf(t, e) {
4345 return module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {
4346 return t.__proto__ = e, t;
4347 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _setPrototypeOf(t, e);
4348 }
4349 module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
4350
4351 /***/ }),
4352
4353 /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
4354 /*!***************************************************************!*\
4355 !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
4356 \***************************************************************/
4357 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4358
4359 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
4360 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
4361 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
4362 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
4363 function _slicedToArray(r, e) {
4364 return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();
4365 }
4366 module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
4367
4368 /***/ }),
4369
4370 /***/ "../node_modules/@babel/runtime/helpers/superPropBase.js":
4371 /*!***************************************************************!*\
4372 !*** ../node_modules/@babel/runtime/helpers/superPropBase.js ***!
4373 \***************************************************************/
4374 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4375
4376 var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js");
4377 function _superPropBase(t, o) {
4378 for (; !{}.hasOwnProperty.call(t, o) && null !== (t = getPrototypeOf(t)););
4379 return t;
4380 }
4381 module.exports = _superPropBase, module.exports.__esModule = true, module.exports["default"] = module.exports;
4382
4383 /***/ }),
4384
4385 /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
4386 /*!*************************************************************!*\
4387 !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
4388 \*************************************************************/
4389 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4390
4391 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
4392 function toPrimitive(t, r) {
4393 if ("object" != _typeof(t) || !t) return t;
4394 var e = t[Symbol.toPrimitive];
4395 if (void 0 !== e) {
4396 var i = e.call(t, r || "default");
4397 if ("object" != _typeof(i)) return i;
4398 throw new TypeError("@@toPrimitive must return a primitive value.");
4399 }
4400 return ("string" === r ? String : Number)(t);
4401 }
4402 module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
4403
4404 /***/ }),
4405
4406 /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
4407 /*!***************************************************************!*\
4408 !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
4409 \***************************************************************/
4410 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4411
4412 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
4413 var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
4414 function toPropertyKey(t) {
4415 var i = toPrimitive(t, "string");
4416 return "symbol" == _typeof(i) ? i : i + "";
4417 }
4418 module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
4419
4420 /***/ }),
4421
4422 /***/ "../node_modules/@babel/runtime/helpers/typeof.js":
4423 /*!********************************************************!*\
4424 !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
4425 \********************************************************/
4426 /***/ ((module) => {
4427
4428 function _typeof(o) {
4429 "@babel/helpers - typeof";
4430
4431 return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
4432 return typeof o;
4433 } : function (o) {
4434 return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
4435 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
4436 }
4437 module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
4438
4439 /***/ }),
4440
4441 /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
4442 /*!****************************************************************************!*\
4443 !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
4444 \****************************************************************************/
4445 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4446
4447 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
4448 function _unsupportedIterableToArray(r, a) {
4449 if (r) {
4450 if ("string" == typeof r) return arrayLikeToArray(r, a);
4451 var t = {}.toString.call(r).slice(8, -1);
4452 return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;
4453 }
4454 }
4455 module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
4456
4457 /***/ }),
4458
4459 /***/ "../node_modules/object-assign/index.js":
4460 /*!**********************************************!*\
4461 !*** ../node_modules/object-assign/index.js ***!
4462 \**********************************************/
4463 /***/ ((module) => {
4464
4465 "use strict";
4466 /*
4467 object-assign
4468 (c) Sindre Sorhus
4469 @license MIT
4470 */
4471
4472
4473 /* eslint-disable no-unused-vars */
4474 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
4475 var hasOwnProperty = Object.prototype.hasOwnProperty;
4476 var propIsEnumerable = Object.prototype.propertyIsEnumerable;
4477
4478 function toObject(val) {
4479 if (val === null || val === undefined) {
4480 throw new TypeError('Object.assign cannot be called with null or undefined');
4481 }
4482
4483 return Object(val);
4484 }
4485
4486 function shouldUseNative() {
4487 try {
4488 if (!Object.assign) {
4489 return false;
4490 }
4491
4492 // Detect buggy property enumeration order in older V8 versions.
4493
4494 // https://bugs.chromium.org/p/v8/issues/detail?id=4118
4495 var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
4496 test1[5] = 'de';
4497 if (Object.getOwnPropertyNames(test1)[0] === '5') {
4498 return false;
4499 }
4500
4501 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
4502 var test2 = {};
4503 for (var i = 0; i < 10; i++) {
4504 test2['_' + String.fromCharCode(i)] = i;
4505 }
4506 var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
4507 return test2[n];
4508 });
4509 if (order2.join('') !== '0123456789') {
4510 return false;
4511 }
4512
4513 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
4514 var test3 = {};
4515 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
4516 test3[letter] = letter;
4517 });
4518 if (Object.keys(Object.assign({}, test3)).join('') !==
4519 'abcdefghijklmnopqrst') {
4520 return false;
4521 }
4522
4523 return true;
4524 } catch (err) {
4525 // We don't expect any of the above to throw, but better to be safe.
4526 return false;
4527 }
4528 }
4529
4530 module.exports = shouldUseNative() ? Object.assign : function (target, source) {
4531 var from;
4532 var to = toObject(target);
4533 var symbols;
4534
4535 for (var s = 1; s < arguments.length; s++) {
4536 from = Object(arguments[s]);
4537
4538 for (var key in from) {
4539 if (hasOwnProperty.call(from, key)) {
4540 to[key] = from[key];
4541 }
4542 }
4543
4544 if (getOwnPropertySymbols) {
4545 symbols = getOwnPropertySymbols(from);
4546 for (var i = 0; i < symbols.length; i++) {
4547 if (propIsEnumerable.call(from, symbols[i])) {
4548 to[symbols[i]] = from[symbols[i]];
4549 }
4550 }
4551 }
4552 }
4553
4554 return to;
4555 };
4556
4557
4558 /***/ }),
4559
4560 /***/ "../node_modules/prop-types/checkPropTypes.js":
4561 /*!****************************************************!*\
4562 !*** ../node_modules/prop-types/checkPropTypes.js ***!
4563 \****************************************************/
4564 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4565
4566 "use strict";
4567 /**
4568 * Copyright (c) 2013-present, Facebook, Inc.
4569 *
4570 * This source code is licensed under the MIT license found in the
4571 * LICENSE file in the root directory of this source tree.
4572 */
4573
4574
4575
4576 var printWarning = function() {};
4577
4578 if (true) {
4579 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
4580 var loggedTypeFailures = {};
4581 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
4582
4583 printWarning = function(text) {
4584 var message = 'Warning: ' + text;
4585 if (typeof console !== 'undefined') {
4586 console.error(message);
4587 }
4588 try {
4589 // --- Welcome to debugging React ---
4590 // This error was thrown as a convenience so that you can use this stack
4591 // to find the callsite that caused this warning to fire.
4592 throw new Error(message);
4593 } catch (x) { /**/ }
4594 };
4595 }
4596
4597 /**
4598 * Assert that the values match with the type specs.
4599 * Error messages are memorized and will only be shown once.
4600 *
4601 * @param {object} typeSpecs Map of name to a ReactPropType
4602 * @param {object} values Runtime values that need to be type-checked
4603 * @param {string} location e.g. "prop", "context", "child context"
4604 * @param {string} componentName Name of the component for error messages.
4605 * @param {?Function} getStack Returns the component stack.
4606 * @private
4607 */
4608 function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
4609 if (true) {
4610 for (var typeSpecName in typeSpecs) {
4611 if (has(typeSpecs, typeSpecName)) {
4612 var error;
4613 // Prop type validation may throw. In case they do, we don't want to
4614 // fail the render phase where it didn't fail before. So we log it.
4615 // After these have been cleaned up, we'll let them throw.
4616 try {
4617 // This is intentionally an invariant that gets caught. It's the same
4618 // behavior as without this statement except with a better message.
4619 if (typeof typeSpecs[typeSpecName] !== 'function') {
4620 var err = Error(
4621 (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
4622 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
4623 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
4624 );
4625 err.name = 'Invariant Violation';
4626 throw err;
4627 }
4628 error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
4629 } catch (ex) {
4630 error = ex;
4631 }
4632 if (error && !(error instanceof Error)) {
4633 printWarning(
4634 (componentName || 'React class') + ': type specification of ' +
4635 location + ' `' + typeSpecName + '` is invalid; the type checker ' +
4636 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
4637 'You may have forgotten to pass an argument to the type checker ' +
4638 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
4639 'shape all require an argument).'
4640 );
4641 }
4642 if (error instanceof Error && !(error.message in loggedTypeFailures)) {
4643 // Only monitor this failure once because there tends to be a lot of the
4644 // same error.
4645 loggedTypeFailures[error.message] = true;
4646
4647 var stack = getStack ? getStack() : '';
4648
4649 printWarning(
4650 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
4651 );
4652 }
4653 }
4654 }
4655 }
4656 }
4657
4658 /**
4659 * Resets warning cache when testing.
4660 *
4661 * @private
4662 */
4663 checkPropTypes.resetWarningCache = function() {
4664 if (true) {
4665 loggedTypeFailures = {};
4666 }
4667 }
4668
4669 module.exports = checkPropTypes;
4670
4671
4672 /***/ }),
4673
4674 /***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
4675 /*!*************************************************************!*\
4676 !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
4677 \*************************************************************/
4678 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4679
4680 "use strict";
4681 /**
4682 * Copyright (c) 2013-present, Facebook, Inc.
4683 *
4684 * This source code is licensed under the MIT license found in the
4685 * LICENSE file in the root directory of this source tree.
4686 */
4687
4688
4689
4690 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
4691 var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
4692
4693 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
4694 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
4695 var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
4696
4697 var printWarning = function() {};
4698
4699 if (true) {
4700 printWarning = function(text) {
4701 var message = 'Warning: ' + text;
4702 if (typeof console !== 'undefined') {
4703 console.error(message);
4704 }
4705 try {
4706 // --- Welcome to debugging React ---
4707 // This error was thrown as a convenience so that you can use this stack
4708 // to find the callsite that caused this warning to fire.
4709 throw new Error(message);
4710 } catch (x) {}
4711 };
4712 }
4713
4714 function emptyFunctionThatReturnsNull() {
4715 return null;
4716 }
4717
4718 module.exports = function(isValidElement, throwOnDirectAccess) {
4719 /* global Symbol */
4720 var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
4721 var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
4722
4723 /**
4724 * Returns the iterator method function contained on the iterable object.
4725 *
4726 * Be sure to invoke the function with the iterable as context:
4727 *
4728 * var iteratorFn = getIteratorFn(myIterable);
4729 * if (iteratorFn) {
4730 * var iterator = iteratorFn.call(myIterable);
4731 * ...
4732 * }
4733 *
4734 * @param {?object} maybeIterable
4735 * @return {?function}
4736 */
4737 function getIteratorFn(maybeIterable) {
4738 var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
4739 if (typeof iteratorFn === 'function') {
4740 return iteratorFn;
4741 }
4742 }
4743
4744 /**
4745 * Collection of methods that allow declaration and validation of props that are
4746 * supplied to React components. Example usage:
4747 *
4748 * var Props = require('ReactPropTypes');
4749 * var MyArticle = React.createClass({
4750 * propTypes: {
4751 * // An optional string prop named "description".
4752 * description: Props.string,
4753 *
4754 * // A required enum prop named "category".
4755 * category: Props.oneOf(['News','Photos']).isRequired,
4756 *
4757 * // A prop named "dialog" that requires an instance of Dialog.
4758 * dialog: Props.instanceOf(Dialog).isRequired
4759 * },
4760 * render: function() { ... }
4761 * });
4762 *
4763 * A more formal specification of how these methods are used:
4764 *
4765 * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
4766 * decl := ReactPropTypes.{type}(.isRequired)?
4767 *
4768 * Each and every declaration produces a function with the same signature. This
4769 * allows the creation of custom validation functions. For example:
4770 *
4771 * var MyLink = React.createClass({
4772 * propTypes: {
4773 * // An optional string or URI prop named "href".
4774 * href: function(props, propName, componentName) {
4775 * var propValue = props[propName];
4776 * if (propValue != null && typeof propValue !== 'string' &&
4777 * !(propValue instanceof URI)) {
4778 * return new Error(
4779 * 'Expected a string or an URI for ' + propName + ' in ' +
4780 * componentName
4781 * );
4782 * }
4783 * }
4784 * },
4785 * render: function() {...}
4786 * });
4787 *
4788 * @internal
4789 */
4790
4791 var ANONYMOUS = '<<anonymous>>';
4792
4793 // Important!
4794 // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
4795 var ReactPropTypes = {
4796 array: createPrimitiveTypeChecker('array'),
4797 bigint: createPrimitiveTypeChecker('bigint'),
4798 bool: createPrimitiveTypeChecker('boolean'),
4799 func: createPrimitiveTypeChecker('function'),
4800 number: createPrimitiveTypeChecker('number'),
4801 object: createPrimitiveTypeChecker('object'),
4802 string: createPrimitiveTypeChecker('string'),
4803 symbol: createPrimitiveTypeChecker('symbol'),
4804
4805 any: createAnyTypeChecker(),
4806 arrayOf: createArrayOfTypeChecker,
4807 element: createElementTypeChecker(),
4808 elementType: createElementTypeTypeChecker(),
4809 instanceOf: createInstanceTypeChecker,
4810 node: createNodeChecker(),
4811 objectOf: createObjectOfTypeChecker,
4812 oneOf: createEnumTypeChecker,
4813 oneOfType: createUnionTypeChecker,
4814 shape: createShapeTypeChecker,
4815 exact: createStrictShapeTypeChecker,
4816 };
4817
4818 /**
4819 * inlined Object.is polyfill to avoid requiring consumers ship their own
4820 * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
4821 */
4822 /*eslint-disable no-self-compare*/
4823 function is(x, y) {
4824 // SameValue algorithm
4825 if (x === y) {
4826 // Steps 1-5, 7-10
4827 // Steps 6.b-6.e: +0 != -0
4828 return x !== 0 || 1 / x === 1 / y;
4829 } else {
4830 // Step 6.a: NaN == NaN
4831 return x !== x && y !== y;
4832 }
4833 }
4834 /*eslint-enable no-self-compare*/
4835
4836 /**
4837 * We use an Error-like object for backward compatibility as people may call
4838 * PropTypes directly and inspect their output. However, we don't use real
4839 * Errors anymore. We don't inspect their stack anyway, and creating them
4840 * is prohibitively expensive if they are created too often, such as what
4841 * happens in oneOfType() for any type before the one that matched.
4842 */
4843 function PropTypeError(message, data) {
4844 this.message = message;
4845 this.data = data && typeof data === 'object' ? data: {};
4846 this.stack = '';
4847 }
4848 // Make `instanceof Error` still work for returned errors.
4849 PropTypeError.prototype = Error.prototype;
4850
4851 function createChainableTypeChecker(validate) {
4852 if (true) {
4853 var manualPropTypeCallCache = {};
4854 var manualPropTypeWarningCount = 0;
4855 }
4856 function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
4857 componentName = componentName || ANONYMOUS;
4858 propFullName = propFullName || propName;
4859
4860 if (secret !== ReactPropTypesSecret) {
4861 if (throwOnDirectAccess) {
4862 // New behavior only for users of `prop-types` package
4863 var err = new Error(
4864 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
4865 'Use `PropTypes.checkPropTypes()` to call them. ' +
4866 'Read more at http://fb.me/use-check-prop-types'
4867 );
4868 err.name = 'Invariant Violation';
4869 throw err;
4870 } else if ( true && typeof console !== 'undefined') {
4871 // Old behavior for people using React.PropTypes
4872 var cacheKey = componentName + ':' + propName;
4873 if (
4874 !manualPropTypeCallCache[cacheKey] &&
4875 // Avoid spamming the console because they are often not actionable except for lib authors
4876 manualPropTypeWarningCount < 3
4877 ) {
4878 printWarning(
4879 'You are manually calling a React.PropTypes validation ' +
4880 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
4881 'and will throw in the standalone `prop-types` package. ' +
4882 'You may be seeing this warning due to a third-party PropTypes ' +
4883 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
4884 );
4885 manualPropTypeCallCache[cacheKey] = true;
4886 manualPropTypeWarningCount++;
4887 }
4888 }
4889 }
4890 if (props[propName] == null) {
4891 if (isRequired) {
4892 if (props[propName] === null) {
4893 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
4894 }
4895 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
4896 }
4897 return null;
4898 } else {
4899 return validate(props, propName, componentName, location, propFullName);
4900 }
4901 }
4902
4903 var chainedCheckType = checkType.bind(null, false);
4904 chainedCheckType.isRequired = checkType.bind(null, true);
4905
4906 return chainedCheckType;
4907 }
4908
4909 function createPrimitiveTypeChecker(expectedType) {
4910 function validate(props, propName, componentName, location, propFullName, secret) {
4911 var propValue = props[propName];
4912 var propType = getPropType(propValue);
4913 if (propType !== expectedType) {
4914 // `propValue` being instance of, say, date/regexp, pass the 'object'
4915 // check, but we can offer a more precise error message here rather than
4916 // 'of type `object`'.
4917 var preciseType = getPreciseType(propValue);
4918
4919 return new PropTypeError(
4920 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),
4921 {expectedType: expectedType}
4922 );
4923 }
4924 return null;
4925 }
4926 return createChainableTypeChecker(validate);
4927 }
4928
4929 function createAnyTypeChecker() {
4930 return createChainableTypeChecker(emptyFunctionThatReturnsNull);
4931 }
4932
4933 function createArrayOfTypeChecker(typeChecker) {
4934 function validate(props, propName, componentName, location, propFullName) {
4935 if (typeof typeChecker !== 'function') {
4936 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
4937 }
4938 var propValue = props[propName];
4939 if (!Array.isArray(propValue)) {
4940 var propType = getPropType(propValue);
4941 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
4942 }
4943 for (var i = 0; i < propValue.length; i++) {
4944 var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
4945 if (error instanceof Error) {
4946 return error;
4947 }
4948 }
4949 return null;
4950 }
4951 return createChainableTypeChecker(validate);
4952 }
4953
4954 function createElementTypeChecker() {
4955 function validate(props, propName, componentName, location, propFullName) {
4956 var propValue = props[propName];
4957 if (!isValidElement(propValue)) {
4958 var propType = getPropType(propValue);
4959 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
4960 }
4961 return null;
4962 }
4963 return createChainableTypeChecker(validate);
4964 }
4965
4966 function createElementTypeTypeChecker() {
4967 function validate(props, propName, componentName, location, propFullName) {
4968 var propValue = props[propName];
4969 if (!ReactIs.isValidElementType(propValue)) {
4970 var propType = getPropType(propValue);
4971 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
4972 }
4973 return null;
4974 }
4975 return createChainableTypeChecker(validate);
4976 }
4977
4978 function createInstanceTypeChecker(expectedClass) {
4979 function validate(props, propName, componentName, location, propFullName) {
4980 if (!(props[propName] instanceof expectedClass)) {
4981 var expectedClassName = expectedClass.name || ANONYMOUS;
4982 var actualClassName = getClassName(props[propName]);
4983 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
4984 }
4985 return null;
4986 }
4987 return createChainableTypeChecker(validate);
4988 }
4989
4990 function createEnumTypeChecker(expectedValues) {
4991 if (!Array.isArray(expectedValues)) {
4992 if (true) {
4993 if (arguments.length > 1) {
4994 printWarning(
4995 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
4996 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
4997 );
4998 } else {
4999 printWarning('Invalid argument supplied to oneOf, expected an array.');
5000 }
5001 }
5002 return emptyFunctionThatReturnsNull;
5003 }
5004
5005 function validate(props, propName, componentName, location, propFullName) {
5006 var propValue = props[propName];
5007 for (var i = 0; i < expectedValues.length; i++) {
5008 if (is(propValue, expectedValues[i])) {
5009 return null;
5010 }
5011 }
5012
5013 var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
5014 var type = getPreciseType(value);
5015 if (type === 'symbol') {
5016 return String(value);
5017 }
5018 return value;
5019 });
5020 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
5021 }
5022 return createChainableTypeChecker(validate);
5023 }
5024
5025 function createObjectOfTypeChecker(typeChecker) {
5026 function validate(props, propName, componentName, location, propFullName) {
5027 if (typeof typeChecker !== 'function') {
5028 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
5029 }
5030 var propValue = props[propName];
5031 var propType = getPropType(propValue);
5032 if (propType !== 'object') {
5033 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
5034 }
5035 for (var key in propValue) {
5036 if (has(propValue, key)) {
5037 var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
5038 if (error instanceof Error) {
5039 return error;
5040 }
5041 }
5042 }
5043 return null;
5044 }
5045 return createChainableTypeChecker(validate);
5046 }
5047
5048 function createUnionTypeChecker(arrayOfTypeCheckers) {
5049 if (!Array.isArray(arrayOfTypeCheckers)) {
5050 true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
5051 return emptyFunctionThatReturnsNull;
5052 }
5053
5054 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
5055 var checker = arrayOfTypeCheckers[i];
5056 if (typeof checker !== 'function') {
5057 printWarning(
5058 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
5059 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
5060 );
5061 return emptyFunctionThatReturnsNull;
5062 }
5063 }
5064
5065 function validate(props, propName, componentName, location, propFullName) {
5066 var expectedTypes = [];
5067 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
5068 var checker = arrayOfTypeCheckers[i];
5069 var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
5070 if (checkerResult == null) {
5071 return null;
5072 }
5073 if (checkerResult.data && has(checkerResult.data, 'expectedType')) {
5074 expectedTypes.push(checkerResult.data.expectedType);
5075 }
5076 }
5077 var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';
5078 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));
5079 }
5080 return createChainableTypeChecker(validate);
5081 }
5082
5083 function createNodeChecker() {
5084 function validate(props, propName, componentName, location, propFullName) {
5085 if (!isNode(props[propName])) {
5086 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
5087 }
5088 return null;
5089 }
5090 return createChainableTypeChecker(validate);
5091 }
5092
5093 function invalidValidatorError(componentName, location, propFullName, key, type) {
5094 return new PropTypeError(
5095 (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +
5096 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'
5097 );
5098 }
5099
5100 function createShapeTypeChecker(shapeTypes) {
5101 function validate(props, propName, componentName, location, propFullName) {
5102 var propValue = props[propName];
5103 var propType = getPropType(propValue);
5104 if (propType !== 'object') {
5105 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
5106 }
5107 for (var key in shapeTypes) {
5108 var checker = shapeTypes[key];
5109 if (typeof checker !== 'function') {
5110 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
5111 }
5112 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
5113 if (error) {
5114 return error;
5115 }
5116 }
5117 return null;
5118 }
5119 return createChainableTypeChecker(validate);
5120 }
5121
5122 function createStrictShapeTypeChecker(shapeTypes) {
5123 function validate(props, propName, componentName, location, propFullName) {
5124 var propValue = props[propName];
5125 var propType = getPropType(propValue);
5126 if (propType !== 'object') {
5127 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
5128 }
5129 // We need to check all keys in case some are required but missing from props.
5130 var allKeys = assign({}, props[propName], shapeTypes);
5131 for (var key in allKeys) {
5132 var checker = shapeTypes[key];
5133 if (has(shapeTypes, key) && typeof checker !== 'function') {
5134 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
5135 }
5136 if (!checker) {
5137 return new PropTypeError(
5138 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
5139 '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
5140 '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
5141 );
5142 }
5143 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
5144 if (error) {
5145 return error;
5146 }
5147 }
5148 return null;
5149 }
5150
5151 return createChainableTypeChecker(validate);
5152 }
5153
5154 function isNode(propValue) {
5155 switch (typeof propValue) {
5156 case 'number':
5157 case 'string':
5158 case 'undefined':
5159 return true;
5160 case 'boolean':
5161 return !propValue;
5162 case 'object':
5163 if (Array.isArray(propValue)) {
5164 return propValue.every(isNode);
5165 }
5166 if (propValue === null || isValidElement(propValue)) {
5167 return true;
5168 }
5169
5170 var iteratorFn = getIteratorFn(propValue);
5171 if (iteratorFn) {
5172 var iterator = iteratorFn.call(propValue);
5173 var step;
5174 if (iteratorFn !== propValue.entries) {
5175 while (!(step = iterator.next()).done) {
5176 if (!isNode(step.value)) {
5177 return false;
5178 }
5179 }
5180 } else {
5181 // Iterator will provide entry [k,v] tuples rather than values.
5182 while (!(step = iterator.next()).done) {
5183 var entry = step.value;
5184 if (entry) {
5185 if (!isNode(entry[1])) {
5186 return false;
5187 }
5188 }
5189 }
5190 }
5191 } else {
5192 return false;
5193 }
5194
5195 return true;
5196 default:
5197 return false;
5198 }
5199 }
5200
5201 function isSymbol(propType, propValue) {
5202 // Native Symbol.
5203 if (propType === 'symbol') {
5204 return true;
5205 }
5206
5207 // falsy value can't be a Symbol
5208 if (!propValue) {
5209 return false;
5210 }
5211
5212 // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
5213 if (propValue['@@toStringTag'] === 'Symbol') {
5214 return true;
5215 }
5216
5217 // Fallback for non-spec compliant Symbols which are polyfilled.
5218 if (typeof Symbol === 'function' && propValue instanceof Symbol) {
5219 return true;
5220 }
5221
5222 return false;
5223 }
5224
5225 // Equivalent of `typeof` but with special handling for array and regexp.
5226 function getPropType(propValue) {
5227 var propType = typeof propValue;
5228 if (Array.isArray(propValue)) {
5229 return 'array';
5230 }
5231 if (propValue instanceof RegExp) {
5232 // Old webkits (at least until Android 4.0) return 'function' rather than
5233 // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
5234 // passes PropTypes.object.
5235 return 'object';
5236 }
5237 if (isSymbol(propType, propValue)) {
5238 return 'symbol';
5239 }
5240 return propType;
5241 }
5242
5243 // This handles more types than `getPropType`. Only used for error messages.
5244 // See `createPrimitiveTypeChecker`.
5245 function getPreciseType(propValue) {
5246 if (typeof propValue === 'undefined' || propValue === null) {
5247 return '' + propValue;
5248 }
5249 var propType = getPropType(propValue);
5250 if (propType === 'object') {
5251 if (propValue instanceof Date) {
5252 return 'date';
5253 } else if (propValue instanceof RegExp) {
5254 return 'regexp';
5255 }
5256 }
5257 return propType;
5258 }
5259
5260 // Returns a string that is postfixed to a warning about an invalid type.
5261 // For example, "undefined" or "of type array"
5262 function getPostfixForTypeWarning(value) {
5263 var type = getPreciseType(value);
5264 switch (type) {
5265 case 'array':
5266 case 'object':
5267 return 'an ' + type;
5268 case 'boolean':
5269 case 'date':
5270 case 'regexp':
5271 return 'a ' + type;
5272 default:
5273 return type;
5274 }
5275 }
5276
5277 // Returns class name of the object, if any.
5278 function getClassName(propValue) {
5279 if (!propValue.constructor || !propValue.constructor.name) {
5280 return ANONYMOUS;
5281 }
5282 return propValue.constructor.name;
5283 }
5284
5285 ReactPropTypes.checkPropTypes = checkPropTypes;
5286 ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
5287 ReactPropTypes.PropTypes = ReactPropTypes;
5288
5289 return ReactPropTypes;
5290 };
5291
5292
5293 /***/ }),
5294
5295 /***/ "../node_modules/prop-types/index.js":
5296 /*!*******************************************!*\
5297 !*** ../node_modules/prop-types/index.js ***!
5298 \*******************************************/
5299 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5300
5301 /**
5302 * Copyright (c) 2013-present, Facebook, Inc.
5303 *
5304 * This source code is licensed under the MIT license found in the
5305 * LICENSE file in the root directory of this source tree.
5306 */
5307
5308 if (true) {
5309 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
5310
5311 // By explicitly using `prop-types` you are opting into new development behavior.
5312 // http://fb.me/prop-types-in-prod
5313 var throwOnDirectAccess = true;
5314 module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
5315 } else // removed by dead control flow
5316 {}
5317
5318
5319 /***/ }),
5320
5321 /***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
5322 /*!**************************************************************!*\
5323 !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
5324 \**************************************************************/
5325 /***/ ((module) => {
5326
5327 "use strict";
5328 /**
5329 * Copyright (c) 2013-present, Facebook, Inc.
5330 *
5331 * This source code is licensed under the MIT license found in the
5332 * LICENSE file in the root directory of this source tree.
5333 */
5334
5335
5336
5337 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
5338
5339 module.exports = ReactPropTypesSecret;
5340
5341
5342 /***/ }),
5343
5344 /***/ "../node_modules/prop-types/lib/has.js":
5345 /*!*********************************************!*\
5346 !*** ../node_modules/prop-types/lib/has.js ***!
5347 \*********************************************/
5348 /***/ ((module) => {
5349
5350 module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
5351
5352
5353 /***/ }),
5354
5355 /***/ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js":
5356 /*!************************************************************************************!*\
5357 !*** ../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
5358 \************************************************************************************/
5359 /***/ ((__unused_webpack_module, exports) => {
5360
5361 "use strict";
5362 /** @license React v16.13.1
5363 * react-is.development.js
5364 *
5365 * Copyright (c) Facebook, Inc. and its affiliates.
5366 *
5367 * This source code is licensed under the MIT license found in the
5368 * LICENSE file in the root directory of this source tree.
5369 */
5370
5371
5372
5373
5374
5375 if (true) {
5376 (function() {
5377 'use strict';
5378
5379 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
5380 // nor polyfill, then a plain number is used for performance.
5381 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
5382 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
5383 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
5384 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
5385 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
5386 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
5387 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
5388 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
5389 // (unstable) APIs that have been removed. Can we remove the symbols?
5390
5391 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
5392 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
5393 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
5394 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
5395 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
5396 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
5397 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
5398 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
5399 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
5400 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
5401 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
5402
5403 function isValidElementType(type) {
5404 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
5405 type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
5406 }
5407
5408 function typeOf(object) {
5409 if (typeof object === 'object' && object !== null) {
5410 var $$typeof = object.$$typeof;
5411
5412 switch ($$typeof) {
5413 case REACT_ELEMENT_TYPE:
5414 var type = object.type;
5415
5416 switch (type) {
5417 case REACT_ASYNC_MODE_TYPE:
5418 case REACT_CONCURRENT_MODE_TYPE:
5419 case REACT_FRAGMENT_TYPE:
5420 case REACT_PROFILER_TYPE:
5421 case REACT_STRICT_MODE_TYPE:
5422 case REACT_SUSPENSE_TYPE:
5423 return type;
5424
5425 default:
5426 var $$typeofType = type && type.$$typeof;
5427
5428 switch ($$typeofType) {
5429 case REACT_CONTEXT_TYPE:
5430 case REACT_FORWARD_REF_TYPE:
5431 case REACT_LAZY_TYPE:
5432 case REACT_MEMO_TYPE:
5433 case REACT_PROVIDER_TYPE:
5434 return $$typeofType;
5435
5436 default:
5437 return $$typeof;
5438 }
5439
5440 }
5441
5442 case REACT_PORTAL_TYPE:
5443 return $$typeof;
5444 }
5445 }
5446
5447 return undefined;
5448 } // AsyncMode is deprecated along with isAsyncMode
5449
5450 var AsyncMode = REACT_ASYNC_MODE_TYPE;
5451 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
5452 var ContextConsumer = REACT_CONTEXT_TYPE;
5453 var ContextProvider = REACT_PROVIDER_TYPE;
5454 var Element = REACT_ELEMENT_TYPE;
5455 var ForwardRef = REACT_FORWARD_REF_TYPE;
5456 var Fragment = REACT_FRAGMENT_TYPE;
5457 var Lazy = REACT_LAZY_TYPE;
5458 var Memo = REACT_MEMO_TYPE;
5459 var Portal = REACT_PORTAL_TYPE;
5460 var Profiler = REACT_PROFILER_TYPE;
5461 var StrictMode = REACT_STRICT_MODE_TYPE;
5462 var Suspense = REACT_SUSPENSE_TYPE;
5463 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
5464
5465 function isAsyncMode(object) {
5466 {
5467 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
5468 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
5469
5470 console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
5471 }
5472 }
5473
5474 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
5475 }
5476 function isConcurrentMode(object) {
5477 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
5478 }
5479 function isContextConsumer(object) {
5480 return typeOf(object) === REACT_CONTEXT_TYPE;
5481 }
5482 function isContextProvider(object) {
5483 return typeOf(object) === REACT_PROVIDER_TYPE;
5484 }
5485 function isElement(object) {
5486 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
5487 }
5488 function isForwardRef(object) {
5489 return typeOf(object) === REACT_FORWARD_REF_TYPE;
5490 }
5491 function isFragment(object) {
5492 return typeOf(object) === REACT_FRAGMENT_TYPE;
5493 }
5494 function isLazy(object) {
5495 return typeOf(object) === REACT_LAZY_TYPE;
5496 }
5497 function isMemo(object) {
5498 return typeOf(object) === REACT_MEMO_TYPE;
5499 }
5500 function isPortal(object) {
5501 return typeOf(object) === REACT_PORTAL_TYPE;
5502 }
5503 function isProfiler(object) {
5504 return typeOf(object) === REACT_PROFILER_TYPE;
5505 }
5506 function isStrictMode(object) {
5507 return typeOf(object) === REACT_STRICT_MODE_TYPE;
5508 }
5509 function isSuspense(object) {
5510 return typeOf(object) === REACT_SUSPENSE_TYPE;
5511 }
5512
5513 exports.AsyncMode = AsyncMode;
5514 exports.ConcurrentMode = ConcurrentMode;
5515 exports.ContextConsumer = ContextConsumer;
5516 exports.ContextProvider = ContextProvider;
5517 exports.Element = Element;
5518 exports.ForwardRef = ForwardRef;
5519 exports.Fragment = Fragment;
5520 exports.Lazy = Lazy;
5521 exports.Memo = Memo;
5522 exports.Portal = Portal;
5523 exports.Profiler = Profiler;
5524 exports.StrictMode = StrictMode;
5525 exports.Suspense = Suspense;
5526 exports.isAsyncMode = isAsyncMode;
5527 exports.isConcurrentMode = isConcurrentMode;
5528 exports.isContextConsumer = isContextConsumer;
5529 exports.isContextProvider = isContextProvider;
5530 exports.isElement = isElement;
5531 exports.isForwardRef = isForwardRef;
5532 exports.isFragment = isFragment;
5533 exports.isLazy = isLazy;
5534 exports.isMemo = isMemo;
5535 exports.isPortal = isPortal;
5536 exports.isProfiler = isProfiler;
5537 exports.isStrictMode = isStrictMode;
5538 exports.isSuspense = isSuspense;
5539 exports.isValidElementType = isValidElementType;
5540 exports.typeOf = typeOf;
5541 })();
5542 }
5543
5544
5545 /***/ }),
5546
5547 /***/ "../node_modules/prop-types/node_modules/react-is/index.js":
5548 /*!*****************************************************************!*\
5549 !*** ../node_modules/prop-types/node_modules/react-is/index.js ***!
5550 \*****************************************************************/
5551 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5552
5553 "use strict";
5554
5555
5556 if (false) // removed by dead control flow
5557 {} else {
5558 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js");
5559 }
5560
5561
5562 /***/ }),
5563
5564 /***/ "../node_modules/react-dom/client.js":
5565 /*!*******************************************!*\
5566 !*** ../node_modules/react-dom/client.js ***!
5567 \*******************************************/
5568 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5569
5570 "use strict";
5571
5572
5573 var m = __webpack_require__(/*! react-dom */ "react-dom");
5574 if (false) // removed by dead control flow
5575 {} else {
5576 var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
5577 exports.createRoot = function(c, o) {
5578 i.usingClientEntryPoint = true;
5579 try {
5580 return m.createRoot(c, o);
5581 } finally {
5582 i.usingClientEntryPoint = false;
5583 }
5584 };
5585 exports.hydrateRoot = function(c, h, o) {
5586 i.usingClientEntryPoint = true;
5587 try {
5588 return m.hydrateRoot(c, h, o);
5589 } finally {
5590 i.usingClientEntryPoint = false;
5591 }
5592 };
5593 }
5594
5595
5596 /***/ }),
5597
5598 /***/ "@elementor/ui":
5599 /*!*********************************!*\
5600 !*** external "elementorV2.ui" ***!
5601 \*********************************/
5602 /***/ ((module) => {
5603
5604 "use strict";
5605 module.exports = elementorV2.ui;
5606
5607 /***/ }),
5608
5609 /***/ "@elementor/ui/Box":
5610 /*!****************************************!*\
5611 !*** external "elementorV2.ui['Box']" ***!
5612 \****************************************/
5613 /***/ ((module) => {
5614
5615 "use strict";
5616 module.exports = elementorV2.ui['Box'];
5617
5618 /***/ }),
5619
5620 /***/ "@elementor/ui/Button":
5621 /*!*******************************************!*\
5622 !*** external "elementorV2.ui['Button']" ***!
5623 \*******************************************/
5624 /***/ ((module) => {
5625
5626 "use strict";
5627 module.exports = elementorV2.ui['Button'];
5628
5629 /***/ }),
5630
5631 /***/ "@elementor/ui/Card":
5632 /*!*****************************************!*\
5633 !*** external "elementorV2.ui['Card']" ***!
5634 \*****************************************/
5635 /***/ ((module) => {
5636
5637 "use strict";
5638 module.exports = elementorV2.ui['Card'];
5639
5640 /***/ }),
5641
5642 /***/ "@elementor/ui/CardActions":
5643 /*!************************************************!*\
5644 !*** external "elementorV2.ui['CardActions']" ***!
5645 \************************************************/
5646 /***/ ((module) => {
5647
5648 "use strict";
5649 module.exports = elementorV2.ui['CardActions'];
5650
5651 /***/ }),
5652
5653 /***/ "@elementor/ui/CardContent":
5654 /*!************************************************!*\
5655 !*** external "elementorV2.ui['CardContent']" ***!
5656 \************************************************/
5657 /***/ ((module) => {
5658
5659 "use strict";
5660 module.exports = elementorV2.ui['CardContent'];
5661
5662 /***/ }),
5663
5664 /***/ "@elementor/ui/CardMedia":
5665 /*!**********************************************!*\
5666 !*** external "elementorV2.ui['CardMedia']" ***!
5667 \**********************************************/
5668 /***/ ((module) => {
5669
5670 "use strict";
5671 module.exports = elementorV2.ui['CardMedia'];
5672
5673 /***/ }),
5674
5675 /***/ "@elementor/ui/Dialog":
5676 /*!*******************************************!*\
5677 !*** external "elementorV2.ui['Dialog']" ***!
5678 \*******************************************/
5679 /***/ ((module) => {
5680
5681 "use strict";
5682 module.exports = elementorV2.ui['Dialog'];
5683
5684 /***/ }),
5685
5686 /***/ "@elementor/ui/DialogActions":
5687 /*!**************************************************!*\
5688 !*** external "elementorV2.ui['DialogActions']" ***!
5689 \**************************************************/
5690 /***/ ((module) => {
5691
5692 "use strict";
5693 module.exports = elementorV2.ui['DialogActions'];
5694
5695 /***/ }),
5696
5697 /***/ "@elementor/ui/DialogContent":
5698 /*!**************************************************!*\
5699 !*** external "elementorV2.ui['DialogContent']" ***!
5700 \**************************************************/
5701 /***/ ((module) => {
5702
5703 "use strict";
5704 module.exports = elementorV2.ui['DialogContent'];
5705
5706 /***/ }),
5707
5708 /***/ "@elementor/ui/DialogContentText":
5709 /*!******************************************************!*\
5710 !*** external "elementorV2.ui['DialogContentText']" ***!
5711 \******************************************************/
5712 /***/ ((module) => {
5713
5714 "use strict";
5715 module.exports = elementorV2.ui['DialogContentText'];
5716
5717 /***/ }),
5718
5719 /***/ "@elementor/ui/DialogHeader":
5720 /*!*************************************************!*\
5721 !*** external "elementorV2.ui['DialogHeader']" ***!
5722 \*************************************************/
5723 /***/ ((module) => {
5724
5725 "use strict";
5726 module.exports = elementorV2.ui['DialogHeader'];
5727
5728 /***/ }),
5729
5730 /***/ "@elementor/ui/DialogHeaderGroup":
5731 /*!******************************************************!*\
5732 !*** external "elementorV2.ui['DialogHeaderGroup']" ***!
5733 \******************************************************/
5734 /***/ ((module) => {
5735
5736 "use strict";
5737 module.exports = elementorV2.ui['DialogHeaderGroup'];
5738
5739 /***/ }),
5740
5741 /***/ "@elementor/ui/DialogTitle":
5742 /*!************************************************!*\
5743 !*** external "elementorV2.ui['DialogTitle']" ***!
5744 \************************************************/
5745 /***/ ((module) => {
5746
5747 "use strict";
5748 module.exports = elementorV2.ui['DialogTitle'];
5749
5750 /***/ }),
5751
5752 /***/ "@elementor/ui/Divider":
5753 /*!********************************************!*\
5754 !*** external "elementorV2.ui['Divider']" ***!
5755 \********************************************/
5756 /***/ ((module) => {
5757
5758 "use strict";
5759 module.exports = elementorV2.ui['Divider'];
5760
5761 /***/ }),
5762
5763 /***/ "@elementor/ui/Link":
5764 /*!*****************************************!*\
5765 !*** external "elementorV2.ui['Link']" ***!
5766 \*****************************************/
5767 /***/ ((module) => {
5768
5769 "use strict";
5770 module.exports = elementorV2.ui['Link'];
5771
5772 /***/ }),
5773
5774 /***/ "@elementor/ui/List":
5775 /*!*****************************************!*\
5776 !*** external "elementorV2.ui['List']" ***!
5777 \*****************************************/
5778 /***/ ((module) => {
5779
5780 "use strict";
5781 module.exports = elementorV2.ui['List'];
5782
5783 /***/ }),
5784
5785 /***/ "@elementor/ui/ListItem":
5786 /*!*********************************************!*\
5787 !*** external "elementorV2.ui['ListItem']" ***!
5788 \*********************************************/
5789 /***/ ((module) => {
5790
5791 "use strict";
5792 module.exports = elementorV2.ui['ListItem'];
5793
5794 /***/ }),
5795
5796 /***/ "@elementor/ui/ListItemButton":
5797 /*!***************************************************!*\
5798 !*** external "elementorV2.ui['ListItemButton']" ***!
5799 \***************************************************/
5800 /***/ ((module) => {
5801
5802 "use strict";
5803 module.exports = elementorV2.ui['ListItemButton'];
5804
5805 /***/ }),
5806
5807 /***/ "@elementor/ui/ListItemText":
5808 /*!*************************************************!*\
5809 !*** external "elementorV2.ui['ListItemText']" ***!
5810 \*************************************************/
5811 /***/ ((module) => {
5812
5813 "use strict";
5814 module.exports = elementorV2.ui['ListItemText'];
5815
5816 /***/ }),
5817
5818 /***/ "@elementor/ui/TextField":
5819 /*!**********************************************!*\
5820 !*** external "elementorV2.ui['TextField']" ***!
5821 \**********************************************/
5822 /***/ ((module) => {
5823
5824 "use strict";
5825 module.exports = elementorV2.ui['TextField'];
5826
5827 /***/ }),
5828
5829 /***/ "@elementor/ui/Typography":
5830 /*!***********************************************!*\
5831 !*** external "elementorV2.ui['Typography']" ***!
5832 \***********************************************/
5833 /***/ ((module) => {
5834
5835 "use strict";
5836 module.exports = elementorV2.ui['Typography'];
5837
5838 /***/ }),
5839
5840 /***/ "@wordpress/i18n":
5841 /*!**************************!*\
5842 !*** external "wp.i18n" ***!
5843 \**************************/
5844 /***/ ((module) => {
5845
5846 "use strict";
5847 module.exports = wp.i18n;
5848
5849 /***/ }),
5850
5851 /***/ "react":
5852 /*!************************!*\
5853 !*** external "React" ***!
5854 \************************/
5855 /***/ ((module) => {
5856
5857 "use strict";
5858 module.exports = React;
5859
5860 /***/ }),
5861
5862 /***/ "react-dom":
5863 /*!***************************!*\
5864 !*** external "ReactDOM" ***!
5865 \***************************/
5866 /***/ ((module) => {
5867
5868 "use strict";
5869 module.exports = ReactDOM;
5870
5871 /***/ })
5872
5873 /******/ });
5874 /************************************************************************/
5875 /******/ // The module cache
5876 /******/ var __webpack_module_cache__ = {};
5877 /******/
5878 /******/ // The require function
5879 /******/ function __webpack_require__(moduleId) {
5880 /******/ // Check if module is in cache
5881 /******/ var cachedModule = __webpack_module_cache__[moduleId];
5882 /******/ if (cachedModule !== undefined) {
5883 /******/ return cachedModule.exports;
5884 /******/ }
5885 /******/ // Create a new module (and put it into the cache)
5886 /******/ var module = __webpack_module_cache__[moduleId] = {
5887 /******/ // no module.id needed
5888 /******/ // no module.loaded needed
5889 /******/ exports: {}
5890 /******/ };
5891 /******/
5892 /******/ // Execute the module function
5893 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
5894 /******/
5895 /******/ // Return the exports of the module
5896 /******/ return module.exports;
5897 /******/ }
5898 /******/
5899 /************************************************************************/
5900 var __webpack_exports__ = {};
5901 // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
5902 (() => {
5903 "use strict";
5904 /*!****************************************!*\
5905 !*** ../modules/home/assets/js/app.js ***!
5906 \****************************************/
5907 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
5908
5909
5910 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5911 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5912 var _react2 = _interopRequireDefault(__webpack_require__(/*! elementor-utils/react */ "../assets/dev/js/utils/react.js"));
5913 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5914 var _homeScreen = _interopRequireDefault(__webpack_require__(/*! ./components/home-screen/home-screen */ "../modules/home/assets/js/components/home-screen/home-screen.js"));
5915 var _homeScreen2 = _interopRequireDefault(__webpack_require__(/*! ./components/editor-screen/home-screen */ "../modules/home/assets/js/components/editor-screen/home-screen.js"));
5916 var App = function App(props) {
5917 var _props$homeScreenData;
5918 var ScreenComponent = !!((_props$homeScreenData = props.homeScreenData) !== null && _props$homeScreenData !== void 0 && _props$homeScreenData.isEditorOneActive) ? _homeScreen2.default : _homeScreen.default;
5919 return /*#__PURE__*/_react.default.createElement(_ui.DirectionProvider, {
5920 rtl: props.isRTL
5921 }, /*#__PURE__*/_react.default.createElement(_ui.LocalizationProvider, null, /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, {
5922 colorScheme: 'light'
5923 }, /*#__PURE__*/_react.default.createElement(ScreenComponent, {
5924 homeScreenData: props.homeScreenData,
5925 adminUrl: props.adminUrl
5926 }))));
5927 };
5928 var isRTL = elementorCommon.config.isRTL,
5929 adminUrl = elementorAppConfig.admin_url,
5930 rootElement = document.querySelector('#e-home-screen');
5931 App.propTypes = {
5932 isRTL: PropTypes.bool,
5933 adminUrl: PropTypes.string,
5934 homeScreenData: PropTypes.object
5935 };
5936 _react2.default.render(/*#__PURE__*/_react.default.createElement(App, {
5937 isRTL: isRTL,
5938 homeScreenData: elementorHomeScreenData,
5939 adminUrl: adminUrl
5940 }), rootElement);
5941 })();
5942
5943 /******/ })()
5944 ;
5945 //# sourceMappingURL=e-home-screen.js.map