PluginProbe
Elementor Website Builder – more than just a page builder / 3.28.3
Elementor Website Builder – more than just a page builder v3.28.3
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 / ai-layout.js

ai-layout.js in Elementor Website Builder – more than just a page builder 3.28.3, at assets/js/ai-layout.js

12,697 lines 589.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*! elementor - v3.28.0 - 01-04-2025 */
2 /******/ (() => { // webpackBootstrap
3 /******/ var __webpack_modules__ = ({
4
5 /***/ "../assets/dev/js/utils/react.js":
6 /*!***************************************!*\
7 !*** ../assets/dev/js/utils/react.js ***!
8 \***************************************/
9 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10
11 "use strict";
12
13
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 React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
20 var ReactDOM = _interopRequireWildcard(__webpack_require__(/*! react-dom */ "react-dom"));
21 var _client = __webpack_require__(/*! react-dom/client */ "../node_modules/react-dom/client.js");
22 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24 /**
25 * Support conditional rendering of a React App to the DOM, based on the React version.
26 * We use `createRoot` when available, but fallback to `ReactDOM.render` for older versions.
27 *
28 * @param { React.ReactElement } app The app to render.
29 * @param { HTMLElement } domElement The DOM element to render the app into.
30 *
31 * @return {{ unmount: () => void }} The unmount function.
32 */
33 function render(app, domElement) {
34 var unmountFunction;
35 try {
36 var root = (0, _client.createRoot)(domElement);
37 root.render(app);
38 unmountFunction = function unmountFunction() {
39 root.unmount();
40 };
41 } catch (e) {
42 // eslint-disable-next-line react/no-deprecated
43 ReactDOM.render(app, domElement);
44 unmountFunction = function unmountFunction() {
45 // eslint-disable-next-line react/no-deprecated
46 ReactDOM.unmountComponentAtNode(domElement);
47 };
48 }
49 return {
50 unmount: unmountFunction
51 };
52 }
53 var _default = exports["default"] = {
54 render: render
55 };
56
57 /***/ }),
58
59 /***/ "../modules/ai/assets/js/editor/ai-layout-behavior.js":
60 /*!************************************************************!*\
61 !*** ../modules/ai/assets/js/editor/ai-layout-behavior.js ***!
62 \************************************************************/
63 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
64
65 "use strict";
66
67
68 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
69 Object.defineProperty(exports, "__esModule", ({
70 value: true
71 }));
72 exports["default"] = void 0;
73 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
74 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
75 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
76 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
77 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
78 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
79 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
80 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
81 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
82 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)); }
83 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
84 var AiLayoutBehavior = exports["default"] = /*#__PURE__*/function (_Marionette$Behavior) {
85 function AiLayoutBehavior() {
86 var _this;
87 (0, _classCallCheck2.default)(this, AiLayoutBehavior);
88 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
89 args[_key] = arguments[_key];
90 }
91 _this = _callSuper(this, AiLayoutBehavior, [].concat(args));
92 (0, _defineProperty2.default)(_this, "previewContainer", null);
93 return _this;
94 }
95 (0, _inherits2.default)(AiLayoutBehavior, _Marionette$Behavior);
96 return (0, _createClass2.default)(AiLayoutBehavior, [{
97 key: "ui",
98 value: function ui() {
99 return {
100 aiButton: '.e-ai-layout-button',
101 addTemplateButton: '.elementor-add-template-button'
102 };
103 }
104 }, {
105 key: "events",
106 value: function events() {
107 return {
108 'click @ui.aiButton': 'onAiButtonClick'
109 };
110 }
111 }, {
112 key: "onAiButtonClick",
113 value: function onAiButtonClick(e) {
114 e.stopPropagation();
115 window.elementorAiCurrentContext = this.getOption('context');
116 (0, _editorIntegration.renderLayoutApp)({
117 parentContainer: elementor.getPreviewContainer(),
118 mode: _config.MODE_LAYOUT,
119 at: this.view.getOption('at'),
120 onInsert: this.onInsert.bind(this),
121 onRenderApp: function onRenderApp(args) {
122 args.previewContainer.init();
123 },
124 onGenerate: function onGenerate(args) {
125 args.previewContainer.reset();
126 }
127 });
128 }
129 }, {
130 key: "hideDropArea",
131 value: function hideDropArea() {
132 this.view.onCloseButtonClick();
133 }
134 }, {
135 key: "onInsert",
136 value: function onInsert(template) {
137 this.hideDropArea();
138 (0, _editorIntegration.importToEditor)({
139 parentContainer: elementor.getPreviewContainer(),
140 at: this.view.getOption('at'),
141 template: template,
142 historyTitle: (0, _i18n.__)('AI Layout', 'elementor')
143 });
144 }
145 }, {
146 key: "onRender",
147 value: function onRender() {
148 var $button = jQuery('<button>', {
149 type: 'button',
150 class: 'e-ai-layout-button elementor-add-section-area-button e-button-primary',
151 title: (0, _i18n.__)('Build with AI', 'elementor'),
152 'aria-label': (0, _i18n.__)('Build with AI', 'elementor')
153 });
154 $button.html("\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<i class=\"eicon-ai\" aria-hidden=\"true\"></i>\n\t\t");
155 this.ui.addTemplateButton.after($button);
156 }
157 }]);
158 }(Marionette.Behavior);
159
160 /***/ }),
161
162 /***/ "../modules/ai/assets/js/editor/api/index.js":
163 /*!***************************************************!*\
164 !*** ../modules/ai/assets/js/editor/api/index.js ***!
165 \***************************************************/
166 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
167
168 "use strict";
169
170
171 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
172 Object.defineProperty(exports, "__esModule", ({
173 value: true
174 }));
175 exports.uploadImage = exports.toggleFavoriteHistoryItem = exports.setStatusFeedback = exports.setGetStarted = exports.getUserInformation = exports.getTextToImageGeneration = exports.getRemoteFrontendConfig = exports.getRemoteConfig = exports.getProductImageUnification = exports.getLayoutPromptEnhanced = exports.getImageToImageUpscale = exports.getImageToImageReplaceBackground = exports.getImageToImageRemoveText = exports.getImageToImageRemoveBackground = exports.getImageToImageOutPainting = exports.getImageToImageMaskGeneration = exports.getImageToImageMaskCleanup = exports.getImageToImageIsolateObjects = exports.getImageToImageGeneration = exports.getImagePromptEnhanced = exports.getHistory = exports.getFeaturedImage = exports.getExcerpt = exports.getEditText = exports.getCustomCode = exports.getCustomCSS = exports.getCompletionText = exports.getAnimation = exports.generateLayout = exports.deleteHistoryItem = void 0;
176 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
177 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
178 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
179 var request = function request(endpoint) {
180 var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
181 var immediately = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
182 var signal = arguments.length > 3 ? arguments[3] : undefined;
183 if (Object.keys(data).length) {
184 if (window.elementorAiCurrentContext) {
185 data.context = window.elementorAiCurrentContext;
186 } else {
187 data.context = window.elementorWpAiCurrentContext;
188 }
189 }
190 return new Promise(function (resolve, reject) {
191 var ajaxData = elementorCommon.ajax.addRequest(endpoint, {
192 success: resolve,
193 error: reject,
194 data: data,
195 unique_id: data.unique_id
196 }, immediately);
197 if (signal && ajaxData.jqXhr) {
198 signal.addEventListener('abort', ajaxData.jqXhr.abort);
199 }
200 });
201 };
202 var getUserInformation = exports.getUserInformation = function getUserInformation(immediately) {
203 return request('ai_get_user_information', undefined, immediately);
204 };
205 var getRemoteConfig = exports.getRemoteConfig = function getRemoteConfig() {
206 return request('ai_get_remote_config');
207 };
208 var getRemoteFrontendConfig = exports.getRemoteFrontendConfig = function getRemoteFrontendConfig(payload, immediately) {
209 return request('ai_get_remote_frontend_config', {
210 payload: payload
211 }, immediately);
212 };
213 var getCompletionText = exports.getCompletionText = function getCompletionText(payload) {
214 return request('ai_get_completion_text', {
215 payload: payload
216 });
217 };
218 var getExcerpt = exports.getExcerpt = function getExcerpt(payload) {
219 return request('ai_get_excerpt', {
220 payload: payload
221 });
222 };
223 var getFeaturedImage = exports.getFeaturedImage = function getFeaturedImage(payload) {
224 return request('ai_get_featured_image', {
225 payload: payload
226 });
227 };
228 var getEditText = exports.getEditText = function getEditText(payload) {
229 return request('ai_get_edit_text', {
230 payload: payload
231 });
232 };
233 var getCustomCode = exports.getCustomCode = function getCustomCode(payload) {
234 return request('ai_get_custom_code', {
235 payload: payload
236 });
237 };
238 var getCustomCSS = exports.getCustomCSS = function getCustomCSS(payload) {
239 return request('ai_get_custom_css', {
240 payload: payload
241 });
242 };
243 var setGetStarted = exports.setGetStarted = function setGetStarted() {
244 return request('ai_set_get_started');
245 };
246 var setStatusFeedback = exports.setStatusFeedback = function setStatusFeedback(responseId) {
247 return request('ai_set_status_feedback', {
248 response_id: responseId
249 }, true);
250 };
251 var getTextToImageGeneration = exports.getTextToImageGeneration = function getTextToImageGeneration(payload) {
252 return request('ai_get_text_to_image', {
253 payload: payload
254 });
255 };
256 var getImageToImageGeneration = exports.getImageToImageGeneration = function getImageToImageGeneration(payload) {
257 return request('ai_get_image_to_image', {
258 payload: payload
259 });
260 };
261 var getImageToImageMaskCleanup = exports.getImageToImageMaskCleanup = function getImageToImageMaskCleanup(payload) {
262 return request('ai_get_image_to_image_mask_cleanup', {
263 payload: payload
264 });
265 };
266 var getImageToImageMaskGeneration = exports.getImageToImageMaskGeneration = function getImageToImageMaskGeneration(payload) {
267 return request('ai_get_image_to_image_mask', {
268 payload: payload
269 });
270 };
271 var getImageToImageOutPainting = exports.getImageToImageOutPainting = function getImageToImageOutPainting(payload) {
272 return request('ai_get_image_to_image_outpainting', {
273 payload: payload
274 });
275 };
276 var getImageToImageUpscale = exports.getImageToImageUpscale = function getImageToImageUpscale(payload) {
277 return request('ai_get_image_to_image_upscale', {
278 payload: payload
279 });
280 };
281 var getImageToImageRemoveBackground = exports.getImageToImageRemoveBackground = function getImageToImageRemoveBackground(payload) {
282 return request('ai_get_image_to_image_remove_background', {
283 payload: payload
284 });
285 };
286 var getImageToImageIsolateObjects = exports.getImageToImageIsolateObjects = function getImageToImageIsolateObjects(payload) {
287 return request('ai_get_image_to_image_isolate_objects', {
288 payload: payload
289 });
290 };
291 var getImageToImageReplaceBackground = exports.getImageToImageReplaceBackground = function getImageToImageReplaceBackground(payload) {
292 return request('ai_get_image_to_image_replace_background', {
293 payload: payload
294 });
295 };
296 var getImageToImageRemoveText = exports.getImageToImageRemoveText = function getImageToImageRemoveText(image) {
297 return request('ai_get_image_to_image_remove_text', {
298 image: image
299 });
300 };
301 var getImagePromptEnhanced = exports.getImagePromptEnhanced = function getImagePromptEnhanced(prompt) {
302 return request('ai_get_image_prompt_enhancer', {
303 prompt: prompt
304 });
305 };
306 var getProductImageUnification = exports.getProductImageUnification = function getProductImageUnification(payload, immediately) {
307 return request('ai_get_product_image_unification', {
308 payload: payload
309 }, immediately);
310 };
311 var getAnimation = exports.getAnimation = function getAnimation(payload) {
312 return request('ai_get_animation', {
313 payload: payload
314 });
315 };
316 var uploadImage = exports.uploadImage = function uploadImage(image) {
317 return request('ai_upload_image', _objectSpread(_objectSpread({}, image), {}, {
318 editor_post_id: image.image.editor_post_id,
319 unique_id: image.image.unique_id
320 }));
321 };
322
323 /**
324 * @typedef {Object} AttachmentPropType - See ./types/attachment.js
325 * @typedef {Object} requestBody
326 * @property {string} prompt - Prompt to generate the layout from.
327 * @property {0|1|2} [variationType] - Type of the layout to generate (actually it's a position).
328 * @property {string[]} [prevGeneratedIds] - Previously generated ids for exclusion on regeneration.
329 * @property {AttachmentPropType[]} [attachments] - Attachments to use for the generation. currently only `json` type is supported - a container JSON to generate variations from.
330 */
331
332 /**
333 * @param {requestBody} requestBody
334 * @param {AbortSignal} [signal]
335 */
336 var generateLayout = exports.generateLayout = function generateLayout(requestBody, signal) {
337 return request('ai_generate_layout', requestBody, true, signal);
338 };
339 var getLayoutPromptEnhanced = exports.getLayoutPromptEnhanced = function getLayoutPromptEnhanced(prompt, enhanceType) {
340 return request('ai_get_layout_prompt_enhancer', {
341 prompt: prompt,
342 enhance_type: enhanceType
343 });
344 };
345 var getHistory = exports.getHistory = function getHistory(type, page, limit) {
346 return request('ai_get_history', {
347 type: type,
348 page: page,
349 limit: limit
350 });
351 };
352 var deleteHistoryItem = exports.deleteHistoryItem = function deleteHistoryItem(id) {
353 return request('ai_delete_history_item', {
354 id: id
355 });
356 };
357 var toggleFavoriteHistoryItem = exports.toggleFavoriteHistoryItem = function toggleFavoriteHistoryItem(id) {
358 return request('ai_toggle_favorite_history_item', {
359 id: id
360 });
361 };
362
363 /***/ }),
364
365 /***/ "../modules/ai/assets/js/editor/components/alert-dialog.js":
366 /*!*****************************************************************!*\
367 !*** ../modules/ai/assets/js/editor/components/alert-dialog.js ***!
368 \*****************************************************************/
369 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
370
371 "use strict";
372
373
374 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
375 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
376 Object.defineProperty(exports, "__esModule", ({
377 value: true
378 }));
379 exports.AlertDialog = void 0;
380 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
381 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
382 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
383 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
384 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
385 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
386 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
387 var AlertDialog = exports.AlertDialog = function AlertDialog(props) {
388 var _useState = (0, _react.useState)(true),
389 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
390 isShown = _useState2[0],
391 setIsShown = _useState2[1];
392 if (!isShown) {
393 return null;
394 }
395 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
396 open: true,
397 maxWidth: "lg"
398 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
399 sx: {
400 padding: 0
401 }
402 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
403 sx: {
404 textAlign: 'center',
405 padding: 3
406 }
407 }, props.message), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
408 alignItems: "center",
409 spacing: 2,
410 marginBottom: 2
411 }, /*#__PURE__*/_react.default.createElement(_ui.Button, {
412 variant: "contained",
413 type: "button",
414 color: "primary",
415 onClick: function onClick() {
416 var _props$onClose;
417 setIsShown(false);
418 (_props$onClose = props.onClose) === null || _props$onClose === void 0 || _props$onClose.call(props);
419 }
420 }, (0, _i18n.__)('Close', 'elementor')))));
421 };
422 AlertDialog.propTypes = {
423 message: _propTypes.default.string.isRequired,
424 onClose: _propTypes.default.func
425 };
426
427 /***/ }),
428
429 /***/ "../modules/ai/assets/js/editor/components/dialog-header.js":
430 /*!******************************************************************!*\
431 !*** ../modules/ai/assets/js/editor/components/dialog-header.js ***!
432 \******************************************************************/
433 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
434
435 "use strict";
436
437
438 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
439 Object.defineProperty(exports, "__esModule", ({
440 value: true
441 }));
442 exports["default"] = void 0;
443 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
444 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
445 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
446 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
447 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
448 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
449 var ElementorLogo = function ElementorLogo(props) {
450 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
451 viewBox: "0 0 32 32"
452 }, props), /*#__PURE__*/_react.default.createElement("path", {
453 fillRule: "evenodd",
454 clipRule: "evenodd",
455 d: "M2.69648 24.8891C0.938383 22.2579 0 19.1645 0 16C0 11.7566 1.68571 7.68687 4.68629 4.68629C7.68687 1.68571 11.7566 0 16 0C19.1645 0 22.2579 0.938383 24.8891 2.69648C27.5203 4.45459 29.5711 6.95344 30.7821 9.87706C31.9931 12.8007 32.3099 16.0177 31.6926 19.1214C31.0752 22.2251 29.5514 25.0761 27.3137 27.3137C25.0761 29.5514 22.2251 31.0752 19.1214 31.6926C16.0177 32.3099 12.8007 31.9931 9.87706 30.7821C6.95344 29.5711 4.45459 27.5203 2.69648 24.8891ZM12.0006 9.33281H9.33437V22.6665H12.0006V9.33281ZM22.6657 9.33281H14.6669V11.9991H22.6657V9.33281ZM22.6657 14.6654H14.6669V17.3316H22.6657V14.6654ZM22.6657 20.0003H14.6669V22.6665H22.6657V20.0003Z"
456 }));
457 };
458 var StyledElementorLogo = (0, _ui.styled)(ElementorLogo)(function (_ref) {
459 var theme = _ref.theme;
460 return {
461 width: theme.spacing(3),
462 height: theme.spacing(3),
463 '& path': {
464 fill: theme.palette.text.primary
465 }
466 };
467 });
468 var DialogHeader = function DialogHeader(props) {
469 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
470 sx: {
471 fontWeight: 'normal'
472 },
473 color: "transparent",
474 position: "relative"
475 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
476 variant: "dense"
477 }, /*#__PURE__*/_react.default.createElement(StyledElementorLogo, {
478 sx: {
479 mr: 1
480 }
481 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
482 component: "span",
483 variant: "subtitle2",
484 sx: {
485 fontWeight: 'bold',
486 textTransform: 'uppercase'
487 }
488 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
489 label: (0, _i18n.__)('Beta', 'elementor'),
490 color: "default",
491 size: "small",
492 sx: {
493 ml: 1
494 }
495 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
496 direction: "row",
497 spacing: 1,
498 alignItems: "center",
499 sx: {
500 ml: 'auto'
501 }
502 }, props.children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
503 size: "small",
504 "aria-label": "close",
505 onClick: props.onClose,
506 sx: {
507 '&.MuiButtonBase-root': {
508 mr: -1
509 }
510 }
511 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
512 };
513 DialogHeader.propTypes = {
514 onClose: _propTypes.default.func.isRequired,
515 children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node])
516 };
517 var _default = exports["default"] = DialogHeader;
518
519 /***/ }),
520
521 /***/ "../modules/ai/assets/js/editor/components/loader.js":
522 /*!***********************************************************!*\
523 !*** ../modules/ai/assets/js/editor/components/loader.js ***!
524 \***********************************************************/
525 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
526
527 "use strict";
528
529
530 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
531 Object.defineProperty(exports, "__esModule", ({
532 value: true
533 }));
534 exports["default"] = void 0;
535 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
536 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
537 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
538 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
539 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
540 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
541 var _excluded = ["sx", "BoxProps"];
542 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
543 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
544 var Loader = function Loader(_ref) {
545 var _ref$sx = _ref.sx,
546 sx = _ref$sx === void 0 ? {} : _ref$sx,
547 _ref$BoxProps = _ref.BoxProps,
548 BoxProps = _ref$BoxProps === void 0 ? {} : _ref$BoxProps,
549 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
550 return /*#__PURE__*/_react.default.createElement(_ui.Box, (0, _extends2.default)({
551 width: "100%",
552 display: "flex",
553 alignItems: "center"
554 }, BoxProps, {
555 sx: _objectSpread({
556 px: 1.5,
557 minHeight: function minHeight(theme) {
558 return theme.spacing(5);
559 }
560 }, BoxProps.sx || {})
561 }), /*#__PURE__*/_react.default.createElement(_ui.LinearProgress, (0, _extends2.default)({
562 color: "secondary"
563 }, props, {
564 sx: _objectSpread({
565 width: '100%'
566 }, sx)
567 })));
568 };
569 Loader.propTypes = {
570 sx: _propTypes.default.object,
571 BoxProps: _propTypes.default.object
572 };
573 var _default = exports["default"] = Loader;
574
575 /***/ }),
576
577 /***/ "../modules/ai/assets/js/editor/components/prompt-dialog.js":
578 /*!******************************************************************!*\
579 !*** ../modules/ai/assets/js/editor/components/prompt-dialog.js ***!
580 \******************************************************************/
581 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
582
583 "use strict";
584
585
586 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
587 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
588 Object.defineProperty(exports, "__esModule", ({
589 value: true
590 }));
591 exports["default"] = void 0;
592 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
593 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
594 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
595 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
596 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
597 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
598 var _reactDraggable = _interopRequireDefault(__webpack_require__(/*! react-draggable */ "../node_modules/react-draggable/build/cjs/cjs.js"));
599 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
600 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
601 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
602 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
603 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
604 var DraggablePaper = function DraggablePaper(props) {
605 var _useState = (0, _react.useState)({
606 x: 0,
607 y: 0
608 }),
609 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
610 position = _useState2[0],
611 setPosition = _useState2[1];
612 var paperRef = (0, _react.useRef)(null);
613 var timeout = (0, _react.useRef)(null);
614 var onDrag = function onDrag(_e, _ref) {
615 var x = _ref.x,
616 y = _ref.y;
617 return setPosition({
618 x: x,
619 y: y
620 });
621 };
622 var handlePositionBoundaries = function handlePositionBoundaries() {
623 clearTimeout(timeout.current);
624
625 // Ensuring the dialog header, which is used as the dialog dragging handle, does not exceed the screen.
626 timeout.current = setTimeout(function () {
627 var _paperRef$current;
628 var dialogTop = (_paperRef$current = paperRef.current) === null || _paperRef$current === void 0 ? void 0 : _paperRef$current.getBoundingClientRect().top;
629 if (dialogTop < 0) {
630 setPosition(function (prev) {
631 return _objectSpread(_objectSpread({}, prev), {}, {
632 y: prev.y - dialogTop
633 });
634 });
635 }
636 }, 50);
637 };
638 (0, _react.useEffect)(function () {
639 var resizeObserver = new ResizeObserver(handlePositionBoundaries);
640 resizeObserver.observe(paperRef.current);
641 return function () {
642 resizeObserver.disconnect();
643 };
644 }, []);
645 return /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
646 position: position,
647 onDrag: onDrag,
648 handle: ".MuiAppBar-root",
649 cancel: '[class*="MuiDialogContent-root"]',
650 bounds: "parent"
651 }, /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
652 ref: paperRef
653 })));
654 };
655 var PromptDialog = function PromptDialog(props) {
656 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
657 scroll: "paper",
658 open: true,
659 fullWidth: true,
660 hideBackdrop: true,
661 PaperComponent: DraggablePaper,
662 disableScrollLock: true,
663 sx: {
664 '& .MuiDialog-container': {
665 alignItems: 'flex-start',
666 mt: '18vh'
667 }
668 },
669 PaperProps: {
670 sx: {
671 m: 0,
672 maxHeight: '76vh'
673 }
674 }
675 }, props), props.children);
676 };
677 PromptDialog.propTypes = {
678 onClose: _propTypes.default.func.isRequired,
679 children: _propTypes.default.node,
680 maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false])
681 };
682 PromptDialog.Header = _dialogHeader.default;
683 PromptDialog.Content = _ui.DialogContent;
684 var _default = exports["default"] = PromptDialog;
685
686 /***/ }),
687
688 /***/ "../modules/ai/assets/js/editor/components/prompt-error-message.js":
689 /*!*************************************************************************!*\
690 !*** ../modules/ai/assets/js/editor/components/prompt-error-message.js ***!
691 \*************************************************************************/
692 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
693
694 "use strict";
695 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
696
697
698 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
699 Object.defineProperty(exports, "__esModule", ({
700 value: true
701 }));
702 exports["default"] = void 0;
703 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
704 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
705 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
706 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
707 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
708 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
709 var _excluded = ["error", "onRetry", "actionPosition"];
710 var PromptErrorMessage = function PromptErrorMessage(_ref) {
711 var error = _ref.error,
712 _ref$onRetry = _ref.onRetry,
713 onRetry = _ref$onRetry === void 0 ? function () {} : _ref$onRetry,
714 _ref$actionPosition = _ref.actionPosition,
715 actionPosition = _ref$actionPosition === void 0 ? 'default' : _ref$actionPosition,
716 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
717 function getQuotaReachedTrailMessage(featureName) {
718 if (!featureName) {
719 return {
720 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('It\'s time to upgrade.', 'elementor')),
721 description: (0, _i18n.__)('Enjoy the free trial? Upgrade now for unlimited access to built-in image, text and custom code generators.', 'elementor'),
722 buttonText: (0, _i18n.__)('Upgrade', 'elementor'),
723 buttonAction: function buttonAction() {
724 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
725 }
726 };
727 }
728 return {
729 // Translators: %s is the feature name.
730 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, sprintf((0, _i18n.__)('You\'ve used all AI credits for %s.', 'elementor'), featureName.toLowerCase())),
731 description: (0, _i18n.__)('Upgrade now to keep using this feature. You still have credits for other AI features (Text, Code, Images, Containers, etc.)', 'elementor'),
732 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
733 buttonAction: function buttonAction() {
734 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
735 }
736 };
737 }
738 function getErrorMessage() {
739 var _error$extra_data;
740 var errMsg = error.message || error;
741 var featureName = (_error$extra_data = error.extra_data) === null || _error$extra_data === void 0 ? void 0 : _error$extra_data.featureName;
742 var messages = {
743 default: {
744 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
745 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
746 buttonText: (0, _i18n.__)('Try again', 'elementor'),
747 buttonAction: onRetry
748 },
749 service_outage_internal: {
750 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
751 description: (0, _i18n.__)('Wait a moment and give it another go.', 'elementor'),
752 buttonText: (0, _i18n.__)('Try again', 'elementor'),
753 buttonAction: onRetry
754 },
755 invalid_connect_data: {
756 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
757 description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'), ' ', /*#__PURE__*/_react.default.createElement("a", {
758 href: "https://elementor.com/help/disconnecting-reconnecting-your-elementor-account/",
759 target: "_blank",
760 rel: "noreferrer"
761 }, (0, _i18n.__)('Show me how', 'elementor'))),
762 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
763 buttonAction: function buttonAction() {
764 return window.open(window.ElementorAiConfig.connect_url);
765 }
766 },
767 not_connected: {
768 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('You aren\'t connected to Elementor AI.', 'elementor')),
769 description: (0, _i18n.__)('Elementor AI is just a few clicks away. Connect your account to instantly create texts and custom code.', 'elementor'),
770 buttonText: (0, _i18n.__)('Connect', 'elementor'),
771 buttonAction: function buttonAction() {
772 return window.open(window.ElementorAiConfig.connect_url);
773 }
774 },
775 quota_reached_trail: getQuotaReachedTrailMessage(featureName),
776 quota_reached_subscription: {
777 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Looks like you\'re out of credits.', 'elementor')),
778 description: (0, _i18n.__)('Ready to take it to the next level?', 'elementor'),
779 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
780 buttonAction: function buttonAction() {
781 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
782 }
783 },
784 rate_limit_network: {
785 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Whoa! Slow down there.', 'elementor')),
786 description: (0, _i18n.__)('We can’t process that many requests so fast. Try again in 15 minutes.', 'elementor')
787 },
788 invalid_prompts: {
789 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('We were unable to generate that prompt.', 'elementor')),
790 description: (0, _i18n.__)('Seems like the prompt contains words that could generate harmful content. Write a different prompt to continue.', 'elementor')
791 },
792 service_unavailable: {
793 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
794 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
795 buttonText: (0, _i18n.__)('Try again', 'elementor'),
796 buttonAction: onRetry
797 },
798 request_timeout_error: {
799 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
800 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
801 buttonText: (0, _i18n.__)('Try again', 'elementor'),
802 buttonAction: onRetry
803 },
804 invalid_token: {
805 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Try again', 'elementor')),
806 description: (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'),
807 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
808 buttonAction: onRetry
809 },
810 file_too_large: {
811 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('The file is too large.', 'elementor')),
812 description: (0, _i18n.__)('Please upload a file that is less than 4MB.', 'elementor')
813 },
814 image_resolution_maximum_exceeded: {
815 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('The image resolution exceeds the maximum allowed size.', 'elementor')),
816 description: (0, _i18n.__)('Please upload a file with dimensions less than 2048x2048 pixels.', 'elementor')
817 },
818 external_service_unavailable: {
819 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Temporary external service issue', 'elementor')),
820 description: (0, _i18n.__)('It seems that one of our partner services is temporarily unavailable. Please try again in a few minutes.', 'elementor'),
821 buttonText: (0, _i18n.__)('Try Again', 'elementor'),
822 buttonAction: onRetry
823 }
824 };
825 return messages[errMsg] || messages.default;
826 }
827 var message = getErrorMessage();
828 var action = (message === null || message === void 0 ? void 0 : message.buttonText) && /*#__PURE__*/_react.default.createElement(_ui.Button, {
829 color: "inherit",
830 size: "small",
831 variant: "outlined",
832 onClick: message.buttonAction
833 }, message.buttonText);
834 return /*#__PURE__*/_react.default.createElement(_ui.Alert, (0, _extends2.default)({
835 severity: message.severity || 'error',
836 action: 'default' === actionPosition && action
837 }, props), message.text, message.description, 'bottom' === actionPosition && /*#__PURE__*/_react.default.createElement(_ui.Box, {
838 sx: {
839 mt: 1
840 }
841 }, action));
842 };
843 PromptErrorMessage.propTypes = {
844 error: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
845 onRetry: _propTypes.default.func,
846 actionPosition: _propTypes.default.oneOf(['default', 'bottom'])
847 };
848 var _default = exports["default"] = PromptErrorMessage;
849
850 /***/ }),
851
852 /***/ "../modules/ai/assets/js/editor/components/prompt-library-link.js":
853 /*!************************************************************************!*\
854 !*** ../modules/ai/assets/js/editor/components/prompt-library-link.js ***!
855 \************************************************************************/
856 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
857
858 "use strict";
859
860
861 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
862 Object.defineProperty(exports, "__esModule", ({
863 value: true
864 }));
865 exports["default"] = void 0;
866 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
867 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
868 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
869 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
870 var PromptLibraryLink = function PromptLibraryLink(props) {
871 return /*#__PURE__*/_react.default.createElement(_ui.Typography, {
872 variant: "body2",
873 color: "text.secondary"
874 }, (0, _i18n.__)('For more suggestions, explore our'), ' ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
875 href: props.libraryLink,
876 className: "elementor-clickable",
877 target: "_blank"
878 }, (0, _i18n.__)('prompt library')));
879 };
880 PromptLibraryLink.propTypes = {
881 libraryLink: _propTypes.default.string
882 };
883 var _default = exports["default"] = PromptLibraryLink;
884
885 /***/ }),
886
887 /***/ "../modules/ai/assets/js/editor/components/upgrade-chip.js":
888 /*!*****************************************************************!*\
889 !*** ../modules/ai/assets/js/editor/components/upgrade-chip.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 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
898 Object.defineProperty(exports, "__esModule", ({
899 value: true
900 }));
901 exports["default"] = void 0;
902 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
903 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
904 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
905 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
906 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
907 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
908 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
909 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
910 var popoverId = 'e-ai-upgrade-popover';
911 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
912 var theme = _ref.theme;
913 return {
914 position: 'relative',
915 '[data-popper-placement="top"] &': {
916 marginBottom: theme.spacing(2.5)
917 },
918 '[data-popper-placement="bottom"] &': {
919 marginTop: theme.spacing(2.5)
920 },
921 padding: theme.spacing(3),
922 boxShadow: theme.shadows[4],
923 zIndex: '9999'
924 };
925 });
926 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
927 var theme = _ref2.theme;
928 return {
929 width: theme.spacing(5),
930 height: theme.spacing(2.5),
931 position: 'absolute',
932 overflow: 'hidden',
933 // Override Popper inline styles.
934 left: '50% !important',
935 transform: 'translateX(-50%) rotate(var(--rotate, 0deg)) !important',
936 '[data-popper-placement="top"] &': {
937 top: '100%'
938 },
939 '[data-popper-placement="bottom"] &': {
940 '--rotate': '180deg',
941 top: "calc(".concat(theme.spacing(2.5), " * -1)")
942 },
943 '&::after': {
944 backgroundColor: theme.palette.background.paper,
945 content: '""',
946 display: 'block',
947 position: 'absolute',
948 width: theme.spacing(2.5),
949 height: theme.spacing(2.5),
950 top: 0,
951 left: '50%',
952 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
953 boxShadow: '1px 1px 5px 0px rgba(0, 0, 0, 0.2)',
954 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
955 }
956 };
957 });
958 var upgradeBullets = [(0, _i18n.__)('Get spot-on suggestions from AI Copilot and AI Context with appropriate designs, layouts, and content for your business.', 'elementor'), (0, _i18n.__)('Generate professional texts about any topic, in any tone.', 'elementor'), (0, _i18n.__)('Effortlessly create or enhance stunning images and bring your ideas to life.', 'elementor'), (0, _i18n.__)('Unleash infinite possibilities with the custom code generator.', 'elementor'), (0, _i18n.__)('Access 30-days of AI History with the AI Starter plan and 90-days with the Power plan.', 'elementor')];
959 var Chip = (0, _ui.styled)(_ui.Chip)(function () {
960 return {
961 '& .MuiChip-label': {
962 lineHeight: 1.5
963 },
964 '& .MuiSvgIcon-root.MuiChip-icon': {
965 fontSize: '1.25rem'
966 }
967 };
968 });
969 var UpgradeChip = function UpgradeChip(_ref3) {
970 var _ref3$hasSubscription = _ref3.hasSubscription,
971 hasSubscription = _ref3$hasSubscription === void 0 ? false : _ref3$hasSubscription,
972 _ref3$usagePercentage = _ref3.usagePercentage,
973 usagePercentage = _ref3$usagePercentage === void 0 ? 0 : _ref3$usagePercentage;
974 var _useState = (0, _react.useState)(false),
975 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
976 isPopoverOpen = _useState2[0],
977 setIsPopoverOpen = _useState2[1];
978 var anchorEl = (0, _react.useRef)(null);
979 var arrowEl = (0, _react.useRef)(null);
980 var showPopover = function showPopover() {
981 return setIsPopoverOpen(true);
982 };
983 var hidePopover = function hidePopover() {
984 return setIsPopoverOpen(false);
985 };
986 var actionUrl = 'https://go.elementor.com/ai-popup-purchase-dropdown/';
987 if (hasSubscription) {
988 actionUrl = usagePercentage >= 100 ? 'https://go.elementor.com/ai-popup-upgrade-limit-reached/' : 'https://go.elementor.com/ai-popup-upgrade-limit-reached-80-percent/';
989 }
990 var actionLabel = hasSubscription ? (0, _i18n.__)('Upgrade Elementor AI', 'elementor') : (0, _i18n.__)('Get Elementor AI', 'elementor');
991 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
992 component: "span",
993 "aria-owns": isPopoverOpen ? popoverId : undefined,
994 "aria-haspopup": "true",
995 onMouseEnter: showPopover,
996 onMouseLeave: hidePopover,
997 ref: anchorEl,
998 display: "flex",
999 alignItems: "center"
1000 }, /*#__PURE__*/_react.default.createElement(Chip, {
1001 color: "promotion",
1002 label: (0, _i18n.__)('Upgrade', 'elementor'),
1003 icon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1004 size: "small"
1005 }), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
1006 open: isPopoverOpen,
1007 anchorEl: anchorEl.current,
1008 sx: {
1009 zIndex: '170001',
1010 maxWidth: 300
1011 },
1012 modifiers: [{
1013 name: 'arrow',
1014 enabled: true,
1015 options: {
1016 element: arrowEl.current
1017 }
1018 }]
1019 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
1020 ref: arrowEl
1021 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1022 variant: "h5",
1023 color: "text.primary"
1024 }, (0, _i18n.__)('Unlimited access to Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.List, {
1025 sx: {
1026 mb: 1
1027 }
1028 }, upgradeBullets.map(function (bullet, index) {
1029 return /*#__PURE__*/_react.default.createElement(_ui.ListItem, {
1030 key: index,
1031 disableGutters: true,
1032 sx: {
1033 alignItems: 'flex-start'
1034 }
1035 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(_icons.CheckedCircleIcon, null)), /*#__PURE__*/_react.default.createElement(_ui.ListItemText, {
1036 sx: {
1037 m: 0
1038 }
1039 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1040 variant: "body2"
1041 }, bullet)));
1042 })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
1043 variant: "contained",
1044 color: "promotion",
1045 size: "small",
1046 href: actionUrl,
1047 target: "_blank",
1048 startIcon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1049 sx: {
1050 '&:hover': {
1051 color: 'promotion.contrastText'
1052 }
1053 }
1054 }, actionLabel))));
1055 };
1056 var _default = exports["default"] = UpgradeChip;
1057 UpgradeChip.propTypes = {
1058 hasSubscription: _propTypes.default.bool,
1059 usagePercentage: _propTypes.default.number
1060 };
1061
1062 /***/ }),
1063
1064 /***/ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js":
1065 /*!**************************************************************************!*\
1066 !*** ../modules/ai/assets/js/editor/components/voice-promotion-alert.js ***!
1067 \**************************************************************************/
1068 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1069
1070 "use strict";
1071
1072
1073 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1074 Object.defineProperty(exports, "__esModule", ({
1075 value: true
1076 }));
1077 exports["default"] = exports.VoicePromotionAlert = void 0;
1078 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1079 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1080 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1081 var _bulbIcon = _interopRequireDefault(__webpack_require__(/*! ../icons/bulb-icon */ "../modules/ai/assets/js/editor/icons/bulb-icon.js"));
1082 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
1083 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1084 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1085 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1086 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1087 var VoicePromotionAlert = exports.VoicePromotionAlert = function VoicePromotionAlert(props) {
1088 var _useIntroduction = (0, _useIntroduction2.default)(props.introductionKey),
1089 isViewed = _useIntroduction.isViewed,
1090 markAsViewed = _useIntroduction.markAsViewed;
1091 if (isViewed) {
1092 return null;
1093 }
1094 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1095 sx: _objectSpread({
1096 mt: 2
1097 }, props.sx),
1098 alignItems: "top"
1099 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
1100 severity: "info",
1101 variant: "standard",
1102 icon: /*#__PURE__*/_react.default.createElement(_bulbIcon.default, {
1103 sx: {
1104 alignSelf: 'flex-start'
1105 }
1106 }),
1107 onClose: markAsViewed
1108 }, (0, _i18n.__)('Get improved results from AI by adding personal context.', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
1109 onClick: function onClick() {
1110 return $e.route('panel/global/menu');
1111 },
1112 className: "elementor-clickable",
1113 style: {
1114 textDecoration: 'none'
1115 },
1116 color: "info.main",
1117 href: "#"
1118 }, (0, _i18n.__)('Let’s do it', 'elementor'))));
1119 };
1120 VoicePromotionAlert.propTypes = {
1121 sx: _propTypes.default.object,
1122 introductionKey: _propTypes.default.string
1123 };
1124 var _default = exports["default"] = VoicePromotionAlert;
1125
1126 /***/ }),
1127
1128 /***/ "../modules/ai/assets/js/editor/components/wizard-dialog.js":
1129 /*!******************************************************************!*\
1130 !*** ../modules/ai/assets/js/editor/components/wizard-dialog.js ***!
1131 \******************************************************************/
1132 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1133
1134 "use strict";
1135
1136
1137 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1138 Object.defineProperty(exports, "__esModule", ({
1139 value: true
1140 }));
1141 exports["default"] = void 0;
1142 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1143 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1144 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1145 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1146 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1147 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1148 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1149 var _excluded = ["sx"];
1150 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1151 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1152 var WizardDialog = function WizardDialog(props) {
1153 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1154 open: true,
1155 onClose: props.onClose,
1156 fullWidth: true,
1157 hideBackdrop: true,
1158 maxWidth: "lg",
1159 PaperProps: {
1160 sx: {
1161 height: '88vh'
1162 }
1163 },
1164 sx: {
1165 zIndex: 9999
1166 }
1167 }, props.children);
1168 };
1169 WizardDialog.propTypes = {
1170 onClose: _propTypes.default.func.isRequired,
1171 children: _propTypes.default.node.isRequired
1172 };
1173 var WizardDialogContent = function WizardDialogContent(_ref) {
1174 var _ref$sx = _ref.sx,
1175 sx = _ref$sx === void 0 ? {} : _ref$sx,
1176 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1177 return /*#__PURE__*/_react.default.createElement(_ui.DialogContent, (0, _extends2.default)({}, props, {
1178 sx: _objectSpread({
1179 display: 'flex',
1180 flexDirection: 'column',
1181 justifyContent: 'center'
1182 }, sx)
1183 }));
1184 };
1185 WizardDialogContent.propTypes = {
1186 sx: _propTypes.default.object
1187 };
1188 WizardDialog.Header = _dialogHeader.default;
1189 WizardDialog.Content = WizardDialogContent;
1190 var _default = exports["default"] = WizardDialog;
1191
1192 /***/ }),
1193
1194 /***/ "../modules/ai/assets/js/editor/context/requests-ids.js":
1195 /*!**************************************************************!*\
1196 !*** ../modules/ai/assets/js/editor/context/requests-ids.js ***!
1197 \**************************************************************/
1198 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1199
1200 "use strict";
1201
1202
1203 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1204 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1205 Object.defineProperty(exports, "__esModule", ({
1206 value: true
1207 }));
1208 exports["default"] = exports.RequestIdsProvider = void 0;
1209 exports.generateIds = generateIds;
1210 exports.useRequestIds = exports.getUniqueId = void 0;
1211 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1212 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1213 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1214 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
1215 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
1216 var Context = (0, _react.createContext)({});
1217 var useRequestIds = exports.useRequestIds = function useRequestIds() {
1218 var context = (0, _react.useContext)(Context);
1219 if (!context) {
1220 throw new Error('useRequestIds must be used within a RequestIdsProvider');
1221 }
1222 return context;
1223 };
1224 var getUniqueId = exports.getUniqueId = function getUniqueId(prefix) {
1225 return prefix + '-' + Math.random().toString(16).substr(2, 7);
1226 };
1227 window.EDITOR_SESSION_ID = window.EDITOR_SESSION_ID || getUniqueId('editor-session');
1228 function generateIds(template) {
1229 var _template$elements;
1230 template.id = getUniqueId().toString();
1231 if ((_template$elements = template.elements) !== null && _template$elements !== void 0 && _template$elements.length) {
1232 template.elements.map(function (child) {
1233 return generateIds(child);
1234 });
1235 }
1236 return template;
1237 }
1238 var RequestIdsProvider = exports.RequestIdsProvider = function RequestIdsProvider(props) {
1239 var editorSessionId = (0, _react.useRef)(window.EDITOR_SESSION_ID);
1240 var sessionId = (0, _react.useRef)('');
1241 var generateId = (0, _react.useRef)('');
1242 var batchId = (0, _react.useRef)('');
1243 var requestId = (0, _react.useRef)('');
1244 sessionId.current = getUniqueId('session');
1245 var setGenerate = function setGenerate() {
1246 generateId.current = getUniqueId('generate');
1247 return generateId;
1248 };
1249 var setBatch = function setBatch() {
1250 batchId.current = getUniqueId('batch');
1251 return batchId;
1252 };
1253 var setRequest = function setRequest() {
1254 requestId.current = getUniqueId('request');
1255 return requestId;
1256 };
1257 var _useState = (0, _react.useState)(0),
1258 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1259 usagePercentage = _useState2[0],
1260 setUsagePercentage = _useState2[1];
1261 var updateUsagePercentage = function updateUsagePercentage(newPercentage) {
1262 setUsagePercentage(newPercentage);
1263 };
1264 return /*#__PURE__*/_react.default.createElement(Context.Provider, {
1265 value: {
1266 editorSessionId: editorSessionId,
1267 sessionId: sessionId,
1268 generateId: generateId,
1269 batchId: batchId,
1270 requestId: requestId,
1271 setGenerate: setGenerate,
1272 setBatch: setBatch,
1273 setRequest: setRequest,
1274 usagePercentage: usagePercentage,
1275 updateUsagePercentage: updateUsagePercentage
1276 }
1277 }, props.children);
1278 };
1279 RequestIdsProvider.propTypes = {
1280 children: _propTypes.default.node.isRequired
1281 };
1282 var _default = exports["default"] = Context;
1283
1284 /***/ }),
1285
1286 /***/ "../modules/ai/assets/js/editor/hooks/use-introduction.js":
1287 /*!****************************************************************!*\
1288 !*** ../modules/ai/assets/js/editor/hooks/use-introduction.js ***!
1289 \****************************************************************/
1290 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1291
1292 "use strict";
1293
1294
1295 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1296 Object.defineProperty(exports, "__esModule", ({
1297 value: true
1298 }));
1299 exports["default"] = useIntroduction;
1300 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1301 var _react = __webpack_require__(/*! react */ "react");
1302 function useIntroduction(key) {
1303 var _window$elementor$con, _window$elementorAdmi, _globalConfig$introdu;
1304 var globalConfig = window.elementor ? (_window$elementor$con = window.elementor.config) === null || _window$elementor$con === void 0 ? void 0 : _window$elementor$con.user : (_window$elementorAdmi = window.elementorAdmin) === null || _window$elementorAdmi === void 0 || (_window$elementorAdmi = _window$elementorAdmi.config) === null || _window$elementorAdmi === void 0 ? void 0 : _window$elementorAdmi.user;
1305 var _useState = (0, _react.useState)(!!(globalConfig !== null && globalConfig !== void 0 && (_globalConfig$introdu = globalConfig.introduction) !== null && _globalConfig$introdu !== void 0 && _globalConfig$introdu[key])),
1306 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1307 isViewed = _useState2[0],
1308 setIsViewed = _useState2[1];
1309 function markAsViewed() {
1310 if (!key) {
1311 return Promise.reject();
1312 }
1313 return new Promise(function (resolve, reject) {
1314 if (isViewed) {
1315 reject();
1316 }
1317 setIsViewed(true);
1318 elementorCommon.ajax.addRequest('introduction_viewed', {
1319 data: {
1320 introductionKey: key
1321 },
1322 error: function error() {
1323 setIsViewed(false);
1324 reject();
1325 },
1326 success: function success() {
1327 setIsViewed(true);
1328 if (globalConfig !== null && globalConfig !== void 0 && globalConfig.introduction) {
1329 globalConfig.introduction[key] = true;
1330 }
1331 resolve();
1332 }
1333 });
1334 });
1335 }
1336 return {
1337 isViewed: isViewed,
1338 markAsViewed: markAsViewed
1339 };
1340 }
1341
1342 /***/ }),
1343
1344 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js":
1345 /*!*******************************************************************!*\
1346 !*** ../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js ***!
1347 \*******************************************************************/
1348 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1349
1350 "use strict";
1351
1352
1353 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1354 Object.defineProperty(exports, "__esModule", ({
1355 value: true
1356 }));
1357 exports["default"] = void 0;
1358 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
1359 var _usePrompt2 = _interopRequireDefault(__webpack_require__(/*! ./use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
1360 var _config = __webpack_require__(/*! ../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
1361 var enhancePromptMap = new Map([['media', _api.getImagePromptEnhanced], ['layout', _api.getLayoutPromptEnhanced]]);
1362 var getResult = function getResult(prompt, type, enhanceType) {
1363 if (!enhancePromptMap.has(type)) {
1364 throw new Error("Invalid prompt type: ".concat(type));
1365 }
1366 return enhancePromptMap.get(type)(prompt, enhanceType);
1367 };
1368
1369 /**
1370 * Hook to enhance a prompt.
1371 *
1372 * @param {string} prompt
1373 * @param {'media' | 'layout'} type
1374 * @return {{enhancedPrompt: string | undefined, isEnhancing: boolean, enhance: (function(...[*]): Promise)}}
1375 */
1376 var usePromptEnhancer = function usePromptEnhancer(prompt, type) {
1377 var _useConfig = (0, _config.useConfig)(),
1378 mode = _useConfig.mode;
1379 var _usePrompt = (0, _usePrompt2.default)(function () {
1380 return getResult(prompt, type, mode);
1381 }, prompt),
1382 enhancedData = _usePrompt.data,
1383 isEnhancing = _usePrompt.isLoading,
1384 enhance = _usePrompt.send;
1385 return {
1386 enhance: enhance,
1387 isEnhancing: isEnhancing,
1388 enhancedPrompt: enhancedData === null || enhancedData === void 0 ? void 0 : enhancedData.result
1389 };
1390 };
1391 var _default = exports["default"] = usePromptEnhancer;
1392
1393 /***/ }),
1394
1395 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt.js":
1396 /*!**********************************************************!*\
1397 !*** ../modules/ai/assets/js/editor/hooks/use-prompt.js ***!
1398 \**********************************************************/
1399 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1400
1401 "use strict";
1402
1403
1404 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1405 Object.defineProperty(exports, "__esModule", ({
1406 value: true
1407 }));
1408 exports["default"] = void 0;
1409 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
1410 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1411 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
1412 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1413 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1414 var _react = __webpack_require__(/*! react */ "react");
1415 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
1416 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
1417 var _excluded = ["text", "response_id", "usage", "images"];
1418 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1419 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1420 var normalizeResponse = function normalizeResponse(_ref) {
1421 var text = _ref.text,
1422 responseId = _ref.response_id,
1423 usage = _ref.usage,
1424 images = _ref.images,
1425 optional = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1426 var creditsData = usage ? usage.quota - usage.usedQuota : 0;
1427 var credits = Math.max(creditsData, 0);
1428 var result = text || images;
1429 var normalized = {
1430 result: result,
1431 responseId: responseId,
1432 credits: credits,
1433 usagePercentage: usage === null || usage === void 0 ? void 0 : usage.usagePercentage
1434 };
1435 if (optional.base_template_id) {
1436 normalized.baseTemplateId = optional.base_template_id;
1437 }
1438 normalized.type = optional.template_type;
1439 return normalized;
1440 };
1441 var usePrompt = function usePrompt(fetchData, initialState) {
1442 var _useState = (0, _react.useState)(false),
1443 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1444 isLoading = _useState2[0],
1445 setIsLoading = _useState2[1];
1446 var _useState3 = (0, _react.useState)(''),
1447 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
1448 error = _useState4[0],
1449 setError = _useState4[1];
1450 var _useState5 = (0, _react.useState)(initialState),
1451 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
1452 data = _useState6[0],
1453 setData = _useState6[1];
1454 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
1455 updateUsagePercentage = _useRequestIds.updateUsagePercentage,
1456 usagePercentage = _useRequestIds.usagePercentage;
1457 var send = (0, _react.useRef)(/*#__PURE__*/function () {
1458 var _ref2 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(payload) {
1459 return _regenerator.default.wrap(function _callee$(_context) {
1460 while (1) switch (_context.prev = _context.next) {
1461 case 0:
1462 return _context.abrupt("return", payload);
1463 case 1:
1464 case "end":
1465 return _context.stop();
1466 }
1467 }, _callee);
1468 }));
1469 return function (_x) {
1470 return _ref2.apply(this, arguments);
1471 };
1472 }());
1473 var sendUsageData = (0, _react.useRef)(function () {});
1474 (0, _react.useEffect)(function () {
1475 var newUsageValue = data === null || data === void 0 ? void 0 : data.usagePercentage;
1476 if (newUsageValue && newUsageValue !== usagePercentage) {
1477 updateUsagePercentage(newUsageValue);
1478 }
1479 }, [data, usagePercentage, updateUsagePercentage]);
1480 var _useRequestIds2 = (0, _requestsIds.useRequestIds)(),
1481 setRequest = _useRequestIds2.setRequest,
1482 editorSessionId = _useRequestIds2.editorSessionId,
1483 sessionId = _useRequestIds2.sessionId,
1484 generateId = _useRequestIds2.generateId,
1485 batchId = _useRequestIds2.batchId;
1486 send.current = (0, _react.useCallback)(/*#__PURE__*/function () {
1487 var _ref3 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(payload) {
1488 return _regenerator.default.wrap(function _callee2$(_context2) {
1489 while (1) switch (_context2.prev = _context2.next) {
1490 case 0:
1491 return _context2.abrupt("return", new Promise(function (resolve, reject) {
1492 setError('');
1493 setIsLoading(true);
1494 var requestId = setRequest();
1495 var requestIds = {
1496 editorSessionId: editorSessionId.current,
1497 sessionId: sessionId.current,
1498 generateId: generateId.current,
1499 batchId: batchId.current,
1500 requestId: requestId.current
1501 };
1502 payload = _objectSpread(_objectSpread({}, payload), {}, {
1503 requestIds: requestIds
1504 });
1505 fetchData(payload).then(function (result) {
1506 var normalizedData = normalizeResponse(result);
1507 setData(normalizedData);
1508 resolve(normalizedData);
1509 }).catch(function (err) {
1510 var finalError = (err === null || err === void 0 ? void 0 : err.responseText) || err;
1511 setError(finalError);
1512 reject(finalError);
1513 }).finally(function () {
1514 return setIsLoading(false);
1515 });
1516 }));
1517 case 1:
1518 case "end":
1519 return _context2.stop();
1520 }
1521 }, _callee2);
1522 }));
1523 return function (_x2) {
1524 return _ref3.apply(this, arguments);
1525 };
1526 }(), [batchId, editorSessionId, fetchData, generateId, sessionId, setRequest]);
1527 sendUsageData.current = (0, _react.useCallback)(function () {
1528 var usageData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : data;
1529 return usageData.responseId && (0, _api.setStatusFeedback)(usageData.responseId);
1530 }, [data]);
1531 var reset = function reset() {
1532 setData(function (_ref4) {
1533 var credits = _ref4.credits;
1534 return {
1535 credits: credits,
1536 result: '',
1537 responseId: ''
1538 };
1539 });
1540 setError('');
1541 setIsLoading(false);
1542 };
1543 var setResult = function setResult(result) {
1544 var responseId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1545 var updatedResult = _objectSpread({}, data);
1546 updatedResult.result = result;
1547 if (responseId) {
1548 updatedResult.responseId = responseId;
1549 }
1550 setData(updatedResult);
1551 };
1552 return {
1553 isLoading: isLoading,
1554 error: error,
1555 data: data,
1556 setResult: setResult,
1557 reset: reset,
1558 send: send.current,
1559 sendUsageData: sendUsageData.current
1560 };
1561 };
1562 var _default = exports["default"] = usePrompt;
1563
1564 /***/ }),
1565
1566 /***/ "../modules/ai/assets/js/editor/hooks/use-timeout.js":
1567 /*!***********************************************************!*\
1568 !*** ../modules/ai/assets/js/editor/hooks/use-timeout.js ***!
1569 \***********************************************************/
1570 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1571
1572 "use strict";
1573
1574
1575 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1576 Object.defineProperty(exports, "__esModule", ({
1577 value: true
1578 }));
1579 exports.useTimeout = void 0;
1580 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1581 var _react = __webpack_require__(/*! react */ "react");
1582 var useTimeout = exports.useTimeout = function useTimeout(delay) {
1583 var _useState = (0, _react.useState)(false),
1584 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1585 isTimeout = _useState2[0],
1586 setIsTimeout = _useState2[1];
1587 var timeoutIdRef = (0, _react.useRef)(null);
1588 var turnOffTimeout = function turnOffTimeout() {
1589 clearTimeout(timeoutIdRef.current);
1590 setIsTimeout(false);
1591 };
1592 (0, _react.useEffect)(function () {
1593 timeoutIdRef.current = setTimeout(function () {
1594 setIsTimeout(true);
1595 }, delay);
1596 return function () {
1597 clearTimeout(timeoutIdRef.current);
1598 };
1599 }, [delay]);
1600 return [isTimeout, turnOffTimeout];
1601 };
1602
1603 /***/ }),
1604
1605 /***/ "../modules/ai/assets/js/editor/hooks/use-user-info.js":
1606 /*!*************************************************************!*\
1607 !*** ../modules/ai/assets/js/editor/hooks/use-user-info.js ***!
1608 \*************************************************************/
1609 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1610
1611 "use strict";
1612
1613
1614 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1615 Object.defineProperty(exports, "__esModule", ({
1616 value: true
1617 }));
1618 exports["default"] = void 0;
1619 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
1620 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1621 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
1622 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1623 var _react = __webpack_require__(/*! react */ "react");
1624 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
1625 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1626 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1627 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1628 var useUserInfo = function useUserInfo() {
1629 var immediately = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
1630 var _useState = (0, _react.useState)(false),
1631 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1632 isLoaded = _useState2[0],
1633 setIsLoaded = _useState2[1];
1634 var _useState3 = (0, _react.useState)(false),
1635 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
1636 isLoading = _useState4[0],
1637 setIsLoading = _useState4[1];
1638 var _useState5 = (0, _react.useState)({
1639 is_connected: false,
1640 is_get_started: false,
1641 connect_url: '',
1642 usage: {
1643 hasAiSubscription: false,
1644 quota: 0,
1645 usedQuota: 0
1646 }
1647 }),
1648 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
1649 userInfo = _useState6[0],
1650 setUserInfo = _useState6[1];
1651 var credits = userInfo.usage.quota - userInfo.usage.usedQuota;
1652 var usagePercentage = userInfo.usage.quota ? userInfo.usage.usedQuota / userInfo.usage.quota * 100 : 0;
1653 var fetchData = /*#__PURE__*/function () {
1654 var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
1655 var userInfoResult;
1656 return _regenerator.default.wrap(function _callee$(_context) {
1657 while (1) switch (_context.prev = _context.next) {
1658 case 0:
1659 setIsLoading(true);
1660 _context.next = 3;
1661 return (0, _api.getUserInformation)(immediately);
1662 case 3:
1663 userInfoResult = _context.sent;
1664 setUserInfo(function (prevState) {
1665 return _objectSpread(_objectSpread({}, prevState), userInfoResult);
1666 });
1667 setIsLoaded(true);
1668 setIsLoading(false);
1669 case 7:
1670 case "end":
1671 return _context.stop();
1672 }
1673 }, _callee);
1674 }));
1675 return function fetchData() {
1676 return _ref.apply(this, arguments);
1677 };
1678 }();
1679 if (!isLoaded && !isLoading) {
1680 fetchData();
1681 }
1682 return {
1683 isLoading: isLoading,
1684 isLoaded: isLoaded,
1685 isConnected: userInfo.is_connected,
1686 isGetStarted: userInfo.is_get_started,
1687 connectUrl: userInfo.connect_url,
1688 builderUrl: userInfo.usage.builderUrl,
1689 hasSubscription: userInfo.usage.hasAiSubscription,
1690 credits: credits < 0 ? 0 : credits,
1691 usagePercentage: Math.round(usagePercentage),
1692 fetchData: fetchData
1693 };
1694 };
1695 useUserInfo.propTypes = {
1696 immediately: _propTypes.default.bool
1697 };
1698 var _default = exports["default"] = useUserInfo;
1699
1700 /***/ }),
1701
1702 /***/ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js":
1703 /*!***************************************************************!*\
1704 !*** ../modules/ai/assets/js/editor/icons/arrow-left-icon.js ***!
1705 \***************************************************************/
1706 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1707
1708 "use strict";
1709
1710
1711 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1712 Object.defineProperty(exports, "__esModule", ({
1713 value: true
1714 }));
1715 exports["default"] = void 0;
1716 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1717 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1718 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1719 var ArrowLeftIcon = _react.default.forwardRef(function (props, ref) {
1720 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1721 viewBox: "0 0 24 24"
1722 }, props, {
1723 ref: ref
1724 }), /*#__PURE__*/_react.default.createElement("path", {
1725 fillRule: "evenodd",
1726 clipRule: "evenodd",
1727 d: "M9.53033 7.46967C9.82322 7.76256 9.82322 8.23744 9.53033 8.53033L6.81066 11.25H19C19.4142 11.25 19.75 11.5858 19.75 12C19.75 12.4142 19.4142 12.75 19 12.75H6.81066L9.53033 15.4697C9.82322 15.7626 9.82322 16.2374 9.53033 16.5303C9.23744 16.8232 8.76256 16.8232 8.46967 16.5303L4.46967 12.5303C4.17678 12.2374 4.17678 11.7626 4.46967 11.4697L8.46967 7.46967C8.76256 7.17678 9.23744 7.17678 9.53033 7.46967Z"
1728 }));
1729 });
1730 var _default = exports["default"] = ArrowLeftIcon;
1731
1732 /***/ }),
1733
1734 /***/ "../modules/ai/assets/js/editor/icons/bulb-icon.js":
1735 /*!*********************************************************!*\
1736 !*** ../modules/ai/assets/js/editor/icons/bulb-icon.js ***!
1737 \*********************************************************/
1738 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1739
1740 "use strict";
1741
1742
1743 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1744 Object.defineProperty(exports, "__esModule", ({
1745 value: true
1746 }));
1747 exports["default"] = void 0;
1748 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1749 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1750 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1751 var BulbIcon = _react.default.forwardRef(function (props, ref) {
1752 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({}, props, {
1753 ref: ref
1754 }), /*#__PURE__*/_react.default.createElement("svg", {
1755 width: "22",
1756 height: "22",
1757 viewBox: "0 0 22 22",
1758 fill: "none",
1759 xmlns: "http://www.w3.org/2000/svg"
1760 }, /*#__PURE__*/_react.default.createElement("g", {
1761 clipPath: "url(#clip0_10743_8902)"
1762 }, /*#__PURE__*/_react.default.createElement("path", {
1763 d: "M2.75 10.0833H3.66667M11 2.75V3.66667M18.3333 10.0833H19.25M5.13333 5.13333L5.775 5.775M16.8667 5.13333L16.225 5.775",
1764 stroke: "#2563EB",
1765 strokeWidth: "1.5",
1766 strokeLinecap: "round",
1767 strokeLinejoin: "round"
1768 }), /*#__PURE__*/_react.default.createElement("path", {
1769 d: "M9.16675 16.041C8.70841 15.1243 6.91205 13.2842 6.62523 12.366C6.3384 11.4477 6.34775 10.4626 6.65195 9.54997C6.95615 8.63738 7.53978 7.84362 8.32016 7.28116C9.10054 6.71869 10.0381 6.41602 11.0001 6.41602C11.962 6.41602 12.8996 6.71869 13.68 7.28116C14.4604 7.84362 15.044 8.63738 15.3482 9.54997C15.6524 10.4626 15.6618 11.4477 15.3749 12.366C15.0881 13.2842 13.2917 15.1243 12.8334 16.041C12.8334 16.041 12.7597 17.3762 12.8334 17.8743C12.8334 18.3606 12.6403 18.8269 12.2964 19.1707C11.9526 19.5145 11.4863 19.7077 11.0001 19.7077C10.5139 19.7077 10.0475 19.5145 9.70372 19.1707C9.3599 18.8269 9.16675 18.3606 9.16675 17.8743C9.2405 17.3762 9.16675 16.041 9.16675 16.041Z",
1770 stroke: "#2563EB",
1771 strokeWidth: "1.5",
1772 strokeLinecap: "round",
1773 strokeLinejoin: "round"
1774 }), /*#__PURE__*/_react.default.createElement("path", {
1775 d: "M10.0833 16.5H11.9166",
1776 stroke: "#2563EB",
1777 strokeWidth: "1.5",
1778 strokeLinecap: "round",
1779 strokeLinejoin: "round"
1780 })), /*#__PURE__*/_react.default.createElement("defs", null, /*#__PURE__*/_react.default.createElement("clipPath", {
1781 id: "clip0_10743_8902"
1782 }, /*#__PURE__*/_react.default.createElement("rect", {
1783 width: "22",
1784 height: "22",
1785 fill: "white"
1786 })))));
1787 });
1788 var _default = exports["default"] = BulbIcon;
1789
1790 /***/ }),
1791
1792 /***/ "../modules/ai/assets/js/editor/icons/copy-page-icon.js":
1793 /*!**************************************************************!*\
1794 !*** ../modules/ai/assets/js/editor/icons/copy-page-icon.js ***!
1795 \**************************************************************/
1796 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1797
1798 "use strict";
1799
1800
1801 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1802 Object.defineProperty(exports, "__esModule", ({
1803 value: true
1804 }));
1805 exports["default"] = void 0;
1806 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1807 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1808 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1809 var CopyPageIcon = _react.default.forwardRef(function (props, ref) {
1810 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1811 viewBox: "0 0 24 24"
1812 }, props, {
1813 ref: ref
1814 }), /*#__PURE__*/_react.default.createElement("path", {
1815 fillRule: "evenodd",
1816 clipRule: "evenodd",
1817 d: "M16.6667 0.208496C17.0534 0.208496 17.4244 0.362142 17.6979 0.635632C17.9714 0.909123 18.125 1.28006 18.125 1.66683V11.6668C18.125 12.0536 17.9714 12.4245 17.6979 12.698C17.4244 12.9715 17.0534 13.1252 16.6667 13.1252H14.7917V16.6668C14.7917 17.0536 14.638 17.4245 14.3645 17.698C14.091 17.9715 13.7201 18.1252 13.3333 18.1252H3.33333C2.94656 18.1252 2.57563 17.9715 2.30214 17.698C2.02865 17.4245 1.875 17.0536 1.875 16.6668V6.66683C1.875 6.28005 2.02865 5.90912 2.30214 5.63563C2.57563 5.36214 2.94656 5.2085 3.33333 5.2085H5.20833V1.66683C5.20833 1.28005 5.36198 0.909122 5.63547 0.635632C5.90896 0.362142 6.27989 0.208496 6.66667 0.208496H16.6667ZM6.66667 1.4585C6.61141 1.4585 6.55842 1.48045 6.51935 1.51952C6.48028 1.55859 6.45833 1.61158 6.45833 1.66683V3.54183H8.54167V1.4585H6.66667ZM3.125 9.79183V16.6668C3.125 16.7221 3.14695 16.7751 3.18602 16.8141C3.22509 16.8532 3.27808 16.8752 3.33333 16.8752H13.3333C13.3886 16.8752 13.4416 16.8532 13.4806 16.8141C13.5197 16.7751 13.5417 16.7221 13.5417 16.6668V13.1252H6.66667C6.27989 13.1252 5.90896 12.9715 5.63547 12.698C5.36198 12.4245 5.20833 12.0536 5.20833 11.6668V9.79183H3.125ZM5.20833 8.54183H3.125V6.66683C3.125 6.61158 3.14695 6.55859 3.18602 6.51952C3.22509 6.48045 3.27808 6.4585 3.33333 6.4585H5.20833V8.54183ZM6.45833 11.6668C6.45833 11.7221 6.48028 11.7751 6.51935 11.8141C6.55842 11.8532 6.61141 11.8752 6.66667 11.8752H16.6667C16.7219 11.8752 16.7749 11.8532 16.814 11.8141C16.853 11.7751 16.875 11.7221 16.875 11.6668V4.79183H6.45833V11.6668ZM9.79167 1.4585V3.54183H16.875V1.66683C16.875 1.61157 16.853 1.55858 16.814 1.51952C16.7749 1.48045 16.7219 1.4585 16.6667 1.4585H9.79167Z"
1818 }));
1819 });
1820 var _default = exports["default"] = CopyPageIcon;
1821
1822 /***/ }),
1823
1824 /***/ "../modules/ai/assets/js/editor/icons/edit-icon.js":
1825 /*!*********************************************************!*\
1826 !*** ../modules/ai/assets/js/editor/icons/edit-icon.js ***!
1827 \*********************************************************/
1828 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1829
1830 "use strict";
1831
1832
1833 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1834 Object.defineProperty(exports, "__esModule", ({
1835 value: true
1836 }));
1837 exports["default"] = void 0;
1838 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1839 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1840 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1841 var EditIcon = _react.default.forwardRef(function (props, ref) {
1842 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1843 viewBox: "0 0 24 24"
1844 }, props, {
1845 ref: ref
1846 }), /*#__PURE__*/_react.default.createElement("path", {
1847 fillRule: "evenodd",
1848 clipRule: "evenodd",
1849 d: "M13.9697 4.96967C14.6408 4.29858 15.5509 3.92157 16.5 3.92157C17.4491 3.92157 18.3592 4.29858 19.0303 4.96967C19.7014 5.64075 20.0784 6.55094 20.0784 7.5C20.0784 8.44905 19.7014 9.35924 19.0303 10.0303L8.53033 20.5303C8.38968 20.671 8.19891 20.75 8 20.75H4C3.58579 20.75 3.25 20.4142 3.25 20V16C3.25 15.8011 3.32902 15.6103 3.46967 15.4697L13.9697 4.96967ZM16.5 5.42157C15.9488 5.42157 15.4201 5.64055 15.0303 6.03033L4.75 16.3107V19.25H7.68934L17.9697 8.96967C18.3595 8.57989 18.5784 8.05123 18.5784 7.5C18.5784 6.94876 18.3595 6.42011 17.9697 6.03033C17.5799 5.64055 17.0512 5.42157 16.5 5.42157Z"
1850 }), /*#__PURE__*/_react.default.createElement("path", {
1851 fillRule: "evenodd",
1852 clipRule: "evenodd",
1853 d: "M12.9697 5.96967C13.2626 5.67677 13.7374 5.67677 14.0303 5.96967L18.0303 9.96967C18.3232 10.2626 18.3232 10.7374 18.0303 11.0303C17.7374 11.3232 17.2626 11.3232 16.9697 11.0303L12.9697 7.03033C12.6768 6.73743 12.6768 6.26256 12.9697 5.96967Z"
1854 }));
1855 });
1856 var _default = exports["default"] = EditIcon;
1857
1858 /***/ }),
1859
1860 /***/ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js":
1861 /*!********************************************************************!*\
1862 !*** ../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js ***!
1863 \********************************************************************/
1864 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1865
1866 "use strict";
1867
1868
1869 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1870 Object.defineProperty(exports, "__esModule", ({
1871 value: true
1872 }));
1873 exports["default"] = void 0;
1874 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1875 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1876 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1877 var ExpandDiagonalIcon = _react.default.forwardRef(function (props, ref) {
1878 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1879 viewBox: "0 0 24 24"
1880 }, props, {
1881 ref: ref
1882 }), /*#__PURE__*/_react.default.createElement("path", {
1883 fillRule: "evenodd",
1884 clipRule: "evenodd",
1885 d: "M4 3.25H8C8.41421 3.25 8.75 3.58579 8.75 4C8.75 4.41421 8.41421 4.75 8 4.75H5.81066L10.5303 9.46967C10.8232 9.76256 10.8232 10.2374 10.5303 10.5303C10.2374 10.8232 9.76256 10.8232 9.46967 10.5303L4.75 5.81066V8C4.75 8.41421 4.41421 8.75 4 8.75C3.58579 8.75 3.25 8.41421 3.25 8V4C3.25 3.58579 3.58579 3.25 4 3.25ZM13.4697 13.4697C13.7626 13.1768 14.2374 13.1768 14.5303 13.4697L19.25 18.1893V16C19.25 15.5858 19.5858 15.25 20 15.25C20.4142 15.25 20.75 15.5858 20.75 16V20C20.75 20.4142 20.4142 20.75 20 20.75H16C15.5858 20.75 15.25 20.4142 15.25 20C15.25 19.5858 15.5858 19.25 16 19.25H18.1893L13.4697 14.5303C13.1768 14.2374 13.1768 13.7626 13.4697 13.4697Z"
1886 }));
1887 });
1888 var _default = exports["default"] = ExpandDiagonalIcon;
1889
1890 /***/ }),
1891
1892 /***/ "../modules/ai/assets/js/editor/icons/lock-icon.js":
1893 /*!*********************************************************!*\
1894 !*** ../modules/ai/assets/js/editor/icons/lock-icon.js ***!
1895 \*********************************************************/
1896 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1897
1898 "use strict";
1899
1900
1901 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1902 Object.defineProperty(exports, "__esModule", ({
1903 value: true
1904 }));
1905 exports["default"] = void 0;
1906 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1907 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1908 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1909 var LockIcon = _react.default.forwardRef(function (props, ref) {
1910 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1911 viewBox: "0 0 24 24"
1912 }, props, {
1913 ref: ref
1914 }), /*#__PURE__*/_react.default.createElement("path", {
1915 fillRule: "evenodd",
1916 clipRule: "evenodd",
1917 d: "M7.8125 11.9996C7.29473 11.9996 6.875 12.4473 6.875 12.9996V18.9996C6.875 19.5519 7.29473 19.9996 7.8125 19.9996H17.1875C17.7053 19.9996 18.125 19.5519 18.125 18.9996V12.9996C18.125 12.4473 17.7053 11.9996 17.1875 11.9996H7.8125ZM5 12.9996C5 11.3428 6.2592 9.99963 7.8125 9.99963H17.1875C18.7408 9.99963 20 11.3428 20 12.9996V18.9996C20 20.6565 18.7408 21.9996 17.1875 21.9996H7.8125C6.2592 21.9996 5 20.6565 5 18.9996V12.9996Z"
1918 }), /*#__PURE__*/_react.default.createElement("path", {
1919 fillRule: "evenodd",
1920 clipRule: "evenodd",
1921 d: "M12.5 3.90527C11.7044 3.90527 10.9413 4.22134 10.3787 4.78395C9.81607 5.34656 9.5 6.10962 9.5 6.90527V10.9053C9.5 11.4576 9.05228 11.9053 8.5 11.9053C7.94772 11.9053 7.5 11.4576 7.5 10.9053V6.90527C7.5 5.57919 8.02678 4.30742 8.96447 3.36974C9.90215 2.43206 11.1739 1.90527 12.5 1.90527C13.8261 1.90527 15.0979 2.43206 16.0355 3.36974C16.9732 4.30742 17.5 5.57919 17.5 6.90527V10.9053C17.5 11.4576 17.0523 11.9053 16.5 11.9053C15.9477 11.9053 15.5 11.4576 15.5 10.9053V6.90527C15.5 6.10962 15.1839 5.34656 14.6213 4.78395C14.0587 4.22134 13.2956 3.90527 12.5 3.90527Z"
1922 }), /*#__PURE__*/_react.default.createElement("path", {
1923 d: "M6 12H19V20H6V12Z"
1924 }));
1925 });
1926 var _default = exports["default"] = LockIcon;
1927
1928 /***/ }),
1929
1930 /***/ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js":
1931 /*!**********************************************************************!*\
1932 !*** ../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js ***!
1933 \**********************************************************************/
1934 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1935
1936 "use strict";
1937
1938
1939 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1940 Object.defineProperty(exports, "__esModule", ({
1941 value: true
1942 }));
1943 exports["default"] = void 0;
1944 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1945 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1946 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1947 var MinimizeDiagonalIcon = _react.default.forwardRef(function (props, ref) {
1948 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1949 viewBox: "0 0 24 24"
1950 }, props, {
1951 ref: ref
1952 }), /*#__PURE__*/_react.default.createElement("path", {
1953 fillRule: "evenodd",
1954 clipRule: "evenodd",
1955 d: "M3.46967 3.46967C3.76256 3.17678 4.23744 3.17678 4.53033 3.46967L9.25 8.18934V6C9.25 5.58579 9.58579 5.25 10 5.25C10.4142 5.25 10.75 5.58579 10.75 6V10C10.75 10.4142 10.4142 10.75 10 10.75H6C5.58579 10.75 5.25 10.4142 5.25 10C5.25 9.58579 5.58579 9.25 6 9.25H8.18934L3.46967 4.53033C3.17678 4.23744 3.17678 3.76256 3.46967 3.46967ZM14 13.25H18C18.4142 13.25 18.75 13.5858 18.75 14C18.75 14.4142 18.4142 14.75 18 14.75H15.8107L20.5303 19.4697C20.8232 19.7626 20.8232 20.2374 20.5303 20.5303C20.2374 20.8232 19.7626 20.8232 19.4697 20.5303L14.75 15.8107V18C14.75 18.4142 14.4142 18.75 14 18.75C13.5858 18.75 13.25 18.4142 13.25 18V14C13.25 13.5858 13.5858 13.25 14 13.25Z"
1956 }));
1957 });
1958 var _default = exports["default"] = MinimizeDiagonalIcon;
1959
1960 /***/ }),
1961
1962 /***/ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js":
1963 /*!****************************************************************!*\
1964 !*** ../modules/ai/assets/js/editor/icons/plus-circle-icon.js ***!
1965 \****************************************************************/
1966 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1967
1968 "use strict";
1969
1970
1971 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1972 Object.defineProperty(exports, "__esModule", ({
1973 value: true
1974 }));
1975 exports["default"] = void 0;
1976 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1977 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1978 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1979 var PlusCircleIcon = _react.default.forwardRef(function (props, ref) {
1980 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1981 viewBox: "0 0 24 24"
1982 }, props, {
1983 ref: ref
1984 }), /*#__PURE__*/_react.default.createElement("path", {
1985 d: "M12 2.69231C6.8595 2.69231 2.69231 6.8595 2.69231 12C2.69231 17.1405 6.8595 21.3077 12 21.3077C17.1405 21.3077 21.3077 17.1405 21.3077 12C21.3077 6.8595 17.1405 2.69231 12 2.69231ZM1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12ZM12 7.76923C12.4673 7.76923 12.8462 8.14807 12.8462 8.61538V11.1538H15.3846C15.8519 11.1538 16.2308 11.5327 16.2308 12C16.2308 12.4673 15.8519 12.8462 15.3846 12.8462H12.8462V15.3846C12.8462 15.8519 12.4673 16.2308 12 16.2308C11.5327 16.2308 11.1538 15.8519 11.1538 15.3846V12.8462H8.61538C8.14807 12.8462 7.76923 12.4673 7.76923 12C7.76923 11.5327 8.14807 11.1538 8.61538 11.1538H11.1538V8.61538C11.1538 8.14807 11.5327 7.76923 12 7.76923Z"
1986 }));
1987 });
1988 var _default = exports["default"] = PlusCircleIcon;
1989
1990 /***/ }),
1991
1992 /***/ "../modules/ai/assets/js/editor/icons/refresh-icon.js":
1993 /*!************************************************************!*\
1994 !*** ../modules/ai/assets/js/editor/icons/refresh-icon.js ***!
1995 \************************************************************/
1996 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1997
1998 "use strict";
1999
2000
2001 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2002 Object.defineProperty(exports, "__esModule", ({
2003 value: true
2004 }));
2005 exports["default"] = void 0;
2006 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2007 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2008 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2009 var RefreshIcon = _react.default.forwardRef(function (props, ref) {
2010 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2011 viewBox: "0 0 24 24"
2012 }, props, {
2013 ref: ref
2014 }), /*#__PURE__*/_react.default.createElement("path", {
2015 fillRule: "evenodd",
2016 clipRule: "evenodd",
2017 d: "M7.55012 4.45178C9.23098 3.48072 11.1845 3.08925 13.1097 3.33767C15.035 3.58609 16.8251 4.46061 18.2045 5.82653C19.5838 7.19245 20.4757 8.97399 20.743 10.8967C20.8 11.307 20.5136 11.6858 20.1033 11.7428C19.6931 11.7998 19.3142 11.5135 19.2572 11.1032C19.0353 9.50635 18.2945 8.02677 17.149 6.89236C16.0035 5.75795 14.5167 5.03165 12.9178 4.82534C11.3189 4.61902 9.69644 4.94414 8.30047 5.75061C7.24361 6.36117 6.36093 7.22198 5.72541 8.24995H8.00009C8.41431 8.24995 8.75009 8.58574 8.75009 8.99995C8.75009 9.41417 8.41431 9.74995 8.00009 9.74995H4.51686C4.5055 9.75021 4.49412 9.75021 4.48272 9.74995H4.00009C3.58588 9.74995 3.25009 9.41417 3.25009 8.99995V4.99995C3.25009 4.58574 3.58588 4.24995 4.00009 4.24995C4.41431 4.24995 4.75009 4.58574 4.75009 4.99995V7.00691C5.48358 5.96916 6.43655 5.0951 7.55012 4.45178Z"
2018 }), /*#__PURE__*/_react.default.createElement("path", {
2019 fillRule: "evenodd",
2020 clipRule: "evenodd",
2021 d: "M3.89686 12.2571C4.30713 12.2001 4.68594 12.4864 4.74295 12.8967C4.96487 14.4936 5.70565 15.9731 6.85119 17.1075C7.99673 18.242 9.48347 18.9683 11.0824 19.1746C12.6813 19.3809 14.3037 19.0558 15.6997 18.2493C16.7566 17.6387 17.6393 16.7779 18.2748 15.75H16.0001C15.5859 15.75 15.2501 15.4142 15.2501 15C15.2501 14.5857 15.5859 14.25 16.0001 14.25H19.4833C19.4947 14.2497 19.5061 14.2497 19.5175 14.25H20.0001C20.4143 14.25 20.7501 14.5857 20.7501 15V19C20.7501 19.4142 20.4143 19.75 20.0001 19.75C19.5859 19.75 19.2501 19.4142 19.2501 19V16.993C18.5166 18.0307 17.5636 18.9048 16.4501 19.5481C14.7692 20.5192 12.8157 20.9107 10.8904 20.6622C8.9652 20.4138 7.17504 19.5393 5.79572 18.1734C4.4164 16.8074 3.52443 15.0259 3.25723 13.1032C3.20022 12.6929 3.48658 12.3141 3.89686 12.2571Z"
2022 }));
2023 });
2024 var _default = exports["default"] = RefreshIcon;
2025
2026 /***/ }),
2027
2028 /***/ "../modules/ai/assets/js/editor/icons/wand-icon.js":
2029 /*!*********************************************************!*\
2030 !*** ../modules/ai/assets/js/editor/icons/wand-icon.js ***!
2031 \*********************************************************/
2032 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2033
2034 "use strict";
2035
2036
2037 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2038 Object.defineProperty(exports, "__esModule", ({
2039 value: true
2040 }));
2041 exports["default"] = void 0;
2042 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2043 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2044 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2045 var WandIcon = _react.default.forwardRef(function (props, ref) {
2046 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2047 viewBox: "0 0 24 24"
2048 }, props, {
2049 ref: ref
2050 }), /*#__PURE__*/_react.default.createElement("path", {
2051 fillRule: "evenodd",
2052 clipRule: "evenodd",
2053 d: "M9 2.25C9.41421 2.25 9.75 2.58579 9.75 3C9.75 3.33152 9.8817 3.64946 10.1161 3.88388C10.3505 4.1183 10.6685 4.25 11 4.25C11.4142 4.25 11.75 4.58579 11.75 5C11.75 5.41421 11.4142 5.75 11 5.75C10.6685 5.75 10.3505 5.8817 10.1161 6.11612C9.8817 6.35054 9.75 6.66848 9.75 7C9.75 7.41421 9.41421 7.75 9 7.75C8.58579 7.75 8.25 7.41421 8.25 7C8.25 6.66848 8.1183 6.35054 7.88388 6.11612C7.64946 5.8817 7.33152 5.75 7 5.75C6.58579 5.75 6.25 5.41421 6.25 5C6.25 4.58579 6.58579 4.25 7 4.25C7.33152 4.25 7.64946 4.1183 7.88388 3.88388C8.1183 3.64946 8.25 3.33152 8.25 3C8.25 2.58579 8.58579 2.25 9 2.25ZM9 4.88746C8.98182 4.90673 8.96333 4.92576 8.94454 4.94454C8.92576 4.96333 8.90673 4.98182 8.88746 5C8.90673 5.01818 8.92576 5.03667 8.94454 5.05546C8.96333 5.07424 8.98182 5.09327 9 5.11254C9.01818 5.09327 9.03667 5.07424 9.05546 5.05546C9.07424 5.03667 9.09327 5.01818 9.11254 5C9.09327 4.98182 9.07424 4.96333 9.05546 4.94454C9.03667 4.92576 9.01818 4.90673 9 4.88746Z"
2054 }), /*#__PURE__*/_react.default.createElement("path", {
2055 fillRule: "evenodd",
2056 clipRule: "evenodd",
2057 d: "M18.5303 2.46967C18.2374 2.17678 17.7626 2.17678 17.4697 2.46967L2.46967 17.4697C2.17678 17.7626 2.17678 18.2374 2.46967 18.5303L5.46967 21.5303C5.76256 21.8232 6.23744 21.8232 6.53033 21.5303L21.5303 6.53033C21.8232 6.23744 21.8232 5.76256 21.5303 5.46967L18.5303 2.46967ZM18 7.93934L19.9393 6L18 4.06066L16.0607 6L18 7.93934ZM15 7.06066L16.9393 9L6 19.9393L4.06066 18L15 7.06066Z"
2058 }), /*#__PURE__*/_react.default.createElement("path", {
2059 fillRule: "evenodd",
2060 clipRule: "evenodd",
2061 d: "M19.75 13C19.75 12.5858 19.4142 12.25 19 12.25C18.5858 12.25 18.25 12.5858 18.25 13C18.25 13.3315 18.1183 13.6495 17.8839 13.8839C17.6495 14.1183 17.3315 14.25 17 14.25C16.5858 14.25 16.25 14.5858 16.25 15C16.25 15.4142 16.5858 15.75 17 15.75C17.3315 15.75 17.6495 15.8817 17.8839 16.1161C18.1183 16.3505 18.25 16.6685 18.25 17C18.25 17.4142 18.5858 17.75 19 17.75C19.4142 17.75 19.75 17.4142 19.75 17C19.75 16.6685 19.8817 16.3505 20.1161 16.1161C20.3505 15.8817 20.6685 15.75 21 15.75C21.4142 15.75 21.75 15.4142 21.75 15C21.75 14.5858 21.4142 14.25 21 14.25C20.6685 14.25 20.3505 14.1183 20.1161 13.8839C19.8817 13.6495 19.75 13.3315 19.75 13ZM18.9445 14.9445C18.9633 14.9258 18.9818 14.9067 19 14.8875C19.0182 14.9067 19.0367 14.9258 19.0555 14.9445C19.0742 14.9633 19.0933 14.9818 19.1125 15C19.0933 15.0182 19.0742 15.0367 19.0555 15.0555C19.0367 15.0742 19.0182 15.0933 19 15.1125C18.9818 15.0933 18.9633 15.0742 18.9445 15.0555C18.9258 15.0367 18.9067 15.0182 18.8875 15C18.9067 14.9818 18.9258 14.9633 18.9445 14.9445Z"
2062 }));
2063 });
2064 var _default = exports["default"] = WandIcon;
2065
2066 /***/ }),
2067
2068 /***/ "../modules/ai/assets/js/editor/icons/website-icon.js":
2069 /*!************************************************************!*\
2070 !*** ../modules/ai/assets/js/editor/icons/website-icon.js ***!
2071 \************************************************************/
2072 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2073
2074 "use strict";
2075
2076
2077 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2078 Object.defineProperty(exports, "__esModule", ({
2079 value: true
2080 }));
2081 exports["default"] = void 0;
2082 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2083 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2084 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2085 var WebsiteIcon = _react.default.forwardRef(function (props, ref) {
2086 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2087 viewBox: "0 0 24 24"
2088 }, props, {
2089 ref: ref
2090 }), /*#__PURE__*/_react.default.createElement("path", {
2091 fillRule: "evenodd",
2092 clipRule: "evenodd",
2093 d: "M4.16707 3.95837C4.11182 3.95837 4.05883 3.98032 4.01976 4.01939C3.98069 4.05846 3.95874 4.11145 3.95874 4.16671V6.04171H6.04207V3.95837H4.16707ZM4.16707 2.70837C3.7803 2.70837 3.40937 2.86202 3.13588 3.13551C2.86239 3.409 2.70874 3.77993 2.70874 4.16671V15.8334C2.70874 16.2201 2.86239 16.5911 3.13588 16.8646C3.40937 17.1381 3.7803 17.2917 4.16707 17.2917H15.8337C16.2205 17.2917 16.5914 17.1381 16.8649 16.8646C17.1384 16.5911 17.2921 16.2201 17.2921 15.8334V4.16671C17.2921 3.77993 17.1384 3.409 16.8649 3.13551C16.5914 2.86202 16.2205 2.70837 15.8337 2.70837H4.16707ZM7.29207 3.95837V6.04171H16.0421V4.16671C16.0421 4.11145 16.0201 4.05846 15.9811 4.01939C15.942 3.98032 15.889 3.95837 15.8337 3.95837H7.29207ZM16.0421 7.29171H3.95874V15.8334C3.95874 15.8886 3.98069 15.9416 4.01976 15.9807C4.05883 16.0198 4.11182 16.0417 4.16707 16.0417H15.8337C15.889 16.0417 15.942 16.0198 15.9811 15.9807C16.0201 15.9416 16.0421 15.8886 16.0421 15.8334V7.29171Z"
2094 }));
2095 });
2096 var _default = exports["default"] = WebsiteIcon;
2097
2098 /***/ }),
2099
2100 /***/ "../modules/ai/assets/js/editor/icons/x-circle-icon.js":
2101 /*!*************************************************************!*\
2102 !*** ../modules/ai/assets/js/editor/icons/x-circle-icon.js ***!
2103 \*************************************************************/
2104 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2105
2106 "use strict";
2107
2108
2109 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2110 Object.defineProperty(exports, "__esModule", ({
2111 value: true
2112 }));
2113 exports["default"] = void 0;
2114 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2115 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2116 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2117 var XCircleIcon = _react.default.forwardRef(function (props, ref) {
2118 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2119 viewBox: "0 0 24 24"
2120 }, props, {
2121 ref: ref
2122 }), /*#__PURE__*/_react.default.createElement("path", {
2123 d: "M12 2.69231C6.8595 2.69231 2.69231 6.8595 2.69231 12C2.69231 17.1405 6.8595 21.3077 12 21.3077C17.1405 21.3077 21.3077 17.1405 21.3077 12C21.3077 6.8595 17.1405 2.69231 12 2.69231ZM1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12ZM9.14527 9.14527C9.47571 8.81483 10.0115 8.81483 10.3419 9.14527L12 10.8034L13.6581 9.14527C13.9885 8.81483 14.5243 8.81483 14.8547 9.14527C15.1852 9.47571 15.1852 10.0115 14.8547 10.3419L13.1966 12L14.8547 13.6581C15.1852 13.9885 15.1852 14.5243 14.8547 14.8547C14.5243 15.1852 13.9885 15.1852 13.6581 14.8547L12 13.1966L10.3419 14.8547C10.0115 15.1852 9.47571 15.1852 9.14527 14.8547C8.81483 14.5243 8.81483 13.9885 9.14527 13.6581L10.8034 12L9.14527 10.3419C8.81483 10.0115 8.81483 9.47571 9.14527 9.14527Z"
2124 }));
2125 });
2126 var _default = exports["default"] = XCircleIcon;
2127
2128 /***/ }),
2129
2130 /***/ "../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js":
2131 /*!********************************************************************************************!*\
2132 !*** ../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js ***!
2133 \********************************************************************************************/
2134 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2135
2136 "use strict";
2137
2138
2139 var _require = __webpack_require__(/*! ../../utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js"),
2140 renderLayoutApp = _require.renderLayoutApp,
2141 importToEditor = _require.importToEditor;
2142 var _require2 = __webpack_require__(/*! ../../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js"),
2143 MODE_VARIATION = _require2.MODE_VARIATION;
2144 var _require3 = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"),
2145 __ = _require3.__;
2146 var _require4 = __webpack_require__(/*! ../../pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"),
2147 ATTACHMENT_TYPE_JSON = _require4.ATTACHMENT_TYPE_JSON,
2148 ELEMENTOR_LIBRARY_SOURCE = _require4.ELEMENTOR_LIBRARY_SOURCE;
2149 var ApplyTemplateForAiBehavior;
2150 ApplyTemplateForAiBehavior = Marionette.Behavior.extend({
2151 ui: {
2152 applyButton: '.elementor-template-library-template-apply-ai',
2153 generateVariation: '.elementor-template-library-template-generate-variation'
2154 },
2155 events: {
2156 'click @ui.applyButton': 'onApplyButtonClick',
2157 'click @ui.generateVariation': 'onGenerateVariationClick'
2158 },
2159 onGenerateVariationClick: function onGenerateVariationClick() {
2160 var _libraryComponent$man;
2161 var args = {
2162 model: this.view.model
2163 };
2164 var libraryComponent = $e.components.get('library');
2165 var at = (_libraryComponent$man = libraryComponent.manager.modalConfig) === null || _libraryComponent$man === void 0 || (_libraryComponent$man = _libraryComponent$man.importOptions) === null || _libraryComponent$man === void 0 ? void 0 : _libraryComponent$man.at;
2166 libraryComponent.downloadTemplate(args, function (data) {
2167 var model = args.model;
2168 var attachment = {
2169 type: ATTACHMENT_TYPE_JSON,
2170 previewHTML: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
2171 content: data.content[0],
2172 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
2173 source: ELEMENTOR_LIBRARY_SOURCE
2174 };
2175 renderLayoutApp({
2176 parentContainer: elementor.getPreviewContainer(),
2177 mode: MODE_VARIATION,
2178 at: at,
2179 attachments: [attachment],
2180 onInsert: function onInsert(template) {
2181 importToEditor({
2182 parentContainer: elementor.getPreviewContainer(),
2183 at: at,
2184 template: template,
2185 historyTitle: __('AI Variation from library', 'elementor')
2186 });
2187 }
2188 });
2189 $e.run('library/close');
2190 });
2191 },
2192 onApplyButtonClick: function onApplyButtonClick() {
2193 var args = {
2194 model: this.view.model
2195 };
2196 this.ui.applyButton.addClass('elementor-disabled');
2197 if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
2198 $e.route('library/connect', args);
2199 return;
2200 }
2201 $e.run('library/generate-ai-variation', args);
2202 }
2203 });
2204 module.exports = ApplyTemplateForAiBehavior;
2205
2206 /***/ }),
2207
2208 /***/ "../modules/ai/assets/js/editor/layout-app-wrapper.js":
2209 /*!************************************************************!*\
2210 !*** ../modules/ai/assets/js/editor/layout-app-wrapper.js ***!
2211 \************************************************************/
2212 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2213
2214 "use strict";
2215
2216
2217 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2218 Object.defineProperty(exports, "__esModule", ({
2219 value: true
2220 }));
2221 exports["default"] = void 0;
2222 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2223 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2224 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2225 var LayoutAppWrapper = function LayoutAppWrapper(props) {
2226 return /*#__PURE__*/_react.default.createElement(_ui.DirectionProvider, {
2227 rtl: props.isRTL
2228 }, /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, {
2229 colorScheme: props.colorScheme
2230 }, props.children));
2231 };
2232 LayoutAppWrapper.propTypes = {
2233 children: _propTypes.default.node,
2234 isRTL: _propTypes.default.bool,
2235 colorScheme: _propTypes.default.oneOf(['auto', 'light', 'dark'])
2236 };
2237 var _default = exports["default"] = LayoutAppWrapper;
2238
2239 /***/ }),
2240
2241 /***/ "../modules/ai/assets/js/editor/layout-app.js":
2242 /*!****************************************************!*\
2243 !*** ../modules/ai/assets/js/editor/layout-app.js ***!
2244 \****************************************************/
2245 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2246
2247 "use strict";
2248
2249
2250 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2251 Object.defineProperty(exports, "__esModule", ({
2252 value: true
2253 }));
2254 exports["default"] = void 0;
2255 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2256 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2257 var _layoutContent = _interopRequireDefault(__webpack_require__(/*! ./layout-content */ "../modules/ai/assets/js/editor/layout-content.js"));
2258 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2259 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2260 var _remoteConfig = __webpack_require__(/*! ./pages/form-layout/context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
2261 var _requestsIds = __webpack_require__(/*! ./context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2262 var LayoutApp = function LayoutApp(props) {
2263 return /*#__PURE__*/_react.default.createElement(_remoteConfig.RemoteConfigProvider, {
2264 onError: props.onClose
2265 }, /*#__PURE__*/_react.default.createElement(_requestsIds.RequestIdsProvider, null, /*#__PURE__*/_react.default.createElement(_config.ConfigProvider, {
2266 mode: props.mode,
2267 attachmentsTypes: props.attachmentsTypes,
2268 onClose: props.onClose,
2269 onConnect: props.onConnect,
2270 onData: props.onData,
2271 onInsert: props.onInsert,
2272 onSelect: props.onSelect,
2273 onGenerate: props.onGenerate,
2274 currentContext: props.currentContext,
2275 hasPro: props.hasPro
2276 }, /*#__PURE__*/_react.default.createElement(_layoutContent.default, {
2277 attachments: props.attachments
2278 }))));
2279 };
2280 LayoutApp.propTypes = {
2281 mode: _propTypes.default.oneOf(_config.LAYOUT_APP_MODES).isRequired,
2282 attachmentsTypes: _attachment.AttachmentsTypesPropType,
2283 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
2284 onClose: _propTypes.default.func.isRequired,
2285 onConnect: _propTypes.default.func.isRequired,
2286 onData: _propTypes.default.func.isRequired,
2287 onInsert: _propTypes.default.func.isRequired,
2288 onSelect: _propTypes.default.func.isRequired,
2289 onGenerate: _propTypes.default.func.isRequired,
2290 currentContext: _propTypes.default.object,
2291 hasPro: _propTypes.default.bool
2292 };
2293 var _default = exports["default"] = LayoutApp;
2294
2295 /***/ }),
2296
2297 /***/ "../modules/ai/assets/js/editor/layout-content.js":
2298 /*!********************************************************!*\
2299 !*** ../modules/ai/assets/js/editor/layout-content.js ***!
2300 \********************************************************/
2301 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2302
2303 "use strict";
2304
2305
2306 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2307 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
2308 Object.defineProperty(exports, "__esModule", ({
2309 value: true
2310 }));
2311 exports["default"] = void 0;
2312 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
2313 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2314 var _connect = _interopRequireDefault(__webpack_require__(/*! ./pages/connect */ "../modules/ai/assets/js/editor/pages/connect/index.js"));
2315 var _formLayout = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout */ "../modules/ai/assets/js/editor/pages/form-layout/index.js"));
2316 var _getStarted = _interopRequireDefault(__webpack_require__(/*! ./pages/get-started */ "../modules/ai/assets/js/editor/pages/get-started/index.js"));
2317 var _loader = _interopRequireDefault(__webpack_require__(/*! ./components/loader */ "../modules/ai/assets/js/editor/components/loader.js"));
2318 var _upgradeChip = _interopRequireDefault(__webpack_require__(/*! ./components/upgrade-chip */ "../modules/ai/assets/js/editor/components/upgrade-chip.js"));
2319 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
2320 var _wizardDialog = _interopRequireDefault(__webpack_require__(/*! ./components/wizard-dialog */ "../modules/ai/assets/js/editor/components/wizard-dialog.js"));
2321 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout/components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
2322 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2323 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2324 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2325 var _requestsIds = __webpack_require__(/*! ./context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2326 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
2327 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
2328 var LayoutContent = function LayoutContent(props) {
2329 var _useUserInfo = (0, _useUserInfo2.default)(),
2330 isLoading = _useUserInfo.isLoading,
2331 isConnected = _useUserInfo.isConnected,
2332 isGetStarted = _useUserInfo.isGetStarted,
2333 connectUrl = _useUserInfo.connectUrl,
2334 fetchData = _useUserInfo.fetchData,
2335 hasSubscription = _useUserInfo.hasSubscription,
2336 initialUsagePercentage = _useUserInfo.usagePercentage;
2337 var _useConfig = (0, _config.useConfig)(),
2338 onClose = _useConfig.onClose,
2339 onConnect = _useConfig.onConnect;
2340 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
2341 updateUsagePercentage = _useRequestIds.updateUsagePercentage,
2342 usagePercentage = _useRequestIds.usagePercentage;
2343 var _useState = (0, _react.useState)(false),
2344 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2345 isInitUsageDone = _useState2[0],
2346 setIsInitUsageDone = _useState2[1];
2347 (0, _react.useEffect)(function () {
2348 if (!isInitUsageDone && !isLoading && (initialUsagePercentage || 0 === initialUsagePercentage)) {
2349 updateUsagePercentage(initialUsagePercentage);
2350 setIsInitUsageDone(true);
2351 }
2352 }, [isLoading, initialUsagePercentage, isInitUsageDone, updateUsagePercentage]);
2353 if (isLoading || !isInitUsageDone) {
2354 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2355 onClose: onClose
2356 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, {
2357 onClose: onClose
2358 }), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, {
2359 dividers: true
2360 }, /*#__PURE__*/_react.default.createElement(_loader.default, {
2361 BoxProps: {
2362 sx: {
2363 px: 3
2364 }
2365 }
2366 })));
2367 }
2368 if (!isConnected) {
2369 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
2370 onClose: onClose
2371 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2372 onClose: onClose
2373 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
2374 dividers: true
2375 }, /*#__PURE__*/_react.default.createElement(_connect.default, {
2376 connectUrl: connectUrl,
2377 onSuccess: function onSuccess(data) {
2378 onConnect(data);
2379 fetchData();
2380 }
2381 })));
2382 }
2383 if (!isGetStarted) {
2384 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
2385 onClose: onClose
2386 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2387 onClose: onClose
2388 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
2389 dividers: true
2390 }, /*#__PURE__*/_react.default.createElement(_getStarted.default, {
2391 onSuccess: fetchData
2392 })));
2393 }
2394 var showUpgradeChip = !hasSubscription || 80 <= usagePercentage;
2395 return /*#__PURE__*/_react.default.createElement(_formLayout.default, {
2396 attachments: props.attachments,
2397 DialogHeaderProps: {
2398 children: showUpgradeChip && /*#__PURE__*/_react.default.createElement(_upgradeChip.default, {
2399 hasSubscription: hasSubscription,
2400 usagePercentage: usagePercentage
2401 })
2402 }
2403 });
2404 };
2405 LayoutContent.propTypes = {
2406 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
2407 };
2408 var _default = exports["default"] = LayoutContent;
2409
2410 /***/ }),
2411
2412 /***/ "../modules/ai/assets/js/editor/pages/connect/index.js":
2413 /*!*************************************************************!*\
2414 !*** ../modules/ai/assets/js/editor/pages/connect/index.js ***!
2415 \*************************************************************/
2416 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2417
2418 "use strict";
2419
2420
2421 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2422 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
2423 Object.defineProperty(exports, "__esModule", ({
2424 value: true
2425 }));
2426 exports["default"] = void 0;
2427 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
2428 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2429 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
2430 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2431 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
2432 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
2433 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
2434 var Connect = function Connect(_ref) {
2435 var connectUrl = _ref.connectUrl,
2436 onSuccess = _ref.onSuccess;
2437 var approveButtonRef = (0, _react.useRef)();
2438 (0, _react.useEffect)(function () {
2439 // On local dev (as a standalone app), the connect lib is not loaded.
2440 if (!jQuery.fn.elementorConnect) {
2441 return;
2442 }
2443 jQuery(approveButtonRef.current).elementorConnect({
2444 success: function success(_, data) {
2445 return onSuccess(data);
2446 },
2447 error: function error() {
2448 throw new Error('Elementor AI: Failed to connect.');
2449 }
2450 });
2451 }, []);
2452 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2453 alignItems: "center",
2454 gap: 2
2455 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
2456 sx: {
2457 color: 'text.primary',
2458 fontSize: '60px',
2459 mb: 1
2460 }
2461 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2462 variant: "h4",
2463 sx: {
2464 color: 'text.primary'
2465 }
2466 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2467 variant: "body2"
2468 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2469 variant: "caption",
2470 sx: {
2471 maxWidth: 520,
2472 textAlign: 'center'
2473 }
2474 }, (0, _i18n.__)('By clicking "Connect", I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
2475 href: "https://go.elementor.com/ai-terms/",
2476 target: "_blank",
2477 color: "info.main"
2478 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
2479 href: "https://go.elementor.com/ai-privacy-policy/",
2480 target: "_blank",
2481 color: "info.main"
2482 }, (0, _i18n.__)('Privacy Policy', 'elementor')), (0, _i18n.__)(' of the Elementor AI service.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
2483 ref: approveButtonRef,
2484 href: connectUrl,
2485 variant: "contained",
2486 sx: {
2487 mt: 1,
2488 '&:hover': {
2489 color: 'primary.contrastText'
2490 }
2491 }
2492 }, (0, _i18n.__)('Connect', 'elementor')));
2493 };
2494 Connect.propTypes = {
2495 connectUrl: _propTypes.default.string.isRequired,
2496 onSuccess: _propTypes.default.func.isRequired
2497 };
2498 var _default = exports["default"] = Connect;
2499
2500 /***/ }),
2501
2502 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js":
2503 /*!**********************************************************************************!*\
2504 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js ***!
2505 \**********************************************************************************/
2506 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2507
2508 "use strict";
2509
2510
2511 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2512 Object.defineProperty(exports, "__esModule", ({
2513 value: true
2514 }));
2515 exports["default"] = exports.USER_VARIATION_SOURCE = exports.USER_URL_SOURCE = exports.MENU_TYPE_LIBRARY = exports.ELEMENTOR_LIBRARY_SOURCE = exports.ATTACHMENT_TYPE_URL = exports.ATTACHMENT_TYPE_JSON = void 0;
2516 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2517 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2518 var _menu = __webpack_require__(/*! ./attachments/menu */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js");
2519 var _thumbnailJson = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-json */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js"));
2520 var _thumbnailUrl = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-url */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js"));
2521 var _websiteIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/website-icon */ "../modules/ai/assets/js/editor/icons/website-icon.js"));
2522 var _copyPageIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/copy-page-icon */ "../modules/ai/assets/js/editor/icons/copy-page-icon.js"));
2523 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
2524 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2525 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2526 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2527 var ATTACHMENT_TYPE_JSON = exports.ATTACHMENT_TYPE_JSON = 'json';
2528 var ATTACHMENT_TYPE_URL = exports.ATTACHMENT_TYPE_URL = 'url';
2529 var MENU_TYPE_LIBRARY = exports.MENU_TYPE_LIBRARY = 'library';
2530 var USER_VARIATION_SOURCE = exports.USER_VARIATION_SOURCE = 'user-variation';
2531 var ELEMENTOR_LIBRARY_SOURCE = exports.ELEMENTOR_LIBRARY_SOURCE = 'elementor-library';
2532 var USER_URL_SOURCE = exports.USER_URL_SOURCE = 'user-url';
2533 var Attachments = function Attachments(props) {
2534 if (!props.attachments.length) {
2535 return /*#__PURE__*/_react.default.createElement(_menu.Menu, {
2536 disabled: props.disabled,
2537 onAttach: props.onAttach,
2538 items: [{
2539 title: (0, _i18n.__)('Reference a website', 'elementor'),
2540 icon: _websiteIcon.default,
2541 type: ATTACHMENT_TYPE_URL
2542 }, {
2543 title: (0, _i18n.__)('Create variations from Template Library', 'elementor'),
2544 icon: _copyPageIcon.default,
2545 type: MENU_TYPE_LIBRARY
2546 }]
2547 });
2548 }
2549 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2550 direction: "row",
2551 spacing: 1
2552 }, props.attachments.map(function (attachment, index) {
2553 switch (attachment.type) {
2554 case ATTACHMENT_TYPE_JSON:
2555 return /*#__PURE__*/_react.default.createElement(_thumbnailJson.default, (0, _extends2.default)({
2556 key: index
2557 }, props));
2558 case ATTACHMENT_TYPE_URL:
2559 return /*#__PURE__*/_react.default.createElement(_thumbnailUrl.default, (0, _extends2.default)({
2560 key: index
2561 }, props));
2562 default:
2563 return null;
2564 }
2565 }));
2566 };
2567 Attachments.propTypes = {
2568 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
2569 onAttach: _propTypes.default.func.isRequired,
2570 onDetach: _propTypes.default.func,
2571 disabled: _propTypes.default.bool
2572 };
2573 var _default = exports["default"] = Attachments;
2574
2575 /***/ }),
2576
2577 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js":
2578 /*!************************************************************************************************!*\
2579 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js ***!
2580 \************************************************************************************************/
2581 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2582
2583 "use strict";
2584
2585
2586 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2587 Object.defineProperty(exports, "__esModule", ({
2588 value: true
2589 }));
2590 exports["default"] = exports.AttachDialog = void 0;
2591 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2592 var _urlDialog = __webpack_require__(/*! ./url-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js");
2593 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2594 var _libraryDialog = __webpack_require__(/*! ./library-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js");
2595 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
2596 var AttachDialog = exports.AttachDialog = function AttachDialog(props) {
2597 var type = props.type;
2598 var url = props.url;
2599 switch (type) {
2600 case _attachments.ATTACHMENT_TYPE_URL:
2601 return /*#__PURE__*/_react.default.createElement(_urlDialog.UrlDialog, {
2602 url: url,
2603 onAttach: props.onAttach,
2604 onClose: props.onClose
2605 });
2606 case _attachments.MENU_TYPE_LIBRARY:
2607 return /*#__PURE__*/_react.default.createElement(_libraryDialog.LibraryDialog, {
2608 onAttach: props.onAttach,
2609 onClose: props.onClose
2610 });
2611 }
2612 return null;
2613 };
2614 AttachDialog.propTypes = {
2615 type: _propTypes.default.string,
2616 onAttach: _propTypes.default.func,
2617 onClose: _propTypes.default.func,
2618 url: _propTypes.default.string
2619 };
2620 var _default = exports["default"] = AttachDialog;
2621
2622 /***/ }),
2623
2624 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js":
2625 /*!*************************************************************************************************!*\
2626 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js ***!
2627 \*************************************************************************************************/
2628 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2629
2630 "use strict";
2631
2632
2633 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2634 Object.defineProperty(exports, "__esModule", ({
2635 value: true
2636 }));
2637 exports.LibraryDialog = void 0;
2638 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2639 var _react = __webpack_require__(/*! react */ "react");
2640 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
2641 var LibraryDialog = exports.LibraryDialog = function LibraryDialog(props) {
2642 var isApplyingTemplate = (0, _react.useRef)(false);
2643 (0, _react.useEffect)(function () {
2644 var onLibraryHide = function onLibraryHide() {
2645 if (isApplyingTemplate.current) {
2646 return;
2647 }
2648 props.onClose();
2649 };
2650 $e.components.get('library').layout.getModal().on('hide', onLibraryHide);
2651 return function () {
2652 $e.components.get('library').layout.getModal().off('hide', onLibraryHide);
2653 };
2654 }, [props]);
2655 (0, _react.useEffect)(function () {
2656 var onMessage = function onMessage(event) {
2657 var _event$data = event.data,
2658 type = _event$data.type,
2659 json = _event$data.json,
2660 html = _event$data.html,
2661 label = _event$data.label,
2662 source = _event$data.source;
2663 switch (type) {
2664 case 'library/attach:start':
2665 isApplyingTemplate.current = true;
2666 break;
2667 case 'library/attach':
2668 props.onAttach([{
2669 type: _attachments.ATTACHMENT_TYPE_JSON,
2670 previewHTML: html,
2671 content: json,
2672 label: label,
2673 source: source
2674 }]);
2675 isApplyingTemplate.current = false;
2676 props.onClose();
2677 break;
2678 }
2679 };
2680 window.addEventListener('message', onMessage);
2681 return function () {
2682 window.removeEventListener('message', onMessage);
2683 };
2684 });
2685 $e.run('library/open', {
2686 toDefault: true,
2687 mode: 'ai-attachment'
2688 });
2689 isApplyingTemplate.current = false;
2690 return null;
2691 };
2692 LibraryDialog.propTypes = {
2693 onAttach: _propTypes.default.func.isRequired,
2694 onClose: _propTypes.default.func.isRequired
2695 };
2696
2697 /***/ }),
2698
2699 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js":
2700 /*!***************************************************************************************!*\
2701 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js ***!
2702 \***************************************************************************************/
2703 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2704
2705 "use strict";
2706
2707
2708 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2709 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
2710 Object.defineProperty(exports, "__esModule", ({
2711 value: true
2712 }));
2713 exports.Menu = void 0;
2714 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
2715 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2716 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2717 var _xCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/x-circle-icon */ "../modules/ai/assets/js/editor/icons/x-circle-icon.js"));
2718 var _plusCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/plus-circle-icon */ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js"));
2719 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2720 var _attachDialog = __webpack_require__(/*! ./attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js");
2721 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
2722 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
2723 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
2724 var Menu = exports.Menu = function Menu(props) {
2725 var _useState = (0, _react.useState)(false),
2726 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2727 isOpen = _useState2[0],
2728 setIsOpen = _useState2[1];
2729 var _useState3 = (0, _react.useState)(null),
2730 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2731 selectedType = _useState4[0],
2732 setSelectedType = _useState4[1];
2733 var _useTheme = (0, _ui.useTheme)(),
2734 direction = _useTheme.direction;
2735 var anchorRef = (0, _react.useRef)(null);
2736 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-attachment-badge'),
2737 isViewed = _useIntroduction.isViewed,
2738 markAsViewed = _useIntroduction.markAsViewed;
2739 return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
2740 size: "small",
2741 ref: anchorRef,
2742 disabled: props.disabled,
2743 onClick: function onClick() {
2744 setIsOpen(true);
2745 if (!isViewed) {
2746 markAsViewed();
2747 }
2748 },
2749 color: "secondary"
2750 }, function () {
2751 if (isOpen) {
2752 return /*#__PURE__*/_react.default.createElement(_xCircleIcon.default, {
2753 fontSize: "small"
2754 });
2755 } else if (isViewed) {
2756 return /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
2757 fontSize: "small"
2758 });
2759 }
2760 return /*#__PURE__*/_react.default.createElement(_ui.Badge, {
2761 color: "primary",
2762 badgeContent: " ",
2763 variant: "dot"
2764 }, /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
2765 fontSize: "small"
2766 }));
2767 }()), /*#__PURE__*/_react.default.createElement(_ui.Popover, {
2768 open: isOpen,
2769 anchorEl: anchorRef.current,
2770 onClose: function onClose() {
2771 return setIsOpen(false);
2772 },
2773 anchorOrigin: {
2774 vertical: 'bottom',
2775 horizontal: 'rtl' === direction ? 'right' : 'left'
2776 },
2777 transformOrigin: {
2778 vertical: 'top',
2779 horizontal: 'rtl' === direction ? 'right' : 'left'
2780 }
2781 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2782 sx: {
2783 width: 440
2784 }
2785 }, props.items.map(function (item) {
2786 var IconComponent = item.icon;
2787 return /*#__PURE__*/_react.default.createElement(_ui.MenuItem, {
2788 key: item.type,
2789 onClick: function onClick() {
2790 setSelectedType(item.type);
2791 setIsOpen(false);
2792 }
2793 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(IconComponent, null)), item.title);
2794 }))), /*#__PURE__*/_react.default.createElement(_attachDialog.AttachDialog, {
2795 type: selectedType,
2796 onAttach: props.onAttach,
2797 onClose: function onClose() {
2798 setIsOpen(false);
2799 setSelectedType(null);
2800 }
2801 }));
2802 };
2803 Menu.propTypes = {
2804 items: _propTypes.default.arrayOf(_propTypes.default.shape({
2805 title: _propTypes.default.string.isRequired,
2806 type: _propTypes.default.string.isRequired,
2807 icon: _propTypes.default.elementType
2808 })).isRequired,
2809 onAttach: _propTypes.default.func.isRequired,
2810 disabled: _propTypes.default.bool
2811 };
2812
2813 /***/ }),
2814
2815 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js":
2816 /*!******************************************************************************************************!*\
2817 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js ***!
2818 \******************************************************************************************************/
2819 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2820
2821 "use strict";
2822
2823
2824 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2825 Object.defineProperty(exports, "__esModule", ({
2826 value: true
2827 }));
2828 exports.PromptPowerNotice = void 0;
2829 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2830 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2831 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
2832 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
2833 var PromptPowerNotice = exports.PromptPowerNotice = function PromptPowerNotice() {
2834 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-attachments-power'),
2835 isViewed = _useIntroduction.isViewed,
2836 markAsViewed = _useIntroduction.markAsViewed;
2837 if (isViewed) {
2838 return null;
2839 }
2840 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
2841 sx: {
2842 pt: 2,
2843 px: 2,
2844 pb: 0
2845 }
2846 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
2847 severity: "info",
2848 onClose: function onClose() {
2849 return markAsViewed();
2850 }
2851 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2852 variant: "body2",
2853 display: "inline-block",
2854 sx: {
2855 paddingInlineEnd: 1
2856 }
2857 }, (0, _i18n.__)('You’ve got the power.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2858 variant: "body2",
2859 display: "inline-block"
2860 }, (0, _i18n.__)('Craft your prompt to affect content, images and/or colors - whichever you decide.', 'elementor'))));
2861 };
2862
2863 /***/ }),
2864
2865 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js":
2866 /*!*************************************************************************************************!*\
2867 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js ***!
2868 \*************************************************************************************************/
2869 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2870
2871 "use strict";
2872
2873
2874 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2875 Object.defineProperty(exports, "__esModule", ({
2876 value: true
2877 }));
2878 exports["default"] = exports.ThumbnailJson = void 0;
2879 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2880 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
2881 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2882 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2883 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2884 var ThumbnailJson = exports.ThumbnailJson = function ThumbnailJson(props) {
2885 var _props$attachments;
2886 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
2887 return 'json' === item.type;
2888 });
2889 if (!attachment) {
2890 return null;
2891 }
2892 if (!attachment.previewHTML) {
2893 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
2894 animation: "wave",
2895 variant: "rounded",
2896 width: 60,
2897 height: 60
2898 });
2899 }
2900 return /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
2901 html: attachment.previewHTML,
2902 disabled: props.disabled
2903 });
2904 };
2905 ThumbnailJson.propTypes = {
2906 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
2907 disabled: _propTypes.default.bool
2908 };
2909 var _default = exports["default"] = ThumbnailJson;
2910
2911 /***/ }),
2912
2913 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js":
2914 /*!************************************************************************************************!*\
2915 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js ***!
2916 \************************************************************************************************/
2917 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2918
2919 "use strict";
2920
2921
2922 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2923 Object.defineProperty(exports, "__esModule", ({
2924 value: true
2925 }));
2926 exports["default"] = exports.ThumbnailUrl = void 0;
2927 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2928 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
2929 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
2930 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2931 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2932 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
2933 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2934 var ThumbnailUrl = exports.ThumbnailUrl = function ThumbnailUrl(props) {
2935 var _props$attachments;
2936 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
2937 return 'url' === item.type;
2938 });
2939 if (!attachment) {
2940 return null;
2941 }
2942 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
2943 sx: {
2944 position: 'relative',
2945 '&:hover::before': {
2946 content: '""',
2947 position: 'absolute',
2948 userSelect: 'none',
2949 inset: 0,
2950 backgroundColor: 'rgba(0,0,0,0.6)',
2951 borderRadius: 1,
2952 zIndex: 1
2953 },
2954 '&:hover .remove-attachment': {
2955 display: 'flex'
2956 }
2957 }
2958 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
2959 className: "remove-attachment",
2960 size: "small",
2961 "aria-label": (0, _i18n.__)('Remove', 'elementor'),
2962 disabled: props.disabled,
2963 onClick: function onClick(event) {
2964 event.stopPropagation();
2965 props.onDetach();
2966 },
2967 sx: {
2968 display: 'none',
2969 position: 'absolute',
2970 insetInlineEnd: 4,
2971 insetBlockStart: 4,
2972 backgroundColor: 'secondary.main',
2973 zIndex: 1,
2974 borderRadius: 1,
2975 p: '3px',
2976 '&:hover': {
2977 backgroundColor: 'secondary.dark'
2978 }
2979 }
2980 }, /*#__PURE__*/_react.default.createElement(_icons.TrashIcon, {
2981 sx: {
2982 fontSize: '1.125rem',
2983 color: 'common.white'
2984 }
2985 })), /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
2986 disabled: props.disabled,
2987 html: attachment.previewHTML
2988 }));
2989 };
2990 ThumbnailUrl.propTypes = {
2991 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
2992 disabled: _propTypes.default.bool,
2993 onDetach: _propTypes.default.func
2994 };
2995 var _default = exports["default"] = ThumbnailUrl;
2996
2997 /***/ }),
2998
2999 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js":
3000 /*!********************************************************************************************!*\
3001 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js ***!
3002 \********************************************************************************************/
3003 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3004
3005 "use strict";
3006
3007
3008 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3009 Object.defineProperty(exports, "__esModule", ({
3010 value: true
3011 }));
3012 exports.Thumbnail = exports.THUMBNAIL_SIZE = void 0;
3013 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3014 var _taggedTemplateLiteral2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js"));
3015 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3016 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3017 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3018 var _styledComponents = _interopRequireDefault(__webpack_require__(/*! styled-components */ "../node_modules/styled-components/dist/styled-components.browser.esm.js"));
3019 var _templateObject;
3020 var THUMBNAIL_SIZE = exports.THUMBNAIL_SIZE = 64;
3021 var StyledBody = _styledComponents.default.body(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\thtml, body {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\toverflow: hidden;\n\t}\n\n\tbody > * {\n\t\twidth: 100% !important;\n\t}\n\n\tbody > img {\n\t\theight: 100%;\n\t\tobject-fit: cover;\n\t}\n\n\tbody:has(> img) {\n\t\theight: ", "px\n\t}\n"])), THUMBNAIL_SIZE);
3022 var Thumbnail = exports.Thumbnail = function Thumbnail(props) {
3023 var _props$html$match, _props$html$match2;
3024 var dataWidth = (_props$html$match = props.html.match('data-width="(?<width>\\d+)"')) === null || _props$html$match === void 0 || (_props$html$match = _props$html$match.groups) === null || _props$html$match === void 0 ? void 0 : _props$html$match.width;
3025 var dataHeight = (_props$html$match2 = props.html.match('data-height="(?<height>\\d+)"')) === null || _props$html$match2 === void 0 || (_props$html$match2 = _props$html$match2.groups) === null || _props$html$match2 === void 0 ? void 0 : _props$html$match2.height;
3026 var width = dataWidth ? parseInt(dataWidth) : THUMBNAIL_SIZE;
3027 var height = dataHeight ? parseInt(dataHeight) : THUMBNAIL_SIZE;
3028 var scaleFactor = Math.min(height, width);
3029 var scale = THUMBNAIL_SIZE / scaleFactor;
3030
3031 // Center the preview
3032 var top = height > width ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (height / width)) / 2 : 0;
3033 var left = width > height ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (width / height)) / 2 : 0;
3034 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3035 dir: "ltr",
3036 sx: {
3037 position: 'relative',
3038 cursor: 'default',
3039 overflow: 'hidden',
3040 border: '1px solid',
3041 borderColor: 'grey.300',
3042 borderRadius: 1,
3043 boxSizing: 'border-box',
3044 width: THUMBNAIL_SIZE,
3045 height: THUMBNAIL_SIZE,
3046 opacity: props.disabled ? 0.5 : 1
3047 }
3048 }, /*#__PURE__*/_react.default.createElement("iframe", {
3049 title: (0, _i18n.__)('Preview', 'elementor'),
3050 sandbox: "",
3051 srcDoc: "<style>" + StyledBody.componentStyle.rules.join('') + "</style>" + props.html,
3052 style: {
3053 border: 'none',
3054 overflow: 'hidden',
3055 width: width,
3056 height: height,
3057 transform: "scale(".concat(scale, ")"),
3058 transformOrigin: "".concat(left, "px ").concat(top, "px")
3059 }
3060 }));
3061 };
3062 Thumbnail.propTypes = {
3063 html: _propTypes.default.string.isRequired,
3064 disabled: _propTypes.default.bool
3065 };
3066
3067 /***/ }),
3068
3069 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js":
3070 /*!*********************************************************************************************!*\
3071 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js ***!
3072 \*********************************************************************************************/
3073 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3074
3075 "use strict";
3076
3077
3078 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3079 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3080 Object.defineProperty(exports, "__esModule", ({
3081 value: true
3082 }));
3083 exports.UrlDialog = void 0;
3084 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3085 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3086 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3087 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3088 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3089 var _alertDialog = __webpack_require__(/*! ../../../../components/alert-dialog */ "../modules/ai/assets/js/editor/components/alert-dialog.js");
3090 var _useTimeout3 = __webpack_require__(/*! ../../../../hooks/use-timeout */ "../modules/ai/assets/js/editor/hooks/use-timeout.js");
3091 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3092 var _remoteConfig = __webpack_require__(/*! ../../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
3093 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
3094 var _requestsIds = __webpack_require__(/*! ../../../../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
3095 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
3096 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
3097 var UrlDialog = exports.UrlDialog = function UrlDialog(props) {
3098 var _useTimeout = (0, _useTimeout3.useTimeout)(10000),
3099 _useTimeout2 = (0, _slicedToArray2.default)(_useTimeout, 2),
3100 isTimeout = _useTimeout2[0],
3101 turnOffTimeout = _useTimeout2[1];
3102 var _useUserInfo = (0, _useUserInfo2.default)(),
3103 isLoading = _useUserInfo.isLoading,
3104 initialUsagePercentage = _useUserInfo.usagePercentage;
3105 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
3106 updateUsagePercentage = _useRequestIds.updateUsagePercentage;
3107 var _useState = (0, _react.useState)(false),
3108 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3109 isInitUsageDone = _useState2[0],
3110 setIsInitUsageDone = _useState2[1];
3111 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
3112 remoteConfig = _useRemoteConfig.remoteConfig;
3113 var builderUrl = remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL];
3114 var urlObject = builderUrl ? new URL(builderUrl) : {};
3115 var iframeOrigin = urlObject.origin;
3116 var isOpen = (0, _react.useRef)(false);
3117 (0, _react.useEffect)(function () {
3118 if (!isInitUsageDone && !isLoading && (initialUsagePercentage || 0 === initialUsagePercentage)) {
3119 updateUsagePercentage(initialUsagePercentage);
3120 setIsInitUsageDone(true);
3121 }
3122 }, [isLoading, initialUsagePercentage, isInitUsageDone, updateUsagePercentage]);
3123 (0, _react.useEffect)(function () {
3124 if (!isOpen.current) {
3125 try {
3126 window.$e.run('ai-integration/open-choose-element', {
3127 url: props.url
3128 });
3129 isOpen.current = true;
3130 } catch (error) {
3131 // eslint-disable-next-line no-console
3132 console.error(error);
3133 }
3134 }
3135 }, [isOpen.current]);
3136 (0, _react.useEffect)(function () {
3137 var onMessage = function onMessage(event) {
3138 if (event.origin !== iframeOrigin) {
3139 return;
3140 }
3141 var _event$data = event.data,
3142 type = _event$data.type,
3143 html = _event$data.html,
3144 url = _event$data.url;
3145 switch (type) {
3146 case 'element-selector/close':
3147 isOpen.current = false;
3148 props.onClose();
3149 break;
3150 case 'element-selector/loaded':
3151 turnOffTimeout();
3152 isOpen.current = true;
3153 break;
3154 case 'element-selector/attach':
3155 props.onAttach([{
3156 type: 'url',
3157 previewHTML: html,
3158 content: html,
3159 label: url ? new URL(url).href : '',
3160 source: _attachments.USER_URL_SOURCE
3161 }]);
3162 break;
3163 }
3164 };
3165 window.addEventListener('message', onMessage);
3166 return function () {
3167 window.removeEventListener('message', onMessage);
3168 };
3169 }, [iframeOrigin, props, turnOffTimeout]);
3170 return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !isOpen.current && !isTimeout && /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
3171 open: true,
3172 maxWidth: "lg"
3173 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3174 sx: {
3175 textAlign: 'center',
3176 padding: 3
3177 }
3178 }, (0, _i18n.__)('Loading...', 'elementor'))), isTimeout && /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3179 message: (0, _i18n.__)('The app is not responding. Please try again later. (#408)', 'elementor'),
3180 onClose: props.onClose
3181 }));
3182 };
3183 UrlDialog.propTypes = {
3184 onAttach: _propTypes.default.func.isRequired,
3185 onClose: _propTypes.default.func.isRequired,
3186 url: _propTypes.default.string
3187 };
3188
3189 /***/ }),
3190
3191 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js":
3192 /*!************************************************************************************!*\
3193 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js ***!
3194 \************************************************************************************/
3195 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3196
3197 "use strict";
3198
3199
3200 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3201 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3202 Object.defineProperty(exports, "__esModule", ({
3203 value: true
3204 }));
3205 exports["default"] = void 0;
3206 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3207 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3208 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3209 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3210 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3211 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3212 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3213 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3214 var _promptDialog = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-dialog */ "../modules/ai/assets/js/editor/components/prompt-dialog.js"));
3215 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3216 var _excluded = ["sx", "PaperProps"];
3217 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
3218 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
3219 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3220 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3221 var StyledDialog = (0, _ui.styled)(_promptDialog.default)(function () {
3222 return {
3223 '& .MuiDialog-container': {
3224 marginTop: 0,
3225 alignItems: 'flex-end',
3226 paddingBottom: '16vh'
3227 },
3228 '& .MuiPaper-root': {
3229 margin: 0,
3230 maxHeight: '80vh'
3231 }
3232 };
3233 });
3234 var DialogHeader = function DialogHeader(_ref) {
3235 var onClose = _ref.onClose,
3236 children = _ref.children;
3237 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
3238 sx: {
3239 fontWeight: 'normal'
3240 },
3241 color: "transparent",
3242 position: "relative"
3243 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
3244 variant: "dense"
3245 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3246 sx: {
3247 mr: 1
3248 }
3249 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3250 component: "span",
3251 variant: "subtitle2",
3252 sx: {
3253 fontWeight: 'bold',
3254 textTransform: 'uppercase'
3255 }
3256 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
3257 label: (0, _i18n.__)('Beta', 'elementor'),
3258 color: "default",
3259 size: "small",
3260 sx: {
3261 ml: 1
3262 }
3263 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3264 direction: "row",
3265 spacing: 1,
3266 alignItems: "center",
3267 sx: {
3268 ml: 'auto'
3269 }
3270 }, children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3271 size: "small",
3272 "aria-label": "close",
3273 onClick: onClose,
3274 sx: {
3275 '&.MuiButtonBase-root': {
3276 mr: -1
3277 }
3278 }
3279 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
3280 };
3281 DialogHeader.propTypes = {
3282 children: _propTypes.default.node,
3283 onClose: _propTypes.default.func.isRequired
3284 };
3285 var StyledDialogContent = (0, _ui.styled)(_promptDialog.default.Content)(function () {
3286 return {
3287 '&.MuiDialogContent-root': {
3288 padding: 0
3289 }
3290 };
3291 });
3292 var LayoutDialog = function LayoutDialog(_ref2) {
3293 var _ref2$sx = _ref2.sx,
3294 sx = _ref2$sx === void 0 ? {} : _ref2$sx,
3295 _ref2$PaperProps = _ref2.PaperProps,
3296 PaperProps = _ref2$PaperProps === void 0 ? {} : _ref2$PaperProps,
3297 props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
3298 var _useState = (0, _react.useState)({
3299 pointerEvents: 'none'
3300 }),
3301 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3302 sxStyle = _useState2[0],
3303 setSxStyle = _useState2[1];
3304 var timeoutRef = (0, _react.useRef)(null);
3305
3306 /**
3307 * The PromptDialog is using disableScrollLock in order to allow scrolling the page when the Dialog is opened.
3308 * When using the react-draggable library inside the editor, the background page scroll is not working smoothly.
3309 * Therefore, we need to delay the pointerEvents: none, which allowing to scroll the page content.
3310 */
3311 return /*#__PURE__*/_react.default.createElement(StyledDialog, (0, _extends2.default)({
3312 maxWidth: "md",
3313 PaperProps: _objectSpread({
3314 sx: {
3315 pointerEvents: 'auto'
3316 },
3317 onMouseEnter: function onMouseEnter() {
3318 clearTimeout(timeoutRef.current);
3319 setSxStyle({
3320 pointerEvents: 'all'
3321 });
3322 },
3323 onMouseLeave: function onMouseLeave() {
3324 clearTimeout(timeoutRef.current);
3325 timeoutRef.current = setTimeout(function () {
3326 setSxStyle({
3327 pointerEvents: 'none'
3328 });
3329 }, 200);
3330 }
3331 }, PaperProps)
3332 }, props, {
3333 sx: _objectSpread(_objectSpread({}, sxStyle), sx)
3334 }));
3335 };
3336 LayoutDialog.propTypes = {
3337 sx: _propTypes.default.object,
3338 PaperProps: _propTypes.default.object
3339 };
3340 LayoutDialog.Header = DialogHeader;
3341 LayoutDialog.Content = StyledDialogContent;
3342 var _default = exports["default"] = LayoutDialog;
3343
3344 /***/ }),
3345
3346 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js":
3347 /*!*********************************************************************************************!*\
3348 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js ***!
3349 \*********************************************************************************************/
3350 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3351
3352 "use strict";
3353
3354
3355 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3356 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3357 Object.defineProperty(exports, "__esModule", ({
3358 value: true
3359 }));
3360 exports.ProTemplateIndicator = void 0;
3361 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3362 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3363 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3364 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3365 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
3366 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
3367 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
3368 var popoverId = 'e-pro-upgrade-popover';
3369 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
3370 var theme = _ref.theme;
3371 return {
3372 position: 'relative',
3373 padding: theme.spacing(3),
3374 boxShadow: theme.shadows[4],
3375 zIndex: '9999'
3376 };
3377 });
3378 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
3379 var theme = _ref2.theme;
3380 return {
3381 position: 'absolute',
3382 width: theme.spacing(5),
3383 height: theme.spacing(5),
3384 overflow: 'hidden',
3385 // Override Popper inline styles.
3386 left: '100% !important',
3387 transform: 'translateX(-50%) translateY(-50%) rotate(var(--rotate, 0deg)) !important',
3388 '&::after': {
3389 backgroundColor: theme.palette.background.paper,
3390 content: '""',
3391 display: 'block',
3392 position: 'absolute',
3393 width: theme.spacing(2.5),
3394 height: theme.spacing(2.5),
3395 top: '50%',
3396 left: '50%',
3397 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
3398 boxShadow: '5px -5px 5px 0px rgba(0, 0, 0, 0.2)',
3399 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
3400 }
3401 };
3402 });
3403 var ProTemplateIndicator = exports.ProTemplateIndicator = function ProTemplateIndicator() {
3404 var actionUrl = 'https://go.elementor.com/go-pro-ai/';
3405 var actionLabel = (0, _i18n.__)('Go Pro', 'elementor');
3406 var _useState = (0, _react.useState)(false),
3407 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3408 isPopoverOpen = _useState2[0],
3409 setIsPopoverOpen = _useState2[1];
3410 var anchorEl = (0, _react.useRef)(null);
3411 var arrowEl = (0, _react.useRef)(null);
3412 var showPopover = function showPopover() {
3413 return setIsPopoverOpen(true);
3414 };
3415 var hidePopover = function hidePopover() {
3416 return setIsPopoverOpen(false);
3417 };
3418 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3419 flexDirection: "row-reverse",
3420 component: "span",
3421 display: "flex",
3422 onMouseLeave: hidePopover,
3423 alignItems: "center"
3424 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3425 ref: anchorEl,
3426 onMouseEnter: showPopover,
3427 onClick: function onClick(e) {
3428 return e.stopPropagation();
3429 } /* Do nothing */,
3430 "aria-owns": isPopoverOpen ? popoverId : undefined,
3431 "aria-haspopup": "true",
3432 sx: {
3433 m: 1,
3434 '&:hover': {
3435 backgroundColor: 'action.selected'
3436 }
3437 }
3438 }, /*#__PURE__*/_react.default.createElement(_lockIcon.default, {
3439 sx: {
3440 color: 'text.primary'
3441 }
3442 })), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
3443 open: isPopoverOpen,
3444 popperOptions: {
3445 placement: 'left-start',
3446 modifiers: [{
3447 name: 'arrow',
3448 enabled: true,
3449 options: {
3450 element: arrowEl.current,
3451 padding: 5
3452 }
3453 }, {
3454 name: 'offset',
3455 options: {
3456 offset: [0, 10]
3457 }
3458 }]
3459 },
3460 anchorEl: anchorEl.current,
3461 sx: {
3462 zIndex: '9999',
3463 maxWidth: 300
3464 }
3465 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
3466 ref: arrowEl
3467 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3468 alignItems: "start",
3469 spacing: 2
3470 }, /*#__PURE__*/_react.default.createElement(_ui.Chip, {
3471 color: "promotion",
3472 variant: "outlined",
3473 size: "small",
3474 label: (0, _i18n.__)('Pro', 'elementor'),
3475 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null)
3476 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3477 variant: "body2"
3478 }, (0, _i18n.__)("This result includes an Elementor Pro widget that's not available with your current plan. Upgrade to use all the widgets in this result.", 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
3479 variant: "contained",
3480 color: "promotion",
3481 size: "small",
3482 href: actionUrl,
3483 target: "_blank",
3484 sx: {
3485 alignSelf: 'flex-end'
3486 }
3487 }, actionLabel)))));
3488 };
3489
3490 /***/ }),
3491
3492 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js":
3493 /*!******************************************************************************************!*\
3494 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js ***!
3495 \******************************************************************************************/
3496 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3497
3498 "use strict";
3499
3500
3501 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3502 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3503 Object.defineProperty(exports, "__esModule", ({
3504 value: true
3505 }));
3506 exports["default"] = void 0;
3507 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3508 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3509 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3510 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3511 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3512 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3513 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3514 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3515 var _promptLibraryLink = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-library-link */ "../modules/ai/assets/js/editor/components/prompt-library-link.js"));
3516 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
3517 var _excluded = ["onSubmit"];
3518 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
3519 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
3520 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3521 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3522 var TextInput = (0, _react.forwardRef)(function (props, ref) {
3523 return /*#__PURE__*/_react.default.createElement(_ui.TextField
3524 // eslint-disable-next-line jsx-a11y/no-autofocus
3525 , (0, _extends2.default)({
3526 autoFocus: true,
3527 multiline: true,
3528 size: "small",
3529 maxRows: 3,
3530 color: "secondary",
3531 variant: "standard"
3532 }, props, {
3533 inputRef: ref,
3534 InputProps: _objectSpread(_objectSpread({}, props.InputProps), {}, {
3535 type: 'search',
3536 sx: {
3537 pt: 0
3538 }
3539 })
3540 }));
3541 });
3542 TextInput.propTypes = {
3543 InputProps: _propTypes.default.object
3544 };
3545 var PaperComponent = function PaperComponent(props) {
3546 var _useConfig = (0, _config.useConfig)(),
3547 mode = _useConfig.mode;
3548 var libraryLink = _config.MODE_VARIATION === mode ? 'https://go.elementor.com/ai-prompt-library-variations/' : 'https://go.elementor.com/ai-prompt-library-containers/';
3549 return /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
3550 elevation: 8,
3551 sx: {
3552 borderRadius: 2
3553 }
3554 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3555 component: _ui.Box,
3556 color: function color(theme) {
3557 return theme.palette.text.tertiary;
3558 },
3559 variant: "caption",
3560 paddingX: 2,
3561 paddingY: 1
3562 }, (0, _i18n.__)('Suggested Prompts', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Divider, null), props.children, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3563 sx: {
3564 m: 2
3565 }
3566 }, /*#__PURE__*/_react.default.createElement(_promptLibraryLink.default, {
3567 libraryLink: libraryLink
3568 })));
3569 };
3570 PaperComponent.propTypes = {
3571 children: _propTypes.default.node
3572 };
3573 var PromptAutocomplete = function PromptAutocomplete(_ref) {
3574 var onSubmit = _ref.onSubmit,
3575 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
3576 var _useState = (0, _react.useState)(false),
3577 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3578 showSuggestions = _useState2[0],
3579 setShowSuggestions = _useState2[1];
3580 var theme = (0, _ui.useTheme)();
3581 var itemHeight = parseInt(theme.spacing(4));
3582 var maxItems = 5;
3583 return /*#__PURE__*/_react.default.createElement(_ui.Autocomplete, (0, _extends2.default)({
3584 PaperComponent: PaperComponent,
3585 ListboxProps: {
3586 sx: {
3587 maxHeight: maxItems * itemHeight
3588 }
3589 },
3590 renderOption: function renderOption(optionProps, option) {
3591 return /*#__PURE__*/_react.default.createElement(_ui.Typography, (0, _extends2.default)({}, optionProps, {
3592 title: option.text,
3593 noWrap: true,
3594 variant: "body2",
3595 component: _ui.Box,
3596 sx: {
3597 '&.MuiAutocomplete-option': {
3598 display: 'block',
3599 minHeight: itemHeight
3600 }
3601 }
3602 }), option.text);
3603 },
3604 freeSolo: true,
3605 fullWidth: true,
3606 disableClearable: true,
3607 open: showSuggestions,
3608 onClose: function onClose(e) {
3609 var _e$relatedTarget;
3610 return setShowSuggestions('A' === ((_e$relatedTarget = e.relatedTarget) === null || _e$relatedTarget === void 0 ? void 0 : _e$relatedTarget.tagName));
3611 },
3612 onKeyDown: function onKeyDown(e) {
3613 if ('Enter' === e.key && !e.shiftKey && !showSuggestions) {
3614 onSubmit(e);
3615 } else if ('/' === e.key && '' === e.target.value) {
3616 e.preventDefault();
3617 setShowSuggestions(true);
3618 }
3619 }
3620 }, props));
3621 };
3622 PromptAutocomplete.propTypes = {
3623 onSubmit: _propTypes.default.func.isRequired
3624 };
3625 PromptAutocomplete.TextInput = TextInput;
3626 var _default = exports["default"] = PromptAutocomplete;
3627
3628 /***/ }),
3629
3630 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js":
3631 /*!**********************************************************************************!*\
3632 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js ***!
3633 \**********************************************************************************/
3634 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3635
3636 "use strict";
3637
3638
3639 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3640 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3641 Object.defineProperty(exports, "__esModule", ({
3642 value: true
3643 }));
3644 exports["default"] = void 0;
3645 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3646 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3647 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3648 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3649 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3650 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3651 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3652 var _promptAutocomplete = _interopRequireDefault(__webpack_require__(/*! ./prompt-autocomplete */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js"));
3653 var _enhanceButton = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/enhance-button */ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js"));
3654 var _generateSubmit = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/generate-submit */ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js"));
3655 var _arrowLeftIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/arrow-left-icon */ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js"));
3656 var _editIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/edit-icon */ "../modules/ai/assets/js/editor/icons/edit-icon.js"));
3657 var _usePromptEnhancer2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt-enhancer */ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js"));
3658 var _attachments = _interopRequireDefault(__webpack_require__(/*! ./attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"));
3659 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
3660 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3661 var _excluded = ["tooltip"];
3662 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
3663 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
3664 var PROMPT_SUGGESTIONS = Object.freeze([
3665 // Translators: [Topic] is a placeholder for the user - please translate it as well
3666 {
3667 text: (0, _i18n.__)('Hero section on [topic] with heading, text, buttons on the right, and an image on the left', 'elementor.com')
3668 },
3669 // Translators: [Topic] is a placeholder for the user - please translate it as well
3670 {
3671 text: (0, _i18n.__)('About Us section on [topic] with heading, text, and big image below', 'elementor.com')
3672 }, {
3673 text: (0, _i18n.__)('Team section with four image boxes showcasing team members', 'elementor.com')
3674 },
3675 // Translators: [Topic] is a placeholder for the user - please translate it as well
3676 {
3677 text: (0, _i18n.__)('FAQ section with a toggle widget showcasing FAQs about [topic]', 'elementor.com')
3678 }, {
3679 text: (0, _i18n.__)('Gallery section with a carousel displaying three images at once', 'elementor.com')
3680 },
3681 // Translators: [Topic] is a placeholder for the user - please translate it as well
3682 {
3683 text: (0, _i18n.__)('Contact section with a form for [topic]', 'elementor.com')
3684 }, {
3685 text: (0, _i18n.__)('Client section featuring companies\' logos', 'elementor.com')
3686 },
3687 // Translators: [Topic] is a placeholder for the user - please translate it as well
3688 {
3689 text: (0, _i18n.__)('Testimonial section with testimonials, each featuring a star rating and an image', 'elementor.com')
3690 },
3691 // Translators: [Topic] is a placeholder for the user - please translate it as well
3692 {
3693 text: (0, _i18n.__)('Service section about [topic], showcasing four services with buttons', 'elementor.com')
3694 },
3695 // Translators: [Topic] is a placeholder for the user - please translate it as well
3696 {
3697 text: (0, _i18n.__)('Stats section with counters displaying data about [topic]', 'elementor.com')
3698 }, {
3699 text: (0, _i18n.__)('Quote section with colored background, featuring a centered quote', 'elementor.com')
3700 },
3701 // Translators: [Topic] is a placeholder for the user - please translate it as well
3702 {
3703 text: (0, _i18n.__)('Pricing section for [topic] with a pricing list', 'elementor.com')
3704 },
3705 // Translators: [Topic] is a placeholder for the user - please translate it as well
3706 {
3707 text: (0, _i18n.__)('Subscribe section featuring a simple email form, inviting users to stay informed on [topic]', 'elementor.com')
3708 }]);
3709 var IconButtonWithTooltip = function IconButtonWithTooltip(_ref) {
3710 var tooltip = _ref.tooltip,
3711 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
3712 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
3713 title: tooltip
3714 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
3715 component: "span",
3716 sx: {
3717 cursor: props.disabled ? 'default' : 'pointer'
3718 }
3719 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, props)));
3720 };
3721 IconButtonWithTooltip.propTypes = {
3722 tooltip: _propTypes.default.string,
3723 disabled: _propTypes.default.bool
3724 };
3725 var BackButton = function BackButton(props) {
3726 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
3727 size: "small",
3728 color: "secondary",
3729 tooltip: (0, _i18n.__)('Back to results', 'elementor')
3730 }, props), /*#__PURE__*/_react.default.createElement(_arrowLeftIcon.default, null));
3731 };
3732 var EditButton = function EditButton(props) {
3733 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
3734 size: "small",
3735 color: "primary",
3736 tooltip: (0, _i18n.__)('Edit prompt', 'elementor')
3737 }, props), /*#__PURE__*/_react.default.createElement(_editIcon.default, null));
3738 };
3739 var GenerateButton = function GenerateButton(props) {
3740 return /*#__PURE__*/_react.default.createElement(_generateSubmit.default, (0, _extends2.default)({
3741 size: "small",
3742 fullWidth: false
3743 }, props), (0, _i18n.__)('Generate', 'elementor'));
3744 };
3745 var PromptForm = (0, _react.forwardRef)(function (_ref2, ref) {
3746 var _attachments$;
3747 var attachments = _ref2.attachments,
3748 isActive = _ref2.isActive,
3749 isLoading = _ref2.isLoading,
3750 _ref2$showActions = _ref2.showActions,
3751 showActions = _ref2$showActions === void 0 ? false : _ref2$showActions,
3752 onAttach = _ref2.onAttach,
3753 onDetach = _ref2.onDetach,
3754 _onSubmit = _ref2.onSubmit,
3755 onBack = _ref2.onBack,
3756 onEdit = _ref2.onEdit,
3757 _ref2$shouldResetProm = _ref2.shouldResetPrompt,
3758 shouldResetPrompt = _ref2$shouldResetProm === void 0 ? false : _ref2$shouldResetProm;
3759 var _useState = (0, _react.useState)(''),
3760 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3761 prompt = _useState2[0],
3762 setPrompt = _useState2[1];
3763 (0, _react.useEffect)(function () {
3764 if (shouldResetPrompt) {
3765 setPrompt('');
3766 }
3767 }, [shouldResetPrompt]);
3768 var _usePromptEnhancer = (0, _usePromptEnhancer2.default)(prompt, 'layout'),
3769 isEnhancing = _usePromptEnhancer.isEnhancing,
3770 enhance = _usePromptEnhancer.enhance;
3771 var previousPrompt = (0, _react.useRef)('');
3772 var _useConfig = (0, _config.useConfig)(),
3773 attachmentsTypes = _useConfig.attachmentsTypes;
3774 var isInputDisabled = isLoading || isEnhancing || !isActive;
3775 var isInputEmpty = '' === prompt && !attachments.length;
3776 var isGenerateDisabled = isInputDisabled || isInputEmpty;
3777 var attachmentsType = ((_attachments$ = attachments[0]) === null || _attachments$ === void 0 ? void 0 : _attachments$.type) || '';
3778 var attachmentsConfig = attachmentsTypes[attachmentsType];
3779 var promptSuggestions = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptSuggestions) || PROMPT_SUGGESTIONS;
3780 var promptPlaceholder = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptPlaceholder) || (0, _i18n.__)("Press '/' for suggested prompts or describe the layout you want to create", 'elementor');
3781 var handleBack = function handleBack() {
3782 setPrompt(previousPrompt.current);
3783 onBack();
3784 };
3785 var handleEdit = function handleEdit() {
3786 previousPrompt.current = prompt;
3787 onEdit();
3788 };
3789 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3790 component: "form",
3791 onSubmit: function onSubmit(e) {
3792 return _onSubmit(e, prompt);
3793 },
3794 direction: "row",
3795 sx: {
3796 p: 3
3797 },
3798 alignItems: "start",
3799 gap: 1
3800 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3801 direction: "row",
3802 alignItems: "start",
3803 flexGrow: 1,
3804 spacing: 2
3805 }, showActions && (isActive ? /*#__PURE__*/_react.default.createElement(BackButton, {
3806 disabled: isLoading || isEnhancing,
3807 onClick: handleBack
3808 }) : /*#__PURE__*/_react.default.createElement(EditButton, {
3809 disabled: isLoading,
3810 onClick: handleEdit
3811 })), /*#__PURE__*/_react.default.createElement(_attachments.default, {
3812 attachments: attachments,
3813 onAttach: onAttach,
3814 onDetach: onDetach,
3815 disabled: isInputDisabled
3816 }), /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default, {
3817 value: prompt,
3818 disabled: isInputDisabled,
3819 onSubmit: function onSubmit(e) {
3820 return _onSubmit(e, prompt);
3821 },
3822 options: promptSuggestions,
3823 onChange: function onChange(_, selectedValue) {
3824 return setPrompt(selectedValue.text + ' ');
3825 },
3826 renderInput: function renderInput(params) {
3827 return /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default.TextInput, (0, _extends2.default)({}, params, {
3828 ref: ref,
3829 onChange: function onChange(e) {
3830 return setPrompt(e.target.value);
3831 },
3832 placeholder: promptPlaceholder
3833 }));
3834 }
3835 })), /*#__PURE__*/_react.default.createElement(_enhanceButton.default, {
3836 size: "small",
3837 disabled: isGenerateDisabled || '' === prompt,
3838 isLoading: isEnhancing,
3839 onClick: function onClick() {
3840 return enhance().then(function (_ref3) {
3841 var result = _ref3.result;
3842 return setPrompt(result);
3843 });
3844 }
3845 }), /*#__PURE__*/_react.default.createElement(GenerateButton, {
3846 disabled: isGenerateDisabled
3847 }));
3848 });
3849 PromptForm.propTypes = {
3850 isActive: _propTypes.default.bool,
3851 onAttach: _propTypes.default.func,
3852 onDetach: _propTypes.default.func,
3853 isLoading: _propTypes.default.bool,
3854 showActions: _propTypes.default.bool,
3855 onSubmit: _propTypes.default.func.isRequired,
3856 onBack: _propTypes.default.func.isRequired,
3857 onEdit: _propTypes.default.func.isRequired,
3858 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
3859 shouldResetPrompt: _propTypes.default.bool
3860 };
3861 var _default = exports["default"] = PromptForm;
3862
3863 /***/ }),
3864
3865 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js":
3866 /*!*******************************************************************************************!*\
3867 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js ***!
3868 \*******************************************************************************************/
3869 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3870
3871 "use strict";
3872
3873
3874 Object.defineProperty(exports, "__esModule", ({
3875 value: true
3876 }));
3877 exports["default"] = void 0;
3878 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3879 var ScreenshotContainer = (0, _ui.styled)(_ui.Box, {
3880 shouldForwardProp: function shouldForwardProp(prop) {
3881 return prop !== 'outlineOffset';
3882 }
3883 })(function (_ref) {
3884 var theme = _ref.theme,
3885 selected = _ref.selected,
3886 height = _ref.height,
3887 disabled = _ref.disabled,
3888 _ref$outlineOffset = _ref.outlineOffset,
3889 outlineOffset = _ref$outlineOffset === void 0 ? '0px' : _ref$outlineOffset;
3890 var outlineColor = selected ? theme.palette.text.primary : theme.palette.text.disabled;
3891 var outline = "2px solid ".concat(outlineColor);
3892 return {
3893 height: height,
3894 cursor: disabled ? 'default' : 'pointer',
3895 overflow: 'hidden',
3896 boxSizing: 'border-box',
3897 backgroundPosition: 'top center',
3898 backgroundSize: '100% auto',
3899 backgroundRepeat: 'no-repeat',
3900 backgroundColor: theme.palette.common.white,
3901 borderRadius: theme.shape.borderRadius * 0.5,
3902 outlineOffset: outlineOffset,
3903 outline: outline,
3904 opacity: disabled ? '0.4' : '1',
3905 transition: "all 50ms linear",
3906 '&:hover': disabled ? {} : {
3907 outlineColor: theme.palette.text.primary
3908 }
3909 };
3910 });
3911 var _default = exports["default"] = ScreenshotContainer;
3912
3913 /***/ }),
3914
3915 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js":
3916 /*!*********************************************************************************************!*\
3917 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js ***!
3918 \*********************************************************************************************/
3919 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3920
3921 "use strict";
3922
3923
3924 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3925 Object.defineProperty(exports, "__esModule", ({
3926 value: true
3927 }));
3928 exports["default"] = ScreenshotUnavailable;
3929 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3930 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3931 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3932 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3933 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3934 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
3935 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3936 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3937 function ScreenshotUnavailable(props) {
3938 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, (0, _extends2.default)({}, props, {
3939 sx: _objectSpread(_objectSpread({}, props.sx || {}), {}, {
3940 display: 'flex',
3941 alignItems: 'center',
3942 justifyContent: 'center',
3943 backgroundColor: 'background.paper',
3944 color: 'text.tertiary',
3945 fontStyle: 'italic',
3946 fontSize: '12px',
3947 paddingInline: 12,
3948 textAlign: 'center',
3949 lineHeight: 1.5
3950 })
3951 }), (0, _i18n.__)('Preview unavailable', 'elementor'));
3952 }
3953 ScreenshotUnavailable.propTypes = {
3954 sx: _propTypes.default.object
3955 };
3956
3957 /***/ }),
3958
3959 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js":
3960 /*!*********************************************************************************!*\
3961 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js ***!
3962 \*********************************************************************************/
3963 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3964
3965 "use strict";
3966
3967
3968 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3969 Object.defineProperty(exports, "__esModule", ({
3970 value: true
3971 }));
3972 exports["default"] = void 0;
3973 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3974 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3975 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3976 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3977 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
3978 var _screenshotUnavailable = _interopRequireDefault(__webpack_require__(/*! ./screenshot-unavailable */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js"));
3979 var _templateBadge = _interopRequireDefault(__webpack_require__(/*! ./template-badge */ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js"));
3980 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3981 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3982 var SCREENSHOT_HEIGHT = '138px';
3983 var Screenshot = function Screenshot(_ref) {
3984 var url = _ref.url,
3985 type = _ref.type,
3986 _ref$isLoading = _ref.isLoading,
3987 isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
3988 _ref$isSelected = _ref.isSelected,
3989 isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
3990 isPlaceholder = _ref.isPlaceholder,
3991 disabled = _ref.disabled,
3992 onClick = _ref.onClick,
3993 _ref$sx = _ref.sx,
3994 sx = _ref$sx === void 0 ? {} : _ref$sx,
3995 outlineOffset = _ref.outlineOffset;
3996 if (isPlaceholder) {
3997 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3998 sx: _objectSpread({
3999 height: SCREENSHOT_HEIGHT
4000 }, sx)
4001 });
4002 }
4003 if (isLoading) {
4004 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
4005 width: "100%",
4006 animation: "wave",
4007 variant: "rounded",
4008 height: SCREENSHOT_HEIGHT,
4009 sx: sx
4010 });
4011 }
4012 if (!url) {
4013 return /*#__PURE__*/_react.default.createElement(_screenshotUnavailable.default, {
4014 selected: isSelected,
4015 disabled: disabled,
4016 sx: sx,
4017 onClick: onClick,
4018 height: SCREENSHOT_HEIGHT,
4019 outlineOffset: outlineOffset
4020 });
4021 }
4022 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, {
4023 selected: isSelected,
4024 disabled: disabled,
4025 sx: _objectSpread({
4026 backgroundImage: "url('".concat(url, "')")
4027 }, sx),
4028 onClick: onClick,
4029 height: SCREENSHOT_HEIGHT,
4030 outlineOffset: outlineOffset
4031 }, /*#__PURE__*/_react.default.createElement(_templateBadge.default, {
4032 type: type
4033 }));
4034 };
4035 Screenshot.propTypes = {
4036 isSelected: _propTypes.default.bool,
4037 isLoading: _propTypes.default.bool,
4038 isPlaceholder: _propTypes.default.bool,
4039 disabled: _propTypes.default.bool,
4040 onClick: _propTypes.default.func.isRequired,
4041 url: _propTypes.default.string,
4042 type: _propTypes.default.string,
4043 sx: _propTypes.default.object,
4044 outlineOffset: _propTypes.default.string
4045 };
4046 var _default = exports["default"] = Screenshot;
4047
4048 /***/ }),
4049
4050 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js":
4051 /*!*************************************************************************************!*\
4052 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js ***!
4053 \*************************************************************************************/
4054 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4055
4056 "use strict";
4057
4058
4059 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4060 Object.defineProperty(exports, "__esModule", ({
4061 value: true
4062 }));
4063 exports["default"] = void 0;
4064 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4065 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4066 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4067 var _proTemplateIndicator = __webpack_require__(/*! ./pro-template-indicator */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js");
4068 var TemplateBadge = function TemplateBadge(props) {
4069 var _useConfig = (0, _config.useConfig)(),
4070 hasPro = _useConfig.hasPro;
4071 if ('Pro' === props.type && !hasPro) {
4072 return /*#__PURE__*/_react.default.createElement(_proTemplateIndicator.ProTemplateIndicator, null);
4073 }
4074 return null;
4075 };
4076 var _default = exports["default"] = TemplateBadge;
4077 TemplateBadge.propTypes = {
4078 type: _propTypes.default.string
4079 };
4080
4081 /***/ }),
4082
4083 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js":
4084 /*!********************************************************************************************!*\
4085 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js ***!
4086 \********************************************************************************************/
4087 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4088
4089 "use strict";
4090
4091
4092 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4093 Object.defineProperty(exports, "__esModule", ({
4094 value: true
4095 }));
4096 exports["default"] = void 0;
4097 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4098 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4099 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4100 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4101 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4102 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4103 var _excluded = ["onClose", "onCancel", "title", "text"];
4104 var UnsavedChangesAlert = function UnsavedChangesAlert(_ref) {
4105 var onClose = _ref.onClose,
4106 onCancel = _ref.onCancel,
4107 title = _ref.title,
4108 text = _ref.text,
4109 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4110 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
4111 "aria-labelledby": "unsaved-changes-alert-title",
4112 "aria-describedby": "unsaved-changes-alert-description"
4113 }, props), /*#__PURE__*/_react.default.createElement(_ui.DialogTitle, {
4114 id: "unsaved-changes-alert-title"
4115 }, title), /*#__PURE__*/_react.default.createElement(_ui.DialogContent, null, /*#__PURE__*/_react.default.createElement(_ui.DialogContentText, {
4116 id: "unsaved-changes-alert-description"
4117 }, text)), /*#__PURE__*/_react.default.createElement(_ui.DialogActions, null, /*#__PURE__*/_react.default.createElement(_ui.Button, {
4118 onClick: onCancel,
4119 color: "secondary"
4120 }, (0, _i18n.__)('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
4121 onClick: onClose,
4122 color: "error",
4123 variant: "contained"
4124 }, (0, _i18n.__)('Yes, leave', 'elementor'))));
4125 };
4126 UnsavedChangesAlert.propTypes = {
4127 title: _propTypes.default.string,
4128 text: _propTypes.default.string,
4129 onCancel: _propTypes.default.func,
4130 onClose: _propTypes.default.func
4131 };
4132 var _default = exports["default"] = UnsavedChangesAlert;
4133
4134 /***/ }),
4135
4136 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js":
4137 /*!**************************************************************************!*\
4138 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/config.js ***!
4139 \**************************************************************************/
4140 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4141
4142 "use strict";
4143
4144
4145 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4146 Object.defineProperty(exports, "__esModule", ({
4147 value: true
4148 }));
4149 exports.useConfig = exports["default"] = exports.MODE_VARIATION = exports.MODE_LAYOUT = exports.LAYOUT_APP_MODES = exports.ConfigProvider = void 0;
4150 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4151 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4152 var MODE_LAYOUT = exports.MODE_LAYOUT = 'layout';
4153 var MODE_VARIATION = exports.MODE_VARIATION = 'variation';
4154 var LAYOUT_APP_MODES = exports.LAYOUT_APP_MODES = [MODE_LAYOUT, MODE_VARIATION];
4155 var ConfigContext = _react.default.createContext({});
4156 var useConfig = exports.useConfig = function useConfig() {
4157 return _react.default.useContext(ConfigContext);
4158 };
4159 var ConfigProvider = exports.ConfigProvider = function ConfigProvider(props) {
4160 return /*#__PURE__*/_react.default.createElement(ConfigContext.Provider, {
4161 value: {
4162 mode: props.mode,
4163 attachmentsTypes: props.attachmentsTypes,
4164 onClose: props.onClose,
4165 onConnect: props.onConnect,
4166 onData: props.onData,
4167 onInsert: props.onInsert,
4168 onSelect: props.onSelect,
4169 onGenerate: props.onGenerate,
4170 currentContext: props.currentContext,
4171 hasPro: props.hasPro
4172 }
4173 }, props.children);
4174 };
4175 ConfigProvider.propTypes = {
4176 mode: _propTypes.default.oneOf(LAYOUT_APP_MODES).isRequired,
4177 children: _propTypes.default.node.isRequired,
4178 attachmentsTypes: _propTypes.default.object.isRequired,
4179 onClose: _propTypes.default.func.isRequired,
4180 onConnect: _propTypes.default.func.isRequired,
4181 onData: _propTypes.default.func.isRequired,
4182 onInsert: _propTypes.default.func.isRequired,
4183 onSelect: _propTypes.default.func.isRequired,
4184 onGenerate: _propTypes.default.func.isRequired,
4185 currentContext: _propTypes.default.object,
4186 hasPro: _propTypes.default.bool
4187 };
4188 var _default = exports["default"] = ConfigContext;
4189
4190 /***/ }),
4191
4192 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js":
4193 /*!*********************************************************************************!*\
4194 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js ***!
4195 \*********************************************************************************/
4196 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4197
4198 "use strict";
4199
4200
4201 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4202 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4203 Object.defineProperty(exports, "__esModule", ({
4204 value: true
4205 }));
4206 exports.useRemoteConfig = exports.RemoteConfigProvider = exports.CONFIG_KEYS = void 0;
4207 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4208 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4209 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4210 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4211 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4212 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
4213 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
4214 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
4215 var RemoteConfigContext = _react.default.createContext({});
4216 var useRemoteConfig = exports.useRemoteConfig = function useRemoteConfig() {
4217 return _react.default.useContext(RemoteConfigContext);
4218 };
4219 var CONFIG_KEYS = exports.CONFIG_KEYS = {
4220 WEB_BASED_BUILDER_URL: 'webBasedBuilderUrl',
4221 AUTH_TOKEN: 'jwt'
4222 };
4223 var RemoteConfigProvider = exports.RemoteConfigProvider = function RemoteConfigProvider(props) {
4224 var _useState = (0, _react.useState)(false),
4225 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4226 isLoading = _useState2[0],
4227 setIsLoading = _useState2[1];
4228 var _useState3 = (0, _react.useState)(false),
4229 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
4230 isLoaded = _useState4[0],
4231 setIsLoaded = _useState4[1];
4232 var _useState5 = (0, _react.useState)(false),
4233 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
4234 isError = _useState6[0],
4235 setIsError = _useState6[1];
4236 var _useState7 = (0, _react.useState)({}),
4237 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
4238 remoteConfig = _useState8[0],
4239 setRemoteConfig = _useState8[1];
4240 var fetchData = /*#__PURE__*/function () {
4241 var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
4242 var result;
4243 return _regenerator.default.wrap(function _callee$(_context) {
4244 while (1) switch (_context.prev = _context.next) {
4245 case 0:
4246 setIsLoading(true);
4247 setIsError(false);
4248 _context.prev = 2;
4249 _context.next = 5;
4250 return (0, _api.getRemoteConfig)().finally(function () {
4251 setIsLoaded(true);
4252 setIsLoading(false);
4253 });
4254 case 5:
4255 result = _context.sent;
4256 if (result.config) {
4257 _context.next = 8;
4258 break;
4259 }
4260 throw new Error('Invalid remote config');
4261 case 8:
4262 setRemoteConfig(result.config);
4263 _context.next = 16;
4264 break;
4265 case 11:
4266 _context.prev = 11;
4267 _context.t0 = _context["catch"](2);
4268 setIsError(true);
4269 setIsLoaded(true);
4270 setIsLoading(false);
4271 case 16:
4272 case "end":
4273 return _context.stop();
4274 }
4275 }, _callee, null, [[2, 11]]);
4276 }));
4277 return function fetchData() {
4278 return _ref.apply(this, arguments);
4279 };
4280 }();
4281 (0, _react.useEffect)(function () {
4282 window.addEventListener('elementor/connect/success', fetchData);
4283 return function () {
4284 window.removeEventListener('elementor/connect/success', fetchData);
4285 };
4286 }, []);
4287 if (!isLoaded && !isLoading) {
4288 fetchData();
4289 }
4290 return /*#__PURE__*/_react.default.createElement(RemoteConfigContext.Provider, {
4291 value: {
4292 isLoading: isLoading,
4293 isLoaded: isLoaded,
4294 isError: isError,
4295 remoteConfig: remoteConfig
4296 }
4297 }, props.children);
4298 };
4299 RemoteConfigProvider.propTypes = {
4300 children: _propTypes.default.node.isRequired,
4301 onError: _propTypes.default.func.isRequired
4302 };
4303
4304 /***/ }),
4305
4306 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js":
4307 /*!***********************************************************************************!*\
4308 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js ***!
4309 \***********************************************************************************/
4310 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4311
4312 "use strict";
4313
4314
4315 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4316 Object.defineProperty(exports, "__esModule", ({
4317 value: true
4318 }));
4319 exports["default"] = void 0;
4320 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
4321 var _usePrompt = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
4322 var useLayoutPrompt = function useLayoutPrompt(type, initialValue) {
4323 return (0, _usePrompt.default)(function (requestBody, signal) {
4324 requestBody.variationType = type;
4325 return (0, _api.generateLayout)(requestBody, signal);
4326 }, initialValue);
4327 };
4328 var _default = exports["default"] = useLayoutPrompt;
4329
4330 /***/ }),
4331
4332 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js":
4333 /*!********************************************************************************!*\
4334 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js ***!
4335 \********************************************************************************/
4336 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4337
4338 "use strict";
4339
4340
4341 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4342 Object.defineProperty(exports, "__esModule", ({
4343 value: true
4344 }));
4345 exports["default"] = void 0;
4346 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4347 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4348 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4349 var _react = __webpack_require__(/*! react */ "react");
4350 var _useLayoutPrompt = _interopRequireDefault(__webpack_require__(/*! ./use-layout-prompt */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js"));
4351 var ERROR_INITIAL_VALUE = '';
4352 var useScreenshot = function useScreenshot(type, onData) {
4353 var _useState = (0, _react.useState)(ERROR_INITIAL_VALUE),
4354 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4355 error = _useState2[0],
4356 setError = _useState2[1];
4357 var _useState3 = (0, _react.useState)(false),
4358 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
4359 isLoading = _useState4[0],
4360 setIsLoading = _useState4[1];
4361 var layoutData = (0, _useLayoutPrompt.default)(type, null);
4362 var generate = function generate(requestBody, signal) {
4363 setIsLoading(true);
4364 setError(ERROR_INITIAL_VALUE);
4365 return layoutData.send(requestBody, signal).then(/*#__PURE__*/function () {
4366 var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(data) {
4367 var createdScreenshot;
4368 return _regenerator.default.wrap(function _callee$(_context) {
4369 while (1) switch (_context.prev = _context.next) {
4370 case 0:
4371 _context.next = 2;
4372 return onData(data.result);
4373 case 2:
4374 createdScreenshot = _context.sent;
4375 createdScreenshot.sendUsageData = function () {
4376 return layoutData.sendUsageData(data);
4377 };
4378 createdScreenshot.baseTemplateId = data.baseTemplateId;
4379 createdScreenshot.type = data.type;
4380 return _context.abrupt("return", createdScreenshot);
4381 case 7:
4382 case "end":
4383 return _context.stop();
4384 }
4385 }, _callee);
4386 }));
4387 return function (_x) {
4388 return _ref.apply(this, arguments);
4389 };
4390 }()).catch(function (err) {
4391 setError(err.extra_data ? err : err.message || err);
4392 throw err;
4393 }).finally(function () {
4394 return setIsLoading(false);
4395 });
4396 };
4397 return {
4398 generate: generate,
4399 error: error,
4400 isLoading: isLoading
4401 };
4402 };
4403 var _default = exports["default"] = useScreenshot;
4404
4405 /***/ }),
4406
4407 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js":
4408 /*!*********************************************************************************!*\
4409 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js ***!
4410 \*********************************************************************************/
4411 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4412
4413 "use strict";
4414
4415
4416 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4417 Object.defineProperty(exports, "__esModule", ({
4418 value: true
4419 }));
4420 exports["default"] = void 0;
4421 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4422 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
4423 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4424 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4425 var _react = __webpack_require__(/*! react */ "react");
4426 var _useScreenshot = _interopRequireDefault(__webpack_require__(/*! ./use-screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js"));
4427 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4428 var _requestsIds = __webpack_require__(/*! ../../../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
4429 var PENDING_VALUE = {
4430 isPending: true
4431 };
4432 var useScreenshots = function useScreenshots(_ref) {
4433 var onData = _ref.onData;
4434 var _useState = (0, _react.useState)([]),
4435 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4436 screenshots = _useState2[0],
4437 setScreenshots = _useState2[1];
4438
4439 /**
4440 * The ids for each request are:
4441 * - editorSessionId: a unique id for each editor opening
4442 * - sessionId: a unique id for each session. (open the AI builder)
4443 * - generateId: a unique id for each generate request. (prompt change)
4444 * - batchId: a unique id for each batch of generate requests. (generate, regenerate)
4445 * - requestId: a unique id for each generate request.
4446 */
4447
4448 var _useConfig = (0, _config.useConfig)(),
4449 currentContext = _useConfig.currentContext;
4450 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
4451 editorSessionId = _useRequestIds.editorSessionId,
4452 sessionId = _useRequestIds.sessionId,
4453 setRequest = _useRequestIds.setRequest,
4454 setBatch = _useRequestIds.setBatch,
4455 setGenerate = _useRequestIds.setGenerate;
4456 var generateIdRef = (0, _react.useRef)('');
4457 var batchId = setBatch();
4458 var screenshotsData = [(0, _useScreenshot.default)(0, onData), (0, _useScreenshot.default)(1, onData), (0, _useScreenshot.default)(2, onData)];
4459 var screenshotsGroupCount = screenshotsData.length;
4460 var error = screenshotsData.every(function (s) {
4461 return s === null || s === void 0 ? void 0 : s.error;
4462 }) ? screenshotsData[0].error : '';
4463 var isLoading = screenshotsData.some(function (s) {
4464 return s === null || s === void 0 ? void 0 : s.isLoading;
4465 });
4466 var abortController = (0, _react.useRef)(null);
4467 var abort = function abort() {
4468 var _abortController$curr;
4469 return (_abortController$curr = abortController.current) === null || _abortController$curr === void 0 ? void 0 : _abortController$curr.abort();
4470 };
4471 var createScreenshots = /*#__PURE__*/function () {
4472 var _ref2 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(prompt, attachments) {
4473 var onGenerate, onError, promises, results, isAllFailed;
4474 return _regenerator.default.wrap(function _callee$(_context) {
4475 while (1) switch (_context.prev = _context.next) {
4476 case 0:
4477 abortController.current = new AbortController();
4478 onGenerate = function onGenerate(screenshot) {
4479 setScreenshots(function (prev) {
4480 var updatedData = (0, _toConsumableArray2.default)(prev);
4481 var pendingIndex = updatedData.indexOf(PENDING_VALUE);
4482 updatedData[pendingIndex] = screenshot;
4483 return updatedData;
4484 });
4485 return true;
4486 };
4487 onError = function onError() {
4488 setScreenshots(function (prev) {
4489 var updatedData = (0, _toConsumableArray2.default)(prev);
4490 var pendingIndex = updatedData.lastIndexOf(PENDING_VALUE);
4491 updatedData[pendingIndex] = {
4492 isError: true
4493 };
4494 return updatedData;
4495 });
4496 return false;
4497 };
4498 promises = screenshotsData.map(function (_ref3) {
4499 var generate = _ref3.generate;
4500 var prevGeneratedIds = screenshots.map(function (screenshot) {
4501 return screenshot.baseTemplateId || '';
4502 });
4503 var requestBody = {
4504 prompt: prompt,
4505 prevGeneratedIds: prevGeneratedIds,
4506 currentContext: currentContext,
4507 ids: {
4508 editorSessionId: editorSessionId.current,
4509 sessionId: sessionId.current,
4510 generateId: generateIdRef.current,
4511 batchId: batchId.current,
4512 requestId: setRequest().current
4513 },
4514 attachments: attachments.map(function (_ref4) {
4515 var type = _ref4.type,
4516 content = _ref4.content,
4517 label = _ref4.label,
4518 source = _ref4.source;
4519 // Send only the data that is needed for the generation.
4520 return {
4521 type: type,
4522 content: content,
4523 label: label,
4524 source: source
4525 };
4526 })
4527 };
4528 return generate(requestBody, abortController.current.signal).then(onGenerate).catch(onError);
4529 });
4530 _context.next = 6;
4531 return Promise.all(promises);
4532 case 6:
4533 results = _context.sent;
4534 isAllFailed = results.every(function (value) {
4535 return false === value;
4536 });
4537 if (isAllFailed) {
4538 setScreenshots(function (prev) {
4539 var updatedData = (0, _toConsumableArray2.default)(prev);
4540 updatedData.splice(screenshotsGroupCount * -1);
4541 return updatedData;
4542 });
4543 }
4544 case 9:
4545 case "end":
4546 return _context.stop();
4547 }
4548 }, _callee);
4549 }));
4550 return function createScreenshots(_x, _x2) {
4551 return _ref2.apply(this, arguments);
4552 };
4553 }();
4554 var generate = function generate(prompt, attachments) {
4555 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
4556 generateIdRef.current = setGenerate().current;
4557 setScreenshots(placeholders);
4558 createScreenshots(prompt, attachments);
4559 };
4560 var regenerate = function regenerate(prompt, attachments) {
4561 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
4562 setScreenshots(function (prev) {
4563 return [].concat((0, _toConsumableArray2.default)(prev), (0, _toConsumableArray2.default)(placeholders));
4564 });
4565 createScreenshots(prompt, attachments);
4566 };
4567 return {
4568 generate: generate,
4569 regenerate: regenerate,
4570 screenshots: screenshots,
4571 isLoading: isLoading,
4572 error: error,
4573 abort: abort
4574 };
4575 };
4576 var _default = exports["default"] = useScreenshots;
4577
4578 /***/ }),
4579
4580 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js":
4581 /*!****************************************************************************!*\
4582 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js ***!
4583 \****************************************************************************/
4584 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4585
4586 "use strict";
4587
4588
4589 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4590 Object.defineProperty(exports, "__esModule", ({
4591 value: true
4592 }));
4593 exports["default"] = exports.SCREENSHOTS_PER_PAGE = exports.MAX_PAGES = void 0;
4594 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4595 var _react = __webpack_require__(/*! react */ "react");
4596 var SCREENSHOTS_PER_PAGE = exports.SCREENSHOTS_PER_PAGE = 3;
4597 var MAX_PAGES = exports.MAX_PAGES = 5;
4598 var useSlider = function useSlider() {
4599 var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
4600 _ref$slidesCount = _ref.slidesCount,
4601 slidesCount = _ref$slidesCount === void 0 ? 0 : _ref$slidesCount,
4602 _ref$slidesPerPage = _ref.slidesPerPage,
4603 slidesPerPage = _ref$slidesPerPage === void 0 ? SCREENSHOTS_PER_PAGE : _ref$slidesPerPage,
4604 _ref$gapPercentage = _ref.gapPercentage,
4605 gapPercentage = _ref$gapPercentage === void 0 ? 2 : _ref$gapPercentage;
4606 var _useState = (0, _react.useState)(1),
4607 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4608 currentPage = _useState2[0],
4609 setCurrentPage = _useState2[1];
4610 var gapsCount = slidesPerPage - 1;
4611 var slideWidthPercentage = (100 - gapPercentage * gapsCount) / slidesPerPage;
4612 var offsetXPercentage = (slideWidthPercentage + gapPercentage) * slidesPerPage * (currentPage - 1) * -1;
4613 var pagesCount = Math.ceil(slidesCount / slidesPerPage);
4614 (0, _react.useEffect)(function () {
4615 // In cases when the slidesCount value was reduced, we need to navigate to the last page.
4616 if (currentPage > 1 && currentPage > pagesCount) {
4617 setCurrentPage(pagesCount);
4618 }
4619 }, [pagesCount]);
4620 return {
4621 currentPage: currentPage,
4622 setCurrentPage: setCurrentPage,
4623 pagesCount: pagesCount,
4624 slidesPerPage: slidesPerPage,
4625 gapPercentage: gapPercentage,
4626 offsetXPercentage: offsetXPercentage,
4627 slideWidthPercentage: slideWidthPercentage
4628 };
4629 };
4630 var _default = exports["default"] = useSlider;
4631
4632 /***/ }),
4633
4634 /***/ "../modules/ai/assets/js/editor/pages/form-layout/index.js":
4635 /*!*****************************************************************!*\
4636 !*** ../modules/ai/assets/js/editor/pages/form-layout/index.js ***!
4637 \*****************************************************************/
4638 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4639
4640 "use strict";
4641
4642
4643 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4644 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4645 Object.defineProperty(exports, "__esModule", ({
4646 value: true
4647 }));
4648 exports["default"] = void 0;
4649 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4650 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
4651 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4652 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4653 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4654 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4655 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4656 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4657 var _promptErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../../components/prompt-error-message */ "../modules/ai/assets/js/editor/components/prompt-error-message.js"));
4658 var _unsavedChangesAlert = _interopRequireDefault(__webpack_require__(/*! ./components/unsaved-changes-alert */ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js"));
4659 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
4660 var _promptForm = _interopRequireDefault(__webpack_require__(/*! ./components/prompt-form */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js"));
4661 var _refreshIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/refresh-icon */ "../modules/ai/assets/js/editor/icons/refresh-icon.js"));
4662 var _screenshot = _interopRequireDefault(__webpack_require__(/*! ./components/screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js"));
4663 var _useScreenshots2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-screenshots */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js"));
4664 var _useSlider2 = _interopRequireWildcard(__webpack_require__(/*! ./hooks/use-slider */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js"));
4665 var _minimizeDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/minimize-diagonal-icon */ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js"));
4666 var _expandDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/expand-diagonal-icon */ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js"));
4667 var _config = __webpack_require__(/*! ./context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4668 var _attachment = __webpack_require__(/*! ../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
4669 var _promptPowerNotice = __webpack_require__(/*! ./components/attachments/prompt-power-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js");
4670 var _attachments = __webpack_require__(/*! ./components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
4671 var _attachDialog = _interopRequireDefault(__webpack_require__(/*! ./components/attachments/attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js"));
4672 var _isURL = _interopRequireDefault(__webpack_require__(/*! validator/lib/isURL */ "../node_modules/validator/lib/isURL.js"));
4673 var _voicePromotionAlert = __webpack_require__(/*! ../../components/voice-promotion-alert */ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js");
4674 var _excluded = ["children"];
4675 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
4676 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
4677 var DirectionalMinimizeDiagonalIcon = (0, _ui.withDirection)(_minimizeDiagonalIcon.default);
4678 var DirectionalExpandDiagonalIcon = (0, _ui.withDirection)(_expandDiagonalIcon.default);
4679
4680 /**
4681 * @typedef {Object} Attachment
4682 * @property {('json')} type - The type of the attachment, currently only `json` is supported.
4683 * @property {string} previewHTML - HTML content as a string, representing a preview.
4684 * @property {string} content - Actual content of the attachment as a string.
4685 * @property {string} label - Label for the attachment.
4686 */
4687
4688 var RegenerateButton = function RegenerateButton(props) {
4689 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
4690 size: "small",
4691 color: "secondary",
4692 startIcon: /*#__PURE__*/_react.default.createElement(_refreshIcon.default, null)
4693 }, props), (0, _i18n.__)('Regenerate', 'elementor'));
4694 };
4695 var UseLayoutButton = function UseLayoutButton(props) {
4696 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
4697 size: "small",
4698 variant: "contained"
4699 }, props), (0, _i18n.__)('Use Layout', 'elementor'));
4700 };
4701 UseLayoutButton.propTypes = {
4702 sx: _propTypes.default.object
4703 };
4704 var isRegenerateButtonDisabled = function isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive) {
4705 if (isLoading || isPromptFormActive) {
4706 return true;
4707 }
4708 return screenshots.length >= _useSlider2.SCREENSHOTS_PER_PAGE * _useSlider2.MAX_PAGES;
4709 };
4710 var FormLayout = function FormLayout(_ref) {
4711 var _screenshots$selected, _screenshots$2;
4712 var _ref$DialogHeaderProp = _ref.DialogHeaderProps,
4713 DialogHeaderProps = _ref$DialogHeaderProp === void 0 ? {} : _ref$DialogHeaderProp,
4714 _ref$DialogContentPro = _ref.DialogContentProps,
4715 DialogContentProps = _ref$DialogContentPro === void 0 ? {} : _ref$DialogContentPro,
4716 initialAttachments = _ref.attachments;
4717 var _useConfig = (0, _config.useConfig)(),
4718 attachmentsTypes = _useConfig.attachmentsTypes,
4719 onData = _useConfig.onData,
4720 onInsert = _useConfig.onInsert,
4721 onSelect = _useConfig.onSelect,
4722 onClose = _useConfig.onClose,
4723 onGenerate = _useConfig.onGenerate;
4724 var _useScreenshots = (0, _useScreenshots2.default)({
4725 onData: onData
4726 }),
4727 screenshots = _useScreenshots.screenshots,
4728 generate = _useScreenshots.generate,
4729 regenerate = _useScreenshots.regenerate,
4730 isLoading = _useScreenshots.isLoading,
4731 error = _useScreenshots.error,
4732 abort = _useScreenshots.abort;
4733 var screenshotOutlineOffset = '2px';
4734 var _useSlider = (0, _useSlider2.default)({
4735 slidesCount: screenshots.length
4736 }),
4737 currentPage = _useSlider.currentPage,
4738 setCurrentPage = _useSlider.setCurrentPage,
4739 pagesCount = _useSlider.pagesCount,
4740 gapPercentage = _useSlider.gapPercentage,
4741 slidesPerPage = _useSlider.slidesPerPage,
4742 offsetXPercentage = _useSlider.offsetXPercentage,
4743 slideWidthPercentage = _useSlider.slideWidthPercentage;
4744 var _useState = (0, _react.useState)(-1),
4745 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4746 selectedScreenshotIndex = _useState2[0],
4747 setSelectedScreenshotIndex = _useState2[1];
4748 var _useState3 = (0, _react.useState)(false),
4749 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
4750 showUnsavedChangesAlert = _useState4[0],
4751 setShowUnsavedChangesAlert = _useState4[1];
4752 var _useState5 = (0, _react.useState)(true),
4753 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
4754 isPromptEditable = _useState6[0],
4755 setIsPromptEditable = _useState6[1];
4756 var _useState7 = (0, _react.useState)([]),
4757 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
4758 attachments = _useState8[0],
4759 setAttachments = _useState8[1];
4760 var _useState9 = (0, _react.useState)(false),
4761 _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
4762 shouldRenderWebApp = _useState10[0],
4763 setShouldRenderWebApp = _useState10[1];
4764 var _useState11 = (0, _react.useState)(false),
4765 _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
4766 isMinimized = _useState12[0],
4767 setIsMinimized = _useState12[1];
4768 var lastRun = (0, _react.useRef)(function () {});
4769 var promptInputRef = (0, _react.useRef)(null);
4770 var selectedTemplate = (_screenshots$selected = screenshots[selectedScreenshotIndex]) === null || _screenshots$selected === void 0 ? void 0 : _screenshots$selected.template;
4771 var dialogContentChildren = DialogContentProps.children,
4772 dialogContentProps = (0, _objectWithoutProperties2.default)(DialogContentProps, _excluded);
4773
4774 // When there are no screenshots the prompt field should be editable.
4775 var shouldFallbackToEditPrompt = !!(error && 0 === screenshots.length);
4776 var isPromptFormActive = isPromptEditable || shouldFallbackToEditPrompt;
4777 var abortAndClose = function abortAndClose() {
4778 abort();
4779 onClose();
4780 };
4781 var onCloseIntent = function onCloseIntent() {
4782 var hasUnsavedChanges = promptInputRef.current.value.trim() !== '' || screenshots.length > 0;
4783 if (hasUnsavedChanges) {
4784 return setShowUnsavedChangesAlert(true);
4785 }
4786 abortAndClose();
4787 };
4788 var handleGenerate = function handleGenerate(event, prompt) {
4789 event.preventDefault();
4790 if ('' === prompt.trim() && 0 === attachments.length) {
4791 return;
4792 }
4793 if ((0, _isURL.default)(prompt)) {
4794 setShouldRenderWebApp(true);
4795 return;
4796 }
4797 onGenerate();
4798 lastRun.current = function () {
4799 setSelectedScreenshotIndex(-1);
4800 generate(prompt, attachments);
4801 };
4802 lastRun.current();
4803 setIsPromptEditable(false);
4804 setCurrentPage(1);
4805 };
4806 var handleRegenerate = function handleRegenerate() {
4807 lastRun.current = function () {
4808 regenerate(promptInputRef.current.value, attachments);
4809 // Changing the current page to the next page number.
4810 setCurrentPage(pagesCount + 1);
4811 };
4812 lastRun.current();
4813 };
4814 var applyTemplate = function applyTemplate() {
4815 onInsert(selectedTemplate);
4816 screenshots[selectedScreenshotIndex].sendUsageData();
4817 abortAndClose();
4818 };
4819 var handleScreenshotClick = function handleScreenshotClick(index, template) {
4820 return function () {
4821 if (isPromptFormActive) {
4822 return;
4823 }
4824 setSelectedScreenshotIndex(index);
4825 onSelect(template);
4826 };
4827 };
4828
4829 /**
4830 * @param {Attachment[]} items
4831 */
4832 var onAttach = function onAttach(items) {
4833 items.forEach(function (item) {
4834 if (!attachmentsTypes[item.type]) {
4835 throw new Error("Invalid attachment type: ".concat(item.type));
4836 }
4837 var typeConfig = attachmentsTypes[item.type];
4838 if (!item.previewHTML && typeConfig.previewGenerator) {
4839 typeConfig.previewGenerator(item.content).then(function (html) {
4840 item.previewHTML = html;
4841 setAttachments(function (prev) {
4842 // Replace the attachment with the updated one.
4843 return prev.map(function (attachment) {
4844 if (attachment.content === item.content) {
4845 return item;
4846 }
4847 return attachment;
4848 });
4849 });
4850 });
4851 }
4852 });
4853 setAttachments(items);
4854 setShouldRenderWebApp(false);
4855 setIsPromptEditable(true);
4856 };
4857 (0, _react.useEffect)(function () {
4858 var _screenshots$;
4859 var isFirstTemplateExist = (_screenshots$ = screenshots[0]) === null || _screenshots$ === void 0 ? void 0 : _screenshots$.template;
4860 if (isFirstTemplateExist) {
4861 onSelect(screenshots[0].template);
4862 setSelectedScreenshotIndex(0);
4863 }
4864 }, [(_screenshots$2 = screenshots[0]) === null || _screenshots$2 === void 0 ? void 0 : _screenshots$2.template]);
4865 (0, _react.useEffect)(function () {
4866 if (initialAttachments !== null && initialAttachments !== void 0 && initialAttachments.length) {
4867 onAttach(initialAttachments);
4868 }
4869 }, []);
4870 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
4871 onClose: onCloseIntent
4872 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, (0, _extends2.default)({
4873 onClose: onCloseIntent
4874 }, DialogHeaderProps), DialogHeaderProps.children, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
4875 title: isMinimized ? (0, _i18n.__)('Expand', 'elementor') : (0, _i18n.__)('Minimize', 'elementor')
4876 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
4877 size: "small",
4878 "aria-label": "minimize",
4879 onClick: function onClick() {
4880 return setIsMinimized(function (prev) {
4881 return !prev;
4882 });
4883 }
4884 }, isMinimized ? /*#__PURE__*/_react.default.createElement(DirectionalExpandDiagonalIcon, null) : /*#__PURE__*/_react.default.createElement(DirectionalMinimizeDiagonalIcon, null)))), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, (0, _extends2.default)({
4885 dividers: true
4886 }, dialogContentProps), /*#__PURE__*/_react.default.createElement(_ui.Collapse, {
4887 in: !isMinimized
4888 }, dialogContentChildren && /*#__PURE__*/_react.default.createElement(_ui.Box, {
4889 sx: {
4890 pt: 2,
4891 px: 2,
4892 pb: 0
4893 }
4894 }, dialogContentChildren), attachments.length > 0 && /*#__PURE__*/_react.default.createElement(_promptPowerNotice.PromptPowerNotice, null), error && /*#__PURE__*/_react.default.createElement(_ui.Box, {
4895 sx: {
4896 pt: 2,
4897 px: 2,
4898 pb: 0
4899 }
4900 }, /*#__PURE__*/_react.default.createElement(_promptErrorMessage.default, {
4901 error: error,
4902 onRetry: lastRun.current
4903 })), showUnsavedChangesAlert && /*#__PURE__*/_react.default.createElement(_unsavedChangesAlert.default, {
4904 open: showUnsavedChangesAlert,
4905 title: (0, _i18n.__)('Leave Elementor AI?', 'elementor'),
4906 text: (0, _i18n.__)("Your progress will be deleted, and can't be recovered.", 'elementor'),
4907 onClose: abortAndClose,
4908 onCancel: function onCancel() {
4909 return setShowUnsavedChangesAlert(false);
4910 }
4911 }), shouldRenderWebApp && /*#__PURE__*/_react.default.createElement(_attachDialog.default, {
4912 type: _attachments.ATTACHMENT_TYPE_URL,
4913 url: promptInputRef.current.value,
4914 onAttach: onAttach,
4915 onClose: function onClose() {
4916 setShouldRenderWebApp(false);
4917 }
4918 }), /*#__PURE__*/_react.default.createElement(_promptForm.default, {
4919 shouldResetPrompt: shouldRenderWebApp,
4920 ref: promptInputRef,
4921 isActive: isPromptFormActive,
4922 isLoading: isLoading,
4923 showActions: screenshots.length > 0 || isLoading,
4924 attachmentsTypes: attachmentsTypes,
4925 attachments: attachments,
4926 onAttach: onAttach,
4927 onDetach: function onDetach(index) {
4928 setAttachments(function (prev) {
4929 var newAttachments = (0, _toConsumableArray2.default)(prev);
4930 newAttachments.splice(index, 1);
4931 return newAttachments;
4932 });
4933 setIsPromptEditable(true);
4934 },
4935 onSubmit: handleGenerate,
4936 onBack: function onBack() {
4937 return setIsPromptEditable(false);
4938 },
4939 onEdit: function onEdit() {
4940 return setIsPromptEditable(true);
4941 }
4942 }), (screenshots.length > 0 || isLoading) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Divider, null), /*#__PURE__*/_react.default.createElement(_ui.Box, {
4943 sx: {
4944 p: 1.5
4945 }
4946 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
4947 sx: {
4948 overflow: 'hidden',
4949 p: 0.5
4950 }
4951 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
4952 sx: {
4953 display: 'flex',
4954 transition: 'all 0.4s ease',
4955 gap: "".concat(gapPercentage, "%"),
4956 transform: "translateX(".concat(offsetXPercentage, "%)")
4957 }
4958 }, screenshots.map(function (_ref2, index) {
4959 var screenshot = _ref2.screenshot,
4960 type = _ref2.type,
4961 template = _ref2.template,
4962 isError = _ref2.isError,
4963 isPending = _ref2.isPending;
4964 return /*#__PURE__*/_react.default.createElement(_screenshot.default, {
4965 key: index,
4966 url: screenshot,
4967 type: type,
4968 disabled: isPromptFormActive,
4969 isPlaceholder: isError,
4970 isLoading: isPending,
4971 isSelected: selectedScreenshotIndex === index,
4972 onClick: handleScreenshotClick(index, template),
4973 outlineOffset: screenshotOutlineOffset,
4974 sx: {
4975 flex: "0 0 ".concat(slideWidthPercentage, "%")
4976 }
4977 });
4978 }))), /*#__PURE__*/_react.default.createElement(_voicePromotionAlert.VoicePromotionAlert, {
4979 introductionKey: "ai-context-layout-promotion"
4980 })), screenshots.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Box, {
4981 sx: {
4982 pt: 0,
4983 px: 2,
4984 pb: 2
4985 },
4986 display: "grid",
4987 gridTemplateColumns: "repeat(3, 1fr)",
4988 justifyItems: "center"
4989 }, /*#__PURE__*/_react.default.createElement(RegenerateButton, {
4990 onClick: handleRegenerate,
4991 disabled: isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive),
4992 sx: {
4993 justifySelf: 'start'
4994 }
4995 }), screenshots.length > slidesPerPage && /*#__PURE__*/_react.default.createElement(_ui.Pagination, {
4996 page: currentPage,
4997 count: pagesCount,
4998 disabled: isPromptFormActive,
4999 onChange: function onChange(_, page) {
5000 return setCurrentPage(page);
5001 }
5002 }), /*#__PURE__*/_react.default.createElement(UseLayoutButton, {
5003 onClick: applyTemplate,
5004 disabled: isPromptFormActive || -1 === selectedScreenshotIndex,
5005 sx: {
5006 justifySelf: 'end',
5007 gridColumn: 3
5008 }
5009 }))))));
5010 };
5011 FormLayout.propTypes = {
5012 DialogHeaderProps: _propTypes.default.object,
5013 DialogContentProps: _propTypes.default.object,
5014 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
5015 };
5016 var _default = exports["default"] = FormLayout;
5017
5018 /***/ }),
5019
5020 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js":
5021 /*!************************************************************************************!*\
5022 !*** ../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js ***!
5023 \************************************************************************************/
5024 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5025
5026 "use strict";
5027
5028
5029 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5030 Object.defineProperty(exports, "__esModule", ({
5031 value: true
5032 }));
5033 exports["default"] = void 0;
5034 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5035 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5036 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5037 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5038 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5039 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5040 var _wandIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/wand-icon */ "../modules/ai/assets/js/editor/icons/wand-icon.js"));
5041 var _excluded = ["isLoading"];
5042 var StyledWandIcon = (0, _ui.withDirection)(_wandIcon.default);
5043 var EnhanceButton = function EnhanceButton(_ref) {
5044 var isLoading = _ref.isLoading,
5045 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
5046 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5047 title: (0, _i18n.__)('Enhance prompt', 'elementor')
5048 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5049 component: "span",
5050 sx: {
5051 cursor: props.disabled ? 'default' : 'pointer'
5052 }
5053 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, (0, _extends2.default)({
5054 size: "small",
5055 color: "secondary"
5056 }, props), isLoading ? /*#__PURE__*/_react.default.createElement(_ui.CircularProgress, {
5057 color: "secondary",
5058 size: 20
5059 }) : /*#__PURE__*/_react.default.createElement(StyledWandIcon, {
5060 fontSize: "small"
5061 }))));
5062 };
5063 EnhanceButton.propTypes = {
5064 disabled: _propTypes.default.bool,
5065 isLoading: _propTypes.default.bool
5066 };
5067 var _default = exports["default"] = EnhanceButton;
5068
5069 /***/ }),
5070
5071 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js":
5072 /*!*************************************************************************************!*\
5073 !*** ../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js ***!
5074 \*************************************************************************************/
5075 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5076
5077 "use strict";
5078
5079
5080 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5081 Object.defineProperty(exports, "__esModule", ({
5082 value: true
5083 }));
5084 exports["default"] = void 0;
5085 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5086 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5087 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5088 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5089 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5090 var GenerateSubmit = function GenerateSubmit(props) {
5091 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5092 fullWidth: true,
5093 size: "medium",
5094 type: "submit",
5095 variant: "contained"
5096 }, props), props.children || (0, _i18n.__)('Generate', 'elementor'));
5097 };
5098 GenerateSubmit.propTypes = {
5099 children: _propTypes.default.node
5100 };
5101 var _default = exports["default"] = GenerateSubmit;
5102
5103 /***/ }),
5104
5105 /***/ "../modules/ai/assets/js/editor/pages/get-started/index.js":
5106 /*!*****************************************************************!*\
5107 !*** ../modules/ai/assets/js/editor/pages/get-started/index.js ***!
5108 \*****************************************************************/
5109 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5110
5111 "use strict";
5112
5113
5114 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5115 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5116 Object.defineProperty(exports, "__esModule", ({
5117 value: true
5118 }));
5119 exports["default"] = void 0;
5120 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5121 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5122 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5123 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5124 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5125 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5126 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5127 var _api = __webpack_require__(/*! ../../api */ "../modules/ai/assets/js/editor/api/index.js");
5128 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
5129 function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
5130 function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
5131 var GetStarted = function GetStarted(_ref) {
5132 var onSuccess = _ref.onSuccess;
5133 var _useState = (0, _react.useState)(false),
5134 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5135 isTermsChecked = _useState2[0],
5136 setIsTermsChecked = _useState2[1];
5137 var onGetStartedClick = /*#__PURE__*/function () {
5138 var _ref2 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
5139 return _regenerator.default.wrap(function _callee$(_context) {
5140 while (1) switch (_context.prev = _context.next) {
5141 case 0:
5142 _context.next = 2;
5143 return (0, _api.setGetStarted)();
5144 case 2:
5145 onSuccess();
5146 case 3:
5147 case "end":
5148 return _context.stop();
5149 }
5150 }, _callee);
5151 }));
5152 return function onGetStartedClick() {
5153 return _ref2.apply(this, arguments);
5154 };
5155 }();
5156 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5157 alignItems: "center",
5158 gap: 1.5
5159 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
5160 sx: {
5161 color: 'text.primary',
5162 fontSize: '60px',
5163 mb: 1
5164 }
5165 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5166 variant: "h4",
5167 sx: {
5168 color: 'text.primary'
5169 }
5170 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5171 variant: "body2"
5172 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5173 direction: "row",
5174 gap: 1.5,
5175 alignItems: "flex-start"
5176 }, /*#__PURE__*/_react.default.createElement(_ui.Checkbox, {
5177 id: "e-ai-terms-approval",
5178 color: "secondary",
5179 checked: isTermsChecked,
5180 onClick: function onClick() {
5181 return setIsTermsChecked(function (prevState) {
5182 return !prevState;
5183 });
5184 }
5185 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5186 variant: "caption",
5187 sx: {
5188 maxWidth: 520
5189 },
5190 component: "label",
5191 htmlFor: "e-ai-terms-approval"
5192 }, (0, _i18n.__)('I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
5193 href: "https://go.elementor.com/ai-terms/",
5194 target: "_blank",
5195 color: "info.main"
5196 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
5197 href: "https://go.elementor.com/ai-privacy-policy/",
5198 target: "_blank",
5199 color: "info.main"
5200 }, (0, _i18n.__)('Privacy Policy', 'elementor')), (0, _i18n.__)(' of the Elementor AI service.', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), (0, _i18n.__)('This includes consenting to the collection and use of data to improve user experience.', 'elementor')))), /*#__PURE__*/_react.default.createElement(_ui.Button, {
5201 disabled: !isTermsChecked,
5202 variant: "contained",
5203 onClick: onGetStartedClick,
5204 sx: {
5205 mt: 1,
5206 '&:hover': {
5207 color: 'primary.contrastText'
5208 }
5209 }
5210 }, (0, _i18n.__)('Get Started', 'elementor')));
5211 };
5212 GetStarted.propTypes = {
5213 onSuccess: _propTypes.default.func.isRequired
5214 };
5215 var _default = exports["default"] = GetStarted;
5216
5217 /***/ }),
5218
5219 /***/ "../modules/ai/assets/js/editor/types/attachment.js":
5220 /*!**********************************************************!*\
5221 !*** ../modules/ai/assets/js/editor/types/attachment.js ***!
5222 \**********************************************************/
5223 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5224
5225 "use strict";
5226
5227
5228 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5229 Object.defineProperty(exports, "__esModule", ({
5230 value: true
5231 }));
5232 exports.AttachmentsTypesPropType = exports.AttachmentPropType = void 0;
5233 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5234 var AttachmentPropType = exports.AttachmentPropType = _propTypes.default.shape({
5235 type: _propTypes.default.string,
5236 previewHTML: _propTypes.default.string,
5237 content: _propTypes.default.string,
5238 label: _propTypes.default.string,
5239 source: _propTypes.default.string
5240 });
5241 var AttachmentsTypesPropType = exports.AttachmentsTypesPropType = _propTypes.default.shape({
5242 type: _propTypes.default.shape({
5243 promptPlaceholder: _propTypes.default.string,
5244 promptSuggestions: _propTypes.default.arrayOf(_propTypes.default.shape({
5245 text: _propTypes.default.string.isRequired
5246 })),
5247 previewGenerator: _propTypes.default.func
5248 })
5249 });
5250
5251 /***/ }),
5252
5253 /***/ "../modules/ai/assets/js/editor/utils/editor-integration.js":
5254 /*!******************************************************************!*\
5255 !*** ../modules/ai/assets/js/editor/utils/editor-integration.js ***!
5256 \******************************************************************/
5257 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5258
5259 "use strict";
5260
5261
5262 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5263 Object.defineProperty(exports, "__esModule", ({
5264 value: true
5265 }));
5266 exports.renderLayoutApp = exports.openPanel = exports.onConnect = exports.importToEditor = exports.getUiConfig = exports.closePanel = exports.WEB_BASED_PROMPTS = exports.VARIATIONS_PROMPTS = void 0;
5267 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5268 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5269 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5270 var _react2 = _interopRequireDefault(__webpack_require__(/*! elementor-utils/react */ "../assets/dev/js/utils/react.js"));
5271 var _previewContainer = __webpack_require__(/*! ./preview-container */ "../modules/ai/assets/js/editor/utils/preview-container.js");
5272 var _layoutApp = _interopRequireDefault(__webpack_require__(/*! ../layout-app */ "../modules/ai/assets/js/editor/layout-app.js"));
5273 var _screenshot = __webpack_require__(/*! ./screenshot */ "../modules/ai/assets/js/editor/utils/screenshot.js");
5274 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
5275 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5276 var _layoutAppWrapper = _interopRequireDefault(__webpack_require__(/*! ../layout-app-wrapper */ "../modules/ai/assets/js/editor/layout-app-wrapper.js"));
5277 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5278 var closePanel = exports.closePanel = function closePanel() {
5279 $e.run('panel/close');
5280 $e.components.get('panel').blockUserInteractions();
5281 };
5282 var openPanel = exports.openPanel = function openPanel() {
5283 $e.run('panel/open');
5284 $e.components.get('panel').unblockUserInteractions();
5285 };
5286 var onConnect = exports.onConnect = function onConnect(data) {
5287 elementorCommon.config.library_connect.is_connected = true;
5288 elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0;
5289 elementorCommon.config.library_connect.current_access_tier = data.access_tier;
5290 };
5291 var getUiConfig = exports.getUiConfig = function getUiConfig() {
5292 var _elementor, _elementor$getPrefere;
5293 var colorScheme = ((_elementor = elementor) === null || _elementor === void 0 || (_elementor$getPrefere = _elementor.getPreferences) === null || _elementor$getPrefere === void 0 ? void 0 : _elementor$getPrefere.call(_elementor, 'ui_theme')) || 'auto';
5294 var isRTL = elementorCommon.config.isRTL;
5295 return {
5296 colorScheme: colorScheme,
5297 isRTL: isRTL
5298 };
5299 };
5300 var VARIATIONS_PROMPTS = exports.VARIATIONS_PROMPTS = [{
5301 text: (0, _i18n.__)('Minimalist design with bold typography about', 'elementor')
5302 }, {
5303 text: (0, _i18n.__)('Elegant style with serif fonts discussing', 'elementor')
5304 }, {
5305 text: (0, _i18n.__)('Retro vibe with muted colors and classic fonts about', 'elementor')
5306 }, {
5307 text: (0, _i18n.__)('Futuristic design with neon accents about', 'elementor')
5308 }, {
5309 text: (0, _i18n.__)('Professional look with clean lines for', 'elementor')
5310 }, {
5311 text: (0, _i18n.__)('Earthy tones and organic shapes featuring', 'elementor')
5312 }, {
5313 text: (0, _i18n.__)('Luxurious theme with rich colors discussing', 'elementor')
5314 }, {
5315 text: (0, _i18n.__)('Tech-inspired style with modern fonts about', 'elementor')
5316 }, {
5317 text: (0, _i18n.__)('Warm hues with comforting visuals about', 'elementor')
5318 }];
5319 var WEB_BASED_PROMPTS = exports.WEB_BASED_PROMPTS = [{
5320 text: (0, _i18n.__)('Change the content to be about [topic]', 'elementor')
5321 }, {
5322 text: (0, _i18n.__)('Generate lorem ipsum placeholder text for all paragraphs', 'elementor')
5323 }, {
5324 text: (0, _i18n.__)('Revise the content to focus on [topic] and then translate it into Spanish', 'elementor')
5325 }, {
5326 text: (0, _i18n.__)('Shift the focus of the content to [topic] in order to showcase our company\'s mission and values', 'elementor')
5327 }, {
5328 text: (0, _i18n.__)('Alter the content to provide helpful tips related to [topic]', 'elementor')
5329 }, {
5330 text: (0, _i18n.__)('Adjust the content to include FAQs and answers for common inquiries about [topic]', 'elementor')
5331 }];
5332 var PROMPT_PLACEHOLDER = (0, _i18n.__)("Press '/' for suggestions or describe the changes you want to apply (optional)...", 'elementor');
5333 var renderLayoutApp = exports.renderLayoutApp = function renderLayoutApp() {
5334 var _options$onRenderApp;
5335 var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
5336 parentContainer: null,
5337 mode: '',
5338 at: null,
5339 onClose: null,
5340 onGenerate: null,
5341 onInsert: null,
5342 onRenderApp: null,
5343 onSelect: null,
5344 attachments: []
5345 };
5346 closePanel();
5347 var previewContainer = (0, _previewContainer.createPreviewContainer)(options.parentContainer, {
5348 // Create the container at the "drag widget here" area position.
5349 at: options.at
5350 });
5351 var _getUiConfig = getUiConfig(),
5352 colorScheme = _getUiConfig.colorScheme,
5353 isRTL = _getUiConfig.isRTL;
5354 var rootElement = document.createElement('div');
5355 document.body.append(rootElement);
5356 var bodyStyle = window.elementorFrontend.elements.$window[0].getComputedStyle(window.elementorFrontend.elements.$body[0]);
5357 var _ReactUtils$render = _react2.default.render(/*#__PURE__*/_react.default.createElement(_layoutAppWrapper.default, {
5358 isRTL: isRTL,
5359 colorScheme: colorScheme
5360 }, /*#__PURE__*/_react.default.createElement(_layoutApp.default, {
5361 mode: options.mode,
5362 currentContext: {
5363 body: {
5364 backgroundColor: bodyStyle.backgroundColor,
5365 backgroundImage: bodyStyle.backgroundImage
5366 }
5367 },
5368 attachmentsTypes: {
5369 json: {
5370 promptSuggestions: VARIATIONS_PROMPTS,
5371 promptPlaceholder: PROMPT_PLACEHOLDER,
5372 previewGenerator: function () {
5373 var _previewGenerator = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(json) {
5374 var screenshot;
5375 return _regenerator.default.wrap(function _callee$(_context) {
5376 while (1) switch (_context.prev = _context.next) {
5377 case 0:
5378 _context.next = 2;
5379 return (0, _screenshot.takeScreenshot)(json);
5380 case 2:
5381 screenshot = _context.sent;
5382 return _context.abrupt("return", "<img src=\"".concat(screenshot, "\" />"));
5383 case 4:
5384 case "end":
5385 return _context.stop();
5386 }
5387 }, _callee);
5388 }));
5389 function previewGenerator(_x) {
5390 return _previewGenerator.apply(this, arguments);
5391 }
5392 return previewGenerator;
5393 }()
5394 },
5395 url: {
5396 promptPlaceholder: PROMPT_PLACEHOLDER,
5397 promptSuggestions: WEB_BASED_PROMPTS
5398 }
5399 },
5400 attachments: options.attachments || [],
5401 onClose: function onClose() {
5402 var _options$onClose;
5403 previewContainer.destroy();
5404 (_options$onClose = options.onClose) === null || _options$onClose === void 0 || _options$onClose.call(options);
5405 unmount();
5406 rootElement.remove();
5407 openPanel();
5408 },
5409 onConnect: onConnect,
5410 onGenerate: function onGenerate() {
5411 var _options$onGenerate;
5412 (_options$onGenerate = options.onGenerate) === null || _options$onGenerate === void 0 || _options$onGenerate.call(options, {
5413 previewContainer: previewContainer
5414 });
5415 },
5416 onData: (/*#__PURE__*/function () {
5417 var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(template) {
5418 var screenshot;
5419 return _regenerator.default.wrap(function _callee2$(_context2) {
5420 while (1) switch (_context2.prev = _context2.next) {
5421 case 0:
5422 _context2.next = 2;
5423 return (0, _screenshot.takeScreenshot)(template);
5424 case 2:
5425 screenshot = _context2.sent;
5426 return _context2.abrupt("return", {
5427 screenshot: screenshot,
5428 template: template
5429 });
5430 case 4:
5431 case "end":
5432 return _context2.stop();
5433 }
5434 }, _callee2);
5435 }));
5436 return function (_x2) {
5437 return _ref.apply(this, arguments);
5438 };
5439 }()),
5440 onSelect: function onSelect(template) {
5441 var _options$onSelect;
5442 (_options$onSelect = options.onSelect) === null || _options$onSelect === void 0 || _options$onSelect.call(options);
5443 previewContainer.setContent(template);
5444 },
5445 onInsert: options.onInsert,
5446 hasPro: elementor.helpers.hasPro()
5447 })), rootElement),
5448 unmount = _ReactUtils$render.unmount;
5449 (_options$onRenderApp = options.onRenderApp) === null || _options$onRenderApp === void 0 || _options$onRenderApp.call(options, {
5450 previewContainer: previewContainer
5451 });
5452 };
5453 var importToEditor = exports.importToEditor = function importToEditor(_ref2) {
5454 var parentContainer = _ref2.parentContainer,
5455 at = _ref2.at,
5456 template = _ref2.template,
5457 historyTitle = _ref2.historyTitle,
5458 _ref2$replace = _ref2.replace,
5459 replace = _ref2$replace === void 0 ? false : _ref2$replace;
5460 var endHistoryLog = (0, _history.startHistoryLog)({
5461 type: 'import',
5462 title: historyTitle
5463 });
5464 if (replace) {
5465 $e.run('document/elements/delete', {
5466 container: parentContainer.children.at(at)
5467 });
5468 }
5469 $e.run('document/elements/create', {
5470 container: parentContainer,
5471 model: (0, _requestsIds.generateIds)(template),
5472 options: {
5473 at: at,
5474 edit: true
5475 }
5476 });
5477 endHistoryLog();
5478 };
5479
5480 /***/ }),
5481
5482 /***/ "../modules/ai/assets/js/editor/utils/history.js":
5483 /*!*******************************************************!*\
5484 !*** ../modules/ai/assets/js/editor/utils/history.js ***!
5485 \*******************************************************/
5486 /***/ ((__unused_webpack_module, exports) => {
5487
5488 "use strict";
5489
5490
5491 Object.defineProperty(exports, "__esModule", ({
5492 value: true
5493 }));
5494 exports.startHistoryLog = startHistoryLog;
5495 exports.toggleHistory = toggleHistory;
5496 function toggleHistory(isActive) {
5497 elementor.documents.getCurrent().history.setActive(isActive);
5498 }
5499
5500 /**
5501 * @param {Object} options
5502 * @param { 'add' | 'change' | 'disable' | 'duplicate' | 'enable' | 'import' | 'move' | 'paste' | 'paste_style' | 'remove' | 'reset_settings' | 'reset_style' | 'selected' } options.type
5503 * @param { string } options.title
5504 *
5505 * @return {*}
5506 */
5507 function startHistoryLog(_ref) {
5508 var type = _ref.type,
5509 title = _ref.title;
5510 var id = $e.internal('document/history/start-log', {
5511 type: type,
5512 title: title
5513 });
5514 return function () {
5515 return $e.internal('document/history/end-log', {
5516 id: id
5517 });
5518 };
5519 }
5520
5521 /***/ }),
5522
5523 /***/ "../modules/ai/assets/js/editor/utils/preview-container.js":
5524 /*!*****************************************************************!*\
5525 !*** ../modules/ai/assets/js/editor/utils/preview-container.js ***!
5526 \*****************************************************************/
5527 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5528
5529 "use strict";
5530
5531
5532 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5533 Object.defineProperty(exports, "__esModule", ({
5534 value: true
5535 }));
5536 exports.createPreviewContainer = createPreviewContainer;
5537 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
5538 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5539 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
5540 function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5541 function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5542 /**
5543 * @typedef {import('elementor/assets/dev/js/editor/container/container')} Container
5544 */
5545
5546 var PREFIX = 'e-ai-preview-container';
5547 var CLASS_HIDDEN = PREFIX + '--hidden';
5548 var CLASS_IDLE = PREFIX + '--idle';
5549
5550 /**
5551 * @param {Container} parentContainer
5552 * @param {{}} containerOptions
5553 * @return {{init, setContent, reset, destroy}}
5554 */
5555
5556 function createPreviewContainer(parentContainer) {
5557 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
5558 var createdContainers = new Map();
5559 var idleContainer = createIdleContainer(parentContainer, containerOptions);
5560 function init() {
5561 showContainer(idleContainer);
5562 }
5563 function getAllContainers() {
5564 return [].concat((0, _toConsumableArray2.default)(createdContainers.values()), [idleContainer]);
5565 }
5566 function reset() {
5567 deleteContainers((0, _toConsumableArray2.default)(createdContainers.values()));
5568 createdContainers.clear();
5569 showContainer(idleContainer);
5570 }
5571 function setContent(template) {
5572 if (!template) {
5573 return;
5574 }
5575 hideContainers(getAllContainers());
5576 if (!createdContainers.has(template)) {
5577 var newContainer = createContainer(parentContainer, template, containerOptions);
5578 createdContainers.set(template, newContainer);
5579 }
5580 showContainer(createdContainers.get(template));
5581 }
5582 function destroy() {
5583 deleteContainers(getAllContainers());
5584 createdContainers.clear();
5585 }
5586 return {
5587 init: init,
5588 reset: reset,
5589 setContent: setContent,
5590 destroy: destroy
5591 };
5592 }
5593
5594 /**
5595 * @param {Container} parentContainer
5596 * @param {{}} model
5597 * @param {{}} options
5598 * @return {*}
5599 */
5600 function createContainer(parentContainer, model) {
5601 var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
5602 (0, _history.toggleHistory)(false);
5603 var container = $e.run('document/elements/create', {
5604 container: parentContainer,
5605 model: _objectSpread(_objectSpread({}, model), {}, {
5606 id: "".concat(PREFIX, "-").concat(elementorCommon.helpers.getUniqueId().toString())
5607 }),
5608 options: _objectSpread(_objectSpread({}, options), {}, {
5609 edit: false
5610 })
5611 });
5612 (0, _history.toggleHistory)(true);
5613 container.view.$el.addClass(CLASS_HIDDEN);
5614 return container;
5615 }
5616
5617 /**
5618 * @param {Container} parentContainer
5619 * @param {{}} containerOptions
5620 * @return {*}
5621 */
5622 function createIdleContainer(parentContainer) {
5623 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
5624 // Create an empty container that'll be used of UI purposes.
5625 var container = createContainer(parentContainer, {
5626 elType: 'container'
5627 }, containerOptions);
5628 container.view.$el.addClass(CLASS_IDLE);
5629 return container;
5630 }
5631 function hideContainers(containers) {
5632 containers.forEach(function (container) {
5633 container.view.$el.addClass(CLASS_HIDDEN);
5634 });
5635 }
5636 function showContainer(container) {
5637 container.view.$el.removeClass(CLASS_HIDDEN);
5638
5639 // Delay the scroll to avoid UI jumps when toggling between containers.
5640 setTimeout(function () {
5641 container.view.$el[0].scrollIntoView({
5642 behavior: 'smooth',
5643 block: 'start'
5644 });
5645 });
5646 }
5647 function deleteContainers(containers) {
5648 (0, _history.toggleHistory)(false);
5649 $e.run('document/elements/delete', {
5650 containers: containers
5651 });
5652 (0, _history.toggleHistory)(true);
5653 }
5654
5655 /***/ }),
5656
5657 /***/ "../modules/ai/assets/js/editor/utils/screenshot.js":
5658 /*!**********************************************************!*\
5659 !*** ../modules/ai/assets/js/editor/utils/screenshot.js ***!
5660 \**********************************************************/
5661 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5662
5663 "use strict";
5664
5665
5666 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5667 Object.defineProperty(exports, "__esModule", ({
5668 value: true
5669 }));
5670 exports.takeScreenshot = void 0;
5671 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5672 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5673 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5674 var _htmlToImage = __webpack_require__(/*! html-to-image */ "../node_modules/html-to-image/es/index.js");
5675 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
5676 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5677 var takeScreenshot = exports.takeScreenshot = /*#__PURE__*/function () {
5678 var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(template) {
5679 var hiddenWrapper, container, screenshot;
5680 return _regenerator.default.wrap(function _callee$(_context) {
5681 while (1) switch (_context.prev = _context.next) {
5682 case 0:
5683 if (template) {
5684 _context.next = 2;
5685 break;
5686 }
5687 return _context.abrupt("return", '');
5688 case 2:
5689 // Disable history so the Editor won't show our hidden container as a user action.
5690 (0, _history.toggleHistory)(false);
5691 hiddenWrapper = createHiddenWrapper();
5692 container = createContainer(template);
5693 wrapContainer(container, hiddenWrapper);
5694 elementor.getPreviewView().$childViewContainer[0].appendChild(hiddenWrapper);
5695
5696 // Wait for the container to render.
5697 _context.next = 9;
5698 return waitForContainer(container.id);
5699 case 9:
5700 if (!template.elements.length) {
5701 _context.next = 12;
5702 break;
5703 }
5704 _context.next = 12;
5705 return Promise.all(template.elements.map(function (child) {
5706 return waitForContainer(child.id);
5707 }));
5708 case 12:
5709 _context.prev = 12;
5710 _context.next = 15;
5711 return screenshotNode(container.view.$el[0]);
5712 case 15:
5713 screenshot = _context.sent;
5714 _context.next = 21;
5715 break;
5716 case 18:
5717 _context.prev = 18;
5718 _context.t0 = _context["catch"](12);
5719 // Return an empty image url if the screenshot failed.
5720 screenshot = '';
5721 case 21:
5722 deleteContainer(container);
5723 hiddenWrapper.remove();
5724 (0, _history.toggleHistory)(true);
5725 return _context.abrupt("return", screenshot);
5726 case 25:
5727 case "end":
5728 return _context.stop();
5729 }
5730 }, _callee, null, [[12, 18]]);
5731 }));
5732 return function takeScreenshot(_x) {
5733 return _ref.apply(this, arguments);
5734 };
5735 }();
5736 function screenshotNode(node) {
5737 return toWebp(node, {
5738 quality: 0.01,
5739 // Transparent 1x1 pixel.
5740 imagePlaceholder: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII='
5741 });
5742 }
5743 function toWebp(_x2) {
5744 return _toWebp.apply(this, arguments);
5745 }
5746 function _toWebp() {
5747 _toWebp = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3(node) {
5748 var _options$quality;
5749 var options,
5750 canvas,
5751 _args3 = arguments;
5752 return _regenerator.default.wrap(function _callee3$(_context3) {
5753 while (1) switch (_context3.prev = _context3.next) {
5754 case 0:
5755 options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
5756 _context3.next = 3;
5757 return (0, _htmlToImage.toCanvas)(node, options);
5758 case 3:
5759 canvas = _context3.sent;
5760 return _context3.abrupt("return", canvas.toDataURL('image/webp', (_options$quality = options.quality) !== null && _options$quality !== void 0 ? _options$quality : 1));
5761 case 5:
5762 case "end":
5763 return _context3.stop();
5764 }
5765 }, _callee3);
5766 }));
5767 return _toWebp.apply(this, arguments);
5768 }
5769 function createHiddenWrapper() {
5770 var wrapper = document.createElement('div');
5771 wrapper.style.position = 'fixed';
5772 wrapper.style.opacity = '0';
5773 wrapper.style.inset = '0';
5774 return wrapper;
5775 }
5776 function createContainer(template) {
5777 var model = (0, _requestsIds.generateIds)(template);
5778
5779 // Set a custom ID, so it can be used later on in the backend.
5780 model.id = "e-ai-screenshot-container-".concat(model.id);
5781 return $e.run('document/elements/create', {
5782 container: elementor.getPreviewContainer(),
5783 model: model,
5784 options: {
5785 edit: false
5786 }
5787 });
5788 }
5789 function deleteContainer(container) {
5790 return $e.run('document/elements/delete', {
5791 container: container
5792 });
5793 }
5794 function waitForContainer(id) {
5795 var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
5796 var timeoutPromise = sleep(timeout);
5797 var waitPromise = new Promise(function (resolve) {
5798 elementorFrontend.hooks.addAction('frontend/element_ready/global', /*#__PURE__*/function () {
5799 var _ref2 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2($element) {
5800 var images;
5801 return _regenerator.default.wrap(function _callee2$(_context2) {
5802 while (1) switch (_context2.prev = _context2.next) {
5803 case 0:
5804 if (!($element.data('id') === id)) {
5805 _context2.next = 5;
5806 break;
5807 }
5808 images = (0, _toConsumableArray2.default)($element[0].querySelectorAll('img')); // Wait for all images to load.
5809 _context2.next = 4;
5810 return Promise.all(images.map(waitForImage));
5811 case 4:
5812 resolve();
5813 case 5:
5814 case "end":
5815 return _context2.stop();
5816 }
5817 }, _callee2);
5818 }));
5819 return function (_x3) {
5820 return _ref2.apply(this, arguments);
5821 };
5822 }());
5823 });
5824 return Promise.any([timeoutPromise, waitPromise]);
5825 }
5826 function waitForImage(image) {
5827 if (image.complete) {
5828 return Promise.resolve();
5829 }
5830 return new Promise(function (resolve) {
5831 image.addEventListener('load', resolve);
5832 image.addEventListener('error', function () {
5833 // Remove the image to make sure it won't break the screenshot.
5834 image.remove();
5835 resolve();
5836 });
5837 });
5838 }
5839 function sleep(ms) {
5840 return new Promise(function (resolve) {
5841 return setTimeout(resolve, ms);
5842 });
5843 }
5844 function wrapContainer(container, wrapper) {
5845 var el = container.view.$el[0];
5846 el.parentNode.insertBefore(wrapper, el);
5847 wrapper.appendChild(el);
5848 }
5849
5850 /***/ }),
5851
5852 /***/ "../node_modules/html-to-image/es/apply-style.js":
5853 /*!*******************************************************!*\
5854 !*** ../node_modules/html-to-image/es/apply-style.js ***!
5855 \*******************************************************/
5856 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
5857
5858 "use strict";
5859 __webpack_require__.r(__webpack_exports__);
5860 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5861 /* harmony export */ applyStyle: () => (/* binding */ applyStyle)
5862 /* harmony export */ });
5863 function applyStyle(node, options) {
5864 const { style } = node;
5865 if (options.backgroundColor) {
5866 style.backgroundColor = options.backgroundColor;
5867 }
5868 if (options.width) {
5869 style.width = `${options.width}px`;
5870 }
5871 if (options.height) {
5872 style.height = `${options.height}px`;
5873 }
5874 const manual = options.style;
5875 if (manual != null) {
5876 Object.keys(manual).forEach((key) => {
5877 style[key] = manual[key];
5878 });
5879 }
5880 return node;
5881 }
5882 //# sourceMappingURL=apply-style.js.map
5883
5884 /***/ }),
5885
5886 /***/ "../node_modules/html-to-image/es/clone-node.js":
5887 /*!******************************************************!*\
5888 !*** ../node_modules/html-to-image/es/clone-node.js ***!
5889 \******************************************************/
5890 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
5891
5892 "use strict";
5893 __webpack_require__.r(__webpack_exports__);
5894 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5895 /* harmony export */ cloneNode: () => (/* binding */ cloneNode)
5896 /* harmony export */ });
5897 /* harmony import */ var _clone_pseudos__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-pseudos */ "../node_modules/html-to-image/es/clone-pseudos.js");
5898 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
5899 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
5900 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
5901
5902
5903
5904
5905 async function cloneCanvasElement(canvas) {
5906 const dataURL = canvas.toDataURL();
5907 if (dataURL === 'data:,') {
5908 return canvas.cloneNode(false);
5909 }
5910 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
5911 }
5912 async function cloneVideoElement(video, options) {
5913 if (video.currentSrc) {
5914 const canvas = document.createElement('canvas');
5915 const ctx = canvas.getContext('2d');
5916 canvas.width = video.clientWidth;
5917 canvas.height = video.clientHeight;
5918 ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
5919 const dataURL = canvas.toDataURL();
5920 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
5921 }
5922 const poster = video.poster;
5923 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_2__.getMimeType)(poster);
5924 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_3__.resourceToDataURL)(poster, contentType, options);
5925 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
5926 }
5927 async function cloneIFrameElement(iframe) {
5928 var _a;
5929 try {
5930 if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) {
5931 return (await cloneNode(iframe.contentDocument.body, {}, true));
5932 }
5933 }
5934 catch (_b) {
5935 // Failed to clone iframe
5936 }
5937 return iframe.cloneNode(false);
5938 }
5939 async function cloneSingleNode(node, options) {
5940 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLCanvasElement)) {
5941 return cloneCanvasElement(node);
5942 }
5943 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLVideoElement)) {
5944 return cloneVideoElement(node, options);
5945 }
5946 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLIFrameElement)) {
5947 return cloneIFrameElement(node);
5948 }
5949 return node.cloneNode(false);
5950 }
5951 const isSlotElement = (node) => node.tagName != null && node.tagName.toUpperCase() === 'SLOT';
5952 async function cloneChildren(nativeNode, clonedNode, options) {
5953 var _a, _b;
5954 let children = [];
5955 if (isSlotElement(nativeNode) && nativeNode.assignedNodes) {
5956 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.assignedNodes());
5957 }
5958 else if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
5959 ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {
5960 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.contentDocument.body.childNodes);
5961 }
5962 else {
5963 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);
5964 }
5965 if (children.length === 0 ||
5966 (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLVideoElement)) {
5967 return clonedNode;
5968 }
5969 await children.reduce((deferred, child) => deferred
5970 .then(() => cloneNode(child, options))
5971 .then((clonedChild) => {
5972 if (clonedChild) {
5973 clonedNode.appendChild(clonedChild);
5974 }
5975 }), Promise.resolve());
5976 return clonedNode;
5977 }
5978 function cloneCSSStyle(nativeNode, clonedNode) {
5979 const targetStyle = clonedNode.style;
5980 if (!targetStyle) {
5981 return;
5982 }
5983 const sourceStyle = window.getComputedStyle(nativeNode);
5984 if (sourceStyle.cssText) {
5985 targetStyle.cssText = sourceStyle.cssText;
5986 targetStyle.transformOrigin = sourceStyle.transformOrigin;
5987 }
5988 else {
5989 (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(sourceStyle).forEach((name) => {
5990 let value = sourceStyle.getPropertyValue(name);
5991 if (name === 'font-size' && value.endsWith('px')) {
5992 const reducedFont = Math.floor(parseFloat(value.substring(0, value.length - 2))) - 0.1;
5993 value = `${reducedFont}px`;
5994 }
5995 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
5996 name === 'display' &&
5997 value === 'inline') {
5998 value = 'block';
5999 }
6000 if (name === 'd' && clonedNode.getAttribute('d')) {
6001 value = `path(${clonedNode.getAttribute('d')})`;
6002 }
6003 targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));
6004 });
6005 }
6006 }
6007 function cloneInputValue(nativeNode, clonedNode) {
6008 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLTextAreaElement)) {
6009 clonedNode.innerHTML = nativeNode.value;
6010 }
6011 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLInputElement)) {
6012 clonedNode.setAttribute('value', nativeNode.value);
6013 }
6014 }
6015 function cloneSelectValue(nativeNode, clonedNode) {
6016 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLSelectElement)) {
6017 const clonedSelect = clonedNode;
6018 const selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute('value'));
6019 if (selectedOption) {
6020 selectedOption.setAttribute('selected', '');
6021 }
6022 }
6023 }
6024 function decorate(nativeNode, clonedNode) {
6025 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
6026 cloneCSSStyle(nativeNode, clonedNode);
6027 (0,_clone_pseudos__WEBPACK_IMPORTED_MODULE_0__.clonePseudoElements)(nativeNode, clonedNode);
6028 cloneInputValue(nativeNode, clonedNode);
6029 cloneSelectValue(nativeNode, clonedNode);
6030 }
6031 return clonedNode;
6032 }
6033 async function ensureSVGSymbols(clone, options) {
6034 const uses = clone.querySelectorAll ? clone.querySelectorAll('use') : [];
6035 if (uses.length === 0) {
6036 return clone;
6037 }
6038 const processedDefs = {};
6039 for (let i = 0; i < uses.length; i++) {
6040 const use = uses[i];
6041 const id = use.getAttribute('xlink:href');
6042 if (id) {
6043 const exist = clone.querySelector(id);
6044 const definition = document.querySelector(id);
6045 if (!exist && definition && !processedDefs[id]) {
6046 // eslint-disable-next-line no-await-in-loop
6047 processedDefs[id] = (await cloneNode(definition, options, true));
6048 }
6049 }
6050 }
6051 const nodes = Object.values(processedDefs);
6052 if (nodes.length) {
6053 const ns = 'http://www.w3.org/1999/xhtml';
6054 const svg = document.createElementNS(ns, 'svg');
6055 svg.setAttribute('xmlns', ns);
6056 svg.style.position = 'absolute';
6057 svg.style.width = '0';
6058 svg.style.height = '0';
6059 svg.style.overflow = 'hidden';
6060 svg.style.display = 'none';
6061 const defs = document.createElementNS(ns, 'defs');
6062 svg.appendChild(defs);
6063 for (let i = 0; i < nodes.length; i++) {
6064 defs.appendChild(nodes[i]);
6065 }
6066 clone.appendChild(svg);
6067 }
6068 return clone;
6069 }
6070 async function cloneNode(node, options, isRoot) {
6071 if (!isRoot && options.filter && !options.filter(node)) {
6072 return null;
6073 }
6074 return Promise.resolve(node)
6075 .then((clonedNode) => cloneSingleNode(clonedNode, options))
6076 .then((clonedNode) => cloneChildren(node, clonedNode, options))
6077 .then((clonedNode) => decorate(node, clonedNode))
6078 .then((clonedNode) => ensureSVGSymbols(clonedNode, options));
6079 }
6080 //# sourceMappingURL=clone-node.js.map
6081
6082 /***/ }),
6083
6084 /***/ "../node_modules/html-to-image/es/clone-pseudos.js":
6085 /*!*********************************************************!*\
6086 !*** ../node_modules/html-to-image/es/clone-pseudos.js ***!
6087 \*********************************************************/
6088 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6089
6090 "use strict";
6091 __webpack_require__.r(__webpack_exports__);
6092 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6093 /* harmony export */ clonePseudoElements: () => (/* binding */ clonePseudoElements)
6094 /* harmony export */ });
6095 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
6096
6097 function formatCSSText(style) {
6098 const content = style.getPropertyValue('content');
6099 return `${style.cssText} content: '${content.replace(/'|"/g, '')}';`;
6100 }
6101 function formatCSSProperties(style) {
6102 return (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(style)
6103 .map((name) => {
6104 const value = style.getPropertyValue(name);
6105 const priority = style.getPropertyPriority(name);
6106 return `${name}: ${value}${priority ? ' !important' : ''};`;
6107 })
6108 .join(' ');
6109 }
6110 function getPseudoElementStyle(className, pseudo, style) {
6111 const selector = `.${className}:${pseudo}`;
6112 const cssText = style.cssText
6113 ? formatCSSText(style)
6114 : formatCSSProperties(style);
6115 return document.createTextNode(`${selector}{${cssText}}`);
6116 }
6117 function clonePseudoElement(nativeNode, clonedNode, pseudo) {
6118 const style = window.getComputedStyle(nativeNode, pseudo);
6119 const content = style.getPropertyValue('content');
6120 if (content === '' || content === 'none') {
6121 return;
6122 }
6123 const className = (0,_util__WEBPACK_IMPORTED_MODULE_0__.uuid)();
6124 try {
6125 clonedNode.className = `${clonedNode.className} ${className}`;
6126 }
6127 catch (err) {
6128 return;
6129 }
6130 const styleElement = document.createElement('style');
6131 styleElement.appendChild(getPseudoElementStyle(className, pseudo, style));
6132 clonedNode.appendChild(styleElement);
6133 }
6134 function clonePseudoElements(nativeNode, clonedNode) {
6135 clonePseudoElement(nativeNode, clonedNode, ':before');
6136 clonePseudoElement(nativeNode, clonedNode, ':after');
6137 }
6138 //# sourceMappingURL=clone-pseudos.js.map
6139
6140 /***/ }),
6141
6142 /***/ "../node_modules/html-to-image/es/dataurl.js":
6143 /*!***************************************************!*\
6144 !*** ../node_modules/html-to-image/es/dataurl.js ***!
6145 \***************************************************/
6146 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6147
6148 "use strict";
6149 __webpack_require__.r(__webpack_exports__);
6150 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6151 /* harmony export */ fetchAsDataURL: () => (/* binding */ fetchAsDataURL),
6152 /* harmony export */ isDataUrl: () => (/* binding */ isDataUrl),
6153 /* harmony export */ makeDataUrl: () => (/* binding */ makeDataUrl),
6154 /* harmony export */ resourceToDataURL: () => (/* binding */ resourceToDataURL)
6155 /* harmony export */ });
6156 function getContentFromDataUrl(dataURL) {
6157 return dataURL.split(/,/)[1];
6158 }
6159 function isDataUrl(url) {
6160 return url.search(/^(data:)/) !== -1;
6161 }
6162 function makeDataUrl(content, mimeType) {
6163 return `data:${mimeType};base64,${content}`;
6164 }
6165 async function fetchAsDataURL(url, init, process) {
6166 const res = await fetch(url, init);
6167 if (res.status === 404) {
6168 throw new Error(`Resource "${res.url}" not found`);
6169 }
6170 const blob = await res.blob();
6171 return new Promise((resolve, reject) => {
6172 const reader = new FileReader();
6173 reader.onerror = reject;
6174 reader.onloadend = () => {
6175 try {
6176 resolve(process({ res, result: reader.result }));
6177 }
6178 catch (error) {
6179 reject(error);
6180 }
6181 };
6182 reader.readAsDataURL(blob);
6183 });
6184 }
6185 const cache = {};
6186 function getCacheKey(url, contentType, includeQueryParams) {
6187 let key = url.replace(/\?.*/, '');
6188 if (includeQueryParams) {
6189 key = url;
6190 }
6191 // font resource
6192 if (/ttf|otf|eot|woff2?/i.test(key)) {
6193 key = key.replace(/.*\//, '');
6194 }
6195 return contentType ? `[${contentType}]${key}` : key;
6196 }
6197 async function resourceToDataURL(resourceUrl, contentType, options) {
6198 const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);
6199 if (cache[cacheKey] != null) {
6200 return cache[cacheKey];
6201 }
6202 // ref: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache
6203 if (options.cacheBust) {
6204 // eslint-disable-next-line no-param-reassign
6205 resourceUrl += (/\?/.test(resourceUrl) ? '&' : '?') + new Date().getTime();
6206 }
6207 let dataURL;
6208 try {
6209 const content = await fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result }) => {
6210 if (!contentType) {
6211 // eslint-disable-next-line no-param-reassign
6212 contentType = res.headers.get('Content-Type') || '';
6213 }
6214 return getContentFromDataUrl(result);
6215 });
6216 dataURL = makeDataUrl(content, contentType);
6217 }
6218 catch (error) {
6219 dataURL = options.imagePlaceholder || '';
6220 let msg = `Failed to fetch resource: ${resourceUrl}`;
6221 if (error) {
6222 msg = typeof error === 'string' ? error : error.message;
6223 }
6224 if (msg) {
6225 console.warn(msg);
6226 }
6227 }
6228 cache[cacheKey] = dataURL;
6229 return dataURL;
6230 }
6231 //# sourceMappingURL=dataurl.js.map
6232
6233 /***/ }),
6234
6235 /***/ "../node_modules/html-to-image/es/embed-images.js":
6236 /*!********************************************************!*\
6237 !*** ../node_modules/html-to-image/es/embed-images.js ***!
6238 \********************************************************/
6239 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6240
6241 "use strict";
6242 __webpack_require__.r(__webpack_exports__);
6243 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6244 /* harmony export */ embedImages: () => (/* binding */ embedImages)
6245 /* harmony export */ });
6246 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
6247 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
6248 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
6249 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
6250
6251
6252
6253
6254 async function embedProp(propName, node, options) {
6255 var _a;
6256 const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);
6257 if (propValue) {
6258 const cssString = await (0,_embed_resources__WEBPACK_IMPORTED_MODULE_0__.embedResources)(propValue, null, options);
6259 node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));
6260 return true;
6261 }
6262 return false;
6263 }
6264 async function embedBackground(clonedNode, options) {
6265 if (!(await embedProp('background', clonedNode, options))) {
6266 await embedProp('background-image', clonedNode, options);
6267 }
6268 if (!(await embedProp('mask', clonedNode, options))) {
6269 await embedProp('mask-image', clonedNode, options);
6270 }
6271 }
6272 async function embedImageNode(clonedNode, options) {
6273 const isImageElement = (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, HTMLImageElement);
6274 if (!(isImageElement && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.src)) &&
6275 !((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, SVGImageElement) &&
6276 !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.href.baseVal))) {
6277 return;
6278 }
6279 const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;
6280 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(url, (0,_mimes__WEBPACK_IMPORTED_MODULE_3__.getMimeType)(url), options);
6281 await new Promise((resolve, reject) => {
6282 clonedNode.onload = resolve;
6283 clonedNode.onerror = reject;
6284 const image = clonedNode;
6285 if (image.decode) {
6286 image.decode = resolve;
6287 }
6288 if (image.loading === 'lazy') {
6289 image.loading = 'eager';
6290 }
6291 if (isImageElement) {
6292 clonedNode.srcset = '';
6293 clonedNode.src = dataURL;
6294 }
6295 else {
6296 clonedNode.href.baseVal = dataURL;
6297 }
6298 });
6299 }
6300 async function embedChildren(clonedNode, options) {
6301 const children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(clonedNode.childNodes);
6302 const deferreds = children.map((child) => embedImages(child, options));
6303 await Promise.all(deferreds).then(() => clonedNode);
6304 }
6305 async function embedImages(clonedNode, options) {
6306 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
6307 await embedBackground(clonedNode, options);
6308 await embedImageNode(clonedNode, options);
6309 await embedChildren(clonedNode, options);
6310 }
6311 }
6312 //# sourceMappingURL=embed-images.js.map
6313
6314 /***/ }),
6315
6316 /***/ "../node_modules/html-to-image/es/embed-resources.js":
6317 /*!***********************************************************!*\
6318 !*** ../node_modules/html-to-image/es/embed-resources.js ***!
6319 \***********************************************************/
6320 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6321
6322 "use strict";
6323 __webpack_require__.r(__webpack_exports__);
6324 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6325 /* harmony export */ embed: () => (/* binding */ embed),
6326 /* harmony export */ embedResources: () => (/* binding */ embedResources),
6327 /* harmony export */ parseURLs: () => (/* binding */ parseURLs),
6328 /* harmony export */ shouldEmbed: () => (/* binding */ shouldEmbed)
6329 /* harmony export */ });
6330 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
6331 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
6332 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
6333
6334
6335
6336 const URL_REGEX = /url\((['"]?)([^'"]+?)\1\)/g;
6337 const URL_WITH_FORMAT_REGEX = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
6338 const FONT_SRC_REGEX = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
6339 function toRegex(url) {
6340 // eslint-disable-next-line no-useless-escape
6341 const escaped = url.replace(/([.*+?^${}()|\[\]\/\\])/g, '\\$1');
6342 return new RegExp(`(url\\(['"]?)(${escaped})(['"]?\\))`, 'g');
6343 }
6344 function parseURLs(cssText) {
6345 const urls = [];
6346 cssText.replace(URL_REGEX, (raw, quotation, url) => {
6347 urls.push(url);
6348 return raw;
6349 });
6350 return urls.filter((url) => !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(url));
6351 }
6352 async function embed(cssText, resourceURL, baseURL, options, getContentFromUrl) {
6353 try {
6354 const resolvedURL = baseURL ? (0,_util__WEBPACK_IMPORTED_MODULE_0__.resolveUrl)(resourceURL, baseURL) : resourceURL;
6355 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_1__.getMimeType)(resourceURL);
6356 let dataURL;
6357 if (getContentFromUrl) {
6358 const content = await getContentFromUrl(resolvedURL);
6359 dataURL = (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.makeDataUrl)(content, contentType);
6360 }
6361 else {
6362 dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(resolvedURL, contentType, options);
6363 }
6364 return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);
6365 }
6366 catch (error) {
6367 // pass
6368 }
6369 return cssText;
6370 }
6371 function filterPreferredFontFormat(str, { preferredFontFormat }) {
6372 return !preferredFontFormat
6373 ? str
6374 : str.replace(FONT_SRC_REGEX, (match) => {
6375 // eslint-disable-next-line no-constant-condition
6376 while (true) {
6377 const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];
6378 if (!format) {
6379 return '';
6380 }
6381 if (format === preferredFontFormat) {
6382 return `src: ${src};`;
6383 }
6384 }
6385 });
6386 }
6387 function shouldEmbed(url) {
6388 return url.search(URL_REGEX) !== -1;
6389 }
6390 async function embedResources(cssText, baseUrl, options) {
6391 if (!shouldEmbed(cssText)) {
6392 return cssText;
6393 }
6394 const filteredCSSText = filterPreferredFontFormat(cssText, options);
6395 const urls = parseURLs(filteredCSSText);
6396 return urls.reduce((deferred, url) => deferred.then((css) => embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));
6397 }
6398 //# sourceMappingURL=embed-resources.js.map
6399
6400 /***/ }),
6401
6402 /***/ "../node_modules/html-to-image/es/embed-webfonts.js":
6403 /*!**********************************************************!*\
6404 !*** ../node_modules/html-to-image/es/embed-webfonts.js ***!
6405 \**********************************************************/
6406 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6407
6408 "use strict";
6409 __webpack_require__.r(__webpack_exports__);
6410 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6411 /* harmony export */ embedWebFonts: () => (/* binding */ embedWebFonts),
6412 /* harmony export */ getWebFontCSS: () => (/* binding */ getWebFontCSS)
6413 /* harmony export */ });
6414 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
6415 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
6416 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
6417
6418
6419
6420 const cssFetchCache = {};
6421 async function fetchCSS(url) {
6422 let cache = cssFetchCache[url];
6423 if (cache != null) {
6424 return cache;
6425 }
6426 const res = await fetch(url);
6427 const cssText = await res.text();
6428 cache = { url, cssText };
6429 cssFetchCache[url] = cache;
6430 return cache;
6431 }
6432 async function embedFonts(data, options) {
6433 let cssText = data.cssText;
6434 const regexUrl = /url\(["']?([^"')]+)["']?\)/g;
6435 const fontLocs = cssText.match(/url\([^)]+\)/g) || [];
6436 const loadFonts = fontLocs.map(async (loc) => {
6437 let url = loc.replace(regexUrl, '$1');
6438 if (!url.startsWith('https://')) {
6439 url = new URL(url, data.url).href;
6440 }
6441 return (0,_dataurl__WEBPACK_IMPORTED_MODULE_1__.fetchAsDataURL)(url, options.fetchRequestInit, ({ result }) => {
6442 cssText = cssText.replace(loc, `url(${result})`);
6443 return [loc, result];
6444 });
6445 });
6446 return Promise.all(loadFonts).then(() => cssText);
6447 }
6448 function parseCSS(source) {
6449 if (source == null) {
6450 return [];
6451 }
6452 const result = [];
6453 const commentsRegex = /(\/\*[\s\S]*?\*\/)/gi;
6454 // strip out comments
6455 let cssText = source.replace(commentsRegex, '');
6456 // eslint-disable-next-line prefer-regex-literals
6457 const keyframesRegex = new RegExp('((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})', 'gi');
6458 // eslint-disable-next-line no-constant-condition
6459 while (true) {
6460 const matches = keyframesRegex.exec(cssText);
6461 if (matches === null) {
6462 break;
6463 }
6464 result.push(matches[0]);
6465 }
6466 cssText = cssText.replace(keyframesRegex, '');
6467 const importRegex = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi;
6468 // to match css & media queries together
6469 const combinedCSSRegex = '((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]' +
6470 '*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})';
6471 // unified regex
6472 const unifiedRegex = new RegExp(combinedCSSRegex, 'gi');
6473 // eslint-disable-next-line no-constant-condition
6474 while (true) {
6475 let matches = importRegex.exec(cssText);
6476 if (matches === null) {
6477 matches = unifiedRegex.exec(cssText);
6478 if (matches === null) {
6479 break;
6480 }
6481 else {
6482 importRegex.lastIndex = unifiedRegex.lastIndex;
6483 }
6484 }
6485 else {
6486 unifiedRegex.lastIndex = importRegex.lastIndex;
6487 }
6488 result.push(matches[0]);
6489 }
6490 return result;
6491 }
6492 async function getCSSRules(styleSheets, options) {
6493 const ret = [];
6494 const deferreds = [];
6495 // First loop inlines imports
6496 styleSheets.forEach((sheet) => {
6497 if ('cssRules' in sheet) {
6498 try {
6499 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item, index) => {
6500 if (item.type === CSSRule.IMPORT_RULE) {
6501 let importIndex = index + 1;
6502 const url = item.href;
6503 const deferred = fetchCSS(url)
6504 .then((metadata) => embedFonts(metadata, options))
6505 .then((cssText) => parseCSS(cssText).forEach((rule) => {
6506 try {
6507 sheet.insertRule(rule, rule.startsWith('@import')
6508 ? (importIndex += 1)
6509 : sheet.cssRules.length);
6510 }
6511 catch (error) {
6512 console.error('Error inserting rule from remote css', {
6513 rule,
6514 error,
6515 });
6516 }
6517 }))
6518 .catch((e) => {
6519 console.error('Error loading remote css', e.toString());
6520 });
6521 deferreds.push(deferred);
6522 }
6523 });
6524 }
6525 catch (e) {
6526 const inline = styleSheets.find((a) => a.href == null) || document.styleSheets[0];
6527 if (sheet.href != null) {
6528 deferreds.push(fetchCSS(sheet.href)
6529 .then((metadata) => embedFonts(metadata, options))
6530 .then((cssText) => parseCSS(cssText).forEach((rule) => {
6531 inline.insertRule(rule, sheet.cssRules.length);
6532 }))
6533 .catch((err) => {
6534 console.error('Error loading remote stylesheet', err);
6535 }));
6536 }
6537 console.error('Error inlining remote css file', e);
6538 }
6539 }
6540 });
6541 return Promise.all(deferreds).then(() => {
6542 // Second loop parses rules
6543 styleSheets.forEach((sheet) => {
6544 if ('cssRules' in sheet) {
6545 try {
6546 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item) => {
6547 ret.push(item);
6548 });
6549 }
6550 catch (e) {
6551 console.error(`Error while reading CSS rules from ${sheet.href}`, e);
6552 }
6553 }
6554 });
6555 return ret;
6556 });
6557 }
6558 function getWebFontRules(cssRules) {
6559 return cssRules
6560 .filter((rule) => rule.type === CSSRule.FONT_FACE_RULE)
6561 .filter((rule) => (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.shouldEmbed)(rule.style.getPropertyValue('src')));
6562 }
6563 async function parseWebFontRules(node, options) {
6564 if (node.ownerDocument == null) {
6565 throw new Error('Provided element is not within a Document');
6566 }
6567 const styleSheets = (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(node.ownerDocument.styleSheets);
6568 const cssRules = await getCSSRules(styleSheets, options);
6569 return getWebFontRules(cssRules);
6570 }
6571 async function getWebFontCSS(node, options) {
6572 const rules = await parseWebFontRules(node, options);
6573 const cssTexts = await Promise.all(rules.map((rule) => {
6574 const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;
6575 return (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.embedResources)(rule.cssText, baseUrl, options);
6576 }));
6577 return cssTexts.join('\n');
6578 }
6579 async function embedWebFonts(clonedNode, options) {
6580 const cssText = options.fontEmbedCSS != null
6581 ? options.fontEmbedCSS
6582 : options.skipFonts
6583 ? null
6584 : await getWebFontCSS(clonedNode, options);
6585 if (cssText) {
6586 const styleNode = document.createElement('style');
6587 const sytleContent = document.createTextNode(cssText);
6588 styleNode.appendChild(sytleContent);
6589 if (clonedNode.firstChild) {
6590 clonedNode.insertBefore(styleNode, clonedNode.firstChild);
6591 }
6592 else {
6593 clonedNode.appendChild(styleNode);
6594 }
6595 }
6596 }
6597 //# sourceMappingURL=embed-webfonts.js.map
6598
6599 /***/ }),
6600
6601 /***/ "../node_modules/html-to-image/es/index.js":
6602 /*!*************************************************!*\
6603 !*** ../node_modules/html-to-image/es/index.js ***!
6604 \*************************************************/
6605 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6606
6607 "use strict";
6608 __webpack_require__.r(__webpack_exports__);
6609 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6610 /* harmony export */ getFontEmbedCSS: () => (/* binding */ getFontEmbedCSS),
6611 /* harmony export */ toBlob: () => (/* binding */ toBlob),
6612 /* harmony export */ toCanvas: () => (/* binding */ toCanvas),
6613 /* harmony export */ toJpeg: () => (/* binding */ toJpeg),
6614 /* harmony export */ toPixelData: () => (/* binding */ toPixelData),
6615 /* harmony export */ toPng: () => (/* binding */ toPng),
6616 /* harmony export */ toSvg: () => (/* binding */ toSvg)
6617 /* harmony export */ });
6618 /* harmony import */ var _clone_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-node */ "../node_modules/html-to-image/es/clone-node.js");
6619 /* harmony import */ var _embed_images__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./embed-images */ "../node_modules/html-to-image/es/embed-images.js");
6620 /* harmony import */ var _apply_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apply-style */ "../node_modules/html-to-image/es/apply-style.js");
6621 /* harmony import */ var _embed_webfonts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./embed-webfonts */ "../node_modules/html-to-image/es/embed-webfonts.js");
6622 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
6623
6624
6625
6626
6627
6628 async function toSvg(node, options = {}) {
6629 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
6630 const clonedNode = (await (0,_clone_node__WEBPACK_IMPORTED_MODULE_0__.cloneNode)(node, options, true));
6631 await (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.embedWebFonts)(clonedNode, options);
6632 await (0,_embed_images__WEBPACK_IMPORTED_MODULE_1__.embedImages)(clonedNode, options);
6633 (0,_apply_style__WEBPACK_IMPORTED_MODULE_2__.applyStyle)(clonedNode, options);
6634 const datauri = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.nodeToDataURL)(clonedNode, width, height);
6635 return datauri;
6636 }
6637 async function toCanvas(node, options = {}) {
6638 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
6639 const svg = await toSvg(node, options);
6640 const img = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.createImage)(svg);
6641 const canvas = document.createElement('canvas');
6642 const context = canvas.getContext('2d');
6643 const ratio = options.pixelRatio || (0,_util__WEBPACK_IMPORTED_MODULE_4__.getPixelRatio)();
6644 const canvasWidth = options.canvasWidth || width;
6645 const canvasHeight = options.canvasHeight || height;
6646 canvas.width = canvasWidth * ratio;
6647 canvas.height = canvasHeight * ratio;
6648 if (!options.skipAutoScale) {
6649 (0,_util__WEBPACK_IMPORTED_MODULE_4__.checkCanvasDimensions)(canvas);
6650 }
6651 canvas.style.width = `${canvasWidth}`;
6652 canvas.style.height = `${canvasHeight}`;
6653 if (options.backgroundColor) {
6654 context.fillStyle = options.backgroundColor;
6655 context.fillRect(0, 0, canvas.width, canvas.height);
6656 }
6657 context.drawImage(img, 0, 0, canvas.width, canvas.height);
6658 return canvas;
6659 }
6660 async function toPixelData(node, options = {}) {
6661 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
6662 const canvas = await toCanvas(node, options);
6663 const ctx = canvas.getContext('2d');
6664 return ctx.getImageData(0, 0, width, height).data;
6665 }
6666 async function toPng(node, options = {}) {
6667 const canvas = await toCanvas(node, options);
6668 return canvas.toDataURL();
6669 }
6670 async function toJpeg(node, options = {}) {
6671 const canvas = await toCanvas(node, options);
6672 return canvas.toDataURL('image/jpeg', options.quality || 1);
6673 }
6674 async function toBlob(node, options = {}) {
6675 const canvas = await toCanvas(node, options);
6676 const blob = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.canvasToBlob)(canvas);
6677 return blob;
6678 }
6679 async function getFontEmbedCSS(node, options = {}) {
6680 return (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.getWebFontCSS)(node, options);
6681 }
6682 //# sourceMappingURL=index.js.map
6683
6684 /***/ }),
6685
6686 /***/ "../node_modules/html-to-image/es/mimes.js":
6687 /*!*************************************************!*\
6688 !*** ../node_modules/html-to-image/es/mimes.js ***!
6689 \*************************************************/
6690 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6691
6692 "use strict";
6693 __webpack_require__.r(__webpack_exports__);
6694 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6695 /* harmony export */ getMimeType: () => (/* binding */ getMimeType)
6696 /* harmony export */ });
6697 const WOFF = 'application/font-woff';
6698 const JPEG = 'image/jpeg';
6699 const mimes = {
6700 woff: WOFF,
6701 woff2: WOFF,
6702 ttf: 'application/font-truetype',
6703 eot: 'application/vnd.ms-fontobject',
6704 png: 'image/png',
6705 jpg: JPEG,
6706 jpeg: JPEG,
6707 gif: 'image/gif',
6708 tiff: 'image/tiff',
6709 svg: 'image/svg+xml',
6710 webp: 'image/webp',
6711 };
6712 function getExtension(url) {
6713 const match = /\.([^./]*?)$/g.exec(url);
6714 return match ? match[1] : '';
6715 }
6716 function getMimeType(url) {
6717 const extension = getExtension(url).toLowerCase();
6718 return mimes[extension] || '';
6719 }
6720 //# sourceMappingURL=mimes.js.map
6721
6722 /***/ }),
6723
6724 /***/ "../node_modules/html-to-image/es/util.js":
6725 /*!************************************************!*\
6726 !*** ../node_modules/html-to-image/es/util.js ***!
6727 \************************************************/
6728 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6729
6730 "use strict";
6731 __webpack_require__.r(__webpack_exports__);
6732 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6733 /* harmony export */ canvasToBlob: () => (/* binding */ canvasToBlob),
6734 /* harmony export */ checkCanvasDimensions: () => (/* binding */ checkCanvasDimensions),
6735 /* harmony export */ createImage: () => (/* binding */ createImage),
6736 /* harmony export */ delay: () => (/* binding */ delay),
6737 /* harmony export */ getImageSize: () => (/* binding */ getImageSize),
6738 /* harmony export */ getPixelRatio: () => (/* binding */ getPixelRatio),
6739 /* harmony export */ isInstanceOfElement: () => (/* binding */ isInstanceOfElement),
6740 /* harmony export */ nodeToDataURL: () => (/* binding */ nodeToDataURL),
6741 /* harmony export */ resolveUrl: () => (/* binding */ resolveUrl),
6742 /* harmony export */ svgToDataURL: () => (/* binding */ svgToDataURL),
6743 /* harmony export */ toArray: () => (/* binding */ toArray),
6744 /* harmony export */ uuid: () => (/* binding */ uuid)
6745 /* harmony export */ });
6746 function resolveUrl(url, baseUrl) {
6747 // url is absolute already
6748 if (url.match(/^[a-z]+:\/\//i)) {
6749 return url;
6750 }
6751 // url is absolute already, without protocol
6752 if (url.match(/^\/\//)) {
6753 return window.location.protocol + url;
6754 }
6755 // dataURI, mailto:, tel:, etc.
6756 if (url.match(/^[a-z]+:/i)) {
6757 return url;
6758 }
6759 const doc = document.implementation.createHTMLDocument();
6760 const base = doc.createElement('base');
6761 const a = doc.createElement('a');
6762 doc.head.appendChild(base);
6763 doc.body.appendChild(a);
6764 if (baseUrl) {
6765 base.href = baseUrl;
6766 }
6767 a.href = url;
6768 return a.href;
6769 }
6770 const uuid = (() => {
6771 // generate uuid for className of pseudo elements.
6772 // We should not use GUIDs, otherwise pseudo elements sometimes cannot be captured.
6773 let counter = 0;
6774 // ref: http://stackoverflow.com/a/6248722/2519373
6775 const random = () =>
6776 // eslint-disable-next-line no-bitwise
6777 `0000${((Math.random() * 36 ** 4) << 0).toString(36)}`.slice(-4);
6778 return () => {
6779 counter += 1;
6780 return `u${random()}${counter}`;
6781 };
6782 })();
6783 function delay(ms) {
6784 return (args) => new Promise((resolve) => {
6785 setTimeout(() => resolve(args), ms);
6786 });
6787 }
6788 function toArray(arrayLike) {
6789 const arr = [];
6790 for (let i = 0, l = arrayLike.length; i < l; i++) {
6791 arr.push(arrayLike[i]);
6792 }
6793 return arr;
6794 }
6795 function px(node, styleProperty) {
6796 const win = node.ownerDocument.defaultView || window;
6797 const val = win.getComputedStyle(node).getPropertyValue(styleProperty);
6798 return val ? parseFloat(val.replace('px', '')) : 0;
6799 }
6800 function getNodeWidth(node) {
6801 const leftBorder = px(node, 'border-left-width');
6802 const rightBorder = px(node, 'border-right-width');
6803 return node.clientWidth + leftBorder + rightBorder;
6804 }
6805 function getNodeHeight(node) {
6806 const topBorder = px(node, 'border-top-width');
6807 const bottomBorder = px(node, 'border-bottom-width');
6808 return node.clientHeight + topBorder + bottomBorder;
6809 }
6810 function getImageSize(targetNode, options = {}) {
6811 const width = options.width || getNodeWidth(targetNode);
6812 const height = options.height || getNodeHeight(targetNode);
6813 return { width, height };
6814 }
6815 function getPixelRatio() {
6816 let ratio;
6817 let FINAL_PROCESS;
6818 try {
6819 FINAL_PROCESS = process;
6820 }
6821 catch (e) {
6822 // pass
6823 }
6824 const val = FINAL_PROCESS && FINAL_PROCESS.env
6825 ? FINAL_PROCESS.env.devicePixelRatio
6826 : null;
6827 if (val) {
6828 ratio = parseInt(val, 10);
6829 if (Number.isNaN(ratio)) {
6830 ratio = 1;
6831 }
6832 }
6833 return ratio || window.devicePixelRatio || 1;
6834 }
6835 // @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas#maximum_canvas_size
6836 const canvasDimensionLimit = 16384;
6837 function checkCanvasDimensions(canvas) {
6838 if (canvas.width > canvasDimensionLimit ||
6839 canvas.height > canvasDimensionLimit) {
6840 if (canvas.width > canvasDimensionLimit &&
6841 canvas.height > canvasDimensionLimit) {
6842 if (canvas.width > canvas.height) {
6843 canvas.height *= canvasDimensionLimit / canvas.width;
6844 canvas.width = canvasDimensionLimit;
6845 }
6846 else {
6847 canvas.width *= canvasDimensionLimit / canvas.height;
6848 canvas.height = canvasDimensionLimit;
6849 }
6850 }
6851 else if (canvas.width > canvasDimensionLimit) {
6852 canvas.height *= canvasDimensionLimit / canvas.width;
6853 canvas.width = canvasDimensionLimit;
6854 }
6855 else {
6856 canvas.width *= canvasDimensionLimit / canvas.height;
6857 canvas.height = canvasDimensionLimit;
6858 }
6859 }
6860 }
6861 function canvasToBlob(canvas, options = {}) {
6862 if (canvas.toBlob) {
6863 return new Promise((resolve) => {
6864 canvas.toBlob(resolve, options.type ? options.type : 'image/png', options.quality ? options.quality : 1);
6865 });
6866 }
6867 return new Promise((resolve) => {
6868 const binaryString = window.atob(canvas
6869 .toDataURL(options.type ? options.type : undefined, options.quality ? options.quality : undefined)
6870 .split(',')[1]);
6871 const len = binaryString.length;
6872 const binaryArray = new Uint8Array(len);
6873 for (let i = 0; i < len; i += 1) {
6874 binaryArray[i] = binaryString.charCodeAt(i);
6875 }
6876 resolve(new Blob([binaryArray], {
6877 type: options.type ? options.type : 'image/png',
6878 }));
6879 });
6880 }
6881 function createImage(url) {
6882 return new Promise((resolve, reject) => {
6883 const img = new Image();
6884 img.decode = () => resolve(img);
6885 img.onload = () => resolve(img);
6886 img.onerror = reject;
6887 img.crossOrigin = 'anonymous';
6888 img.decoding = 'async';
6889 img.src = url;
6890 });
6891 }
6892 async function svgToDataURL(svg) {
6893 return Promise.resolve()
6894 .then(() => new XMLSerializer().serializeToString(svg))
6895 .then(encodeURIComponent)
6896 .then((html) => `data:image/svg+xml;charset=utf-8,${html}`);
6897 }
6898 async function nodeToDataURL(node, width, height) {
6899 const xmlns = 'http://www.w3.org/2000/svg';
6900 const svg = document.createElementNS(xmlns, 'svg');
6901 const foreignObject = document.createElementNS(xmlns, 'foreignObject');
6902 svg.setAttribute('width', `${width}`);
6903 svg.setAttribute('height', `${height}`);
6904 svg.setAttribute('viewBox', `0 0 ${width} ${height}`);
6905 foreignObject.setAttribute('width', '100%');
6906 foreignObject.setAttribute('height', '100%');
6907 foreignObject.setAttribute('x', '0');
6908 foreignObject.setAttribute('y', '0');
6909 foreignObject.setAttribute('externalResourcesRequired', 'true');
6910 svg.appendChild(foreignObject);
6911 foreignObject.appendChild(node);
6912 return svgToDataURL(svg);
6913 }
6914 const isInstanceOfElement = (node, instance) => {
6915 if (node instanceof instance)
6916 return true;
6917 const nodePrototype = Object.getPrototypeOf(node);
6918 if (nodePrototype === null)
6919 return false;
6920 return (nodePrototype.constructor.name === instance.name ||
6921 isInstanceOfElement(nodePrototype, instance));
6922 };
6923 //# sourceMappingURL=util.js.map
6924
6925 /***/ }),
6926
6927 /***/ "../node_modules/object-assign/index.js":
6928 /*!**********************************************!*\
6929 !*** ../node_modules/object-assign/index.js ***!
6930 \**********************************************/
6931 /***/ ((module) => {
6932
6933 "use strict";
6934 /*
6935 object-assign
6936 (c) Sindre Sorhus
6937 @license MIT
6938 */
6939
6940
6941 /* eslint-disable no-unused-vars */
6942 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
6943 var hasOwnProperty = Object.prototype.hasOwnProperty;
6944 var propIsEnumerable = Object.prototype.propertyIsEnumerable;
6945
6946 function toObject(val) {
6947 if (val === null || val === undefined) {
6948 throw new TypeError('Object.assign cannot be called with null or undefined');
6949 }
6950
6951 return Object(val);
6952 }
6953
6954 function shouldUseNative() {
6955 try {
6956 if (!Object.assign) {
6957 return false;
6958 }
6959
6960 // Detect buggy property enumeration order in older V8 versions.
6961
6962 // https://bugs.chromium.org/p/v8/issues/detail?id=4118
6963 var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
6964 test1[5] = 'de';
6965 if (Object.getOwnPropertyNames(test1)[0] === '5') {
6966 return false;
6967 }
6968
6969 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
6970 var test2 = {};
6971 for (var i = 0; i < 10; i++) {
6972 test2['_' + String.fromCharCode(i)] = i;
6973 }
6974 var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
6975 return test2[n];
6976 });
6977 if (order2.join('') !== '0123456789') {
6978 return false;
6979 }
6980
6981 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
6982 var test3 = {};
6983 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
6984 test3[letter] = letter;
6985 });
6986 if (Object.keys(Object.assign({}, test3)).join('') !==
6987 'abcdefghijklmnopqrst') {
6988 return false;
6989 }
6990
6991 return true;
6992 } catch (err) {
6993 // We don't expect any of the above to throw, but better to be safe.
6994 return false;
6995 }
6996 }
6997
6998 module.exports = shouldUseNative() ? Object.assign : function (target, source) {
6999 var from;
7000 var to = toObject(target);
7001 var symbols;
7002
7003 for (var s = 1; s < arguments.length; s++) {
7004 from = Object(arguments[s]);
7005
7006 for (var key in from) {
7007 if (hasOwnProperty.call(from, key)) {
7008 to[key] = from[key];
7009 }
7010 }
7011
7012 if (getOwnPropertySymbols) {
7013 symbols = getOwnPropertySymbols(from);
7014 for (var i = 0; i < symbols.length; i++) {
7015 if (propIsEnumerable.call(from, symbols[i])) {
7016 to[symbols[i]] = from[symbols[i]];
7017 }
7018 }
7019 }
7020 }
7021
7022 return to;
7023 };
7024
7025
7026 /***/ }),
7027
7028 /***/ "../node_modules/prop-types/checkPropTypes.js":
7029 /*!****************************************************!*\
7030 !*** ../node_modules/prop-types/checkPropTypes.js ***!
7031 \****************************************************/
7032 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
7033
7034 "use strict";
7035 /**
7036 * Copyright (c) 2013-present, Facebook, Inc.
7037 *
7038 * This source code is licensed under the MIT license found in the
7039 * LICENSE file in the root directory of this source tree.
7040 */
7041
7042
7043
7044 var printWarning = function() {};
7045
7046 if (true) {
7047 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
7048 var loggedTypeFailures = {};
7049 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
7050
7051 printWarning = function(text) {
7052 var message = 'Warning: ' + text;
7053 if (typeof console !== 'undefined') {
7054 console.error(message);
7055 }
7056 try {
7057 // --- Welcome to debugging React ---
7058 // This error was thrown as a convenience so that you can use this stack
7059 // to find the callsite that caused this warning to fire.
7060 throw new Error(message);
7061 } catch (x) { /**/ }
7062 };
7063 }
7064
7065 /**
7066 * Assert that the values match with the type specs.
7067 * Error messages are memorized and will only be shown once.
7068 *
7069 * @param {object} typeSpecs Map of name to a ReactPropType
7070 * @param {object} values Runtime values that need to be type-checked
7071 * @param {string} location e.g. "prop", "context", "child context"
7072 * @param {string} componentName Name of the component for error messages.
7073 * @param {?Function} getStack Returns the component stack.
7074 * @private
7075 */
7076 function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
7077 if (true) {
7078 for (var typeSpecName in typeSpecs) {
7079 if (has(typeSpecs, typeSpecName)) {
7080 var error;
7081 // Prop type validation may throw. In case they do, we don't want to
7082 // fail the render phase where it didn't fail before. So we log it.
7083 // After these have been cleaned up, we'll let them throw.
7084 try {
7085 // This is intentionally an invariant that gets caught. It's the same
7086 // behavior as without this statement except with a better message.
7087 if (typeof typeSpecs[typeSpecName] !== 'function') {
7088 var err = Error(
7089 (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
7090 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
7091 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
7092 );
7093 err.name = 'Invariant Violation';
7094 throw err;
7095 }
7096 error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
7097 } catch (ex) {
7098 error = ex;
7099 }
7100 if (error && !(error instanceof Error)) {
7101 printWarning(
7102 (componentName || 'React class') + ': type specification of ' +
7103 location + ' `' + typeSpecName + '` is invalid; the type checker ' +
7104 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
7105 'You may have forgotten to pass an argument to the type checker ' +
7106 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
7107 'shape all require an argument).'
7108 );
7109 }
7110 if (error instanceof Error && !(error.message in loggedTypeFailures)) {
7111 // Only monitor this failure once because there tends to be a lot of the
7112 // same error.
7113 loggedTypeFailures[error.message] = true;
7114
7115 var stack = getStack ? getStack() : '';
7116
7117 printWarning(
7118 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
7119 );
7120 }
7121 }
7122 }
7123 }
7124 }
7125
7126 /**
7127 * Resets warning cache when testing.
7128 *
7129 * @private
7130 */
7131 checkPropTypes.resetWarningCache = function() {
7132 if (true) {
7133 loggedTypeFailures = {};
7134 }
7135 }
7136
7137 module.exports = checkPropTypes;
7138
7139
7140 /***/ }),
7141
7142 /***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
7143 /*!*************************************************************!*\
7144 !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
7145 \*************************************************************/
7146 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
7147
7148 "use strict";
7149 /**
7150 * Copyright (c) 2013-present, Facebook, Inc.
7151 *
7152 * This source code is licensed under the MIT license found in the
7153 * LICENSE file in the root directory of this source tree.
7154 */
7155
7156
7157
7158 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
7159 var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
7160
7161 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
7162 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
7163 var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
7164
7165 var printWarning = function() {};
7166
7167 if (true) {
7168 printWarning = function(text) {
7169 var message = 'Warning: ' + text;
7170 if (typeof console !== 'undefined') {
7171 console.error(message);
7172 }
7173 try {
7174 // --- Welcome to debugging React ---
7175 // This error was thrown as a convenience so that you can use this stack
7176 // to find the callsite that caused this warning to fire.
7177 throw new Error(message);
7178 } catch (x) {}
7179 };
7180 }
7181
7182 function emptyFunctionThatReturnsNull() {
7183 return null;
7184 }
7185
7186 module.exports = function(isValidElement, throwOnDirectAccess) {
7187 /* global Symbol */
7188 var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
7189 var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
7190
7191 /**
7192 * Returns the iterator method function contained on the iterable object.
7193 *
7194 * Be sure to invoke the function with the iterable as context:
7195 *
7196 * var iteratorFn = getIteratorFn(myIterable);
7197 * if (iteratorFn) {
7198 * var iterator = iteratorFn.call(myIterable);
7199 * ...
7200 * }
7201 *
7202 * @param {?object} maybeIterable
7203 * @return {?function}
7204 */
7205 function getIteratorFn(maybeIterable) {
7206 var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
7207 if (typeof iteratorFn === 'function') {
7208 return iteratorFn;
7209 }
7210 }
7211
7212 /**
7213 * Collection of methods that allow declaration and validation of props that are
7214 * supplied to React components. Example usage:
7215 *
7216 * var Props = require('ReactPropTypes');
7217 * var MyArticle = React.createClass({
7218 * propTypes: {
7219 * // An optional string prop named "description".
7220 * description: Props.string,
7221 *
7222 * // A required enum prop named "category".
7223 * category: Props.oneOf(['News','Photos']).isRequired,
7224 *
7225 * // A prop named "dialog" that requires an instance of Dialog.
7226 * dialog: Props.instanceOf(Dialog).isRequired
7227 * },
7228 * render: function() { ... }
7229 * });
7230 *
7231 * A more formal specification of how these methods are used:
7232 *
7233 * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
7234 * decl := ReactPropTypes.{type}(.isRequired)?
7235 *
7236 * Each and every declaration produces a function with the same signature. This
7237 * allows the creation of custom validation functions. For example:
7238 *
7239 * var MyLink = React.createClass({
7240 * propTypes: {
7241 * // An optional string or URI prop named "href".
7242 * href: function(props, propName, componentName) {
7243 * var propValue = props[propName];
7244 * if (propValue != null && typeof propValue !== 'string' &&
7245 * !(propValue instanceof URI)) {
7246 * return new Error(
7247 * 'Expected a string or an URI for ' + propName + ' in ' +
7248 * componentName
7249 * );
7250 * }
7251 * }
7252 * },
7253 * render: function() {...}
7254 * });
7255 *
7256 * @internal
7257 */
7258
7259 var ANONYMOUS = '<<anonymous>>';
7260
7261 // Important!
7262 // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
7263 var ReactPropTypes = {
7264 array: createPrimitiveTypeChecker('array'),
7265 bigint: createPrimitiveTypeChecker('bigint'),
7266 bool: createPrimitiveTypeChecker('boolean'),
7267 func: createPrimitiveTypeChecker('function'),
7268 number: createPrimitiveTypeChecker('number'),
7269 object: createPrimitiveTypeChecker('object'),
7270 string: createPrimitiveTypeChecker('string'),
7271 symbol: createPrimitiveTypeChecker('symbol'),
7272
7273 any: createAnyTypeChecker(),
7274 arrayOf: createArrayOfTypeChecker,
7275 element: createElementTypeChecker(),
7276 elementType: createElementTypeTypeChecker(),
7277 instanceOf: createInstanceTypeChecker,
7278 node: createNodeChecker(),
7279 objectOf: createObjectOfTypeChecker,
7280 oneOf: createEnumTypeChecker,
7281 oneOfType: createUnionTypeChecker,
7282 shape: createShapeTypeChecker,
7283 exact: createStrictShapeTypeChecker,
7284 };
7285
7286 /**
7287 * inlined Object.is polyfill to avoid requiring consumers ship their own
7288 * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
7289 */
7290 /*eslint-disable no-self-compare*/
7291 function is(x, y) {
7292 // SameValue algorithm
7293 if (x === y) {
7294 // Steps 1-5, 7-10
7295 // Steps 6.b-6.e: +0 != -0
7296 return x !== 0 || 1 / x === 1 / y;
7297 } else {
7298 // Step 6.a: NaN == NaN
7299 return x !== x && y !== y;
7300 }
7301 }
7302 /*eslint-enable no-self-compare*/
7303
7304 /**
7305 * We use an Error-like object for backward compatibility as people may call
7306 * PropTypes directly and inspect their output. However, we don't use real
7307 * Errors anymore. We don't inspect their stack anyway, and creating them
7308 * is prohibitively expensive if they are created too often, such as what
7309 * happens in oneOfType() for any type before the one that matched.
7310 */
7311 function PropTypeError(message, data) {
7312 this.message = message;
7313 this.data = data && typeof data === 'object' ? data: {};
7314 this.stack = '';
7315 }
7316 // Make `instanceof Error` still work for returned errors.
7317 PropTypeError.prototype = Error.prototype;
7318
7319 function createChainableTypeChecker(validate) {
7320 if (true) {
7321 var manualPropTypeCallCache = {};
7322 var manualPropTypeWarningCount = 0;
7323 }
7324 function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
7325 componentName = componentName || ANONYMOUS;
7326 propFullName = propFullName || propName;
7327
7328 if (secret !== ReactPropTypesSecret) {
7329 if (throwOnDirectAccess) {
7330 // New behavior only for users of `prop-types` package
7331 var err = new Error(
7332 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
7333 'Use `PropTypes.checkPropTypes()` to call them. ' +
7334 'Read more at http://fb.me/use-check-prop-types'
7335 );
7336 err.name = 'Invariant Violation';
7337 throw err;
7338 } else if ( true && typeof console !== 'undefined') {
7339 // Old behavior for people using React.PropTypes
7340 var cacheKey = componentName + ':' + propName;
7341 if (
7342 !manualPropTypeCallCache[cacheKey] &&
7343 // Avoid spamming the console because they are often not actionable except for lib authors
7344 manualPropTypeWarningCount < 3
7345 ) {
7346 printWarning(
7347 'You are manually calling a React.PropTypes validation ' +
7348 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
7349 'and will throw in the standalone `prop-types` package. ' +
7350 'You may be seeing this warning due to a third-party PropTypes ' +
7351 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
7352 );
7353 manualPropTypeCallCache[cacheKey] = true;
7354 manualPropTypeWarningCount++;
7355 }
7356 }
7357 }
7358 if (props[propName] == null) {
7359 if (isRequired) {
7360 if (props[propName] === null) {
7361 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
7362 }
7363 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
7364 }
7365 return null;
7366 } else {
7367 return validate(props, propName, componentName, location, propFullName);
7368 }
7369 }
7370
7371 var chainedCheckType = checkType.bind(null, false);
7372 chainedCheckType.isRequired = checkType.bind(null, true);
7373
7374 return chainedCheckType;
7375 }
7376
7377 function createPrimitiveTypeChecker(expectedType) {
7378 function validate(props, propName, componentName, location, propFullName, secret) {
7379 var propValue = props[propName];
7380 var propType = getPropType(propValue);
7381 if (propType !== expectedType) {
7382 // `propValue` being instance of, say, date/regexp, pass the 'object'
7383 // check, but we can offer a more precise error message here rather than
7384 // 'of type `object`'.
7385 var preciseType = getPreciseType(propValue);
7386
7387 return new PropTypeError(
7388 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),
7389 {expectedType: expectedType}
7390 );
7391 }
7392 return null;
7393 }
7394 return createChainableTypeChecker(validate);
7395 }
7396
7397 function createAnyTypeChecker() {
7398 return createChainableTypeChecker(emptyFunctionThatReturnsNull);
7399 }
7400
7401 function createArrayOfTypeChecker(typeChecker) {
7402 function validate(props, propName, componentName, location, propFullName) {
7403 if (typeof typeChecker !== 'function') {
7404 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
7405 }
7406 var propValue = props[propName];
7407 if (!Array.isArray(propValue)) {
7408 var propType = getPropType(propValue);
7409 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
7410 }
7411 for (var i = 0; i < propValue.length; i++) {
7412 var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
7413 if (error instanceof Error) {
7414 return error;
7415 }
7416 }
7417 return null;
7418 }
7419 return createChainableTypeChecker(validate);
7420 }
7421
7422 function createElementTypeChecker() {
7423 function validate(props, propName, componentName, location, propFullName) {
7424 var propValue = props[propName];
7425 if (!isValidElement(propValue)) {
7426 var propType = getPropType(propValue);
7427 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
7428 }
7429 return null;
7430 }
7431 return createChainableTypeChecker(validate);
7432 }
7433
7434 function createElementTypeTypeChecker() {
7435 function validate(props, propName, componentName, location, propFullName) {
7436 var propValue = props[propName];
7437 if (!ReactIs.isValidElementType(propValue)) {
7438 var propType = getPropType(propValue);
7439 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
7440 }
7441 return null;
7442 }
7443 return createChainableTypeChecker(validate);
7444 }
7445
7446 function createInstanceTypeChecker(expectedClass) {
7447 function validate(props, propName, componentName, location, propFullName) {
7448 if (!(props[propName] instanceof expectedClass)) {
7449 var expectedClassName = expectedClass.name || ANONYMOUS;
7450 var actualClassName = getClassName(props[propName]);
7451 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
7452 }
7453 return null;
7454 }
7455 return createChainableTypeChecker(validate);
7456 }
7457
7458 function createEnumTypeChecker(expectedValues) {
7459 if (!Array.isArray(expectedValues)) {
7460 if (true) {
7461 if (arguments.length > 1) {
7462 printWarning(
7463 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
7464 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
7465 );
7466 } else {
7467 printWarning('Invalid argument supplied to oneOf, expected an array.');
7468 }
7469 }
7470 return emptyFunctionThatReturnsNull;
7471 }
7472
7473 function validate(props, propName, componentName, location, propFullName) {
7474 var propValue = props[propName];
7475 for (var i = 0; i < expectedValues.length; i++) {
7476 if (is(propValue, expectedValues[i])) {
7477 return null;
7478 }
7479 }
7480
7481 var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
7482 var type = getPreciseType(value);
7483 if (type === 'symbol') {
7484 return String(value);
7485 }
7486 return value;
7487 });
7488 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
7489 }
7490 return createChainableTypeChecker(validate);
7491 }
7492
7493 function createObjectOfTypeChecker(typeChecker) {
7494 function validate(props, propName, componentName, location, propFullName) {
7495 if (typeof typeChecker !== 'function') {
7496 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
7497 }
7498 var propValue = props[propName];
7499 var propType = getPropType(propValue);
7500 if (propType !== 'object') {
7501 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
7502 }
7503 for (var key in propValue) {
7504 if (has(propValue, key)) {
7505 var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
7506 if (error instanceof Error) {
7507 return error;
7508 }
7509 }
7510 }
7511 return null;
7512 }
7513 return createChainableTypeChecker(validate);
7514 }
7515
7516 function createUnionTypeChecker(arrayOfTypeCheckers) {
7517 if (!Array.isArray(arrayOfTypeCheckers)) {
7518 true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
7519 return emptyFunctionThatReturnsNull;
7520 }
7521
7522 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
7523 var checker = arrayOfTypeCheckers[i];
7524 if (typeof checker !== 'function') {
7525 printWarning(
7526 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
7527 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
7528 );
7529 return emptyFunctionThatReturnsNull;
7530 }
7531 }
7532
7533 function validate(props, propName, componentName, location, propFullName) {
7534 var expectedTypes = [];
7535 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
7536 var checker = arrayOfTypeCheckers[i];
7537 var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
7538 if (checkerResult == null) {
7539 return null;
7540 }
7541 if (checkerResult.data && has(checkerResult.data, 'expectedType')) {
7542 expectedTypes.push(checkerResult.data.expectedType);
7543 }
7544 }
7545 var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';
7546 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));
7547 }
7548 return createChainableTypeChecker(validate);
7549 }
7550
7551 function createNodeChecker() {
7552 function validate(props, propName, componentName, location, propFullName) {
7553 if (!isNode(props[propName])) {
7554 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
7555 }
7556 return null;
7557 }
7558 return createChainableTypeChecker(validate);
7559 }
7560
7561 function invalidValidatorError(componentName, location, propFullName, key, type) {
7562 return new PropTypeError(
7563 (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +
7564 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'
7565 );
7566 }
7567
7568 function createShapeTypeChecker(shapeTypes) {
7569 function validate(props, propName, componentName, location, propFullName) {
7570 var propValue = props[propName];
7571 var propType = getPropType(propValue);
7572 if (propType !== 'object') {
7573 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
7574 }
7575 for (var key in shapeTypes) {
7576 var checker = shapeTypes[key];
7577 if (typeof checker !== 'function') {
7578 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
7579 }
7580 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
7581 if (error) {
7582 return error;
7583 }
7584 }
7585 return null;
7586 }
7587 return createChainableTypeChecker(validate);
7588 }
7589
7590 function createStrictShapeTypeChecker(shapeTypes) {
7591 function validate(props, propName, componentName, location, propFullName) {
7592 var propValue = props[propName];
7593 var propType = getPropType(propValue);
7594 if (propType !== 'object') {
7595 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
7596 }
7597 // We need to check all keys in case some are required but missing from props.
7598 var allKeys = assign({}, props[propName], shapeTypes);
7599 for (var key in allKeys) {
7600 var checker = shapeTypes[key];
7601 if (has(shapeTypes, key) && typeof checker !== 'function') {
7602 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
7603 }
7604 if (!checker) {
7605 return new PropTypeError(
7606 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
7607 '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
7608 '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
7609 );
7610 }
7611 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
7612 if (error) {
7613 return error;
7614 }
7615 }
7616 return null;
7617 }
7618
7619 return createChainableTypeChecker(validate);
7620 }
7621
7622 function isNode(propValue) {
7623 switch (typeof propValue) {
7624 case 'number':
7625 case 'string':
7626 case 'undefined':
7627 return true;
7628 case 'boolean':
7629 return !propValue;
7630 case 'object':
7631 if (Array.isArray(propValue)) {
7632 return propValue.every(isNode);
7633 }
7634 if (propValue === null || isValidElement(propValue)) {
7635 return true;
7636 }
7637
7638 var iteratorFn = getIteratorFn(propValue);
7639 if (iteratorFn) {
7640 var iterator = iteratorFn.call(propValue);
7641 var step;
7642 if (iteratorFn !== propValue.entries) {
7643 while (!(step = iterator.next()).done) {
7644 if (!isNode(step.value)) {
7645 return false;
7646 }
7647 }
7648 } else {
7649 // Iterator will provide entry [k,v] tuples rather than values.
7650 while (!(step = iterator.next()).done) {
7651 var entry = step.value;
7652 if (entry) {
7653 if (!isNode(entry[1])) {
7654 return false;
7655 }
7656 }
7657 }
7658 }
7659 } else {
7660 return false;
7661 }
7662
7663 return true;
7664 default:
7665 return false;
7666 }
7667 }
7668
7669 function isSymbol(propType, propValue) {
7670 // Native Symbol.
7671 if (propType === 'symbol') {
7672 return true;
7673 }
7674
7675 // falsy value can't be a Symbol
7676 if (!propValue) {
7677 return false;
7678 }
7679
7680 // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
7681 if (propValue['@@toStringTag'] === 'Symbol') {
7682 return true;
7683 }
7684
7685 // Fallback for non-spec compliant Symbols which are polyfilled.
7686 if (typeof Symbol === 'function' && propValue instanceof Symbol) {
7687 return true;
7688 }
7689
7690 return false;
7691 }
7692
7693 // Equivalent of `typeof` but with special handling for array and regexp.
7694 function getPropType(propValue) {
7695 var propType = typeof propValue;
7696 if (Array.isArray(propValue)) {
7697 return 'array';
7698 }
7699 if (propValue instanceof RegExp) {
7700 // Old webkits (at least until Android 4.0) return 'function' rather than
7701 // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
7702 // passes PropTypes.object.
7703 return 'object';
7704 }
7705 if (isSymbol(propType, propValue)) {
7706 return 'symbol';
7707 }
7708 return propType;
7709 }
7710
7711 // This handles more types than `getPropType`. Only used for error messages.
7712 // See `createPrimitiveTypeChecker`.
7713 function getPreciseType(propValue) {
7714 if (typeof propValue === 'undefined' || propValue === null) {
7715 return '' + propValue;
7716 }
7717 var propType = getPropType(propValue);
7718 if (propType === 'object') {
7719 if (propValue instanceof Date) {
7720 return 'date';
7721 } else if (propValue instanceof RegExp) {
7722 return 'regexp';
7723 }
7724 }
7725 return propType;
7726 }
7727
7728 // Returns a string that is postfixed to a warning about an invalid type.
7729 // For example, "undefined" or "of type array"
7730 function getPostfixForTypeWarning(value) {
7731 var type = getPreciseType(value);
7732 switch (type) {
7733 case 'array':
7734 case 'object':
7735 return 'an ' + type;
7736 case 'boolean':
7737 case 'date':
7738 case 'regexp':
7739 return 'a ' + type;
7740 default:
7741 return type;
7742 }
7743 }
7744
7745 // Returns class name of the object, if any.
7746 function getClassName(propValue) {
7747 if (!propValue.constructor || !propValue.constructor.name) {
7748 return ANONYMOUS;
7749 }
7750 return propValue.constructor.name;
7751 }
7752
7753 ReactPropTypes.checkPropTypes = checkPropTypes;
7754 ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
7755 ReactPropTypes.PropTypes = ReactPropTypes;
7756
7757 return ReactPropTypes;
7758 };
7759
7760
7761 /***/ }),
7762
7763 /***/ "../node_modules/prop-types/index.js":
7764 /*!*******************************************!*\
7765 !*** ../node_modules/prop-types/index.js ***!
7766 \*******************************************/
7767 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
7768
7769 /**
7770 * Copyright (c) 2013-present, Facebook, Inc.
7771 *
7772 * This source code is licensed under the MIT license found in the
7773 * LICENSE file in the root directory of this source tree.
7774 */
7775
7776 if (true) {
7777 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
7778
7779 // By explicitly using `prop-types` you are opting into new development behavior.
7780 // http://fb.me/prop-types-in-prod
7781 var throwOnDirectAccess = true;
7782 module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
7783 } else {}
7784
7785
7786 /***/ }),
7787
7788 /***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
7789 /*!**************************************************************!*\
7790 !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
7791 \**************************************************************/
7792 /***/ ((module) => {
7793
7794 "use strict";
7795 /**
7796 * Copyright (c) 2013-present, Facebook, Inc.
7797 *
7798 * This source code is licensed under the MIT license found in the
7799 * LICENSE file in the root directory of this source tree.
7800 */
7801
7802
7803
7804 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
7805
7806 module.exports = ReactPropTypesSecret;
7807
7808
7809 /***/ }),
7810
7811 /***/ "../node_modules/prop-types/lib/has.js":
7812 /*!*********************************************!*\
7813 !*** ../node_modules/prop-types/lib/has.js ***!
7814 \*********************************************/
7815 /***/ ((module) => {
7816
7817 module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
7818
7819
7820 /***/ }),
7821
7822 /***/ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js":
7823 /*!************************************************************************************!*\
7824 !*** ../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
7825 \************************************************************************************/
7826 /***/ ((__unused_webpack_module, exports) => {
7827
7828 "use strict";
7829 /** @license React v16.13.1
7830 * react-is.development.js
7831 *
7832 * Copyright (c) Facebook, Inc. and its affiliates.
7833 *
7834 * This source code is licensed under the MIT license found in the
7835 * LICENSE file in the root directory of this source tree.
7836 */
7837
7838
7839
7840
7841
7842 if (true) {
7843 (function() {
7844 'use strict';
7845
7846 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
7847 // nor polyfill, then a plain number is used for performance.
7848 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
7849 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
7850 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
7851 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
7852 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
7853 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
7854 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
7855 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
7856 // (unstable) APIs that have been removed. Can we remove the symbols?
7857
7858 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
7859 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
7860 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
7861 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
7862 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
7863 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
7864 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
7865 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
7866 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
7867 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
7868 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
7869
7870 function isValidElementType(type) {
7871 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
7872 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);
7873 }
7874
7875 function typeOf(object) {
7876 if (typeof object === 'object' && object !== null) {
7877 var $$typeof = object.$$typeof;
7878
7879 switch ($$typeof) {
7880 case REACT_ELEMENT_TYPE:
7881 var type = object.type;
7882
7883 switch (type) {
7884 case REACT_ASYNC_MODE_TYPE:
7885 case REACT_CONCURRENT_MODE_TYPE:
7886 case REACT_FRAGMENT_TYPE:
7887 case REACT_PROFILER_TYPE:
7888 case REACT_STRICT_MODE_TYPE:
7889 case REACT_SUSPENSE_TYPE:
7890 return type;
7891
7892 default:
7893 var $$typeofType = type && type.$$typeof;
7894
7895 switch ($$typeofType) {
7896 case REACT_CONTEXT_TYPE:
7897 case REACT_FORWARD_REF_TYPE:
7898 case REACT_LAZY_TYPE:
7899 case REACT_MEMO_TYPE:
7900 case REACT_PROVIDER_TYPE:
7901 return $$typeofType;
7902
7903 default:
7904 return $$typeof;
7905 }
7906
7907 }
7908
7909 case REACT_PORTAL_TYPE:
7910 return $$typeof;
7911 }
7912 }
7913
7914 return undefined;
7915 } // AsyncMode is deprecated along with isAsyncMode
7916
7917 var AsyncMode = REACT_ASYNC_MODE_TYPE;
7918 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
7919 var ContextConsumer = REACT_CONTEXT_TYPE;
7920 var ContextProvider = REACT_PROVIDER_TYPE;
7921 var Element = REACT_ELEMENT_TYPE;
7922 var ForwardRef = REACT_FORWARD_REF_TYPE;
7923 var Fragment = REACT_FRAGMENT_TYPE;
7924 var Lazy = REACT_LAZY_TYPE;
7925 var Memo = REACT_MEMO_TYPE;
7926 var Portal = REACT_PORTAL_TYPE;
7927 var Profiler = REACT_PROFILER_TYPE;
7928 var StrictMode = REACT_STRICT_MODE_TYPE;
7929 var Suspense = REACT_SUSPENSE_TYPE;
7930 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
7931
7932 function isAsyncMode(object) {
7933 {
7934 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
7935 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
7936
7937 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.');
7938 }
7939 }
7940
7941 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
7942 }
7943 function isConcurrentMode(object) {
7944 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
7945 }
7946 function isContextConsumer(object) {
7947 return typeOf(object) === REACT_CONTEXT_TYPE;
7948 }
7949 function isContextProvider(object) {
7950 return typeOf(object) === REACT_PROVIDER_TYPE;
7951 }
7952 function isElement(object) {
7953 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
7954 }
7955 function isForwardRef(object) {
7956 return typeOf(object) === REACT_FORWARD_REF_TYPE;
7957 }
7958 function isFragment(object) {
7959 return typeOf(object) === REACT_FRAGMENT_TYPE;
7960 }
7961 function isLazy(object) {
7962 return typeOf(object) === REACT_LAZY_TYPE;
7963 }
7964 function isMemo(object) {
7965 return typeOf(object) === REACT_MEMO_TYPE;
7966 }
7967 function isPortal(object) {
7968 return typeOf(object) === REACT_PORTAL_TYPE;
7969 }
7970 function isProfiler(object) {
7971 return typeOf(object) === REACT_PROFILER_TYPE;
7972 }
7973 function isStrictMode(object) {
7974 return typeOf(object) === REACT_STRICT_MODE_TYPE;
7975 }
7976 function isSuspense(object) {
7977 return typeOf(object) === REACT_SUSPENSE_TYPE;
7978 }
7979
7980 exports.AsyncMode = AsyncMode;
7981 exports.ConcurrentMode = ConcurrentMode;
7982 exports.ContextConsumer = ContextConsumer;
7983 exports.ContextProvider = ContextProvider;
7984 exports.Element = Element;
7985 exports.ForwardRef = ForwardRef;
7986 exports.Fragment = Fragment;
7987 exports.Lazy = Lazy;
7988 exports.Memo = Memo;
7989 exports.Portal = Portal;
7990 exports.Profiler = Profiler;
7991 exports.StrictMode = StrictMode;
7992 exports.Suspense = Suspense;
7993 exports.isAsyncMode = isAsyncMode;
7994 exports.isConcurrentMode = isConcurrentMode;
7995 exports.isContextConsumer = isContextConsumer;
7996 exports.isContextProvider = isContextProvider;
7997 exports.isElement = isElement;
7998 exports.isForwardRef = isForwardRef;
7999 exports.isFragment = isFragment;
8000 exports.isLazy = isLazy;
8001 exports.isMemo = isMemo;
8002 exports.isPortal = isPortal;
8003 exports.isProfiler = isProfiler;
8004 exports.isStrictMode = isStrictMode;
8005 exports.isSuspense = isSuspense;
8006 exports.isValidElementType = isValidElementType;
8007 exports.typeOf = typeOf;
8008 })();
8009 }
8010
8011
8012 /***/ }),
8013
8014 /***/ "../node_modules/prop-types/node_modules/react-is/index.js":
8015 /*!*****************************************************************!*\
8016 !*** ../node_modules/prop-types/node_modules/react-is/index.js ***!
8017 \*****************************************************************/
8018 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8019
8020 "use strict";
8021
8022
8023 if (false) {} else {
8024 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js");
8025 }
8026
8027
8028 /***/ }),
8029
8030 /***/ "../node_modules/react-dom/client.js":
8031 /*!*******************************************!*\
8032 !*** ../node_modules/react-dom/client.js ***!
8033 \*******************************************/
8034 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
8035
8036 "use strict";
8037
8038
8039 var m = __webpack_require__(/*! react-dom */ "react-dom");
8040 if (false) {} else {
8041 var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
8042 exports.createRoot = function(c, o) {
8043 i.usingClientEntryPoint = true;
8044 try {
8045 return m.createRoot(c, o);
8046 } finally {
8047 i.usingClientEntryPoint = false;
8048 }
8049 };
8050 exports.hydrateRoot = function(c, h, o) {
8051 i.usingClientEntryPoint = true;
8052 try {
8053 return m.hydrateRoot(c, h, o);
8054 } finally {
8055 i.usingClientEntryPoint = false;
8056 }
8057 };
8058 }
8059
8060
8061 /***/ }),
8062
8063 /***/ "../node_modules/react-draggable/build/cjs/Draggable.js":
8064 /*!**************************************************************!*\
8065 !*** ../node_modules/react-draggable/build/cjs/Draggable.js ***!
8066 \**************************************************************/
8067 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
8068
8069 "use strict";
8070
8071
8072 Object.defineProperty(exports, "__esModule", ({
8073 value: true
8074 }));
8075 Object.defineProperty(exports, "DraggableCore", ({
8076 enumerable: true,
8077 get: function () {
8078 return _DraggableCore.default;
8079 }
8080 }));
8081 exports["default"] = void 0;
8082 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
8083 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
8084 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
8085 var _clsx = _interopRequireDefault(__webpack_require__(/*! clsx */ "../node_modules/react-draggable/node_modules/clsx/dist/clsx.m.js"));
8086 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
8087 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
8088 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
8089 var _DraggableCore = _interopRequireDefault(__webpack_require__(/*! ./DraggableCore */ "../node_modules/react-draggable/build/cjs/DraggableCore.js"));
8090 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
8091 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8092 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
8093 function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
8094 function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
8095 function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8096 function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
8097 function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /*:: import type {ControlPosition, PositionOffsetControlPosition, DraggableCoreProps, DraggableCoreDefaultProps} from './DraggableCore';*/
8098 /*:: import type {Bounds, DraggableEventHandler} from './utils/types';*/
8099 /*:: import type {Element as ReactElement} from 'react';*/
8100 /*:: type DraggableState = {
8101 dragging: boolean,
8102 dragged: boolean,
8103 x: number, y: number,
8104 slackX: number, slackY: number,
8105 isElementSVG: boolean,
8106 prevPropsPosition: ?ControlPosition,
8107 };*/
8108 /*:: export type DraggableDefaultProps = {
8109 ...DraggableCoreDefaultProps,
8110 axis: 'both' | 'x' | 'y' | 'none',
8111 bounds: Bounds | string | false,
8112 defaultClassName: string,
8113 defaultClassNameDragging: string,
8114 defaultClassNameDragged: string,
8115 defaultPosition: ControlPosition,
8116 scale: number,
8117 };*/
8118 /*:: export type DraggableProps = {
8119 ...DraggableCoreProps,
8120 ...DraggableDefaultProps,
8121 positionOffset: PositionOffsetControlPosition,
8122 position: ControlPosition,
8123 };*/
8124 //
8125 // Define <Draggable>
8126 //
8127 class Draggable extends React.Component /*:: <DraggableProps, DraggableState>*/{
8128 // React 16.3+
8129 // Arity (props, state)
8130 static getDerivedStateFromProps(_ref /*:: */, _ref2 /*:: */) /*: ?Partial<DraggableState>*/{
8131 let {
8132 position
8133 } /*: DraggableProps*/ = _ref /*: DraggableProps*/;
8134 let {
8135 prevPropsPosition
8136 } /*: DraggableState*/ = _ref2 /*: DraggableState*/;
8137 // Set x/y if a new position is provided in props that is different than the previous.
8138 if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {
8139 (0, _log.default)('Draggable: getDerivedStateFromProps %j', {
8140 position,
8141 prevPropsPosition
8142 });
8143 return {
8144 x: position.x,
8145 y: position.y,
8146 prevPropsPosition: {
8147 ...position
8148 }
8149 };
8150 }
8151 return null;
8152 }
8153 constructor(props /*: DraggableProps*/) {
8154 super(props);
8155 _defineProperty(this, "onDragStart", (e, coreData) => {
8156 (0, _log.default)('Draggable: onDragStart: %j', coreData);
8157
8158 // Short-circuit if user's callback killed it.
8159 const shouldStart = this.props.onStart(e, (0, _positionFns.createDraggableData)(this, coreData));
8160 // Kills start event on core as well, so move handlers are never bound.
8161 if (shouldStart === false) return false;
8162 this.setState({
8163 dragging: true,
8164 dragged: true
8165 });
8166 });
8167 _defineProperty(this, "onDrag", (e, coreData) => {
8168 if (!this.state.dragging) return false;
8169 (0, _log.default)('Draggable: onDrag: %j', coreData);
8170 const uiData = (0, _positionFns.createDraggableData)(this, coreData);
8171 const newState = {
8172 x: uiData.x,
8173 y: uiData.y,
8174 slackX: 0,
8175 slackY: 0
8176 };
8177
8178 // Keep within bounds.
8179 if (this.props.bounds) {
8180 // Save original x and y.
8181 const {
8182 x,
8183 y
8184 } = newState;
8185
8186 // Add slack to the values used to calculate bound position. This will ensure that if
8187 // we start removing slack, the element won't react to it right away until it's been
8188 // completely removed.
8189 newState.x += this.state.slackX;
8190 newState.y += this.state.slackY;
8191
8192 // Get bound position. This will ceil/floor the x and y within the boundaries.
8193 const [newStateX, newStateY] = (0, _positionFns.getBoundPosition)(this, newState.x, newState.y);
8194 newState.x = newStateX;
8195 newState.y = newStateY;
8196
8197 // Recalculate slack by noting how much was shaved by the boundPosition handler.
8198 newState.slackX = this.state.slackX + (x - newState.x);
8199 newState.slackY = this.state.slackY + (y - newState.y);
8200
8201 // Update the event we fire to reflect what really happened after bounds took effect.
8202 uiData.x = newState.x;
8203 uiData.y = newState.y;
8204 uiData.deltaX = newState.x - this.state.x;
8205 uiData.deltaY = newState.y - this.state.y;
8206 }
8207
8208 // Short-circuit if user's callback killed it.
8209 const shouldUpdate = this.props.onDrag(e, uiData);
8210 if (shouldUpdate === false) return false;
8211 this.setState(newState);
8212 });
8213 _defineProperty(this, "onDragStop", (e, coreData) => {
8214 if (!this.state.dragging) return false;
8215
8216 // Short-circuit if user's callback killed it.
8217 const shouldContinue = this.props.onStop(e, (0, _positionFns.createDraggableData)(this, coreData));
8218 if (shouldContinue === false) return false;
8219 (0, _log.default)('Draggable: onDragStop: %j', coreData);
8220 const newState /*: Partial<DraggableState>*/ = {
8221 dragging: false,
8222 slackX: 0,
8223 slackY: 0
8224 };
8225
8226 // If this is a controlled component, the result of this operation will be to
8227 // revert back to the old position. We expect a handler on `onDragStop`, at the least.
8228 const controlled = Boolean(this.props.position);
8229 if (controlled) {
8230 const {
8231 x,
8232 y
8233 } = this.props.position;
8234 newState.x = x;
8235 newState.y = y;
8236 }
8237 this.setState(newState);
8238 });
8239 this.state = {
8240 // Whether or not we are currently dragging.
8241 dragging: false,
8242 // Whether or not we have been dragged before.
8243 dragged: false,
8244 // Current transform x and y.
8245 x: props.position ? props.position.x : props.defaultPosition.x,
8246 y: props.position ? props.position.y : props.defaultPosition.y,
8247 prevPropsPosition: {
8248 ...props.position
8249 },
8250 // Used for compensating for out-of-bounds drags
8251 slackX: 0,
8252 slackY: 0,
8253 // Can only determine if SVG after mounting
8254 isElementSVG: false
8255 };
8256 if (props.position && !(props.onDrag || props.onStop)) {
8257 // eslint-disable-next-line no-console
8258 console.warn('A `position` was applied to this <Draggable>, without drag handlers. This will make this ' + 'component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the ' + '`position` of this element.');
8259 }
8260 }
8261 componentDidMount() {
8262 // Check to see if the element passed is an instanceof SVGElement
8263 if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {
8264 this.setState({
8265 isElementSVG: true
8266 });
8267 }
8268 }
8269 componentWillUnmount() {
8270 this.setState({
8271 dragging: false
8272 }); // prevents invariant if unmounted while dragging
8273 }
8274
8275 // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
8276 // the underlying DOM node ourselves. See the README for more information.
8277 findDOMNode() /*: ?HTMLElement*/{
8278 var _this$props$nodeRef$c, _this$props;
8279 return (_this$props$nodeRef$c = (_this$props = this.props) === null || _this$props === void 0 || (_this$props = _this$props.nodeRef) === null || _this$props === void 0 ? void 0 : _this$props.current) !== null && _this$props$nodeRef$c !== void 0 ? _this$props$nodeRef$c : _reactDom.default.findDOMNode(this);
8280 }
8281 render() /*: ReactElement<any>*/{
8282 const {
8283 axis,
8284 bounds,
8285 children,
8286 defaultPosition,
8287 defaultClassName,
8288 defaultClassNameDragging,
8289 defaultClassNameDragged,
8290 position,
8291 positionOffset,
8292 scale,
8293 ...draggableCoreProps
8294 } = this.props;
8295 let style = {};
8296 let svgTransform = null;
8297
8298 // If this is controlled, we don't want to move it - unless it's dragging.
8299 const controlled = Boolean(position);
8300 const draggable = !controlled || this.state.dragging;
8301 const validPosition = position || defaultPosition;
8302 const transformOpts = {
8303 // Set left if horizontal drag is enabled
8304 x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,
8305 // Set top if vertical drag is enabled
8306 y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y
8307 };
8308
8309 // If this element was SVG, we use the `transform` attribute.
8310 if (this.state.isElementSVG) {
8311 svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);
8312 } else {
8313 // Add a CSS transform to move the element around. This allows us to move the element around
8314 // without worrying about whether or not it is relatively or absolutely positioned.
8315 // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>
8316 // has a clean slate.
8317 style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);
8318 }
8319
8320 // Mark with class while dragging
8321 const className = (0, _clsx.default)(children.props.className || '', defaultClassName, {
8322 [defaultClassNameDragging]: this.state.dragging,
8323 [defaultClassNameDragged]: this.state.dragged
8324 });
8325
8326 // Reuse the child provided
8327 // This makes it flexible to use whatever element is wanted (div, ul, etc)
8328 return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {
8329 onStart: this.onDragStart,
8330 onDrag: this.onDrag,
8331 onStop: this.onDragStop
8332 }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {
8333 className: className,
8334 style: {
8335 ...children.props.style,
8336 ...style
8337 },
8338 transform: svgTransform
8339 }));
8340 }
8341 }
8342 exports["default"] = Draggable;
8343 _defineProperty(Draggable, "displayName", 'Draggable');
8344 _defineProperty(Draggable, "propTypes", {
8345 // Accepts all props <DraggableCore> accepts.
8346 ..._DraggableCore.default.propTypes,
8347 /**
8348 * `axis` determines which axis the draggable can move.
8349 *
8350 * Note that all callbacks will still return data as normal. This only
8351 * controls flushing to the DOM.
8352 *
8353 * 'both' allows movement horizontally and vertically.
8354 * 'x' limits movement to horizontal axis.
8355 * 'y' limits movement to vertical axis.
8356 * 'none' limits all movement.
8357 *
8358 * Defaults to 'both'.
8359 */
8360 axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),
8361 /**
8362 * `bounds` determines the range of movement available to the element.
8363 * Available values are:
8364 *
8365 * 'parent' restricts movement within the Draggable's parent node.
8366 *
8367 * Alternatively, pass an object with the following properties, all of which are optional:
8368 *
8369 * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}
8370 *
8371 * All values are in px.
8372 *
8373 * Example:
8374 *
8375 * ```jsx
8376 * let App = React.createClass({
8377 * render: function () {
8378 * return (
8379 * <Draggable bounds={{right: 300, bottom: 300}}>
8380 * <div>Content</div>
8381 * </Draggable>
8382 * );
8383 * }
8384 * });
8385 * ```
8386 */
8387 bounds: _propTypes.default.oneOfType([_propTypes.default.shape({
8388 left: _propTypes.default.number,
8389 right: _propTypes.default.number,
8390 top: _propTypes.default.number,
8391 bottom: _propTypes.default.number
8392 }), _propTypes.default.string, _propTypes.default.oneOf([false])]),
8393 defaultClassName: _propTypes.default.string,
8394 defaultClassNameDragging: _propTypes.default.string,
8395 defaultClassNameDragged: _propTypes.default.string,
8396 /**
8397 * `defaultPosition` specifies the x and y that the dragged item should start at
8398 *
8399 * Example:
8400 *
8401 * ```jsx
8402 * let App = React.createClass({
8403 * render: function () {
8404 * return (
8405 * <Draggable defaultPosition={{x: 25, y: 25}}>
8406 * <div>I start with transformX: 25px and transformY: 25px;</div>
8407 * </Draggable>
8408 * );
8409 * }
8410 * });
8411 * ```
8412 */
8413 defaultPosition: _propTypes.default.shape({
8414 x: _propTypes.default.number,
8415 y: _propTypes.default.number
8416 }),
8417 positionOffset: _propTypes.default.shape({
8418 x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
8419 y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
8420 }),
8421 /**
8422 * `position`, if present, defines the current position of the element.
8423 *
8424 * This is similar to how form elements in React work - if no `position` is supplied, the component
8425 * is uncontrolled.
8426 *
8427 * Example:
8428 *
8429 * ```jsx
8430 * let App = React.createClass({
8431 * render: function () {
8432 * return (
8433 * <Draggable position={{x: 25, y: 25}}>
8434 * <div>I start with transformX: 25px and transformY: 25px;</div>
8435 * </Draggable>
8436 * );
8437 * }
8438 * });
8439 * ```
8440 */
8441 position: _propTypes.default.shape({
8442 x: _propTypes.default.number,
8443 y: _propTypes.default.number
8444 }),
8445 /**
8446 * These properties should be defined on the child, not here.
8447 */
8448 className: _shims.dontSetMe,
8449 style: _shims.dontSetMe,
8450 transform: _shims.dontSetMe
8451 });
8452 _defineProperty(Draggable, "defaultProps", {
8453 ..._DraggableCore.default.defaultProps,
8454 axis: 'both',
8455 bounds: false,
8456 defaultClassName: 'react-draggable',
8457 defaultClassNameDragging: 'react-draggable-dragging',
8458 defaultClassNameDragged: 'react-draggable-dragged',
8459 defaultPosition: {
8460 x: 0,
8461 y: 0
8462 },
8463 scale: 1
8464 });
8465
8466 /***/ }),
8467
8468 /***/ "../node_modules/react-draggable/build/cjs/DraggableCore.js":
8469 /*!******************************************************************!*\
8470 !*** ../node_modules/react-draggable/build/cjs/DraggableCore.js ***!
8471 \******************************************************************/
8472 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
8473
8474 "use strict";
8475
8476
8477 Object.defineProperty(exports, "__esModule", ({
8478 value: true
8479 }));
8480 exports["default"] = void 0;
8481 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
8482 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
8483 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
8484 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
8485 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
8486 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
8487 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
8488 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8489 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
8490 function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
8491 function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8492 function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
8493 function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
8494 /*:: import type {EventHandler, MouseTouchEvent} from './utils/types';*/
8495 /*:: import type {Element as ReactElement} from 'react';*/
8496 // Simple abstraction for dragging events names.
8497 const eventsFor = {
8498 touch: {
8499 start: 'touchstart',
8500 move: 'touchmove',
8501 stop: 'touchend'
8502 },
8503 mouse: {
8504 start: 'mousedown',
8505 move: 'mousemove',
8506 stop: 'mouseup'
8507 }
8508 };
8509
8510 // Default to mouse events.
8511 let dragEventFor = eventsFor.mouse;
8512 /*:: export type DraggableData = {
8513 node: HTMLElement,
8514 x: number, y: number,
8515 deltaX: number, deltaY: number,
8516 lastX: number, lastY: number,
8517 };*/
8518 /*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/
8519 /*:: export type ControlPosition = {x: number, y: number};*/
8520 /*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/
8521 /*:: export type DraggableCoreDefaultProps = {
8522 allowAnyClick: boolean,
8523 disabled: boolean,
8524 enableUserSelectHack: boolean,
8525 onStart: DraggableEventHandler,
8526 onDrag: DraggableEventHandler,
8527 onStop: DraggableEventHandler,
8528 onMouseDown: (e: MouseEvent) => void,
8529 scale: number,
8530 };*/
8531 /*:: export type DraggableCoreProps = {
8532 ...DraggableCoreDefaultProps,
8533 cancel: string,
8534 children: ReactElement<any>,
8535 offsetParent: HTMLElement,
8536 grid: [number, number],
8537 handle: string,
8538 nodeRef?: ?React.ElementRef<any>,
8539 };*/
8540 //
8541 // Define <DraggableCore>.
8542 //
8543 // <DraggableCore> is for advanced usage of <Draggable>. It maintains minimal internal state so it can
8544 // work well with libraries that require more control over the element.
8545 //
8546
8547 class DraggableCore extends React.Component /*:: <DraggableCoreProps>*/{
8548 constructor() {
8549 super(...arguments);
8550 _defineProperty(this, "dragging", false);
8551 // Used while dragging to determine deltas.
8552 _defineProperty(this, "lastX", NaN);
8553 _defineProperty(this, "lastY", NaN);
8554 _defineProperty(this, "touchIdentifier", null);
8555 _defineProperty(this, "mounted", false);
8556 _defineProperty(this, "handleDragStart", e => {
8557 // Make it possible to attach event handlers on top of this one.
8558 this.props.onMouseDown(e);
8559
8560 // Only accept left-clicks.
8561 if (!this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false;
8562
8563 // Get nodes. Be sure to grab relative document (could be iframed)
8564 const thisNode = this.findDOMNode();
8565 if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {
8566 throw new Error('<DraggableCore> not mounted on DragStart!');
8567 }
8568 const {
8569 ownerDocument
8570 } = thisNode;
8571
8572 // Short circuit if handle or cancel prop was provided and selector doesn't match.
8573 if (this.props.disabled || !(e.target instanceof ownerDocument.defaultView.Node) || this.props.handle && !(0, _domFns.matchesSelectorAndParentsTo)(e.target, this.props.handle, thisNode) || this.props.cancel && (0, _domFns.matchesSelectorAndParentsTo)(e.target, this.props.cancel, thisNode)) {
8574 return;
8575 }
8576
8577 // Prevent scrolling on mobile devices, like ipad/iphone.
8578 // Important that this is after handle/cancel.
8579 if (e.type === 'touchstart') e.preventDefault();
8580
8581 // Set touch identifier in component state if this is a touch event. This allows us to
8582 // distinguish between individual touches on multitouch screens by identifying which
8583 // touchpoint was set to this element.
8584 const touchIdentifier = (0, _domFns.getTouchIdentifier)(e);
8585 this.touchIdentifier = touchIdentifier;
8586
8587 // Get the current drag point from the event. This is used as the offset.
8588 const position = (0, _positionFns.getControlPosition)(e, touchIdentifier, this);
8589 if (position == null) return; // not possible but satisfies flow
8590 const {
8591 x,
8592 y
8593 } = position;
8594
8595 // Create an event object with all the data parents need to make a decision here.
8596 const coreEvent = (0, _positionFns.createCoreData)(this, x, y);
8597 (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent);
8598
8599 // Call event handler. If it returns explicit false, cancel.
8600 (0, _log.default)('calling', this.props.onStart);
8601 const shouldUpdate = this.props.onStart(e, coreEvent);
8602 if (shouldUpdate === false || this.mounted === false) return;
8603
8604 // Add a style to the body to disable user-select. This prevents text from
8605 // being selected all over the page.
8606 if (this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument);
8607
8608 // Initiate dragging. Set the current x and y as offsets
8609 // so we know how much we've moved during the drag. This allows us
8610 // to drag elements around even if they have been moved, without issue.
8611 this.dragging = true;
8612 this.lastX = x;
8613 this.lastY = y;
8614
8615 // Add events to the document directly so we catch when the user's mouse/touch moves outside of
8616 // this element. We use different events depending on whether or not we have detected that this
8617 // is a touch-capable device.
8618 (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, this.handleDrag);
8619 (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, this.handleDragStop);
8620 });
8621 _defineProperty(this, "handleDrag", e => {
8622 // Get the current drag point from the event. This is used as the offset.
8623 const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);
8624 if (position == null) return;
8625 let {
8626 x,
8627 y
8628 } = position;
8629
8630 // Snap to grid if prop has been provided
8631 if (Array.isArray(this.props.grid)) {
8632 let deltaX = x - this.lastX,
8633 deltaY = y - this.lastY;
8634 [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);
8635 if (!deltaX && !deltaY) return; // skip useless drag
8636 x = this.lastX + deltaX, y = this.lastY + deltaY;
8637 }
8638 const coreEvent = (0, _positionFns.createCoreData)(this, x, y);
8639 (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent);
8640
8641 // Call event handler. If it returns explicit false, trigger end.
8642 const shouldUpdate = this.props.onDrag(e, coreEvent);
8643 if (shouldUpdate === false || this.mounted === false) {
8644 try {
8645 // $FlowIgnore
8646 this.handleDragStop(new MouseEvent('mouseup'));
8647 } catch (err) {
8648 // Old browsers
8649 const event = ((document.createEvent('MouseEvents') /*: any*/) /*: MouseTouchEvent*/);
8650 // I see why this insanity was deprecated
8651 // $FlowIgnore
8652 event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
8653 this.handleDragStop(event);
8654 }
8655 return;
8656 }
8657 this.lastX = x;
8658 this.lastY = y;
8659 });
8660 _defineProperty(this, "handleDragStop", e => {
8661 if (!this.dragging) return;
8662 const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);
8663 if (position == null) return;
8664 let {
8665 x,
8666 y
8667 } = position;
8668
8669 // Snap to grid if prop has been provided
8670 if (Array.isArray(this.props.grid)) {
8671 let deltaX = x - this.lastX || 0;
8672 let deltaY = y - this.lastY || 0;
8673 [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);
8674 x = this.lastX + deltaX, y = this.lastY + deltaY;
8675 }
8676 const coreEvent = (0, _positionFns.createCoreData)(this, x, y);
8677
8678 // Call event handler
8679 const shouldContinue = this.props.onStop(e, coreEvent);
8680 if (shouldContinue === false || this.mounted === false) return false;
8681 const thisNode = this.findDOMNode();
8682 if (thisNode) {
8683 // Remove user-select hack
8684 if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);
8685 }
8686 (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent);
8687
8688 // Reset the el.
8689 this.dragging = false;
8690 this.lastX = NaN;
8691 this.lastY = NaN;
8692 if (thisNode) {
8693 // Remove event handlers
8694 (0, _log.default)('DraggableCore: Removing handlers');
8695 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, this.handleDrag);
8696 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, this.handleDragStop);
8697 }
8698 });
8699 _defineProperty(this, "onMouseDown", e => {
8700 dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse
8701
8702 return this.handleDragStart(e);
8703 });
8704 _defineProperty(this, "onMouseUp", e => {
8705 dragEventFor = eventsFor.mouse;
8706 return this.handleDragStop(e);
8707 });
8708 // Same as onMouseDown (start drag), but now consider this a touch device.
8709 _defineProperty(this, "onTouchStart", e => {
8710 // We're on a touch device now, so change the event handlers
8711 dragEventFor = eventsFor.touch;
8712 return this.handleDragStart(e);
8713 });
8714 _defineProperty(this, "onTouchEnd", e => {
8715 // We're on a touch device now, so change the event handlers
8716 dragEventFor = eventsFor.touch;
8717 return this.handleDragStop(e);
8718 });
8719 }
8720 componentDidMount() {
8721 this.mounted = true;
8722 // Touch handlers must be added with {passive: false} to be cancelable.
8723 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
8724 const thisNode = this.findDOMNode();
8725 if (thisNode) {
8726 (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
8727 passive: false
8728 });
8729 }
8730 }
8731 componentWillUnmount() {
8732 this.mounted = false;
8733 // Remove any leftover event handlers. Remove both touch and mouse handlers in case
8734 // some browser quirk caused a touch event to fire during a mouse move, or vice versa.
8735 const thisNode = this.findDOMNode();
8736 if (thisNode) {
8737 const {
8738 ownerDocument
8739 } = thisNode;
8740 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);
8741 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);
8742 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);
8743 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);
8744 (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
8745 passive: false
8746 });
8747 if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);
8748 }
8749 }
8750
8751 // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
8752 // the underlying DOM node ourselves. See the README for more information.
8753 findDOMNode() /*: ?HTMLElement*/{
8754 var _this$props, _this$props2;
8755 return (_this$props = this.props) !== null && _this$props !== void 0 && _this$props.nodeRef ? (_this$props2 = this.props) === null || _this$props2 === void 0 || (_this$props2 = _this$props2.nodeRef) === null || _this$props2 === void 0 ? void 0 : _this$props2.current : _reactDom.default.findDOMNode(this);
8756 }
8757 render() /*: React.Element<any>*/{
8758 // Reuse the child provided
8759 // This makes it flexible to use whatever element is wanted (div, ul, etc)
8760 return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {
8761 // Note: mouseMove handler is attached to document so it will still function
8762 // when the user drags quickly and leaves the bounds of the element.
8763 onMouseDown: this.onMouseDown,
8764 onMouseUp: this.onMouseUp,
8765 // onTouchStart is added on `componentDidMount` so they can be added with
8766 // {passive: false}, which allows it to cancel. See
8767 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
8768 onTouchEnd: this.onTouchEnd
8769 });
8770 }
8771 }
8772 exports["default"] = DraggableCore;
8773 _defineProperty(DraggableCore, "displayName", 'DraggableCore');
8774 _defineProperty(DraggableCore, "propTypes", {
8775 /**
8776 * `allowAnyClick` allows dragging using any mouse button.
8777 * By default, we only accept the left button.
8778 *
8779 * Defaults to `false`.
8780 */
8781 allowAnyClick: _propTypes.default.bool,
8782 children: _propTypes.default.node.isRequired,
8783 /**
8784 * `disabled`, if true, stops the <Draggable> from dragging. All handlers,
8785 * with the exception of `onMouseDown`, will not fire.
8786 */
8787 disabled: _propTypes.default.bool,
8788 /**
8789 * By default, we add 'user-select:none' attributes to the document body
8790 * to prevent ugly text selection during drag. If this is causing problems
8791 * for your app, set this to `false`.
8792 */
8793 enableUserSelectHack: _propTypes.default.bool,
8794 /**
8795 * `offsetParent`, if set, uses the passed DOM node to compute drag offsets
8796 * instead of using the parent node.
8797 */
8798 offsetParent: function (props /*: DraggableCoreProps*/, propName /*: $Keys<DraggableCoreProps>*/) {
8799 if (props[propName] && props[propName].nodeType !== 1) {
8800 throw new Error('Draggable\'s offsetParent must be a DOM Node.');
8801 }
8802 },
8803 /**
8804 * `grid` specifies the x and y that dragging should snap to.
8805 */
8806 grid: _propTypes.default.arrayOf(_propTypes.default.number),
8807 /**
8808 * `handle` specifies a selector to be used as the handle that initiates drag.
8809 *
8810 * Example:
8811 *
8812 * ```jsx
8813 * let App = React.createClass({
8814 * render: function () {
8815 * return (
8816 * <Draggable handle=".handle">
8817 * <div>
8818 * <div className="handle">Click me to drag</div>
8819 * <div>This is some other content</div>
8820 * </div>
8821 * </Draggable>
8822 * );
8823 * }
8824 * });
8825 * ```
8826 */
8827 handle: _propTypes.default.string,
8828 /**
8829 * `cancel` specifies a selector to be used to prevent drag initialization.
8830 *
8831 * Example:
8832 *
8833 * ```jsx
8834 * let App = React.createClass({
8835 * render: function () {
8836 * return(
8837 * <Draggable cancel=".cancel">
8838 * <div>
8839 * <div className="cancel">You can't drag from here</div>
8840 * <div>Dragging here works fine</div>
8841 * </div>
8842 * </Draggable>
8843 * );
8844 * }
8845 * });
8846 * ```
8847 */
8848 cancel: _propTypes.default.string,
8849 /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.
8850 * Unfortunately, in order for <Draggable> to work properly, we need raw access
8851 * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`
8852 * as in this example:
8853 *
8854 * function MyComponent() {
8855 * const nodeRef = React.useRef(null);
8856 * return (
8857 * <Draggable nodeRef={nodeRef}>
8858 * <div ref={nodeRef}>Example Target</div>
8859 * </Draggable>
8860 * );
8861 * }
8862 *
8863 * This can be used for arbitrarily nested components, so long as the ref ends up
8864 * pointing to the actual child DOM node and not a custom component.
8865 */
8866 nodeRef: _propTypes.default.object,
8867 /**
8868 * Called when dragging starts.
8869 * If this function returns the boolean false, dragging will be canceled.
8870 */
8871 onStart: _propTypes.default.func,
8872 /**
8873 * Called while dragging.
8874 * If this function returns the boolean false, dragging will be canceled.
8875 */
8876 onDrag: _propTypes.default.func,
8877 /**
8878 * Called when dragging stops.
8879 * If this function returns the boolean false, the drag will remain active.
8880 */
8881 onStop: _propTypes.default.func,
8882 /**
8883 * A workaround option which can be passed if onMouseDown needs to be accessed,
8884 * since it'll always be blocked (as there is internal use of onMouseDown)
8885 */
8886 onMouseDown: _propTypes.default.func,
8887 /**
8888 * `scale`, if set, applies scaling while dragging an element
8889 */
8890 scale: _propTypes.default.number,
8891 /**
8892 * These properties should be defined on the child, not here.
8893 */
8894 className: _shims.dontSetMe,
8895 style: _shims.dontSetMe,
8896 transform: _shims.dontSetMe
8897 });
8898 _defineProperty(DraggableCore, "defaultProps", {
8899 allowAnyClick: false,
8900 // by default only accept left click
8901 disabled: false,
8902 enableUserSelectHack: true,
8903 onStart: function () {},
8904 onDrag: function () {},
8905 onStop: function () {},
8906 onMouseDown: function () {},
8907 scale: 1
8908 });
8909
8910 /***/ }),
8911
8912 /***/ "../node_modules/react-draggable/build/cjs/cjs.js":
8913 /*!********************************************************!*\
8914 !*** ../node_modules/react-draggable/build/cjs/cjs.js ***!
8915 \********************************************************/
8916 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8917
8918 "use strict";
8919
8920
8921 const {
8922 default: Draggable,
8923 DraggableCore
8924 } = __webpack_require__(/*! ./Draggable */ "../node_modules/react-draggable/build/cjs/Draggable.js");
8925
8926 // Previous versions of this lib exported <Draggable> as the root export. As to no-// them, or TypeScript, we export *both* as the root and as 'default'.
8927 // See https://github.com/mzabriskie/react-draggable/pull/254
8928 // and https://github.com/mzabriskie/react-draggable/issues/266
8929 module.exports = Draggable;
8930 module.exports["default"] = Draggable;
8931 module.exports.DraggableCore = DraggableCore;
8932
8933 /***/ }),
8934
8935 /***/ "../node_modules/react-draggable/build/cjs/utils/domFns.js":
8936 /*!*****************************************************************!*\
8937 !*** ../node_modules/react-draggable/build/cjs/utils/domFns.js ***!
8938 \*****************************************************************/
8939 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
8940
8941 "use strict";
8942
8943
8944 Object.defineProperty(exports, "__esModule", ({
8945 value: true
8946 }));
8947 exports.addClassName = addClassName;
8948 exports.addEvent = addEvent;
8949 exports.addUserSelectStyles = addUserSelectStyles;
8950 exports.createCSSTransform = createCSSTransform;
8951 exports.createSVGTransform = createSVGTransform;
8952 exports.getTouch = getTouch;
8953 exports.getTouchIdentifier = getTouchIdentifier;
8954 exports.getTranslation = getTranslation;
8955 exports.innerHeight = innerHeight;
8956 exports.innerWidth = innerWidth;
8957 exports.matchesSelector = matchesSelector;
8958 exports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;
8959 exports.offsetXYFromParent = offsetXYFromParent;
8960 exports.outerHeight = outerHeight;
8961 exports.outerWidth = outerWidth;
8962 exports.removeClassName = removeClassName;
8963 exports.removeEvent = removeEvent;
8964 exports.removeUserSelectStyles = removeUserSelectStyles;
8965 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
8966 var _getPrefix = _interopRequireWildcard(__webpack_require__(/*! ./getPrefix */ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js"));
8967 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
8968 function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
8969 /*:: import type {ControlPosition, PositionOffsetControlPosition, MouseTouchEvent} from './types';*/
8970 let matchesSelectorFunc = '';
8971 function matchesSelector(el /*: Node*/, selector /*: string*/) /*: boolean*/{
8972 if (!matchesSelectorFunc) {
8973 matchesSelectorFunc = (0, _shims.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {
8974 // $FlowIgnore: Doesn't think elements are indexable
8975 return (0, _shims.isFunction)(el[method]);
8976 });
8977 }
8978
8979 // Might not be found entirely (not an Element?) - in that case, bail
8980 // $FlowIgnore: Doesn't think elements are indexable
8981 if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false;
8982
8983 // $FlowIgnore: Doesn't think elements are indexable
8984 return el[matchesSelectorFunc](selector);
8985 }
8986
8987 // Works up the tree to the draggable itself attempting to match selector.
8988 function matchesSelectorAndParentsTo(el /*: Node*/, selector /*: string*/, baseNode /*: Node*/) /*: boolean*/{
8989 let node = el;
8990 do {
8991 if (matchesSelector(node, selector)) return true;
8992 if (node === baseNode) return false;
8993 // $FlowIgnore[incompatible-type]
8994 node = node.parentNode;
8995 } while (node);
8996 return false;
8997 }
8998 function addEvent(el /*: ?Node*/, event /*: string*/, handler /*: Function*/, inputOptions /*: Object*/) /*: void*/{
8999 if (!el) return;
9000 const options = {
9001 capture: true,
9002 ...inputOptions
9003 };
9004 // $FlowIgnore[method-unbinding]
9005 if (el.addEventListener) {
9006 el.addEventListener(event, handler, options);
9007 } else if (el.attachEvent) {
9008 el.attachEvent('on' + event, handler);
9009 } else {
9010 // $FlowIgnore: Doesn't think elements are indexable
9011 el['on' + event] = handler;
9012 }
9013 }
9014 function removeEvent(el /*: ?Node*/, event /*: string*/, handler /*: Function*/, inputOptions /*: Object*/) /*: void*/{
9015 if (!el) return;
9016 const options = {
9017 capture: true,
9018 ...inputOptions
9019 };
9020 // $FlowIgnore[method-unbinding]
9021 if (el.removeEventListener) {
9022 el.removeEventListener(event, handler, options);
9023 } else if (el.detachEvent) {
9024 el.detachEvent('on' + event, handler);
9025 } else {
9026 // $FlowIgnore: Doesn't think elements are indexable
9027 el['on' + event] = null;
9028 }
9029 }
9030 function outerHeight(node /*: HTMLElement*/) /*: number*/{
9031 // This is deliberately excluding margin for our calculations, since we are using
9032 // offsetTop which is including margin. See getBoundPosition
9033 let height = node.clientHeight;
9034 const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
9035 height += (0, _shims.int)(computedStyle.borderTopWidth);
9036 height += (0, _shims.int)(computedStyle.borderBottomWidth);
9037 return height;
9038 }
9039 function outerWidth(node /*: HTMLElement*/) /*: number*/{
9040 // This is deliberately excluding margin for our calculations, since we are using
9041 // offsetLeft which is including margin. See getBoundPosition
9042 let width = node.clientWidth;
9043 const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
9044 width += (0, _shims.int)(computedStyle.borderLeftWidth);
9045 width += (0, _shims.int)(computedStyle.borderRightWidth);
9046 return width;
9047 }
9048 function innerHeight(node /*: HTMLElement*/) /*: number*/{
9049 let height = node.clientHeight;
9050 const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
9051 height -= (0, _shims.int)(computedStyle.paddingTop);
9052 height -= (0, _shims.int)(computedStyle.paddingBottom);
9053 return height;
9054 }
9055 function innerWidth(node /*: HTMLElement*/) /*: number*/{
9056 let width = node.clientWidth;
9057 const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
9058 width -= (0, _shims.int)(computedStyle.paddingLeft);
9059 width -= (0, _shims.int)(computedStyle.paddingRight);
9060 return width;
9061 }
9062 /*:: interface EventWithOffset {
9063 clientX: number, clientY: number
9064 }*/
9065 // Get from offsetParent
9066 function offsetXYFromParent(evt /*: EventWithOffset*/, offsetParent /*: HTMLElement*/, scale /*: number*/) /*: ControlPosition*/{
9067 const isBody = offsetParent === offsetParent.ownerDocument.body;
9068 const offsetParentRect = isBody ? {
9069 left: 0,
9070 top: 0
9071 } : offsetParent.getBoundingClientRect();
9072 const x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;
9073 const y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;
9074 return {
9075 x,
9076 y
9077 };
9078 }
9079 function createCSSTransform(controlPos /*: ControlPosition*/, positionOffset /*: PositionOffsetControlPosition*/) /*: Object*/{
9080 const translation = getTranslation(controlPos, positionOffset, 'px');
9081 return {
9082 [(0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default)]: translation
9083 };
9084 }
9085 function createSVGTransform(controlPos /*: ControlPosition*/, positionOffset /*: PositionOffsetControlPosition*/) /*: string*/{
9086 const translation = getTranslation(controlPos, positionOffset, '');
9087 return translation;
9088 }
9089 function getTranslation(_ref /*:: */, positionOffset /*: PositionOffsetControlPosition*/, unitSuffix /*: string*/) /*: string*/{
9090 let {
9091 x,
9092 y
9093 } /*: ControlPosition*/ = _ref /*: ControlPosition*/;
9094 let translation = "translate(".concat(x).concat(unitSuffix, ",").concat(y).concat(unitSuffix, ")");
9095 if (positionOffset) {
9096 const defaultX = "".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);
9097 const defaultY = "".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);
9098 translation = "translate(".concat(defaultX, ", ").concat(defaultY, ")") + translation;
9099 }
9100 return translation;
9101 }
9102 function getTouch(e /*: MouseTouchEvent*/, identifier /*: number*/) /*: ?{clientX: number, clientY: number}*/{
9103 return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, t => identifier === t.identifier) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, t => identifier === t.identifier);
9104 }
9105 function getTouchIdentifier(e /*: MouseTouchEvent*/) /*: ?number*/{
9106 if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;
9107 if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;
9108 }
9109
9110 // User-select Hacks:
9111 //
9112 // Useful for preventing blue highlights all over everything when dragging.
9113
9114 // Note we're passing `document` b/c we could be iframed
9115 function addUserSelectStyles(doc /*: ?Document*/) {
9116 if (!doc) return;
9117 let styleEl = doc.getElementById('react-draggable-style-el');
9118 if (!styleEl) {
9119 styleEl = doc.createElement('style');
9120 styleEl.type = 'text/css';
9121 styleEl.id = 'react-draggable-style-el';
9122 styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n';
9123 styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\n';
9124 doc.getElementsByTagName('head')[0].appendChild(styleEl);
9125 }
9126 if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');
9127 }
9128 function removeUserSelectStyles(doc /*: ?Document*/) {
9129 if (!doc) return;
9130 try {
9131 if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection');
9132 // $FlowIgnore: IE
9133 if (doc.selection) {
9134 // $FlowIgnore: IE
9135 doc.selection.empty();
9136 } else {
9137 // Remove selection caused by scroll, unless it's a focused input
9138 // (we use doc.defaultView in case we're in an iframe)
9139 const selection = (doc.defaultView || window).getSelection();
9140 if (selection && selection.type !== 'Caret') {
9141 selection.removeAllRanges();
9142 }
9143 }
9144 } catch (e) {
9145 // probably IE
9146 }
9147 }
9148 function addClassName(el /*: HTMLElement*/, className /*: string*/) {
9149 if (el.classList) {
9150 el.classList.add(className);
9151 } else {
9152 if (!el.className.match(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)")))) {
9153 el.className += " ".concat(className);
9154 }
9155 }
9156 }
9157 function removeClassName(el /*: HTMLElement*/, className /*: string*/) {
9158 if (el.classList) {
9159 el.classList.remove(className);
9160 } else {
9161 el.className = el.className.replace(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)"), 'g'), '');
9162 }
9163 }
9164
9165 /***/ }),
9166
9167 /***/ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js":
9168 /*!********************************************************************!*\
9169 !*** ../node_modules/react-draggable/build/cjs/utils/getPrefix.js ***!
9170 \********************************************************************/
9171 /***/ ((__unused_webpack_module, exports) => {
9172
9173 "use strict";
9174
9175
9176 Object.defineProperty(exports, "__esModule", ({
9177 value: true
9178 }));
9179 exports.browserPrefixToKey = browserPrefixToKey;
9180 exports.browserPrefixToStyle = browserPrefixToStyle;
9181 exports["default"] = void 0;
9182 exports.getPrefix = getPrefix;
9183 const prefixes = ['Moz', 'Webkit', 'O', 'ms'];
9184 function getPrefix() /*: string*/{
9185 var _window$document;
9186 let prop /*: string*/ = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';
9187 // Ensure we're running in an environment where there is actually a global
9188 // `window` obj
9189 if (typeof window === 'undefined') return '';
9190
9191 // If we're in a pseudo-browser server-side environment, this access
9192 // path may not exist, so bail out if it doesn't.
9193 const style = (_window$document = window.document) === null || _window$document === void 0 || (_window$document = _window$document.documentElement) === null || _window$document === void 0 ? void 0 : _window$document.style;
9194 if (!style) return '';
9195 if (prop in style) return '';
9196 for (let i = 0; i < prefixes.length; i++) {
9197 if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];
9198 }
9199 return '';
9200 }
9201 function browserPrefixToKey(prop /*: string*/, prefix /*: string*/) /*: string*/{
9202 return prefix ? "".concat(prefix).concat(kebabToTitleCase(prop)) : prop;
9203 }
9204 function browserPrefixToStyle(prop /*: string*/, prefix /*: string*/) /*: string*/{
9205 return prefix ? "-".concat(prefix.toLowerCase(), "-").concat(prop) : prop;
9206 }
9207 function kebabToTitleCase(str /*: string*/) /*: string*/{
9208 let out = '';
9209 let shouldCapitalize = true;
9210 for (let i = 0; i < str.length; i++) {
9211 if (shouldCapitalize) {
9212 out += str[i].toUpperCase();
9213 shouldCapitalize = false;
9214 } else if (str[i] === '-') {
9215 shouldCapitalize = true;
9216 } else {
9217 out += str[i];
9218 }
9219 }
9220 return out;
9221 }
9222
9223 // Default export is the prefix itself, like 'Moz', 'Webkit', etc
9224 // Note that you may have to re-test for certain things; for instance, Chrome 50
9225 // can handle unprefixed `transform`, but not unprefixed `user-select`
9226 var _default = exports["default"] = (getPrefix() /*: string*/);
9227
9228 /***/ }),
9229
9230 /***/ "../node_modules/react-draggable/build/cjs/utils/log.js":
9231 /*!**************************************************************!*\
9232 !*** ../node_modules/react-draggable/build/cjs/utils/log.js ***!
9233 \**************************************************************/
9234 /***/ ((__unused_webpack_module, exports) => {
9235
9236 "use strict";
9237
9238
9239 Object.defineProperty(exports, "__esModule", ({
9240 value: true
9241 }));
9242 exports["default"] = log;
9243 /*eslint no-console:0*/
9244 function log() {
9245 if (false) {}
9246 }
9247
9248 /***/ }),
9249
9250 /***/ "../node_modules/react-draggable/build/cjs/utils/positionFns.js":
9251 /*!**********************************************************************!*\
9252 !*** ../node_modules/react-draggable/build/cjs/utils/positionFns.js ***!
9253 \**********************************************************************/
9254 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9255
9256 "use strict";
9257
9258
9259 Object.defineProperty(exports, "__esModule", ({
9260 value: true
9261 }));
9262 exports.canDragX = canDragX;
9263 exports.canDragY = canDragY;
9264 exports.createCoreData = createCoreData;
9265 exports.createDraggableData = createDraggableData;
9266 exports.getBoundPosition = getBoundPosition;
9267 exports.getControlPosition = getControlPosition;
9268 exports.snapToGrid = snapToGrid;
9269 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9270 var _domFns = __webpack_require__(/*! ./domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9271 /*:: import type Draggable from '../Draggable';*/
9272 /*:: import type {Bounds, ControlPosition, DraggableData, MouseTouchEvent} from './types';*/
9273 /*:: import type DraggableCore from '../DraggableCore';*/
9274 function getBoundPosition(draggable /*: Draggable*/, x /*: number*/, y /*: number*/) /*: [number, number]*/{
9275 // If no bounds, short-circuit and move on
9276 if (!draggable.props.bounds) return [x, y];
9277
9278 // Clone new bounds
9279 let {
9280 bounds
9281 } = draggable.props;
9282 bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);
9283 const node = findDOMNode(draggable);
9284 if (typeof bounds === 'string') {
9285 const {
9286 ownerDocument
9287 } = node;
9288 const ownerWindow = ownerDocument.defaultView;
9289 let boundNode;
9290 if (bounds === 'parent') {
9291 boundNode = node.parentNode;
9292 } else {
9293 boundNode = ownerDocument.querySelector(bounds);
9294 }
9295 if (!(boundNode instanceof ownerWindow.HTMLElement)) {
9296 throw new Error('Bounds selector "' + bounds + '" could not find an element.');
9297 }
9298 const boundNodeEl /*: HTMLElement*/ = boundNode; // for Flow, can't seem to refine correctly
9299 const nodeStyle = ownerWindow.getComputedStyle(node);
9300 const boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl);
9301 // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.
9302 bounds = {
9303 left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),
9304 top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),
9305 right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),
9306 bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)
9307 };
9308 }
9309
9310 // Keep x and y below right and bottom limits...
9311 if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);
9312 if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom);
9313
9314 // But above left and top limits.
9315 if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);
9316 if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);
9317 return [x, y];
9318 }
9319 function snapToGrid(grid /*: [number, number]*/, pendingX /*: number*/, pendingY /*: number*/) /*: [number, number]*/{
9320 const x = Math.round(pendingX / grid[0]) * grid[0];
9321 const y = Math.round(pendingY / grid[1]) * grid[1];
9322 return [x, y];
9323 }
9324 function canDragX(draggable /*: Draggable*/) /*: boolean*/{
9325 return draggable.props.axis === 'both' || draggable.props.axis === 'x';
9326 }
9327 function canDragY(draggable /*: Draggable*/) /*: boolean*/{
9328 return draggable.props.axis === 'both' || draggable.props.axis === 'y';
9329 }
9330
9331 // Get {x, y} positions from event.
9332 function getControlPosition(e /*: MouseTouchEvent*/, touchIdentifier /*: ?number*/, draggableCore /*: DraggableCore*/) /*: ?ControlPosition*/{
9333 const touchObj = typeof touchIdentifier === 'number' ? (0, _domFns.getTouch)(e, touchIdentifier) : null;
9334 if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch
9335 const node = findDOMNode(draggableCore);
9336 // User can provide an offsetParent if desired.
9337 const offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;
9338 return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);
9339 }
9340
9341 // Create an data object exposed by <DraggableCore>'s events
9342 function createCoreData(draggable /*: DraggableCore*/, x /*: number*/, y /*: number*/) /*: DraggableData*/{
9343 const isStart = !(0, _shims.isNum)(draggable.lastX);
9344 const node = findDOMNode(draggable);
9345 if (isStart) {
9346 // If this is our first move, use the x and y as last coords.
9347 return {
9348 node,
9349 deltaX: 0,
9350 deltaY: 0,
9351 lastX: x,
9352 lastY: y,
9353 x,
9354 y
9355 };
9356 } else {
9357 // Otherwise calculate proper values.
9358 return {
9359 node,
9360 deltaX: x - draggable.lastX,
9361 deltaY: y - draggable.lastY,
9362 lastX: draggable.lastX,
9363 lastY: draggable.lastY,
9364 x,
9365 y
9366 };
9367 }
9368 }
9369
9370 // Create an data exposed by <Draggable>'s events
9371 function createDraggableData(draggable /*: Draggable*/, coreData /*: DraggableData*/) /*: DraggableData*/{
9372 const scale = draggable.props.scale;
9373 return {
9374 node: coreData.node,
9375 x: draggable.state.x + coreData.deltaX / scale,
9376 y: draggable.state.y + coreData.deltaY / scale,
9377 deltaX: coreData.deltaX / scale,
9378 deltaY: coreData.deltaY / scale,
9379 lastX: draggable.state.x,
9380 lastY: draggable.state.y
9381 };
9382 }
9383
9384 // A lot faster than stringify/parse
9385 function cloneBounds(bounds /*: Bounds*/) /*: Bounds*/{
9386 return {
9387 left: bounds.left,
9388 top: bounds.top,
9389 right: bounds.right,
9390 bottom: bounds.bottom
9391 };
9392 }
9393 function findDOMNode(draggable /*: Draggable | DraggableCore*/) /*: HTMLElement*/{
9394 const node = draggable.findDOMNode();
9395 if (!node) {
9396 throw new Error('<DraggableCore>: Unmounted during event!');
9397 }
9398 // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME
9399 return node;
9400 }
9401
9402 /***/ }),
9403
9404 /***/ "../node_modules/react-draggable/build/cjs/utils/shims.js":
9405 /*!****************************************************************!*\
9406 !*** ../node_modules/react-draggable/build/cjs/utils/shims.js ***!
9407 \****************************************************************/
9408 /***/ ((__unused_webpack_module, exports) => {
9409
9410 "use strict";
9411
9412
9413 Object.defineProperty(exports, "__esModule", ({
9414 value: true
9415 }));
9416 exports.dontSetMe = dontSetMe;
9417 exports.findInArray = findInArray;
9418 exports.int = int;
9419 exports.isFunction = isFunction;
9420 exports.isNum = isNum;
9421 // @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc
9422 function findInArray(array /*: Array<any> | TouchList*/, callback /*: Function*/) /*: any*/{
9423 for (let i = 0, length = array.length; i < length; i++) {
9424 if (callback.apply(callback, [array[i], i, array])) return array[i];
9425 }
9426 }
9427 function isFunction(func /*: any*/) /*: boolean %checks*/{
9428 // $FlowIgnore[method-unbinding]
9429 return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';
9430 }
9431 function isNum(num /*: any*/) /*: boolean %checks*/{
9432 return typeof num === 'number' && !isNaN(num);
9433 }
9434 function int(a /*: string*/) /*: number*/{
9435 return parseInt(a, 10);
9436 }
9437 function dontSetMe(props /*: Object*/, propName /*: string*/, componentName /*: string*/) /*: ?Error*/{
9438 if (props[propName]) {
9439 return new Error("Invalid prop ".concat(propName, " passed to ").concat(componentName, " - do not set this, set it on the child."));
9440 }
9441 }
9442
9443 /***/ }),
9444
9445 /***/ "../node_modules/react-draggable/node_modules/clsx/dist/clsx.m.js":
9446 /*!************************************************************************!*\
9447 !*** ../node_modules/react-draggable/node_modules/clsx/dist/clsx.m.js ***!
9448 \************************************************************************/
9449 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9450
9451 "use strict";
9452 __webpack_require__.r(__webpack_exports__);
9453 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9454 /* harmony export */ clsx: () => (/* binding */ clsx),
9455 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
9456 /* harmony export */ });
9457 function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);else for(t in e)e[t]&&(n&&(n+=" "),n+=t);return n}function clsx(){for(var e,t,f=0,n="";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (clsx);
9458
9459 /***/ }),
9460
9461 /***/ "../node_modules/shallowequal/index.js":
9462 /*!*********************************************!*\
9463 !*** ../node_modules/shallowequal/index.js ***!
9464 \*********************************************/
9465 /***/ ((module) => {
9466
9467 //
9468
9469 module.exports = function shallowEqual(objA, objB, compare, compareContext) {
9470 var ret = compare ? compare.call(compareContext, objA, objB) : void 0;
9471
9472 if (ret !== void 0) {
9473 return !!ret;
9474 }
9475
9476 if (objA === objB) {
9477 return true;
9478 }
9479
9480 if (typeof objA !== "object" || !objA || typeof objB !== "object" || !objB) {
9481 return false;
9482 }
9483
9484 var keysA = Object.keys(objA);
9485 var keysB = Object.keys(objB);
9486
9487 if (keysA.length !== keysB.length) {
9488 return false;
9489 }
9490
9491 var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);
9492
9493 // Test for A's keys different from B.
9494 for (var idx = 0; idx < keysA.length; idx++) {
9495 var key = keysA[idx];
9496
9497 if (!bHasOwnProperty(key)) {
9498 return false;
9499 }
9500
9501 var valueA = objA[key];
9502 var valueB = objB[key];
9503
9504 ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;
9505
9506 if (ret === false || (ret === void 0 && valueA !== valueB)) {
9507 return false;
9508 }
9509 }
9510
9511 return true;
9512 };
9513
9514
9515 /***/ }),
9516
9517 /***/ "../node_modules/styled-components/dist/styled-components.browser.esm.js":
9518 /*!*******************************************************************************!*\
9519 !*** ../node_modules/styled-components/dist/styled-components.browser.esm.js ***!
9520 \*******************************************************************************/
9521 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9522
9523 "use strict";
9524 __webpack_require__.r(__webpack_exports__);
9525 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9526 /* harmony export */ ServerStyleSheet: () => (/* binding */ vt),
9527 /* harmony export */ StyleSheetConsumer: () => (/* binding */ Be),
9528 /* harmony export */ StyleSheetContext: () => (/* binding */ $e),
9529 /* harmony export */ StyleSheetManager: () => (/* binding */ Ye),
9530 /* harmony export */ ThemeConsumer: () => (/* binding */ tt),
9531 /* harmony export */ ThemeContext: () => (/* binding */ et),
9532 /* harmony export */ ThemeProvider: () => (/* binding */ ot),
9533 /* harmony export */ __PRIVATE__: () => (/* binding */ gt),
9534 /* harmony export */ createGlobalStyle: () => (/* binding */ ft),
9535 /* harmony export */ css: () => (/* binding */ lt),
9536 /* harmony export */ "default": () => (/* binding */ dt),
9537 /* harmony export */ isStyledComponent: () => (/* binding */ se),
9538 /* harmony export */ keyframes: () => (/* binding */ mt),
9539 /* harmony export */ styled: () => (/* binding */ dt),
9540 /* harmony export */ useTheme: () => (/* binding */ nt),
9541 /* harmony export */ version: () => (/* binding */ v),
9542 /* harmony export */ withTheme: () => (/* binding */ yt)
9543 /* harmony export */ });
9544 /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! tslib */ "../node_modules/styled-components/node_modules/tslib/tslib.es6.mjs");
9545 /* harmony import */ var _emotion_is_prop_valid__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @emotion/is-prop-valid */ "../node_modules/styled-components/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js");
9546 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
9547 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
9548 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! shallowequal */ "../node_modules/shallowequal/index.js");
9549 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(shallowequal__WEBPACK_IMPORTED_MODULE_2__);
9550 /* harmony import */ var stylis__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! stylis */ "../node_modules/styled-components/node_modules/stylis/src/Enum.js");
9551 /* harmony import */ var stylis__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! stylis */ "../node_modules/styled-components/node_modules/stylis/src/Middleware.js");
9552 /* harmony import */ var stylis__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! stylis */ "../node_modules/styled-components/node_modules/stylis/src/Serializer.js");
9553 /* harmony import */ var stylis__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! stylis */ "../node_modules/styled-components/node_modules/stylis/src/Parser.js");
9554 /* harmony import */ var _emotion_unitless__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @emotion/unitless */ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js");
9555 var f="undefined"!=typeof process&&void 0!==process.env&&(process.env.REACT_APP_SC_ATTR||process.env.SC_ATTR)||"data-styled",m="active",y="data-styled-version",v="6.1.13",g="/*!sc*/\n",S="undefined"!=typeof window&&"HTMLElement"in window,w=Boolean("boolean"==typeof SC_DISABLE_SPEEDY?SC_DISABLE_SPEEDY:"undefined"!=typeof process&&void 0!==process.env&&void 0!==process.env.REACT_APP_SC_DISABLE_SPEEDY&&""!==process.env.REACT_APP_SC_DISABLE_SPEEDY?"false"!==process.env.REACT_APP_SC_DISABLE_SPEEDY&&process.env.REACT_APP_SC_DISABLE_SPEEDY:"undefined"!=typeof process&&void 0!==process.env&&void 0!==process.env.SC_DISABLE_SPEEDY&&""!==process.env.SC_DISABLE_SPEEDY?"false"!==process.env.SC_DISABLE_SPEEDY&&process.env.SC_DISABLE_SPEEDY:"production"!=="development"),b={},E=/invalid hook call/i,N=new Set,P=function(t,n){if(true){var o=n?' with the id of "'.concat(n,'"'):"",s="The component ".concat(t).concat(o," has been created dynamically.\n")+"You may see this warning because you've called styled inside another component.\nTo resolve this only create new StyledComponents outside of any render method and function component.",i=console.error;try{var a=!0;console.error=function(t){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];E.test(t)?(a=!1,N.delete(s)):i.apply(void 0,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)([t],n,!1))},(0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(),a&&!N.has(s)&&(console.warn(s),N.add(s))}catch(e){E.test(e.message)&&N.delete(s)}finally{console.error=i}}},_=Object.freeze([]),C=Object.freeze({});function I(e,t,n){return void 0===n&&(n=C),e.theme!==n.theme&&e.theme||t||n.theme}var A=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","track","u","ul","use","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"]),O=/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g,D=/(^-|-$)/g;function R(e){return e.replace(O,"-").replace(D,"")}var T=/(a)(d)/gi,k=52,j=function(e){return String.fromCharCode(e+(e>25?39:97))};function x(e){var t,n="";for(t=Math.abs(e);t>k;t=t/k|0)n=j(t%k)+n;return(j(t%k)+n).replace(T,"$1-$2")}var V,F=5381,M=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},z=function(e){return M(F,e)};function $(e){return x(z(e)>>>0)}function B(e){return true&&"string"==typeof e&&e||e.displayName||e.name||"Component"}function L(e){return"string"==typeof e&&( false||e.charAt(0)===e.charAt(0).toLowerCase())}var G="function"==typeof Symbol&&Symbol.for,Y=G?Symbol.for("react.memo"):60115,W=G?Symbol.for("react.forward_ref"):60112,q={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},H={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},U={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},J=((V={})[W]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},V[Y]=U,V);function X(e){return("type"in(t=e)&&t.type.$$typeof)===Y?U:"$$typeof"in e?J[e.$$typeof]:q;var t}var Z=Object.defineProperty,K=Object.getOwnPropertyNames,Q=Object.getOwnPropertySymbols,ee=Object.getOwnPropertyDescriptor,te=Object.getPrototypeOf,ne=Object.prototype;function oe(e,t,n){if("string"!=typeof t){if(ne){var o=te(t);o&&o!==ne&&oe(e,o,n)}var r=K(t);Q&&(r=r.concat(Q(t)));for(var s=X(e),i=X(t),a=0;a<r.length;++a){var c=r[a];if(!(c in H||n&&n[c]||i&&c in i||s&&c in s)){var l=ee(t,c);try{Z(e,c,l)}catch(e){}}}}return e}function re(e){return"function"==typeof e}function se(e){return"object"==typeof e&&"styledComponentId"in e}function ie(e,t){return e&&t?"".concat(e," ").concat(t):e||t||""}function ae(e,t){if(0===e.length)return"";for(var n=e[0],o=1;o<e.length;o++)n+=t?t+e[o]:e[o];return n}function ce(e){return null!==e&&"object"==typeof e&&e.constructor.name===Object.name&&!("props"in e&&e.$$typeof)}function le(e,t,n){if(void 0===n&&(n=!1),!n&&!ce(e)&&!Array.isArray(e))return t;if(Array.isArray(t))for(var o=0;o<t.length;o++)e[o]=le(e[o],t[o]);else if(ce(t))for(var o in t)e[o]=le(e[o],t[o]);return e}function ue(e,t){Object.defineProperty(e,"toString",{value:t})}var pe= true?{1:"Cannot create styled-component for component: %s.\n\n",2:"Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\n\n- Are you trying to reuse it across renders?\n- Are you accidentally calling collectStyles twice?\n\n",3:"Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\n\n",4:"The `StyleSheetManager` expects a valid target or sheet prop!\n\n- Does this error occur on the client and is your target falsy?\n- Does this error occur on the server and is the sheet falsy?\n\n",5:"The clone method cannot be used on the client!\n\n- Are you running in a client-like environment on the server?\n- Are you trying to run SSR on the client?\n\n",6:"Trying to insert a new style tag, but the given Node is unmounted!\n\n- Are you using a custom target that isn't mounted?\n- Does your document not have a valid head element?\n- Have you accidentally removed a style tag manually?\n\n",7:'ThemeProvider: Please return an object from your "theme" prop function, e.g.\n\n```js\ntheme={() => ({})}\n```\n\n',8:'ThemeProvider: Please make your "theme" prop an object.\n\n',9:"Missing document `<head>`\n\n",10:"Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\n\n",11:"_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\n\n",12:"It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\`\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\n\n",13:"%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\n\n",14:'ThemeProvider: "theme" prop is required.\n\n',15:"A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\n\n```js\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\n```\n\n",16:"Reached the limit of how many styled components may be created at group %s.\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\nas for instance in your render method then you may be running into this limitation.\n\n",17:"CSSStyleSheet could not be found on HTMLStyleElement.\nHas styled-components' style tag been unmounted or altered by another script?\n",18:"ThemeProvider: Please make sure your useTheme hook is within a `<ThemeProvider>`"}:0;function de(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=e[0],o=[],r=1,s=e.length;r<s;r+=1)o.push(e[r]);return o.forEach(function(e){n=n.replace(/%[a-z]/,e)}),n}function he(t){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];return false?0:new Error(de.apply(void 0,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)([pe[t]],n,!1)).trim())}var fe=function(){function e(e){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=e}return e.prototype.indexOfGroup=function(e){for(var t=0,n=0;n<e;n++)t+=this.groupSizes[n];return t},e.prototype.insertRules=function(e,t){if(e>=this.groupSizes.length){for(var n=this.groupSizes,o=n.length,r=o;e>=r;)if((r<<=1)<0)throw he(16,"".concat(e));this.groupSizes=new Uint32Array(r),this.groupSizes.set(n),this.length=r;for(var s=o;s<r;s++)this.groupSizes[s]=0}for(var i=this.indexOfGroup(e+1),a=(s=0,t.length);s<a;s++)this.tag.insertRule(i,t[s])&&(this.groupSizes[e]++,i++)},e.prototype.clearGroup=function(e){if(e<this.length){var t=this.groupSizes[e],n=this.indexOfGroup(e),o=n+t;this.groupSizes[e]=0;for(var r=n;r<o;r++)this.tag.deleteRule(n)}},e.prototype.getGroup=function(e){var t="";if(e>=this.length||0===this.groupSizes[e])return t;for(var n=this.groupSizes[e],o=this.indexOfGroup(e),r=o+n,s=o;s<r;s++)t+="".concat(this.tag.getRule(s)).concat(g);return t},e}(),me=1<<30,ye=new Map,ve=new Map,ge=1,Se=function(e){if(ye.has(e))return ye.get(e);for(;ve.has(ge);)ge++;var t=ge++;if( true&&((0|t)<0||t>me))throw he(16,"".concat(t));return ye.set(e,t),ve.set(t,e),t},we=function(e,t){ge=t+1,ye.set(e,t),ve.set(t,e)},be="style[".concat(f,"][").concat(y,'="').concat(v,'"]'),Ee=new RegExp("^".concat(f,'\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)')),Ne=function(e,t,n){for(var o,r=n.split(","),s=0,i=r.length;s<i;s++)(o=r[s])&&e.registerName(t,o)},Pe=function(e,t){for(var n,o=(null!==(n=t.textContent)&&void 0!==n?n:"").split(g),r=[],s=0,i=o.length;s<i;s++){var a=o[s].trim();if(a){var c=a.match(Ee);if(c){var l=0|parseInt(c[1],10),u=c[2];0!==l&&(we(u,l),Ne(e,u,c[3]),e.getTag().insertRules(l,r)),r.length=0}else r.push(a)}}},_e=function(e){for(var t=document.querySelectorAll(be),n=0,o=t.length;n<o;n++){var r=t[n];r&&r.getAttribute(f)!==m&&(Pe(e,r),r.parentNode&&r.parentNode.removeChild(r))}};function Ce(){return true?__webpack_require__.nc:0}var Ie=function(e){var t=document.head,n=e||t,o=document.createElement("style"),r=function(e){var t=Array.from(e.querySelectorAll("style[".concat(f,"]")));return t[t.length-1]}(n),s=void 0!==r?r.nextSibling:null;o.setAttribute(f,m),o.setAttribute(y,v);var i=Ce();return i&&o.setAttribute("nonce",i),n.insertBefore(o,s),o},Ae=function(){function e(e){this.element=Ie(e),this.element.appendChild(document.createTextNode("")),this.sheet=function(e){if(e.sheet)return e.sheet;for(var t=document.styleSheets,n=0,o=t.length;n<o;n++){var r=t[n];if(r.ownerNode===e)return r}throw he(17)}(this.element),this.length=0}return e.prototype.insertRule=function(e,t){try{return this.sheet.insertRule(t,e),this.length++,!0}catch(e){return!1}},e.prototype.deleteRule=function(e){this.sheet.deleteRule(e),this.length--},e.prototype.getRule=function(e){var t=this.sheet.cssRules[e];return t&&t.cssText?t.cssText:""},e}(),Oe=function(){function e(e){this.element=Ie(e),this.nodes=this.element.childNodes,this.length=0}return e.prototype.insertRule=function(e,t){if(e<=this.length&&e>=0){var n=document.createTextNode(t);return this.element.insertBefore(n,this.nodes[e]||null),this.length++,!0}return!1},e.prototype.deleteRule=function(e){this.element.removeChild(this.nodes[e]),this.length--},e.prototype.getRule=function(e){return e<this.length?this.nodes[e].textContent:""},e}(),De=function(){function e(e){this.rules=[],this.length=0}return e.prototype.insertRule=function(e,t){return e<=this.length&&(this.rules.splice(e,0,t),this.length++,!0)},e.prototype.deleteRule=function(e){this.rules.splice(e,1),this.length--},e.prototype.getRule=function(e){return e<this.length?this.rules[e]:""},e}(),Re=S,Te={isServer:!S,useCSSOMInjection:!w},ke=function(){function e(e,n,o){void 0===e&&(e=C),void 0===n&&(n={});var r=this;this.options=(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},Te),e),this.gs=n,this.names=new Map(o),this.server=!!e.isServer,!this.server&&S&&Re&&(Re=!1,_e(this)),ue(this,function(){return function(e){for(var t=e.getTag(),n=t.length,o="",r=function(n){var r=function(e){return ve.get(e)}(n);if(void 0===r)return"continue";var s=e.names.get(r),i=t.getGroup(n);if(void 0===s||!s.size||0===i.length)return"continue";var a="".concat(f,".g").concat(n,'[id="').concat(r,'"]'),c="";void 0!==s&&s.forEach(function(e){e.length>0&&(c+="".concat(e,","))}),o+="".concat(i).concat(a,'{content:"').concat(c,'"}').concat(g)},s=0;s<n;s++)r(s);return o}(r)})}return e.registerId=function(e){return Se(e)},e.prototype.rehydrate=function(){!this.server&&S&&_e(this)},e.prototype.reconstructWithOptions=function(n,o){return void 0===o&&(o=!0),new e((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},this.options),n),this.gs,o&&this.names||void 0)},e.prototype.allocateGSInstance=function(e){return this.gs[e]=(this.gs[e]||0)+1},e.prototype.getTag=function(){return this.tag||(this.tag=(e=function(e){var t=e.useCSSOMInjection,n=e.target;return e.isServer?new De(n):t?new Ae(n):new Oe(n)}(this.options),new fe(e)));var e},e.prototype.hasNameForId=function(e,t){return this.names.has(e)&&this.names.get(e).has(t)},e.prototype.registerName=function(e,t){if(Se(e),this.names.has(e))this.names.get(e).add(t);else{var n=new Set;n.add(t),this.names.set(e,n)}},e.prototype.insertRules=function(e,t,n){this.registerName(e,t),this.getTag().insertRules(Se(e),n)},e.prototype.clearNames=function(e){this.names.has(e)&&this.names.get(e).clear()},e.prototype.clearRules=function(e){this.getTag().clearGroup(Se(e)),this.clearNames(e)},e.prototype.clearTag=function(){this.tag=void 0},e}(),je=/&/g,xe=/^\s*\/\/.*$/gm;function Ve(e,t){return e.map(function(e){return"rule"===e.type&&(e.value="".concat(t," ").concat(e.value),e.value=e.value.replaceAll(",",",".concat(t," ")),e.props=e.props.map(function(e){return"".concat(t," ").concat(e)})),Array.isArray(e.children)&&"@keyframes"!==e.type&&(e.children=Ve(e.children,t)),e})}function Fe(e){var t,n,o,r=void 0===e?C:e,s=r.options,i=void 0===s?C:s,a=r.plugins,c=void 0===a?_:a,l=function(e,o,r){return r.startsWith(n)&&r.endsWith(n)&&r.replaceAll(n,"").length>0?".".concat(t):e},u=c.slice();u.push(function(e){e.type===stylis__WEBPACK_IMPORTED_MODULE_5__.RULESET&&e.value.includes("&")&&(e.props[0]=e.props[0].replace(je,n).replace(o,l))}),i.prefix&&u.push(stylis__WEBPACK_IMPORTED_MODULE_6__.prefixer),u.push(stylis__WEBPACK_IMPORTED_MODULE_7__.stringify);var p=function(e,r,s,a){void 0===r&&(r=""),void 0===s&&(s=""),void 0===a&&(a="&"),t=a,n=r,o=new RegExp("\\".concat(n,"\\b"),"g");var c=e.replace(xe,""),l=stylis__WEBPACK_IMPORTED_MODULE_8__.compile(s||r?"".concat(s," ").concat(r," { ").concat(c," }"):c);i.namespace&&(l=Ve(l,i.namespace));var p=[];return stylis__WEBPACK_IMPORTED_MODULE_7__.serialize(l,stylis__WEBPACK_IMPORTED_MODULE_6__.middleware(u.concat(stylis__WEBPACK_IMPORTED_MODULE_6__.rulesheet(function(e){return p.push(e)})))),p};return p.hash=c.length?c.reduce(function(e,t){return t.name||he(15),M(e,t.name)},F).toString():"",p}var Me=new ke,ze=Fe(),$e=react__WEBPACK_IMPORTED_MODULE_1___default().createContext({shouldForwardProp:void 0,styleSheet:Me,stylis:ze}),Be=$e.Consumer,Le=react__WEBPACK_IMPORTED_MODULE_1___default().createContext(void 0);function Ge(){return (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)($e)}function Ye(e){var t=(0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(e.stylisPlugins),n=t[0],r=t[1],c=Ge().styleSheet,l=(0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(function(){var t=c;return e.sheet?t=e.sheet:e.target&&(t=t.reconstructWithOptions({target:e.target},!1)),e.disableCSSOMInjection&&(t=t.reconstructWithOptions({useCSSOMInjection:!1})),t},[e.disableCSSOMInjection,e.sheet,e.target,c]),u=(0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(function(){return Fe({options:{namespace:e.namespace,prefix:e.enableVendorPrefixes},plugins:n})},[e.enableVendorPrefixes,e.namespace,n]);(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function(){shallowequal__WEBPACK_IMPORTED_MODULE_2___default()(n,e.stylisPlugins)||r(e.stylisPlugins)},[e.stylisPlugins]);var d=(0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(function(){return{shouldForwardProp:e.shouldForwardProp,styleSheet:l,stylis:u}},[e.shouldForwardProp,l,u]);return react__WEBPACK_IMPORTED_MODULE_1___default().createElement($e.Provider,{value:d},react__WEBPACK_IMPORTED_MODULE_1___default().createElement(Le.Provider,{value:u},e.children))}var We=function(){function e(e,t){var n=this;this.inject=function(e,t){void 0===t&&(t=ze);var o=n.name+t.hash;e.hasNameForId(n.id,o)||e.insertRules(n.id,o,t(n.rules,o,"@keyframes"))},this.name=e,this.id="sc-keyframes-".concat(e),this.rules=t,ue(this,function(){throw he(12,String(n.name))})}return e.prototype.getName=function(e){return void 0===e&&(e=ze),this.name+e.hash},e}(),qe=function(e){return e>="A"&&e<="Z"};function He(e){for(var t="",n=0;n<e.length;n++){var o=e[n];if(1===n&&"-"===o&&"-"===e[0])return e;qe(o)?t+="-"+o.toLowerCase():t+=o}return t.startsWith("ms-")?"-"+t:t}var Ue=function(e){return null==e||!1===e||""===e},Je=function(t){var n,o,r=[];for(var s in t){var i=t[s];t.hasOwnProperty(s)&&!Ue(i)&&(Array.isArray(i)&&i.isCss||re(i)?r.push("".concat(He(s),":"),i,";"):ce(i)?r.push.apply(r,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)(["".concat(s," {")],Je(i),!1),["}"],!1)):r.push("".concat(He(s),": ").concat((n=s,null==(o=i)||"boolean"==typeof o||""===o?"":"number"!=typeof o||0===o||n in _emotion_unitless__WEBPACK_IMPORTED_MODULE_3__["default"]||n.startsWith("--")?String(o).trim():"".concat(o,"px")),";")))}return r};function Xe(e,t,n,o){if(Ue(e))return[];if(se(e))return[".".concat(e.styledComponentId)];if(re(e)){if(!re(s=e)||s.prototype&&s.prototype.isReactComponent||!t)return[e];var r=e(t);return false||"object"!=typeof r||Array.isArray(r)||r instanceof We||ce(r)||null===r||console.error("".concat(B(e)," is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.")),Xe(r,t,n,o)}var s;return e instanceof We?n?(e.inject(n,o),[e.getName(o)]):[e]:ce(e)?Je(e):Array.isArray(e)?Array.prototype.concat.apply(_,e.map(function(e){return Xe(e,t,n,o)})):[e.toString()]}function Ze(e){for(var t=0;t<e.length;t+=1){var n=e[t];if(re(n)&&!se(n))return!1}return!0}var Ke=z(v),Qe=function(){function e(e,t,n){this.rules=e,this.staticRulesId="",this.isStatic= false&&0,this.componentId=t,this.baseHash=M(Ke,t),this.baseStyle=n,ke.registerId(t)}return e.prototype.generateAndInjectStyles=function(e,t,n){var o=this.baseStyle?this.baseStyle.generateAndInjectStyles(e,t,n):"";if(this.isStatic&&!n.hash)if(this.staticRulesId&&t.hasNameForId(this.componentId,this.staticRulesId))o=ie(o,this.staticRulesId);else{var r=ae(Xe(this.rules,e,t,n)),s=x(M(this.baseHash,r)>>>0);if(!t.hasNameForId(this.componentId,s)){var i=n(r,".".concat(s),void 0,this.componentId);t.insertRules(this.componentId,s,i)}o=ie(o,s),this.staticRulesId=s}else{for(var a=M(this.baseHash,n.hash),c="",l=0;l<this.rules.length;l++){var u=this.rules[l];if("string"==typeof u)c+=u, true&&(a=M(a,u));else if(u){var p=ae(Xe(u,e,t,n));a=M(a,p+l),c+=p}}if(c){var d=x(a>>>0);t.hasNameForId(this.componentId,d)||t.insertRules(this.componentId,d,n(c,".".concat(d),void 0,this.componentId)),o=ie(o,d)}}return o},e}(),et=react__WEBPACK_IMPORTED_MODULE_1___default().createContext(void 0),tt=et.Consumer;function nt(){var e=(0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(et);if(!e)throw he(18);return e}function ot(e){var n=react__WEBPACK_IMPORTED_MODULE_1___default().useContext(et),r=(0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(function(){return function(e,n){if(!e)throw he(14);if(re(e)){var o=e(n);if( true&&(null===o||Array.isArray(o)||"object"!=typeof o))throw he(7);return o}if(Array.isArray(e)||"object"!=typeof e)throw he(8);return n?(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},n),e):e}(e.theme,n)},[e.theme,n]);return e.children?react__WEBPACK_IMPORTED_MODULE_1___default().createElement(et.Provider,{value:r},e.children):null}var rt={},st=new Set;function it(e,r,s){var i=se(e),a=e,c=!L(e),p=r.attrs,d=void 0===p?_:p,h=r.componentId,f=void 0===h?function(e,t){var n="string"!=typeof e?"sc":R(e);rt[n]=(rt[n]||0)+1;var o="".concat(n,"-").concat($(v+n+rt[n]));return t?"".concat(t,"-").concat(o):o}(r.displayName,r.parentComponentId):h,m=r.displayName,y=void 0===m?function(e){return L(e)?"styled.".concat(e):"Styled(".concat(B(e),")")}(e):m,g=r.displayName&&r.componentId?"".concat(R(r.displayName),"-").concat(r.componentId):r.componentId||f,S=i&&a.attrs?a.attrs.concat(d).filter(Boolean):d,w=r.shouldForwardProp;if(i&&a.shouldForwardProp){var b=a.shouldForwardProp;if(r.shouldForwardProp){var E=r.shouldForwardProp;w=function(e,t){return b(e,t)&&E(e,t)}}else w=b}var N=new Qe(s,g,i?a.componentStyle:void 0);function O(e,r){return function(e,r,s){var i=e.attrs,a=e.componentStyle,c=e.defaultProps,p=e.foldedComponentIds,d=e.styledComponentId,h=e.target,f=react__WEBPACK_IMPORTED_MODULE_1___default().useContext(et),m=Ge(),y=e.shouldForwardProp||m.shouldForwardProp; true&&(0,react__WEBPACK_IMPORTED_MODULE_1__.useDebugValue)(d);var v=I(r,f,c)||C,g=function(e,n,o){for(var r,s=(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},n),{className:void 0,theme:o}),i=0;i<e.length;i+=1){var a=re(r=e[i])?r(s):r;for(var c in a)s[c]="className"===c?ie(s[c],a[c]):"style"===c?(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},s[c]),a[c]):a[c]}return n.className&&(s.className=ie(s.className,n.className)),s}(i,r,v),S=g.as||h,w={};for(var b in g)void 0===g[b]||"$"===b[0]||"as"===b||"theme"===b&&g.theme===v||("forwardedAs"===b?w.as=g.forwardedAs:y&&!y(b,S)||(w[b]=g[b],y||"development"!=="development"||(0,_emotion_is_prop_valid__WEBPACK_IMPORTED_MODULE_0__["default"])(b)||st.has(b)||!A.has(S)||(st.add(b),console.warn('styled-components: it looks like an unknown prop "'.concat(b,'" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via `<StyleSheetManager shouldForwardProp={...}>` (connect an API like `@emotion/is-prop-valid`) or consider using transient props (`$` prefix for automatic filtering.)')))));var E=function(e,t){var n=Ge(),o=e.generateAndInjectStyles(t,n.styleSheet,n.stylis);return true&&(0,react__WEBPACK_IMPORTED_MODULE_1__.useDebugValue)(o),o}(a,g); true&&e.warnTooManyClasses&&e.warnTooManyClasses(E);var N=ie(p,d);return E&&(N+=" "+E),g.className&&(N+=" "+g.className),w[L(S)&&!A.has(S)?"class":"className"]=N,w.ref=s,(0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(S,w)}(D,e,r)}O.displayName=y;var D=react__WEBPACK_IMPORTED_MODULE_1___default().forwardRef(O);return D.attrs=S,D.componentStyle=N,D.displayName=y,D.shouldForwardProp=w,D.foldedComponentIds=i?ie(a.foldedComponentIds,a.styledComponentId):"",D.styledComponentId=g,D.target=i?a.target:e,Object.defineProperty(D,"defaultProps",{get:function(){return this._foldedDefaultProps},set:function(e){this._foldedDefaultProps=i?function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];for(var o=0,r=t;o<r.length;o++)le(e,r[o],!0);return e}({},a.defaultProps,e):e}}), true&&(P(y,g),D.warnTooManyClasses=function(e,t){var n={},o=!1;return function(r){if(!o&&(n[r]=!0,Object.keys(n).length>=200)){var s=t?' with the id of "'.concat(t,'"'):"";console.warn("Over ".concat(200," classes were generated for component ").concat(e).concat(s,".\n")+"Consider using the attrs method, together with a style object for frequently changed styles.\nExample:\n const Component = styled.div.attrs(props => ({\n style: {\n background: props.background,\n },\n }))`width: 100%;`\n\n <Component />"),o=!0,n={}}}}(y,g)),ue(D,function(){return".".concat(D.styledComponentId)}),c&&oe(D,e,{attrs:!0,componentStyle:!0,displayName:!0,foldedComponentIds:!0,shouldForwardProp:!0,styledComponentId:!0,target:!0}),D}function at(e,t){for(var n=[e[0]],o=0,r=t.length;o<r;o+=1)n.push(t[o],e[o+1]);return n}var ct=function(e){return Object.assign(e,{isCss:!0})};function lt(t){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];if(re(t)||ce(t))return ct(Xe(at(_,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)([t],n,!0))));var r=t;return 0===n.length&&1===r.length&&"string"==typeof r[0]?Xe(r):ct(Xe(at(r,n)))}function ut(n,o,r){if(void 0===r&&(r=C),!o)throw he(1,o);var s=function(t){for(var s=[],i=1;i<arguments.length;i++)s[i-1]=arguments[i];return n(o,r,lt.apply(void 0,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)([t],s,!1)))};return s.attrs=function(e){return ut(n,o,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},r),{attrs:Array.prototype.concat(r.attrs,e).filter(Boolean)}))},s.withConfig=function(e){return ut(n,o,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},r),e))},s}var pt=function(e){return ut(it,e)},dt=pt;A.forEach(function(e){dt[e]=pt(e)});var ht=function(){function e(e,t){this.rules=e,this.componentId=t,this.isStatic=Ze(e),ke.registerId(this.componentId+1)}return e.prototype.createStyles=function(e,t,n,o){var r=o(ae(Xe(this.rules,t,n,o)),""),s=this.componentId+e;n.insertRules(s,s,r)},e.prototype.removeStyles=function(e,t){t.clearRules(this.componentId+e)},e.prototype.renderStyles=function(e,t,n,o){e>2&&ke.registerId(this.componentId+e),this.removeStyles(e,n),this.createStyles(e,t,n,o)},e}();function ft(n){for(var r=[],s=1;s<arguments.length;s++)r[s-1]=arguments[s];var i=lt.apply(void 0,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)([n],r,!1)),a="sc-global-".concat($(JSON.stringify(i))),c=new ht(i,a); true&&P(a);var l=function(e){var t=Ge(),n=react__WEBPACK_IMPORTED_MODULE_1___default().useContext(et),r=react__WEBPACK_IMPORTED_MODULE_1___default().useRef(t.styleSheet.allocateGSInstance(a)).current;return true&&react__WEBPACK_IMPORTED_MODULE_1___default().Children.count(e.children)&&console.warn("The global style component ".concat(a," was given child JSX. createGlobalStyle does not render children.")), true&&i.some(function(e){return"string"==typeof e&&-1!==e.indexOf("@import")})&&console.warn("Please do not use @import CSS syntax in createGlobalStyle at this time, as the CSSOM APIs we use in production do not handle it well. Instead, we recommend using a library such as react-helmet to inject a typical <link> meta tag to the stylesheet, or simply embedding it manually in your index.html <head> section for a simpler app."),t.styleSheet.server&&u(r,e,t.styleSheet,n,t.stylis),react__WEBPACK_IMPORTED_MODULE_1___default().useLayoutEffect(function(){if(!t.styleSheet.server)return u(r,e,t.styleSheet,n,t.stylis),function(){return c.removeStyles(r,t.styleSheet)}},[r,e,t.styleSheet,n,t.stylis]),null};function u(e,n,o,r,s){if(c.isStatic)c.renderStyles(e,b,o,s);else{var i=(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},n),{theme:I(n,r,l.defaultProps)});c.renderStyles(e,i,o,s)}}return react__WEBPACK_IMPORTED_MODULE_1___default().memo(l)}function mt(t){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o]; true&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product&&console.warn("`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.");var r=ae(lt.apply(void 0,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__spreadArray)([t],n,!1))),s=$(r);return new We(s,r)}function yt(e){var n=react__WEBPACK_IMPORTED_MODULE_1___default().forwardRef(function(n,r){var s=I(n,react__WEBPACK_IMPORTED_MODULE_1___default().useContext(et),e.defaultProps);return true&&void 0===s&&console.warn('[withTheme] You are not using a ThemeProvider nor passing a theme prop or a theme in defaultProps in component class "'.concat(B(e),'"')),react__WEBPACK_IMPORTED_MODULE_1___default().createElement(e,(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},n,{theme:s,ref:r}))});return n.displayName="WithTheme(".concat(B(e),")"),oe(n,e)}var vt=function(){function e(){var e=this;this._emitSheetCSS=function(){var t=e.instance.toString();if(!t)return"";var n=Ce(),o=ae([n&&'nonce="'.concat(n,'"'),"".concat(f,'="true"'),"".concat(y,'="').concat(v,'"')].filter(Boolean)," ");return"<style ".concat(o,">").concat(t,"</style>")},this.getStyleTags=function(){if(e.sealed)throw he(2);return e._emitSheetCSS()},this.getStyleElement=function(){var n;if(e.sealed)throw he(2);var r=e.instance.toString();if(!r)return[];var s=((n={})[f]="",n[y]=v,n.dangerouslySetInnerHTML={__html:r},n),i=Ce();return i&&(s.nonce=i),[react__WEBPACK_IMPORTED_MODULE_1___default().createElement("style",(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__assign)({},s,{key:"sc-0-0"}))]},this.seal=function(){e.sealed=!0},this.instance=new ke({isServer:!0}),this.sealed=!1}return e.prototype.collectStyles=function(e){if(this.sealed)throw he(2);return react__WEBPACK_IMPORTED_MODULE_1___default().createElement(Ye,{sheet:this.instance},e)},e.prototype.interleaveWithNodeStream=function(e){throw he(3)},e}(),gt={StyleSheet:ke,mainSheet:Me}; true&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product&&console.warn("It looks like you've imported 'styled-components' on React Native.\nPerhaps you're looking to import 'styled-components/native'?\nRead more about this at https://www.styled-components.com/docs/basics#react-native");var St="__sc-".concat(f,"__"); true&&"undefined"!=typeof window&&(window[St]||(window[St]=0),1===window[St]&&console.warn("It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\n\nSee https://s-c.sh/2BAXzed for more info."),window[St]+=1);
9556 //# sourceMappingURL=styled-components.browser.esm.js.map
9557
9558
9559 /***/ }),
9560
9561 /***/ "../node_modules/styled-components/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js":
9562 /*!***************************************************************************************************************!*\
9563 !*** ../node_modules/styled-components/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js ***!
9564 \***************************************************************************************************************/
9565 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9566
9567 "use strict";
9568 __webpack_require__.r(__webpack_exports__);
9569 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9570 /* harmony export */ "default": () => (/* binding */ isPropValid)
9571 /* harmony export */ });
9572 /* harmony import */ var _emotion_memoize__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @emotion/memoize */ "../node_modules/styled-components/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js");
9573
9574
9575 var reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23
9576
9577 var isPropValid = /* #__PURE__ */(0,_emotion_memoize__WEBPACK_IMPORTED_MODULE_0__["default"])(function (prop) {
9578 return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111
9579 /* o */
9580 && prop.charCodeAt(1) === 110
9581 /* n */
9582 && prop.charCodeAt(2) < 91;
9583 }
9584 /* Z+1 */
9585 );
9586
9587
9588
9589
9590 /***/ }),
9591
9592 /***/ "../node_modules/styled-components/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js":
9593 /*!***************************************************************************************************!*\
9594 !*** ../node_modules/styled-components/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js ***!
9595 \***************************************************************************************************/
9596 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9597
9598 "use strict";
9599 __webpack_require__.r(__webpack_exports__);
9600 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9601 /* harmony export */ "default": () => (/* binding */ memoize)
9602 /* harmony export */ });
9603 function memoize(fn) {
9604 var cache = Object.create(null);
9605 return function (arg) {
9606 if (cache[arg] === undefined) cache[arg] = fn(arg);
9607 return cache[arg];
9608 };
9609 }
9610
9611
9612
9613
9614 /***/ }),
9615
9616 /***/ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js":
9617 /*!*****************************************************************************************************!*\
9618 !*** ../node_modules/styled-components/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js ***!
9619 \*****************************************************************************************************/
9620 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9621
9622 "use strict";
9623 __webpack_require__.r(__webpack_exports__);
9624 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9625 /* harmony export */ "default": () => (/* binding */ unitlessKeys)
9626 /* harmony export */ });
9627 var unitlessKeys = {
9628 animationIterationCount: 1,
9629 aspectRatio: 1,
9630 borderImageOutset: 1,
9631 borderImageSlice: 1,
9632 borderImageWidth: 1,
9633 boxFlex: 1,
9634 boxFlexGroup: 1,
9635 boxOrdinalGroup: 1,
9636 columnCount: 1,
9637 columns: 1,
9638 flex: 1,
9639 flexGrow: 1,
9640 flexPositive: 1,
9641 flexShrink: 1,
9642 flexNegative: 1,
9643 flexOrder: 1,
9644 gridRow: 1,
9645 gridRowEnd: 1,
9646 gridRowSpan: 1,
9647 gridRowStart: 1,
9648 gridColumn: 1,
9649 gridColumnEnd: 1,
9650 gridColumnSpan: 1,
9651 gridColumnStart: 1,
9652 msGridRow: 1,
9653 msGridRowSpan: 1,
9654 msGridColumn: 1,
9655 msGridColumnSpan: 1,
9656 fontWeight: 1,
9657 lineHeight: 1,
9658 opacity: 1,
9659 order: 1,
9660 orphans: 1,
9661 tabSize: 1,
9662 widows: 1,
9663 zIndex: 1,
9664 zoom: 1,
9665 WebkitLineClamp: 1,
9666 // SVG-related properties
9667 fillOpacity: 1,
9668 floodOpacity: 1,
9669 stopOpacity: 1,
9670 strokeDasharray: 1,
9671 strokeDashoffset: 1,
9672 strokeMiterlimit: 1,
9673 strokeOpacity: 1,
9674 strokeWidth: 1
9675 };
9676
9677
9678
9679
9680 /***/ }),
9681
9682 /***/ "../node_modules/validator/lib/isFQDN.js":
9683 /*!***********************************************!*\
9684 !*** ../node_modules/validator/lib/isFQDN.js ***!
9685 \***********************************************/
9686 /***/ ((module, exports, __webpack_require__) => {
9687
9688 "use strict";
9689
9690
9691 Object.defineProperty(exports, "__esModule", ({
9692 value: true
9693 }));
9694 exports["default"] = isFQDN;
9695 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
9696 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
9697 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9698 var default_fqdn_options = {
9699 require_tld: true,
9700 allow_underscores: false,
9701 allow_trailing_dot: false,
9702 allow_numeric_tld: false,
9703 allow_wildcard: false,
9704 ignore_max_length: false
9705 };
9706 function isFQDN(str, options) {
9707 (0, _assertString.default)(str);
9708 options = (0, _merge.default)(options, default_fqdn_options);
9709
9710 /* Remove the optional trailing dot before checking validity */
9711 if (options.allow_trailing_dot && str[str.length - 1] === '.') {
9712 str = str.substring(0, str.length - 1);
9713 }
9714
9715 /* Remove the optional wildcard before checking validity */
9716 if (options.allow_wildcard === true && str.indexOf('*.') === 0) {
9717 str = str.substring(2);
9718 }
9719 var parts = str.split('.');
9720 var tld = parts[parts.length - 1];
9721 if (options.require_tld) {
9722 // disallow fqdns without tld
9723 if (parts.length < 2) {
9724 return false;
9725 }
9726 if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
9727 return false;
9728 }
9729
9730 // disallow spaces
9731 if (/\s/.test(tld)) {
9732 return false;
9733 }
9734 }
9735
9736 // reject numeric TLDs
9737 if (!options.allow_numeric_tld && /^\d+$/.test(tld)) {
9738 return false;
9739 }
9740 return parts.every(function (part) {
9741 if (part.length > 63 && !options.ignore_max_length) {
9742 return false;
9743 }
9744 if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) {
9745 return false;
9746 }
9747
9748 // disallow full-width chars
9749 if (/[\uff01-\uff5e]/.test(part)) {
9750 return false;
9751 }
9752
9753 // disallow parts starting or ending with hyphen
9754 if (/^-|-$/.test(part)) {
9755 return false;
9756 }
9757 if (!options.allow_underscores && /_/.test(part)) {
9758 return false;
9759 }
9760 return true;
9761 });
9762 }
9763 module.exports = exports.default;
9764 module.exports["default"] = exports.default;
9765
9766 /***/ }),
9767
9768 /***/ "../node_modules/validator/lib/isIP.js":
9769 /*!*********************************************!*\
9770 !*** ../node_modules/validator/lib/isIP.js ***!
9771 \*********************************************/
9772 /***/ ((module, exports, __webpack_require__) => {
9773
9774 "use strict";
9775
9776
9777 Object.defineProperty(exports, "__esModule", ({
9778 value: true
9779 }));
9780 exports["default"] = isIP;
9781 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
9782 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9783 /**
9784 11.3. Examples
9785
9786 The following addresses
9787
9788 fe80::1234 (on the 1st link of the node)
9789 ff02::5678 (on the 5th link of the node)
9790 ff08::9abc (on the 10th organization of the node)
9791
9792 would be represented as follows:
9793
9794 fe80::1234%1
9795 ff02::5678%5
9796 ff08::9abc%10
9797
9798 (Here we assume a natural translation from a zone index to the
9799 <zone_id> part, where the Nth zone of any scope is translated into
9800 "N".)
9801
9802 If we use interface names as <zone_id>, those addresses could also be
9803 represented as follows:
9804
9805 fe80::1234%ne0
9806 ff02::5678%pvc1.3
9807 ff08::9abc%interface10
9808
9809 where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
9810 to the 5th link, and "interface10" belongs to the 10th organization.
9811 * * */
9812 var IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
9813 var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
9814 var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
9815 var IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';
9816 var IPv6AddressRegExp = new RegExp('^(' + "(?:".concat(IPv6SegmentFormat, ":){7}(?:").concat(IPv6SegmentFormat, "|:)|") + "(?:".concat(IPv6SegmentFormat, ":){6}(?:").concat(IPv4AddressFormat, "|:").concat(IPv6SegmentFormat, "|:)|") + "(?:".concat(IPv6SegmentFormat, ":){5}(?::").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,2}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){4}(?:(:").concat(IPv6SegmentFormat, "){0,1}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,3}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){3}(?:(:").concat(IPv6SegmentFormat, "){0,2}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,4}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){2}(?:(:").concat(IPv6SegmentFormat, "){0,3}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,5}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){1}(?:(:").concat(IPv6SegmentFormat, "){0,4}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,6}|:)|") + "(?::((?::".concat(IPv6SegmentFormat, "){0,5}:").concat(IPv4AddressFormat, "|(?::").concat(IPv6SegmentFormat, "){1,7}|:))") + ')(%[0-9a-zA-Z-.:]{1,})?$');
9817 function isIP(str) {
9818 var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
9819 (0, _assertString.default)(str);
9820 version = String(version);
9821 if (!version) {
9822 return isIP(str, 4) || isIP(str, 6);
9823 }
9824 if (version === '4') {
9825 return IPv4AddressRegExp.test(str);
9826 }
9827 if (version === '6') {
9828 return IPv6AddressRegExp.test(str);
9829 }
9830 return false;
9831 }
9832 module.exports = exports.default;
9833 module.exports["default"] = exports.default;
9834
9835 /***/ }),
9836
9837 /***/ "../node_modules/validator/lib/isURL.js":
9838 /*!**********************************************!*\
9839 !*** ../node_modules/validator/lib/isURL.js ***!
9840 \**********************************************/
9841 /***/ ((module, exports, __webpack_require__) => {
9842
9843 "use strict";
9844
9845
9846 Object.defineProperty(exports, "__esModule", ({
9847 value: true
9848 }));
9849 exports["default"] = isURL;
9850 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
9851 var _isFQDN = _interopRequireDefault(__webpack_require__(/*! ./isFQDN */ "../node_modules/validator/lib/isFQDN.js"));
9852 var _isIP = _interopRequireDefault(__webpack_require__(/*! ./isIP */ "../node_modules/validator/lib/isIP.js"));
9853 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
9854 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9855 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9856 function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9857 function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
9858 function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
9859 function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
9860 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9861 /*
9862 options for isURL method
9863
9864 require_protocol - if set as true isURL will return false if protocol is not present in the URL
9865 require_valid_protocol - isURL will check if the URL's protocol is present in the protocols option
9866 protocols - valid protocols can be modified with this option
9867 require_host - if set as false isURL will not check if host is present in the URL
9868 require_port - if set as true isURL will check if port is present in the URL
9869 allow_protocol_relative_urls - if set as true protocol relative URLs will be allowed
9870 validate_length - if set as false isURL will skip string length validation (IE maximum is 2083)
9871
9872 */
9873
9874 var default_url_options = {
9875 protocols: ['http', 'https', 'ftp'],
9876 require_tld: true,
9877 require_protocol: false,
9878 require_host: true,
9879 require_port: false,
9880 require_valid_protocol: true,
9881 allow_underscores: false,
9882 allow_trailing_dot: false,
9883 allow_protocol_relative_urls: false,
9884 allow_fragments: true,
9885 allow_query_components: true,
9886 validate_length: true
9887 };
9888 var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
9889 function isRegExp(obj) {
9890 return Object.prototype.toString.call(obj) === '[object RegExp]';
9891 }
9892 function checkHost(host, matches) {
9893 for (var i = 0; i < matches.length; i++) {
9894 var match = matches[i];
9895 if (host === match || isRegExp(match) && match.test(host)) {
9896 return true;
9897 }
9898 }
9899 return false;
9900 }
9901 function isURL(url, options) {
9902 (0, _assertString.default)(url);
9903 if (!url || /[\s<>]/.test(url)) {
9904 return false;
9905 }
9906 if (url.indexOf('mailto:') === 0) {
9907 return false;
9908 }
9909 options = (0, _merge.default)(options, default_url_options);
9910 if (options.validate_length && url.length >= 2083) {
9911 return false;
9912 }
9913 if (!options.allow_fragments && url.includes('#')) {
9914 return false;
9915 }
9916 if (!options.allow_query_components && (url.includes('?') || url.includes('&'))) {
9917 return false;
9918 }
9919 var protocol, auth, host, hostname, port, port_str, split, ipv6;
9920 split = url.split('#');
9921 url = split.shift();
9922 split = url.split('?');
9923 url = split.shift();
9924 split = url.split('://');
9925 if (split.length > 1) {
9926 protocol = split.shift().toLowerCase();
9927 if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
9928 return false;
9929 }
9930 } else if (options.require_protocol) {
9931 return false;
9932 } else if (url.slice(0, 2) === '//') {
9933 if (!options.allow_protocol_relative_urls) {
9934 return false;
9935 }
9936 split[0] = url.slice(2);
9937 }
9938 url = split.join('://');
9939 if (url === '') {
9940 return false;
9941 }
9942 split = url.split('/');
9943 url = split.shift();
9944 if (url === '' && !options.require_host) {
9945 return true;
9946 }
9947 split = url.split('@');
9948 if (split.length > 1) {
9949 if (options.disallow_auth) {
9950 return false;
9951 }
9952 if (split[0] === '') {
9953 return false;
9954 }
9955 auth = split.shift();
9956 if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
9957 return false;
9958 }
9959 var _auth$split = auth.split(':'),
9960 _auth$split2 = _slicedToArray(_auth$split, 2),
9961 user = _auth$split2[0],
9962 password = _auth$split2[1];
9963 if (user === '' && password === '') {
9964 return false;
9965 }
9966 }
9967 hostname = split.join('@');
9968 port_str = null;
9969 ipv6 = null;
9970 var ipv6_match = hostname.match(wrapped_ipv6);
9971 if (ipv6_match) {
9972 host = '';
9973 ipv6 = ipv6_match[1];
9974 port_str = ipv6_match[2] || null;
9975 } else {
9976 split = hostname.split(':');
9977 host = split.shift();
9978 if (split.length) {
9979 port_str = split.join(':');
9980 }
9981 }
9982 if (port_str !== null && port_str.length > 0) {
9983 port = parseInt(port_str, 10);
9984 if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
9985 return false;
9986 }
9987 } else if (options.require_port) {
9988 return false;
9989 }
9990 if (options.host_whitelist) {
9991 return checkHost(host, options.host_whitelist);
9992 }
9993 if (host === '' && !options.require_host) {
9994 return true;
9995 }
9996 if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
9997 return false;
9998 }
9999 host = host || ipv6;
10000 if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
10001 return false;
10002 }
10003 return true;
10004 }
10005 module.exports = exports.default;
10006 module.exports["default"] = exports.default;
10007
10008 /***/ }),
10009
10010 /***/ "../node_modules/validator/lib/util/assertString.js":
10011 /*!**********************************************************!*\
10012 !*** ../node_modules/validator/lib/util/assertString.js ***!
10013 \**********************************************************/
10014 /***/ ((module, exports) => {
10015
10016 "use strict";
10017
10018
10019 Object.defineProperty(exports, "__esModule", ({
10020 value: true
10021 }));
10022 exports["default"] = assertString;
10023 function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10024 function assertString(input) {
10025 var isString = typeof input === 'string' || input instanceof String;
10026 if (!isString) {
10027 var invalidType = _typeof(input);
10028 if (input === null) invalidType = 'null';else if (invalidType === 'object') invalidType = input.constructor.name;
10029 throw new TypeError("Expected a string but received a ".concat(invalidType));
10030 }
10031 }
10032 module.exports = exports.default;
10033 module.exports["default"] = exports.default;
10034
10035 /***/ }),
10036
10037 /***/ "../node_modules/validator/lib/util/merge.js":
10038 /*!***************************************************!*\
10039 !*** ../node_modules/validator/lib/util/merge.js ***!
10040 \***************************************************/
10041 /***/ ((module, exports) => {
10042
10043 "use strict";
10044
10045
10046 Object.defineProperty(exports, "__esModule", ({
10047 value: true
10048 }));
10049 exports["default"] = merge;
10050 function merge() {
10051 var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
10052 var defaults = arguments.length > 1 ? arguments[1] : undefined;
10053 for (var key in defaults) {
10054 if (typeof obj[key] === 'undefined') {
10055 obj[key] = defaults[key];
10056 }
10057 }
10058 return obj;
10059 }
10060 module.exports = exports.default;
10061 module.exports["default"] = exports.default;
10062
10063 /***/ }),
10064
10065 /***/ "react":
10066 /*!************************!*\
10067 !*** external "React" ***!
10068 \************************/
10069 /***/ ((module) => {
10070
10071 "use strict";
10072 module.exports = React;
10073
10074 /***/ }),
10075
10076 /***/ "react-dom":
10077 /*!***************************!*\
10078 !*** external "ReactDOM" ***!
10079 \***************************/
10080 /***/ ((module) => {
10081
10082 "use strict";
10083 module.exports = ReactDOM;
10084
10085 /***/ }),
10086
10087 /***/ "@elementor/icons":
10088 /*!************************************!*\
10089 !*** external "elementorV2.icons" ***!
10090 \************************************/
10091 /***/ ((module) => {
10092
10093 "use strict";
10094 module.exports = elementorV2.icons;
10095
10096 /***/ }),
10097
10098 /***/ "@elementor/ui":
10099 /*!*********************************!*\
10100 !*** external "elementorV2.ui" ***!
10101 \*********************************/
10102 /***/ ((module) => {
10103
10104 "use strict";
10105 module.exports = elementorV2.ui;
10106
10107 /***/ }),
10108
10109 /***/ "@wordpress/i18n":
10110 /*!**************************!*\
10111 !*** external "wp.i18n" ***!
10112 \**************************/
10113 /***/ ((module) => {
10114
10115 "use strict";
10116 module.exports = wp.i18n;
10117
10118 /***/ }),
10119
10120 /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
10121 /*!******************************************************************!*\
10122 !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
10123 \******************************************************************/
10124 /***/ ((module) => {
10125
10126 function _arrayLikeToArray(r, a) {
10127 (null == a || a > r.length) && (a = r.length);
10128 for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
10129 return n;
10130 }
10131 module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
10132
10133 /***/ }),
10134
10135 /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
10136 /*!****************************************************************!*\
10137 !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
10138 \****************************************************************/
10139 /***/ ((module) => {
10140
10141 function _arrayWithHoles(r) {
10142 if (Array.isArray(r)) return r;
10143 }
10144 module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
10145
10146 /***/ }),
10147
10148 /***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
10149 /*!*******************************************************************!*\
10150 !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
10151 \*******************************************************************/
10152 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10153
10154 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
10155 function _arrayWithoutHoles(r) {
10156 if (Array.isArray(r)) return arrayLikeToArray(r);
10157 }
10158 module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
10159
10160 /***/ }),
10161
10162 /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
10163 /*!***********************************************************************!*\
10164 !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
10165 \***********************************************************************/
10166 /***/ ((module) => {
10167
10168 function _assertThisInitialized(e) {
10169 if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
10170 return e;
10171 }
10172 module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
10173
10174 /***/ }),
10175
10176 /***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js":
10177 /*!******************************************************************!*\
10178 !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
10179 \******************************************************************/
10180 /***/ ((module) => {
10181
10182 function asyncGeneratorStep(n, t, e, r, o, a, c) {
10183 try {
10184 var i = n[a](c),
10185 u = i.value;
10186 } catch (n) {
10187 return void e(n);
10188 }
10189 i.done ? t(u) : Promise.resolve(u).then(r, o);
10190 }
10191 function _asyncToGenerator(n) {
10192 return function () {
10193 var t = this,
10194 e = arguments;
10195 return new Promise(function (r, o) {
10196 var a = n.apply(t, e);
10197 function _next(n) {
10198 asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
10199 }
10200 function _throw(n) {
10201 asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
10202 }
10203 _next(void 0);
10204 });
10205 };
10206 }
10207 module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
10208
10209 /***/ }),
10210
10211 /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
10212 /*!****************************************************************!*\
10213 !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
10214 \****************************************************************/
10215 /***/ ((module) => {
10216
10217 function _classCallCheck(a, n) {
10218 if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function");
10219 }
10220 module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
10221
10222 /***/ }),
10223
10224 /***/ "../node_modules/@babel/runtime/helpers/createClass.js":
10225 /*!*************************************************************!*\
10226 !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
10227 \*************************************************************/
10228 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10229
10230 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
10231 function _defineProperties(e, r) {
10232 for (var t = 0; t < r.length; t++) {
10233 var o = r[t];
10234 o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);
10235 }
10236 }
10237 function _createClass(e, r, t) {
10238 return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", {
10239 writable: !1
10240 }), e;
10241 }
10242 module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
10243
10244 /***/ }),
10245
10246 /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
10247 /*!****************************************************************!*\
10248 !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
10249 \****************************************************************/
10250 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10251
10252 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
10253 function _defineProperty(e, r, t) {
10254 return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
10255 value: t,
10256 enumerable: !0,
10257 configurable: !0,
10258 writable: !0
10259 }) : e[r] = t, e;
10260 }
10261 module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
10262
10263 /***/ }),
10264
10265 /***/ "../node_modules/@babel/runtime/helpers/extends.js":
10266 /*!*********************************************************!*\
10267 !*** ../node_modules/@babel/runtime/helpers/extends.js ***!
10268 \*********************************************************/
10269 /***/ ((module) => {
10270
10271 function _extends() {
10272 return module.exports = _extends = Object.assign ? Object.assign.bind() : function (n) {
10273 for (var e = 1; e < arguments.length; e++) {
10274 var t = arguments[e];
10275 for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
10276 }
10277 return n;
10278 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _extends.apply(null, arguments);
10279 }
10280 module.exports = _extends, module.exports.__esModule = true, module.exports["default"] = module.exports;
10281
10282 /***/ }),
10283
10284 /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
10285 /*!****************************************************************!*\
10286 !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
10287 \****************************************************************/
10288 /***/ ((module) => {
10289
10290 function _getPrototypeOf(t) {
10291 return module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) {
10292 return t.__proto__ || Object.getPrototypeOf(t);
10293 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _getPrototypeOf(t);
10294 }
10295 module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
10296
10297 /***/ }),
10298
10299 /***/ "../node_modules/@babel/runtime/helpers/inherits.js":
10300 /*!**********************************************************!*\
10301 !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
10302 \**********************************************************/
10303 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10304
10305 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
10306 function _inherits(t, e) {
10307 if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function");
10308 t.prototype = Object.create(e && e.prototype, {
10309 constructor: {
10310 value: t,
10311 writable: !0,
10312 configurable: !0
10313 }
10314 }), Object.defineProperty(t, "prototype", {
10315 writable: !1
10316 }), e && setPrototypeOf(t, e);
10317 }
10318 module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
10319
10320 /***/ }),
10321
10322 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
10323 /*!***********************************************************************!*\
10324 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
10325 \***********************************************************************/
10326 /***/ ((module) => {
10327
10328 function _interopRequireDefault(e) {
10329 return e && e.__esModule ? e : {
10330 "default": e
10331 };
10332 }
10333 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
10334
10335 /***/ }),
10336
10337 /***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
10338 /*!*****************************************************************!*\
10339 !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
10340 \*****************************************************************/
10341 /***/ ((module) => {
10342
10343 function _iterableToArray(r) {
10344 if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
10345 }
10346 module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
10347
10348 /***/ }),
10349
10350 /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
10351 /*!**********************************************************************!*\
10352 !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
10353 \**********************************************************************/
10354 /***/ ((module) => {
10355
10356 function _iterableToArrayLimit(r, l) {
10357 var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
10358 if (null != t) {
10359 var e,
10360 n,
10361 i,
10362 u,
10363 a = [],
10364 f = !0,
10365 o = !1;
10366 try {
10367 if (i = (t = t.call(r)).next, 0 === l) {
10368 if (Object(t) !== t) return;
10369 f = !1;
10370 } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
10371 } catch (r) {
10372 o = !0, n = r;
10373 } finally {
10374 try {
10375 if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
10376 } finally {
10377 if (o) throw n;
10378 }
10379 }
10380 return a;
10381 }
10382 }
10383 module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
10384
10385 /***/ }),
10386
10387 /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
10388 /*!*****************************************************************!*\
10389 !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
10390 \*****************************************************************/
10391 /***/ ((module) => {
10392
10393 function _nonIterableRest() {
10394 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
10395 }
10396 module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
10397
10398 /***/ }),
10399
10400 /***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
10401 /*!*******************************************************************!*\
10402 !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
10403 \*******************************************************************/
10404 /***/ ((module) => {
10405
10406 function _nonIterableSpread() {
10407 throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
10408 }
10409 module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
10410
10411 /***/ }),
10412
10413 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
10414 /*!*************************************************************************!*\
10415 !*** ../node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
10416 \*************************************************************************/
10417 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10418
10419 var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose.js */ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");
10420 function _objectWithoutProperties(e, t) {
10421 if (null == e) return {};
10422 var o,
10423 r,
10424 i = objectWithoutPropertiesLoose(e, t);
10425 if (Object.getOwnPropertySymbols) {
10426 var s = Object.getOwnPropertySymbols(e);
10427 for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
10428 }
10429 return i;
10430 }
10431 module.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports["default"] = module.exports;
10432
10433 /***/ }),
10434
10435 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
10436 /*!******************************************************************************!*\
10437 !*** ../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
10438 \******************************************************************************/
10439 /***/ ((module) => {
10440
10441 function _objectWithoutPropertiesLoose(r, e) {
10442 if (null == r) return {};
10443 var t = {};
10444 for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
10445 if (e.includes(n)) continue;
10446 t[n] = r[n];
10447 }
10448 return t;
10449 }
10450 module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports["default"] = module.exports;
10451
10452 /***/ }),
10453
10454 /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
10455 /*!***************************************************************************!*\
10456 !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
10457 \***************************************************************************/
10458 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10459
10460 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
10461 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
10462 function _possibleConstructorReturn(t, e) {
10463 if (e && ("object" == _typeof(e) || "function" == typeof e)) return e;
10464 if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined");
10465 return assertThisInitialized(t);
10466 }
10467 module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
10468
10469 /***/ }),
10470
10471 /***/ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js":
10472 /*!********************************************************************!*\
10473 !*** ../node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
10474 \********************************************************************/
10475 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10476
10477 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
10478 function _regeneratorRuntime() {
10479 "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
10480 module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
10481 return e;
10482 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
10483 var t,
10484 e = {},
10485 r = Object.prototype,
10486 n = r.hasOwnProperty,
10487 o = Object.defineProperty || function (t, e, r) {
10488 t[e] = r.value;
10489 },
10490 i = "function" == typeof Symbol ? Symbol : {},
10491 a = i.iterator || "@@iterator",
10492 c = i.asyncIterator || "@@asyncIterator",
10493 u = i.toStringTag || "@@toStringTag";
10494 function define(t, e, r) {
10495 return Object.defineProperty(t, e, {
10496 value: r,
10497 enumerable: !0,
10498 configurable: !0,
10499 writable: !0
10500 }), t[e];
10501 }
10502 try {
10503 define({}, "");
10504 } catch (t) {
10505 define = function define(t, e, r) {
10506 return t[e] = r;
10507 };
10508 }
10509 function wrap(t, e, r, n) {
10510 var i = e && e.prototype instanceof Generator ? e : Generator,
10511 a = Object.create(i.prototype),
10512 c = new Context(n || []);
10513 return o(a, "_invoke", {
10514 value: makeInvokeMethod(t, r, c)
10515 }), a;
10516 }
10517 function tryCatch(t, e, r) {
10518 try {
10519 return {
10520 type: "normal",
10521 arg: t.call(e, r)
10522 };
10523 } catch (t) {
10524 return {
10525 type: "throw",
10526 arg: t
10527 };
10528 }
10529 }
10530 e.wrap = wrap;
10531 var h = "suspendedStart",
10532 l = "suspendedYield",
10533 f = "executing",
10534 s = "completed",
10535 y = {};
10536 function Generator() {}
10537 function GeneratorFunction() {}
10538 function GeneratorFunctionPrototype() {}
10539 var p = {};
10540 define(p, a, function () {
10541 return this;
10542 });
10543 var d = Object.getPrototypeOf,
10544 v = d && d(d(values([])));
10545 v && v !== r && n.call(v, a) && (p = v);
10546 var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
10547 function defineIteratorMethods(t) {
10548 ["next", "throw", "return"].forEach(function (e) {
10549 define(t, e, function (t) {
10550 return this._invoke(e, t);
10551 });
10552 });
10553 }
10554 function AsyncIterator(t, e) {
10555 function invoke(r, o, i, a) {
10556 var c = tryCatch(t[r], t, o);
10557 if ("throw" !== c.type) {
10558 var u = c.arg,
10559 h = u.value;
10560 return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
10561 invoke("next", t, i, a);
10562 }, function (t) {
10563 invoke("throw", t, i, a);
10564 }) : e.resolve(h).then(function (t) {
10565 u.value = t, i(u);
10566 }, function (t) {
10567 return invoke("throw", t, i, a);
10568 });
10569 }
10570 a(c.arg);
10571 }
10572 var r;
10573 o(this, "_invoke", {
10574 value: function value(t, n) {
10575 function callInvokeWithMethodAndArg() {
10576 return new e(function (e, r) {
10577 invoke(t, n, e, r);
10578 });
10579 }
10580 return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
10581 }
10582 });
10583 }
10584 function makeInvokeMethod(e, r, n) {
10585 var o = h;
10586 return function (i, a) {
10587 if (o === f) throw Error("Generator is already running");
10588 if (o === s) {
10589 if ("throw" === i) throw a;
10590 return {
10591 value: t,
10592 done: !0
10593 };
10594 }
10595 for (n.method = i, n.arg = a;;) {
10596 var c = n.delegate;
10597 if (c) {
10598 var u = maybeInvokeDelegate(c, n);
10599 if (u) {
10600 if (u === y) continue;
10601 return u;
10602 }
10603 }
10604 if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
10605 if (o === h) throw o = s, n.arg;
10606 n.dispatchException(n.arg);
10607 } else "return" === n.method && n.abrupt("return", n.arg);
10608 o = f;
10609 var p = tryCatch(e, r, n);
10610 if ("normal" === p.type) {
10611 if (o = n.done ? s : l, p.arg === y) continue;
10612 return {
10613 value: p.arg,
10614 done: n.done
10615 };
10616 }
10617 "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
10618 }
10619 };
10620 }
10621 function maybeInvokeDelegate(e, r) {
10622 var n = r.method,
10623 o = e.iterator[n];
10624 if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
10625 var i = tryCatch(o, e.iterator, r.arg);
10626 if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
10627 var a = i.arg;
10628 return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
10629 }
10630 function pushTryEntry(t) {
10631 var e = {
10632 tryLoc: t[0]
10633 };
10634 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
10635 }
10636 function resetTryEntry(t) {
10637 var e = t.completion || {};
10638 e.type = "normal", delete e.arg, t.completion = e;
10639 }
10640 function Context(t) {
10641 this.tryEntries = [{
10642 tryLoc: "root"
10643 }], t.forEach(pushTryEntry, this), this.reset(!0);
10644 }
10645 function values(e) {
10646 if (e || "" === e) {
10647 var r = e[a];
10648 if (r) return r.call(e);
10649 if ("function" == typeof e.next) return e;
10650 if (!isNaN(e.length)) {
10651 var o = -1,
10652 i = function next() {
10653 for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
10654 return next.value = t, next.done = !0, next;
10655 };
10656 return i.next = i;
10657 }
10658 }
10659 throw new TypeError(_typeof(e) + " is not iterable");
10660 }
10661 return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
10662 value: GeneratorFunctionPrototype,
10663 configurable: !0
10664 }), o(GeneratorFunctionPrototype, "constructor", {
10665 value: GeneratorFunction,
10666 configurable: !0
10667 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
10668 var e = "function" == typeof t && t.constructor;
10669 return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
10670 }, e.mark = function (t) {
10671 return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
10672 }, e.awrap = function (t) {
10673 return {
10674 __await: t
10675 };
10676 }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
10677 return this;
10678 }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
10679 void 0 === i && (i = Promise);
10680 var a = new AsyncIterator(wrap(t, r, n, o), i);
10681 return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
10682 return t.done ? t.value : a.next();
10683 });
10684 }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
10685 return this;
10686 }), define(g, "toString", function () {
10687 return "[object Generator]";
10688 }), e.keys = function (t) {
10689 var e = Object(t),
10690 r = [];
10691 for (var n in e) r.push(n);
10692 return r.reverse(), function next() {
10693 for (; r.length;) {
10694 var t = r.pop();
10695 if (t in e) return next.value = t, next.done = !1, next;
10696 }
10697 return next.done = !0, next;
10698 };
10699 }, e.values = values, Context.prototype = {
10700 constructor: Context,
10701 reset: function reset(e) {
10702 if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);
10703 },
10704 stop: function stop() {
10705 this.done = !0;
10706 var t = this.tryEntries[0].completion;
10707 if ("throw" === t.type) throw t.arg;
10708 return this.rval;
10709 },
10710 dispatchException: function dispatchException(e) {
10711 if (this.done) throw e;
10712 var r = this;
10713 function handle(n, o) {
10714 return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
10715 }
10716 for (var o = this.tryEntries.length - 1; o >= 0; --o) {
10717 var i = this.tryEntries[o],
10718 a = i.completion;
10719 if ("root" === i.tryLoc) return handle("end");
10720 if (i.tryLoc <= this.prev) {
10721 var c = n.call(i, "catchLoc"),
10722 u = n.call(i, "finallyLoc");
10723 if (c && u) {
10724 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
10725 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
10726 } else if (c) {
10727 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
10728 } else {
10729 if (!u) throw Error("try statement without catch or finally");
10730 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
10731 }
10732 }
10733 }
10734 },
10735 abrupt: function abrupt(t, e) {
10736 for (var r = this.tryEntries.length - 1; r >= 0; --r) {
10737 var o = this.tryEntries[r];
10738 if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
10739 var i = o;
10740 break;
10741 }
10742 }
10743 i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
10744 var a = i ? i.completion : {};
10745 return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
10746 },
10747 complete: function complete(t, e) {
10748 if ("throw" === t.type) throw t.arg;
10749 return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
10750 },
10751 finish: function finish(t) {
10752 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
10753 var r = this.tryEntries[e];
10754 if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
10755 }
10756 },
10757 "catch": function _catch(t) {
10758 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
10759 var r = this.tryEntries[e];
10760 if (r.tryLoc === t) {
10761 var n = r.completion;
10762 if ("throw" === n.type) {
10763 var o = n.arg;
10764 resetTryEntry(r);
10765 }
10766 return o;
10767 }
10768 }
10769 throw Error("illegal catch attempt");
10770 },
10771 delegateYield: function delegateYield(e, r, n) {
10772 return this.delegate = {
10773 iterator: values(e),
10774 resultName: r,
10775 nextLoc: n
10776 }, "next" === this.method && (this.arg = t), y;
10777 }
10778 }, e;
10779 }
10780 module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
10781
10782 /***/ }),
10783
10784 /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
10785 /*!****************************************************************!*\
10786 !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
10787 \****************************************************************/
10788 /***/ ((module) => {
10789
10790 function _setPrototypeOf(t, e) {
10791 return module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {
10792 return t.__proto__ = e, t;
10793 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _setPrototypeOf(t, e);
10794 }
10795 module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
10796
10797 /***/ }),
10798
10799 /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
10800 /*!***************************************************************!*\
10801 !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
10802 \***************************************************************/
10803 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10804
10805 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
10806 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
10807 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
10808 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
10809 function _slicedToArray(r, e) {
10810 return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();
10811 }
10812 module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
10813
10814 /***/ }),
10815
10816 /***/ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js":
10817 /*!***********************************************************************!*\
10818 !*** ../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js ***!
10819 \***********************************************************************/
10820 /***/ ((module) => {
10821
10822 function _taggedTemplateLiteral(e, t) {
10823 return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {
10824 raw: {
10825 value: Object.freeze(t)
10826 }
10827 }));
10828 }
10829 module.exports = _taggedTemplateLiteral, module.exports.__esModule = true, module.exports["default"] = module.exports;
10830
10831 /***/ }),
10832
10833 /***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
10834 /*!*******************************************************************!*\
10835 !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
10836 \*******************************************************************/
10837 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10838
10839 var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
10840 var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
10841 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
10842 var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
10843 function _toConsumableArray(r) {
10844 return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();
10845 }
10846 module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
10847
10848 /***/ }),
10849
10850 /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
10851 /*!*************************************************************!*\
10852 !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
10853 \*************************************************************/
10854 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10855
10856 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
10857 function toPrimitive(t, r) {
10858 if ("object" != _typeof(t) || !t) return t;
10859 var e = t[Symbol.toPrimitive];
10860 if (void 0 !== e) {
10861 var i = e.call(t, r || "default");
10862 if ("object" != _typeof(i)) return i;
10863 throw new TypeError("@@toPrimitive must return a primitive value.");
10864 }
10865 return ("string" === r ? String : Number)(t);
10866 }
10867 module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
10868
10869 /***/ }),
10870
10871 /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
10872 /*!***************************************************************!*\
10873 !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
10874 \***************************************************************/
10875 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10876
10877 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
10878 var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
10879 function toPropertyKey(t) {
10880 var i = toPrimitive(t, "string");
10881 return "symbol" == _typeof(i) ? i : i + "";
10882 }
10883 module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
10884
10885 /***/ }),
10886
10887 /***/ "../node_modules/@babel/runtime/helpers/typeof.js":
10888 /*!********************************************************!*\
10889 !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
10890 \********************************************************/
10891 /***/ ((module) => {
10892
10893 function _typeof(o) {
10894 "@babel/helpers - typeof";
10895
10896 return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
10897 return typeof o;
10898 } : function (o) {
10899 return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
10900 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
10901 }
10902 module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
10903
10904 /***/ }),
10905
10906 /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
10907 /*!****************************************************************************!*\
10908 !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
10909 \****************************************************************************/
10910 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10911
10912 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
10913 function _unsupportedIterableToArray(r, a) {
10914 if (r) {
10915 if ("string" == typeof r) return arrayLikeToArray(r, a);
10916 var t = {}.toString.call(r).slice(8, -1);
10917 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;
10918 }
10919 }
10920 module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
10921
10922 /***/ }),
10923
10924 /***/ "../node_modules/@babel/runtime/regenerator/index.js":
10925 /*!***********************************************************!*\
10926 !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
10927 \***********************************************************/
10928 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10929
10930 // TODO(Babel 8): Remove this file.
10931
10932 var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js")();
10933 module.exports = runtime;
10934
10935 // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
10936 try {
10937 regeneratorRuntime = runtime;
10938 } catch (accidentalStrictMode) {
10939 if (typeof globalThis === "object") {
10940 globalThis.regeneratorRuntime = runtime;
10941 } else {
10942 Function("r", "regeneratorRuntime = r")(runtime);
10943 }
10944 }
10945
10946
10947 /***/ }),
10948
10949 /***/ "../node_modules/styled-components/node_modules/stylis/src/Enum.js":
10950 /*!*************************************************************************!*\
10951 !*** ../node_modules/styled-components/node_modules/stylis/src/Enum.js ***!
10952 \*************************************************************************/
10953 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
10954
10955 "use strict";
10956 __webpack_require__.r(__webpack_exports__);
10957 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10958 /* harmony export */ CHARSET: () => (/* binding */ CHARSET),
10959 /* harmony export */ COMMENT: () => (/* binding */ COMMENT),
10960 /* harmony export */ COUNTER_STYLE: () => (/* binding */ COUNTER_STYLE),
10961 /* harmony export */ DECLARATION: () => (/* binding */ DECLARATION),
10962 /* harmony export */ DOCUMENT: () => (/* binding */ DOCUMENT),
10963 /* harmony export */ FONT_FACE: () => (/* binding */ FONT_FACE),
10964 /* harmony export */ FONT_FEATURE_VALUES: () => (/* binding */ FONT_FEATURE_VALUES),
10965 /* harmony export */ IMPORT: () => (/* binding */ IMPORT),
10966 /* harmony export */ KEYFRAMES: () => (/* binding */ KEYFRAMES),
10967 /* harmony export */ LAYER: () => (/* binding */ LAYER),
10968 /* harmony export */ MEDIA: () => (/* binding */ MEDIA),
10969 /* harmony export */ MOZ: () => (/* binding */ MOZ),
10970 /* harmony export */ MS: () => (/* binding */ MS),
10971 /* harmony export */ NAMESPACE: () => (/* binding */ NAMESPACE),
10972 /* harmony export */ PAGE: () => (/* binding */ PAGE),
10973 /* harmony export */ RULESET: () => (/* binding */ RULESET),
10974 /* harmony export */ SCOPE: () => (/* binding */ SCOPE),
10975 /* harmony export */ SUPPORTS: () => (/* binding */ SUPPORTS),
10976 /* harmony export */ VIEWPORT: () => (/* binding */ VIEWPORT),
10977 /* harmony export */ WEBKIT: () => (/* binding */ WEBKIT)
10978 /* harmony export */ });
10979 var MS = '-ms-'
10980 var MOZ = '-moz-'
10981 var WEBKIT = '-webkit-'
10982
10983 var COMMENT = 'comm'
10984 var RULESET = 'rule'
10985 var DECLARATION = 'decl'
10986
10987 var PAGE = '@page'
10988 var MEDIA = '@media'
10989 var IMPORT = '@import'
10990 var CHARSET = '@charset'
10991 var VIEWPORT = '@viewport'
10992 var SUPPORTS = '@supports'
10993 var DOCUMENT = '@document'
10994 var NAMESPACE = '@namespace'
10995 var KEYFRAMES = '@keyframes'
10996 var FONT_FACE = '@font-face'
10997 var COUNTER_STYLE = '@counter-style'
10998 var FONT_FEATURE_VALUES = '@font-feature-values'
10999 var LAYER = '@layer'
11000 var SCOPE = '@scope'
11001
11002
11003 /***/ }),
11004
11005 /***/ "../node_modules/styled-components/node_modules/stylis/src/Middleware.js":
11006 /*!*******************************************************************************!*\
11007 !*** ../node_modules/styled-components/node_modules/stylis/src/Middleware.js ***!
11008 \*******************************************************************************/
11009 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
11010
11011 "use strict";
11012 __webpack_require__.r(__webpack_exports__);
11013 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11014 /* harmony export */ middleware: () => (/* binding */ middleware),
11015 /* harmony export */ namespace: () => (/* binding */ namespace),
11016 /* harmony export */ prefixer: () => (/* binding */ prefixer),
11017 /* harmony export */ rulesheet: () => (/* binding */ rulesheet)
11018 /* harmony export */ });
11019 /* harmony import */ var _Enum_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Enum.js */ "../node_modules/styled-components/node_modules/stylis/src/Enum.js");
11020 /* harmony import */ var _Utility_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utility.js */ "../node_modules/styled-components/node_modules/stylis/src/Utility.js");
11021 /* harmony import */ var _Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Tokenizer.js */ "../node_modules/styled-components/node_modules/stylis/src/Tokenizer.js");
11022 /* harmony import */ var _Serializer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Serializer.js */ "../node_modules/styled-components/node_modules/stylis/src/Serializer.js");
11023 /* harmony import */ var _Prefixer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Prefixer.js */ "../node_modules/styled-components/node_modules/stylis/src/Prefixer.js");
11024
11025
11026
11027
11028
11029
11030 /**
11031 * @param {function[]} collection
11032 * @return {function}
11033 */
11034 function middleware (collection) {
11035 var length = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.sizeof)(collection)
11036
11037 return function (element, index, children, callback) {
11038 var output = ''
11039
11040 for (var i = 0; i < length; i++)
11041 output += collection[i](element, index, children, callback) || ''
11042
11043 return output
11044 }
11045 }
11046
11047 /**
11048 * @param {function} callback
11049 * @return {function}
11050 */
11051 function rulesheet (callback) {
11052 return function (element) {
11053 if (!element.root)
11054 if (element = element.return)
11055 callback(element)
11056 }
11057 }
11058
11059 /**
11060 * @param {object} element
11061 * @param {number} index
11062 * @param {object[]} children
11063 * @param {function} callback
11064 */
11065 function prefixer (element, index, children, callback) {
11066 if (element.length > -1)
11067 if (!element.return)
11068 switch (element.type) {
11069 case _Enum_js__WEBPACK_IMPORTED_MODULE_1__.DECLARATION: element.return = (0,_Prefixer_js__WEBPACK_IMPORTED_MODULE_2__.prefix)(element.value, element.length, children)
11070 return
11071 case _Enum_js__WEBPACK_IMPORTED_MODULE_1__.KEYFRAMES:
11072 return (0,_Serializer_js__WEBPACK_IMPORTED_MODULE_3__.serialize)([(0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.copy)(element, {value: (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(element.value, '@', '@' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT)})], callback)
11073 case _Enum_js__WEBPACK_IMPORTED_MODULE_1__.RULESET:
11074 if (element.length)
11075 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.combine)(children = element.props, function (value) {
11076 switch ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(value, callback = /(::plac\w+|:read-\w+)/)) {
11077 // :read-(only|write)
11078 case ':read-only': case ':read-write':
11079 (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.lift)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.copy)(element, {props: [(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /:(read-\w+)/, ':' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MOZ + '$1')]}))
11080 ;(0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.lift)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.copy)(element, {props: [value]}))
11081 ;(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.assign)(element, {props: (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.filter)(children, callback)})
11082 break
11083 // :placeholder
11084 case '::placeholder':
11085 ;(0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.lift)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.copy)(element, {props: [(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /:(plac\w+)/, ':' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + 'input-$1')]}))
11086 ;(0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.lift)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.copy)(element, {props: [(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /:(plac\w+)/, ':' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MOZ + '$1')]}))
11087 ;(0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.lift)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.copy)(element, {props: [(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /:(plac\w+)/, _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'input-$1')]}))
11088 ;(0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.lift)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.copy)(element, {props: [value]}))
11089 ;(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.assign)(element, {props: (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.filter)(children, callback)})
11090 break
11091 }
11092
11093 return ''
11094 })
11095 }
11096 }
11097
11098 /**
11099 * @param {object} element
11100 * @param {number} index
11101 * @param {object[]} children
11102 */
11103 function namespace (element) {
11104 switch (element.type) {
11105 case _Enum_js__WEBPACK_IMPORTED_MODULE_1__.RULESET:
11106 element.props = element.props.map(function (value) {
11107 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.combine)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_4__.tokenize)(value), function (value, index, children) {
11108 switch ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, 0)) {
11109 // \f
11110 case 12:
11111 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.substr)(value, 1, (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.strlen)(value))
11112 // \0 ( + > ~
11113 case 0: case 40: case 43: case 62: case 126:
11114 return value
11115 // :
11116 case 58:
11117 if (children[++index] === 'global')
11118 children[index] = '', children[++index] = '\f' + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.substr)(children[index], index = 1, -1)
11119 // \s
11120 case 32:
11121 return index === 1 ? '' : value
11122 default:
11123 switch (index) {
11124 case 0: element = value
11125 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.sizeof)(children) > 1 ? '' : value
11126 case index = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.sizeof)(children) - 1: case 2:
11127 return index === 2 ? value + element + element : value + element
11128 default:
11129 return value
11130 }
11131 }
11132 })
11133 })
11134 }
11135 }
11136
11137
11138 /***/ }),
11139
11140 /***/ "../node_modules/styled-components/node_modules/stylis/src/Parser.js":
11141 /*!***************************************************************************!*\
11142 !*** ../node_modules/styled-components/node_modules/stylis/src/Parser.js ***!
11143 \***************************************************************************/
11144 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
11145
11146 "use strict";
11147 __webpack_require__.r(__webpack_exports__);
11148 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11149 /* harmony export */ comment: () => (/* binding */ comment),
11150 /* harmony export */ compile: () => (/* binding */ compile),
11151 /* harmony export */ declaration: () => (/* binding */ declaration),
11152 /* harmony export */ parse: () => (/* binding */ parse),
11153 /* harmony export */ ruleset: () => (/* binding */ ruleset)
11154 /* harmony export */ });
11155 /* harmony import */ var _Enum_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Enum.js */ "../node_modules/styled-components/node_modules/stylis/src/Enum.js");
11156 /* harmony import */ var _Utility_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Utility.js */ "../node_modules/styled-components/node_modules/stylis/src/Utility.js");
11157 /* harmony import */ var _Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Tokenizer.js */ "../node_modules/styled-components/node_modules/stylis/src/Tokenizer.js");
11158
11159
11160
11161
11162 /**
11163 * @param {string} value
11164 * @return {object[]}
11165 */
11166 function compile (value) {
11167 return (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.dealloc)(parse('', null, null, null, [''], value = (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.alloc)(value), 0, [0], value))
11168 }
11169
11170 /**
11171 * @param {string} value
11172 * @param {object} root
11173 * @param {object?} parent
11174 * @param {string[]} rule
11175 * @param {string[]} rules
11176 * @param {string[]} rulesets
11177 * @param {number[]} pseudo
11178 * @param {number[]} points
11179 * @param {string[]} declarations
11180 * @return {object}
11181 */
11182 function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {
11183 var index = 0
11184 var offset = 0
11185 var length = pseudo
11186 var atrule = 0
11187 var property = 0
11188 var previous = 0
11189 var variable = 1
11190 var scanning = 1
11191 var ampersand = 1
11192 var character = 0
11193 var type = ''
11194 var props = rules
11195 var children = rulesets
11196 var reference = rule
11197 var characters = type
11198
11199 while (scanning)
11200 switch (previous = character, character = (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.next)()) {
11201 // (
11202 case 40:
11203 if (previous != 108 && (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.charat)(characters, length - 1) == 58) {
11204 if ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.indexof)(characters += (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.replace)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.delimit)(character), '&', '&\f'), '&\f', (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.abs)(index ? points[index - 1] : 0)) != -1)
11205 ampersand = -1
11206 break
11207 }
11208 // " ' [
11209 case 34: case 39: case 91:
11210 characters += (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.delimit)(character)
11211 break
11212 // \t \n \r \s
11213 case 9: case 10: case 13: case 32:
11214 characters += (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.whitespace)(previous)
11215 break
11216 // \
11217 case 92:
11218 characters += (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.escaping)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.caret)() - 1, 7)
11219 continue
11220 // /
11221 case 47:
11222 switch ((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.peek)()) {
11223 case 42: case 47:
11224 ;(0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.append)(comment((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.commenter)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.next)(), (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.caret)()), root, parent, declarations), declarations)
11225 break
11226 default:
11227 characters += '/'
11228 }
11229 break
11230 // {
11231 case 123 * variable:
11232 points[index++] = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(characters) * ampersand
11233 // } ; \0
11234 case 125 * variable: case 59: case 0:
11235 switch (character) {
11236 // \0 }
11237 case 0: case 125: scanning = 0
11238 // ;
11239 case 59 + offset: if (ampersand == -1) characters = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.replace)(characters, /\f/g, '')
11240 if (property > 0 && ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(characters) - length))
11241 (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.append)(property > 32 ? declaration(characters + ';', rule, parent, length - 1, declarations) : declaration((0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.replace)(characters, ' ', '') + ';', rule, parent, length - 2, declarations), declarations)
11242 break
11243 // @ ;
11244 case 59: characters += ';'
11245 // { rule/at-rule
11246 default:
11247 ;(0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.append)(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length, rulesets), rulesets)
11248
11249 if (character === 123)
11250 if (offset === 0)
11251 parse(characters, root, reference, reference, props, rulesets, length, points, children)
11252 else
11253 switch (atrule === 99 && (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.charat)(characters, 3) === 110 ? 100 : atrule) {
11254 // d l m s
11255 case 100: case 108: case 109: case 115:
11256 parse(value, reference, reference, rule && (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.append)(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length, children), children), rules, children, length, points, rule ? props : children)
11257 break
11258 default:
11259 parse(characters, reference, reference, reference, [''], children, 0, points, children)
11260 }
11261 }
11262
11263 index = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo
11264 break
11265 // :
11266 case 58:
11267 length = 1 + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(characters), property = previous
11268 default:
11269 if (variable < 1)
11270 if (character == 123)
11271 --variable
11272 else if (character == 125 && variable++ == 0 && (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.prev)() == 125)
11273 continue
11274
11275 switch (characters += (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.from)(character), character * variable) {
11276 // &
11277 case 38:
11278 ampersand = offset > 0 ? 1 : (characters += '\f', -1)
11279 break
11280 // ,
11281 case 44:
11282 points[index++] = ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(characters) - 1) * ampersand, ampersand = 1
11283 break
11284 // @
11285 case 64:
11286 // -
11287 if ((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.peek)() === 45)
11288 characters += (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.delimit)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.next)())
11289
11290 atrule = (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.peek)(), offset = length = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(type = characters += (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.identifier)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.caret)())), character++
11291 break
11292 // -
11293 case 45:
11294 if (previous === 45 && (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(characters) == 2)
11295 variable = 0
11296 }
11297 }
11298
11299 return rulesets
11300 }
11301
11302 /**
11303 * @param {string} value
11304 * @param {object} root
11305 * @param {object?} parent
11306 * @param {number} index
11307 * @param {number} offset
11308 * @param {string[]} rules
11309 * @param {number[]} points
11310 * @param {string} type
11311 * @param {string[]} props
11312 * @param {string[]} children
11313 * @param {number} length
11314 * @param {object[]} siblings
11315 * @return {object}
11316 */
11317 function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length, siblings) {
11318 var post = offset - 1
11319 var rule = offset === 0 ? rules : ['']
11320 var size = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.sizeof)(rule)
11321
11322 for (var i = 0, j = 0, k = 0; i < index; ++i)
11323 for (var x = 0, y = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.substr)(value, post + 1, post = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.abs)(j = points[i])), z = value; x < size; ++x)
11324 if (z = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.trim)(j > 0 ? rule[x] + ' ' + y : (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.replace)(y, /&\f/g, rule[x])))
11325 props[k++] = z
11326
11327 return (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.node)(value, root, parent, offset === 0 ? _Enum_js__WEBPACK_IMPORTED_MODULE_2__.RULESET : type, props, children, length, siblings)
11328 }
11329
11330 /**
11331 * @param {number} value
11332 * @param {object} root
11333 * @param {object?} parent
11334 * @param {object[]} siblings
11335 * @return {object}
11336 */
11337 function comment (value, root, parent, siblings) {
11338 return (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.node)(value, root, parent, _Enum_js__WEBPACK_IMPORTED_MODULE_2__.COMMENT, (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.from)((0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.char)()), (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.substr)(value, 2, -2), 0, siblings)
11339 }
11340
11341 /**
11342 * @param {string} value
11343 * @param {object} root
11344 * @param {object?} parent
11345 * @param {number} length
11346 * @param {object[]} siblings
11347 * @return {object}
11348 */
11349 function declaration (value, root, parent, length, siblings) {
11350 return (0,_Tokenizer_js__WEBPACK_IMPORTED_MODULE_0__.node)(value, root, parent, _Enum_js__WEBPACK_IMPORTED_MODULE_2__.DECLARATION, (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.substr)(value, 0, length), (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.substr)(value, length + 1, -1), length, siblings)
11351 }
11352
11353
11354 /***/ }),
11355
11356 /***/ "../node_modules/styled-components/node_modules/stylis/src/Prefixer.js":
11357 /*!*****************************************************************************!*\
11358 !*** ../node_modules/styled-components/node_modules/stylis/src/Prefixer.js ***!
11359 \*****************************************************************************/
11360 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
11361
11362 "use strict";
11363 __webpack_require__.r(__webpack_exports__);
11364 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11365 /* harmony export */ prefix: () => (/* binding */ prefix)
11366 /* harmony export */ });
11367 /* harmony import */ var _Enum_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Enum.js */ "../node_modules/styled-components/node_modules/stylis/src/Enum.js");
11368 /* harmony import */ var _Utility_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utility.js */ "../node_modules/styled-components/node_modules/stylis/src/Utility.js");
11369
11370
11371
11372 /**
11373 * @param {string} value
11374 * @param {number} length
11375 * @param {object[]} children
11376 * @return {string}
11377 */
11378 function prefix (value, length, children) {
11379 switch ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.hash)(value, length)) {
11380 // color-adjust
11381 case 5103:
11382 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + 'print-' + value + value
11383 // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
11384 case 5737: case 4201: case 3177: case 3433: case 1641: case 4457: case 2921:
11385 // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break
11386 case 5572: case 6356: case 5844: case 3191: case 6645: case 3005:
11387 // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,
11388 case 6391: case 5879: case 5623: case 6135: case 4599: case 4855:
11389 // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)
11390 case 4215: case 6389: case 5109: case 5365: case 5621: case 3829:
11391 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + value
11392 // tab-size
11393 case 4789:
11394 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MOZ + value + value
11395 // appearance, user-select, transform, hyphens, text-size-adjust
11396 case 5349: case 4246: case 4810: case 6968: case 2756:
11397 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MOZ + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + value + value
11398 // writing-mode
11399 case 5936:
11400 switch ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, length + 11)) {
11401 // vertical-l(r)
11402 case 114:
11403 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /[svh]\w+-[tblr]{2}/, 'tb') + value
11404 // vertical-r(l)
11405 case 108:
11406 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /[svh]\w+-[tblr]{2}/, 'tb-rl') + value
11407 // horizontal(-)tb
11408 case 45:
11409 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /[svh]\w+-[tblr]{2}/, 'lr') + value
11410 // default: fallthrough to below
11411 }
11412 // flex, flex-direction, scroll-snap-type, writing-mode
11413 case 6828: case 4268: case 2903:
11414 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + value + value
11415 // order
11416 case 6165:
11417 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'flex-' + value + value
11418 // align-items
11419 case 5187:
11420 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(\w+).+(:[^]+)/, _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + 'box-$1$2' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'flex-$1$2') + value
11421 // align-self
11422 case 5443:
11423 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'flex-item-' + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /flex-|-self/g, '') + (!(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(value, /flex-|baseline/) ? _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'grid-row-' + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /flex-|-self/g, '') : '') + value
11424 // align-content
11425 case 4675:
11426 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'flex-line-pack' + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /align-content|flex-|-self/g, '') + value
11427 // flex-shrink
11428 case 5548:
11429 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, 'shrink', 'negative') + value
11430 // flex-basis
11431 case 5292:
11432 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, 'basis', 'preferred-size') + value
11433 // flex-grow
11434 case 6060:
11435 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + 'box-' + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, '-grow', '') + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, 'grow', 'positive') + value
11436 // transition
11437 case 4554:
11438 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /([^-])(transform)/g, '$1' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + '$2') + value
11439 // cursor
11440 case 6187:
11441 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(zoom-|grab)/, _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + '$1'), /(image-set)/, _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + '$1'), value, '') + value
11442 // background, background-image
11443 case 5495: case 3959:
11444 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(image-set\([^]*)/, _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + '$1' + '$`$1')
11445 // justify-content
11446 case 4968:
11447 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(.+:)(flex-)?(.*)/, _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + 'box-pack:$3' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + value + value
11448 // justify-self
11449 case 4200:
11450 if (!(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(value, /flex-|baseline/)) return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'grid-column-align' + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.substr)(value, length) + value
11451 break
11452 // grid-template-(columns|rows)
11453 case 2592: case 3360:
11454 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, 'template-', '') + value
11455 // grid-(row|column)-start
11456 case 4384: case 3616:
11457 if (children && children.some(function (element, index) { return length = index, (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(element.props, /grid-\w+-end/) })) {
11458 return ~(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.indexof)(value + (children = children[length].value), 'span', 0) ? value : (_Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, '-start', '') + value + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + 'grid-row-span:' + (~(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.indexof)(children, 'span', 0) ? (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(children, /\d+/) : +(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(children, /\d+/) - +(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(value, /\d+/)) + ';')
11459 }
11460 return _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, '-start', '') + value
11461 // grid-(row|column)-end
11462 case 4896: case 4128:
11463 return (children && children.some(function (element) { return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.match)(element.props, /grid-\w+-start/) })) ? value : _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, '-end', '-span'), 'span ', '') + value
11464 // (margin|padding)-inline-(start|end)
11465 case 4095: case 3583: case 4068: case 2532:
11466 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(.+)-inline(.+)/, _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + '$1$2') + value
11467 // (min|max)?(width|height|inline-size|block-size)
11468 case 8116: case 7059: case 5753: case 5535:
11469 case 5445: case 5701: case 4933: case 4677:
11470 case 5533: case 5789: case 5021: case 4765:
11471 // stretch, max-content, min-content, fill-available
11472 if ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.strlen)(value) - 1 - length > 6)
11473 switch ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, length + 1)) {
11474 // (m)ax-content, (m)in-content
11475 case 109:
11476 // -
11477 if ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, length + 4) !== 45)
11478 break
11479 // (f)ill-available, (f)it-content
11480 case 102:
11481 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(.+:)(.+)-([^]+)/, '$1' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + '$2-$3' + '$1' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MOZ + ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, length + 3) == 108 ? '$3' : '$2-$3')) + value
11482 // (s)tretch
11483 case 115:
11484 return ~(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.indexof)(value, 'stretch', 0) ? prefix((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, 'stretch', 'fill-available'), length, children) + value : value
11485 }
11486 break
11487 // grid-(column|row)
11488 case 5152: case 5920:
11489 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/, function (_, a, b, c, d, e, f) { return (_Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + a + ':' + b + f) + (c ? (_Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + a + '-span:' + (d ? e : +e - +b)) + f : '') + value })
11490 // position: sticky
11491 case 4949:
11492 // stick(y)?
11493 if ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, length + 6) === 121)
11494 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, ':', ':' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT) + value
11495 break
11496 // display: (flex|inline-flex|grid|inline-grid)
11497 case 6444:
11498 switch ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, 14) === 45 ? 18 : 11)) {
11499 // (inline-)?fle(x)
11500 case 120:
11501 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, /(.+:)([^;\s!]+)(;|(\s+)?!.+)?/, '$1' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + ((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.WEBKIT + '$2$3' + '$1' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS + '$2box$3') + value
11502 // (inline-)?gri(d)
11503 case 100:
11504 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, ':', ':' + _Enum_js__WEBPACK_IMPORTED_MODULE_1__.MS) + value
11505 }
11506 break
11507 // scroll-margin, scroll-margin-(top|right|bottom|left)
11508 case 5719: case 2647: case 2135: case 3927: case 2391:
11509 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.replace)(value, 'scroll-', 'scroll-snap-') + value
11510 }
11511
11512 return value
11513 }
11514
11515
11516 /***/ }),
11517
11518 /***/ "../node_modules/styled-components/node_modules/stylis/src/Serializer.js":
11519 /*!*******************************************************************************!*\
11520 !*** ../node_modules/styled-components/node_modules/stylis/src/Serializer.js ***!
11521 \*******************************************************************************/
11522 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
11523
11524 "use strict";
11525 __webpack_require__.r(__webpack_exports__);
11526 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11527 /* harmony export */ serialize: () => (/* binding */ serialize),
11528 /* harmony export */ stringify: () => (/* binding */ stringify)
11529 /* harmony export */ });
11530 /* harmony import */ var _Enum_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Enum.js */ "../node_modules/styled-components/node_modules/stylis/src/Enum.js");
11531 /* harmony import */ var _Utility_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Utility.js */ "../node_modules/styled-components/node_modules/stylis/src/Utility.js");
11532
11533
11534
11535 /**
11536 * @param {object[]} children
11537 * @param {function} callback
11538 * @return {string}
11539 */
11540 function serialize (children, callback) {
11541 var output = ''
11542
11543 for (var i = 0; i < children.length; i++)
11544 output += callback(children[i], i, children, callback) || ''
11545
11546 return output
11547 }
11548
11549 /**
11550 * @param {object} element
11551 * @param {number} index
11552 * @param {object[]} children
11553 * @param {function} callback
11554 * @return {string}
11555 */
11556 function stringify (element, index, children, callback) {
11557 switch (element.type) {
11558 case _Enum_js__WEBPACK_IMPORTED_MODULE_0__.LAYER: if (element.children.length) break
11559 case _Enum_js__WEBPACK_IMPORTED_MODULE_0__.IMPORT: case _Enum_js__WEBPACK_IMPORTED_MODULE_0__.DECLARATION: return element.return = element.return || element.value
11560 case _Enum_js__WEBPACK_IMPORTED_MODULE_0__.COMMENT: return ''
11561 case _Enum_js__WEBPACK_IMPORTED_MODULE_0__.KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'
11562 case _Enum_js__WEBPACK_IMPORTED_MODULE_0__.RULESET: if (!(0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(element.value = element.props.join(','))) return ''
11563 }
11564
11565 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_1__.strlen)(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''
11566 }
11567
11568
11569 /***/ }),
11570
11571 /***/ "../node_modules/styled-components/node_modules/stylis/src/Tokenizer.js":
11572 /*!******************************************************************************!*\
11573 !*** ../node_modules/styled-components/node_modules/stylis/src/Tokenizer.js ***!
11574 \******************************************************************************/
11575 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
11576
11577 "use strict";
11578 __webpack_require__.r(__webpack_exports__);
11579 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11580 /* harmony export */ alloc: () => (/* binding */ alloc),
11581 /* harmony export */ caret: () => (/* binding */ caret),
11582 /* harmony export */ char: () => (/* binding */ char),
11583 /* harmony export */ character: () => (/* binding */ character),
11584 /* harmony export */ characters: () => (/* binding */ characters),
11585 /* harmony export */ column: () => (/* binding */ column),
11586 /* harmony export */ commenter: () => (/* binding */ commenter),
11587 /* harmony export */ copy: () => (/* binding */ copy),
11588 /* harmony export */ dealloc: () => (/* binding */ dealloc),
11589 /* harmony export */ delimit: () => (/* binding */ delimit),
11590 /* harmony export */ delimiter: () => (/* binding */ delimiter),
11591 /* harmony export */ escaping: () => (/* binding */ escaping),
11592 /* harmony export */ identifier: () => (/* binding */ identifier),
11593 /* harmony export */ length: () => (/* binding */ length),
11594 /* harmony export */ lift: () => (/* binding */ lift),
11595 /* harmony export */ line: () => (/* binding */ line),
11596 /* harmony export */ next: () => (/* binding */ next),
11597 /* harmony export */ node: () => (/* binding */ node),
11598 /* harmony export */ peek: () => (/* binding */ peek),
11599 /* harmony export */ position: () => (/* binding */ position),
11600 /* harmony export */ prev: () => (/* binding */ prev),
11601 /* harmony export */ slice: () => (/* binding */ slice),
11602 /* harmony export */ token: () => (/* binding */ token),
11603 /* harmony export */ tokenize: () => (/* binding */ tokenize),
11604 /* harmony export */ tokenizer: () => (/* binding */ tokenizer),
11605 /* harmony export */ whitespace: () => (/* binding */ whitespace)
11606 /* harmony export */ });
11607 /* harmony import */ var _Utility_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utility.js */ "../node_modules/styled-components/node_modules/stylis/src/Utility.js");
11608
11609
11610 var line = 1
11611 var column = 1
11612 var length = 0
11613 var position = 0
11614 var character = 0
11615 var characters = ''
11616
11617 /**
11618 * @param {string} value
11619 * @param {object | null} root
11620 * @param {object | null} parent
11621 * @param {string} type
11622 * @param {string[] | string} props
11623 * @param {object[] | string} children
11624 * @param {object[]} siblings
11625 * @param {number} length
11626 */
11627 function node (value, root, parent, type, props, children, length, siblings) {
11628 return {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: '', siblings: siblings}
11629 }
11630
11631 /**
11632 * @param {object} root
11633 * @param {object} props
11634 * @return {object}
11635 */
11636 function copy (root, props) {
11637 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.assign)(node('', null, null, '', null, null, 0, root.siblings), root, {length: -root.length}, props)
11638 }
11639
11640 /**
11641 * @param {object} root
11642 */
11643 function lift (root) {
11644 while (root.root)
11645 root = copy(root.root, {children: [root]})
11646
11647 ;(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.append)(root, root.siblings)
11648 }
11649
11650 /**
11651 * @return {number}
11652 */
11653 function char () {
11654 return character
11655 }
11656
11657 /**
11658 * @return {number}
11659 */
11660 function prev () {
11661 character = position > 0 ? (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(characters, --position) : 0
11662
11663 if (column--, character === 10)
11664 column = 1, line--
11665
11666 return character
11667 }
11668
11669 /**
11670 * @return {number}
11671 */
11672 function next () {
11673 character = position < length ? (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(characters, position++) : 0
11674
11675 if (column++, character === 10)
11676 column = 1, line++
11677
11678 return character
11679 }
11680
11681 /**
11682 * @return {number}
11683 */
11684 function peek () {
11685 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.charat)(characters, position)
11686 }
11687
11688 /**
11689 * @return {number}
11690 */
11691 function caret () {
11692 return position
11693 }
11694
11695 /**
11696 * @param {number} begin
11697 * @param {number} end
11698 * @return {string}
11699 */
11700 function slice (begin, end) {
11701 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.substr)(characters, begin, end)
11702 }
11703
11704 /**
11705 * @param {number} type
11706 * @return {number}
11707 */
11708 function token (type) {
11709 switch (type) {
11710 // \0 \t \n \r \s whitespace token
11711 case 0: case 9: case 10: case 13: case 32:
11712 return 5
11713 // ! + , / > @ ~ isolate token
11714 case 33: case 43: case 44: case 47: case 62: case 64: case 126:
11715 // ; { } breakpoint token
11716 case 59: case 123: case 125:
11717 return 4
11718 // : accompanied token
11719 case 58:
11720 return 3
11721 // " ' ( [ opening delimit token
11722 case 34: case 39: case 40: case 91:
11723 return 2
11724 // ) ] closing delimit token
11725 case 41: case 93:
11726 return 1
11727 }
11728
11729 return 0
11730 }
11731
11732 /**
11733 * @param {string} value
11734 * @return {any[]}
11735 */
11736 function alloc (value) {
11737 return line = column = 1, length = (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.strlen)(characters = value), position = 0, []
11738 }
11739
11740 /**
11741 * @param {any} value
11742 * @return {any}
11743 */
11744 function dealloc (value) {
11745 return characters = '', value
11746 }
11747
11748 /**
11749 * @param {number} type
11750 * @return {string}
11751 */
11752 function delimit (type) {
11753 return (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.trim)(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))
11754 }
11755
11756 /**
11757 * @param {string} value
11758 * @return {string[]}
11759 */
11760 function tokenize (value) {
11761 return dealloc(tokenizer(alloc(value)))
11762 }
11763
11764 /**
11765 * @param {number} type
11766 * @return {string}
11767 */
11768 function whitespace (type) {
11769 while (character = peek())
11770 if (character < 33)
11771 next()
11772 else
11773 break
11774
11775 return token(type) > 2 || token(character) > 3 ? '' : ' '
11776 }
11777
11778 /**
11779 * @param {string[]} children
11780 * @return {string[]}
11781 */
11782 function tokenizer (children) {
11783 while (next())
11784 switch (token(character)) {
11785 case 0: (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.append)(identifier(position - 1), children)
11786 break
11787 case 2: ;(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.append)(delimit(character), children)
11788 break
11789 default: ;(0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.append)((0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.from)(character), children)
11790 }
11791
11792 return children
11793 }
11794
11795 /**
11796 * @param {number} index
11797 * @param {number} count
11798 * @return {string}
11799 */
11800 function escaping (index, count) {
11801 while (--count && next())
11802 // not 0-9 A-F a-f
11803 if (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))
11804 break
11805
11806 return slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))
11807 }
11808
11809 /**
11810 * @param {number} type
11811 * @return {number}
11812 */
11813 function delimiter (type) {
11814 while (next())
11815 switch (character) {
11816 // ] ) " '
11817 case type:
11818 return position
11819 // " '
11820 case 34: case 39:
11821 if (type !== 34 && type !== 39)
11822 delimiter(character)
11823 break
11824 // (
11825 case 40:
11826 if (type === 41)
11827 delimiter(type)
11828 break
11829 // \
11830 case 92:
11831 next()
11832 break
11833 }
11834
11835 return position
11836 }
11837
11838 /**
11839 * @param {number} type
11840 * @param {number} index
11841 * @return {number}
11842 */
11843 function commenter (type, index) {
11844 while (next())
11845 // //
11846 if (type + character === 47 + 10)
11847 break
11848 // /*
11849 else if (type + character === 42 + 42 && peek() === 47)
11850 break
11851
11852 return '/*' + slice(index, position - 1) + '*' + (0,_Utility_js__WEBPACK_IMPORTED_MODULE_0__.from)(type === 47 ? type : next())
11853 }
11854
11855 /**
11856 * @param {number} index
11857 * @return {string}
11858 */
11859 function identifier (index) {
11860 while (!token(peek()))
11861 next()
11862
11863 return slice(index, position)
11864 }
11865
11866
11867 /***/ }),
11868
11869 /***/ "../node_modules/styled-components/node_modules/stylis/src/Utility.js":
11870 /*!****************************************************************************!*\
11871 !*** ../node_modules/styled-components/node_modules/stylis/src/Utility.js ***!
11872 \****************************************************************************/
11873 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
11874
11875 "use strict";
11876 __webpack_require__.r(__webpack_exports__);
11877 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11878 /* harmony export */ abs: () => (/* binding */ abs),
11879 /* harmony export */ append: () => (/* binding */ append),
11880 /* harmony export */ assign: () => (/* binding */ assign),
11881 /* harmony export */ charat: () => (/* binding */ charat),
11882 /* harmony export */ combine: () => (/* binding */ combine),
11883 /* harmony export */ filter: () => (/* binding */ filter),
11884 /* harmony export */ from: () => (/* binding */ from),
11885 /* harmony export */ hash: () => (/* binding */ hash),
11886 /* harmony export */ indexof: () => (/* binding */ indexof),
11887 /* harmony export */ match: () => (/* binding */ match),
11888 /* harmony export */ replace: () => (/* binding */ replace),
11889 /* harmony export */ sizeof: () => (/* binding */ sizeof),
11890 /* harmony export */ strlen: () => (/* binding */ strlen),
11891 /* harmony export */ substr: () => (/* binding */ substr),
11892 /* harmony export */ trim: () => (/* binding */ trim)
11893 /* harmony export */ });
11894 /**
11895 * @param {number}
11896 * @return {number}
11897 */
11898 var abs = Math.abs
11899
11900 /**
11901 * @param {number}
11902 * @return {string}
11903 */
11904 var from = String.fromCharCode
11905
11906 /**
11907 * @param {object}
11908 * @return {object}
11909 */
11910 var assign = Object.assign
11911
11912 /**
11913 * @param {string} value
11914 * @param {number} length
11915 * @return {number}
11916 */
11917 function hash (value, length) {
11918 return charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0
11919 }
11920
11921 /**
11922 * @param {string} value
11923 * @return {string}
11924 */
11925 function trim (value) {
11926 return value.trim()
11927 }
11928
11929 /**
11930 * @param {string} value
11931 * @param {RegExp} pattern
11932 * @return {string?}
11933 */
11934 function match (value, pattern) {
11935 return (value = pattern.exec(value)) ? value[0] : value
11936 }
11937
11938 /**
11939 * @param {string} value
11940 * @param {(string|RegExp)} pattern
11941 * @param {string} replacement
11942 * @return {string}
11943 */
11944 function replace (value, pattern, replacement) {
11945 return value.replace(pattern, replacement)
11946 }
11947
11948 /**
11949 * @param {string} value
11950 * @param {string} search
11951 * @param {number} position
11952 * @return {number}
11953 */
11954 function indexof (value, search, position) {
11955 return value.indexOf(search, position)
11956 }
11957
11958 /**
11959 * @param {string} value
11960 * @param {number} index
11961 * @return {number}
11962 */
11963 function charat (value, index) {
11964 return value.charCodeAt(index) | 0
11965 }
11966
11967 /**
11968 * @param {string} value
11969 * @param {number} begin
11970 * @param {number} end
11971 * @return {string}
11972 */
11973 function substr (value, begin, end) {
11974 return value.slice(begin, end)
11975 }
11976
11977 /**
11978 * @param {string} value
11979 * @return {number}
11980 */
11981 function strlen (value) {
11982 return value.length
11983 }
11984
11985 /**
11986 * @param {any[]} value
11987 * @return {number}
11988 */
11989 function sizeof (value) {
11990 return value.length
11991 }
11992
11993 /**
11994 * @param {any} value
11995 * @param {any[]} array
11996 * @return {any}
11997 */
11998 function append (value, array) {
11999 return array.push(value), value
12000 }
12001
12002 /**
12003 * @param {string[]} array
12004 * @param {function} callback
12005 * @return {string}
12006 */
12007 function combine (array, callback) {
12008 return array.map(callback).join('')
12009 }
12010
12011 /**
12012 * @param {string[]} array
12013 * @param {RegExp} pattern
12014 * @return {string[]}
12015 */
12016 function filter (array, pattern) {
12017 return array.filter(function (value) { return !match(value, pattern) })
12018 }
12019
12020
12021 /***/ }),
12022
12023 /***/ "../node_modules/styled-components/node_modules/tslib/tslib.es6.mjs":
12024 /*!**************************************************************************!*\
12025 !*** ../node_modules/styled-components/node_modules/tslib/tslib.es6.mjs ***!
12026 \**************************************************************************/
12027 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
12028
12029 "use strict";
12030 __webpack_require__.r(__webpack_exports__);
12031 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
12032 /* harmony export */ __addDisposableResource: () => (/* binding */ __addDisposableResource),
12033 /* harmony export */ __assign: () => (/* binding */ __assign),
12034 /* harmony export */ __asyncDelegator: () => (/* binding */ __asyncDelegator),
12035 /* harmony export */ __asyncGenerator: () => (/* binding */ __asyncGenerator),
12036 /* harmony export */ __asyncValues: () => (/* binding */ __asyncValues),
12037 /* harmony export */ __await: () => (/* binding */ __await),
12038 /* harmony export */ __awaiter: () => (/* binding */ __awaiter),
12039 /* harmony export */ __classPrivateFieldGet: () => (/* binding */ __classPrivateFieldGet),
12040 /* harmony export */ __classPrivateFieldIn: () => (/* binding */ __classPrivateFieldIn),
12041 /* harmony export */ __classPrivateFieldSet: () => (/* binding */ __classPrivateFieldSet),
12042 /* harmony export */ __createBinding: () => (/* binding */ __createBinding),
12043 /* harmony export */ __decorate: () => (/* binding */ __decorate),
12044 /* harmony export */ __disposeResources: () => (/* binding */ __disposeResources),
12045 /* harmony export */ __esDecorate: () => (/* binding */ __esDecorate),
12046 /* harmony export */ __exportStar: () => (/* binding */ __exportStar),
12047 /* harmony export */ __extends: () => (/* binding */ __extends),
12048 /* harmony export */ __generator: () => (/* binding */ __generator),
12049 /* harmony export */ __importDefault: () => (/* binding */ __importDefault),
12050 /* harmony export */ __importStar: () => (/* binding */ __importStar),
12051 /* harmony export */ __makeTemplateObject: () => (/* binding */ __makeTemplateObject),
12052 /* harmony export */ __metadata: () => (/* binding */ __metadata),
12053 /* harmony export */ __param: () => (/* binding */ __param),
12054 /* harmony export */ __propKey: () => (/* binding */ __propKey),
12055 /* harmony export */ __read: () => (/* binding */ __read),
12056 /* harmony export */ __rest: () => (/* binding */ __rest),
12057 /* harmony export */ __runInitializers: () => (/* binding */ __runInitializers),
12058 /* harmony export */ __setFunctionName: () => (/* binding */ __setFunctionName),
12059 /* harmony export */ __spread: () => (/* binding */ __spread),
12060 /* harmony export */ __spreadArray: () => (/* binding */ __spreadArray),
12061 /* harmony export */ __spreadArrays: () => (/* binding */ __spreadArrays),
12062 /* harmony export */ __values: () => (/* binding */ __values),
12063 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
12064 /* harmony export */ });
12065 /******************************************************************************
12066 Copyright (c) Microsoft Corporation.
12067
12068 Permission to use, copy, modify, and/or distribute this software for any
12069 purpose with or without fee is hereby granted.
12070
12071 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
12072 REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
12073 AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12074 INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12075 LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12076 OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
12077 PERFORMANCE OF THIS SOFTWARE.
12078 ***************************************************************************** */
12079 /* global Reflect, Promise, SuppressedError, Symbol */
12080
12081 var extendStatics = function(d, b) {
12082 extendStatics = Object.setPrototypeOf ||
12083 ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
12084 function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
12085 return extendStatics(d, b);
12086 };
12087
12088 function __extends(d, b) {
12089 if (typeof b !== "function" && b !== null)
12090 throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12091 extendStatics(d, b);
12092 function __() { this.constructor = d; }
12093 d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12094 }
12095
12096 var __assign = function() {
12097 __assign = Object.assign || function __assign(t) {
12098 for (var s, i = 1, n = arguments.length; i < n; i++) {
12099 s = arguments[i];
12100 for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
12101 }
12102 return t;
12103 }
12104 return __assign.apply(this, arguments);
12105 }
12106
12107 function __rest(s, e) {
12108 var t = {};
12109 for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
12110 t[p] = s[p];
12111 if (s != null && typeof Object.getOwnPropertySymbols === "function")
12112 for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
12113 if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
12114 t[p[i]] = s[p[i]];
12115 }
12116 return t;
12117 }
12118
12119 function __decorate(decorators, target, key, desc) {
12120 var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
12121 if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12122 else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
12123 return c > 3 && r && Object.defineProperty(target, key, r), r;
12124 }
12125
12126 function __param(paramIndex, decorator) {
12127 return function (target, key) { decorator(target, key, paramIndex); }
12128 }
12129
12130 function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
12131 function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
12132 var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
12133 var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
12134 var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
12135 var _, done = false;
12136 for (var i = decorators.length - 1; i >= 0; i--) {
12137 var context = {};
12138 for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
12139 for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12140 context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
12141 var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
12142 if (kind === "accessor") {
12143 if (result === void 0) continue;
12144 if (result === null || typeof result !== "object") throw new TypeError("Object expected");
12145 if (_ = accept(result.get)) descriptor.get = _;
12146 if (_ = accept(result.set)) descriptor.set = _;
12147 if (_ = accept(result.init)) initializers.unshift(_);
12148 }
12149 else if (_ = accept(result)) {
12150 if (kind === "field") initializers.unshift(_);
12151 else descriptor[key] = _;
12152 }
12153 }
12154 if (target) Object.defineProperty(target, contextIn.name, descriptor);
12155 done = true;
12156 };
12157
12158 function __runInitializers(thisArg, initializers, value) {
12159 var useValue = arguments.length > 2;
12160 for (var i = 0; i < initializers.length; i++) {
12161 value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
12162 }
12163 return useValue ? value : void 0;
12164 };
12165
12166 function __propKey(x) {
12167 return typeof x === "symbol" ? x : "".concat(x);
12168 };
12169
12170 function __setFunctionName(f, name, prefix) {
12171 if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
12172 return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
12173 };
12174
12175 function __metadata(metadataKey, metadataValue) {
12176 if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
12177 }
12178
12179 function __awaiter(thisArg, _arguments, P, generator) {
12180 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
12181 return new (P || (P = Promise))(function (resolve, reject) {
12182 function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12183 function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
12184 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12185 step((generator = generator.apply(thisArg, _arguments || [])).next());
12186 });
12187 }
12188
12189 function __generator(thisArg, body) {
12190 var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12191 return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
12192 function verb(n) { return function (v) { return step([n, v]); }; }
12193 function step(op) {
12194 if (f) throw new TypeError("Generator is already executing.");
12195 while (g && (g = 0, op[0] && (_ = 0)), _) try {
12196 if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
12197 if (y = 0, t) op = [op[0] & 2, t.value];
12198 switch (op[0]) {
12199 case 0: case 1: t = op; break;
12200 case 4: _.label++; return { value: op[1], done: false };
12201 case 5: _.label++; y = op[1]; op = [0]; continue;
12202 case 7: op = _.ops.pop(); _.trys.pop(); continue;
12203 default:
12204 if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
12205 if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
12206 if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
12207 if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
12208 if (t[2]) _.ops.pop();
12209 _.trys.pop(); continue;
12210 }
12211 op = body.call(thisArg, _);
12212 } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
12213 if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
12214 }
12215 }
12216
12217 var __createBinding = Object.create ? (function(o, m, k, k2) {
12218 if (k2 === undefined) k2 = k;
12219 var desc = Object.getOwnPropertyDescriptor(m, k);
12220 if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12221 desc = { enumerable: true, get: function() { return m[k]; } };
12222 }
12223 Object.defineProperty(o, k2, desc);
12224 }) : (function(o, m, k, k2) {
12225 if (k2 === undefined) k2 = k;
12226 o[k2] = m[k];
12227 });
12228
12229 function __exportStar(m, o) {
12230 for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
12231 }
12232
12233 function __values(o) {
12234 var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
12235 if (m) return m.call(o);
12236 if (o && typeof o.length === "number") return {
12237 next: function () {
12238 if (o && i >= o.length) o = void 0;
12239 return { value: o && o[i++], done: !o };
12240 }
12241 };
12242 throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12243 }
12244
12245 function __read(o, n) {
12246 var m = typeof Symbol === "function" && o[Symbol.iterator];
12247 if (!m) return o;
12248 var i = m.call(o), r, ar = [], e;
12249 try {
12250 while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
12251 }
12252 catch (error) { e = { error: error }; }
12253 finally {
12254 try {
12255 if (r && !r.done && (m = i["return"])) m.call(i);
12256 }
12257 finally { if (e) throw e.error; }
12258 }
12259 return ar;
12260 }
12261
12262 /** @deprecated */
12263 function __spread() {
12264 for (var ar = [], i = 0; i < arguments.length; i++)
12265 ar = ar.concat(__read(arguments[i]));
12266 return ar;
12267 }
12268
12269 /** @deprecated */
12270 function __spreadArrays() {
12271 for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
12272 for (var r = Array(s), k = 0, i = 0; i < il; i++)
12273 for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
12274 r[k] = a[j];
12275 return r;
12276 }
12277
12278 function __spreadArray(to, from, pack) {
12279 if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
12280 if (ar || !(i in from)) {
12281 if (!ar) ar = Array.prototype.slice.call(from, 0, i);
12282 ar[i] = from[i];
12283 }
12284 }
12285 return to.concat(ar || Array.prototype.slice.call(from));
12286 }
12287
12288 function __await(v) {
12289 return this instanceof __await ? (this.v = v, this) : new __await(v);
12290 }
12291
12292 function __asyncGenerator(thisArg, _arguments, generator) {
12293 if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
12294 var g = generator.apply(thisArg, _arguments || []), i, q = [];
12295 return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
12296 function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
12297 function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
12298 function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
12299 function fulfill(value) { resume("next", value); }
12300 function reject(value) { resume("throw", value); }
12301 function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
12302 }
12303
12304 function __asyncDelegator(o) {
12305 var i, p;
12306 return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
12307 function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
12308 }
12309
12310 function __asyncValues(o) {
12311 if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
12312 var m = o[Symbol.asyncIterator], i;
12313 return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
12314 function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
12315 function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
12316 }
12317
12318 function __makeTemplateObject(cooked, raw) {
12319 if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
12320 return cooked;
12321 };
12322
12323 var __setModuleDefault = Object.create ? (function(o, v) {
12324 Object.defineProperty(o, "default", { enumerable: true, value: v });
12325 }) : function(o, v) {
12326 o["default"] = v;
12327 };
12328
12329 function __importStar(mod) {
12330 if (mod && mod.__esModule) return mod;
12331 var result = {};
12332 if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
12333 __setModuleDefault(result, mod);
12334 return result;
12335 }
12336
12337 function __importDefault(mod) {
12338 return (mod && mod.__esModule) ? mod : { default: mod };
12339 }
12340
12341 function __classPrivateFieldGet(receiver, state, kind, f) {
12342 if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
12343 if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
12344 return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12345 }
12346
12347 function __classPrivateFieldSet(receiver, state, value, kind, f) {
12348 if (kind === "m") throw new TypeError("Private method is not writable");
12349 if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
12350 if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
12351 return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12352 }
12353
12354 function __classPrivateFieldIn(state, receiver) {
12355 if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object");
12356 return typeof state === "function" ? receiver === state : state.has(receiver);
12357 }
12358
12359 function __addDisposableResource(env, value, async) {
12360 if (value !== null && value !== void 0) {
12361 if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
12362 var dispose;
12363 if (async) {
12364 if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
12365 dispose = value[Symbol.asyncDispose];
12366 }
12367 if (dispose === void 0) {
12368 if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
12369 dispose = value[Symbol.dispose];
12370 }
12371 if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
12372 env.stack.push({ value: value, dispose: dispose, async: async });
12373 }
12374 else if (async) {
12375 env.stack.push({ async: true });
12376 }
12377 return value;
12378 }
12379
12380 var _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
12381 var e = new Error(message);
12382 return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
12383 };
12384
12385 function __disposeResources(env) {
12386 function fail(e) {
12387 env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
12388 env.hasError = true;
12389 }
12390 function next() {
12391 while (env.stack.length) {
12392 var rec = env.stack.pop();
12393 try {
12394 var result = rec.dispose && rec.dispose.call(rec.value);
12395 if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
12396 }
12397 catch (e) {
12398 fail(e);
12399 }
12400 }
12401 if (env.hasError) throw env.error;
12402 }
12403 return next();
12404 }
12405
12406 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
12407 __extends,
12408 __assign,
12409 __rest,
12410 __decorate,
12411 __param,
12412 __metadata,
12413 __awaiter,
12414 __generator,
12415 __createBinding,
12416 __exportStar,
12417 __values,
12418 __read,
12419 __spread,
12420 __spreadArrays,
12421 __spreadArray,
12422 __await,
12423 __asyncGenerator,
12424 __asyncDelegator,
12425 __asyncValues,
12426 __makeTemplateObject,
12427 __importStar,
12428 __importDefault,
12429 __classPrivateFieldGet,
12430 __classPrivateFieldSet,
12431 __classPrivateFieldIn,
12432 __addDisposableResource,
12433 __disposeResources,
12434 });
12435
12436
12437 /***/ })
12438
12439 /******/ });
12440 /************************************************************************/
12441 /******/ // The module cache
12442 /******/ var __webpack_module_cache__ = {};
12443 /******/
12444 /******/ // The require function
12445 /******/ function __webpack_require__(moduleId) {
12446 /******/ // Check if module is in cache
12447 /******/ var cachedModule = __webpack_module_cache__[moduleId];
12448 /******/ if (cachedModule !== undefined) {
12449 /******/ return cachedModule.exports;
12450 /******/ }
12451 /******/ // Create a new module (and put it into the cache)
12452 /******/ var module = __webpack_module_cache__[moduleId] = {
12453 /******/ // no module.id needed
12454 /******/ // no module.loaded needed
12455 /******/ exports: {}
12456 /******/ };
12457 /******/
12458 /******/ // Execute the module function
12459 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
12460 /******/
12461 /******/ // Return the exports of the module
12462 /******/ return module.exports;
12463 /******/ }
12464 /******/
12465 /************************************************************************/
12466 /******/ /* webpack/runtime/compat get default export */
12467 /******/ (() => {
12468 /******/ // getDefaultExport function for compatibility with non-harmony modules
12469 /******/ __webpack_require__.n = (module) => {
12470 /******/ var getter = module && module.__esModule ?
12471 /******/ () => (module['default']) :
12472 /******/ () => (module);
12473 /******/ __webpack_require__.d(getter, { a: getter });
12474 /******/ return getter;
12475 /******/ };
12476 /******/ })();
12477 /******/
12478 /******/ /* webpack/runtime/define property getters */
12479 /******/ (() => {
12480 /******/ // define getter functions for harmony exports
12481 /******/ __webpack_require__.d = (exports, definition) => {
12482 /******/ for(var key in definition) {
12483 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
12484 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
12485 /******/ }
12486 /******/ }
12487 /******/ };
12488 /******/ })();
12489 /******/
12490 /******/ /* webpack/runtime/hasOwnProperty shorthand */
12491 /******/ (() => {
12492 /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
12493 /******/ })();
12494 /******/
12495 /******/ /* webpack/runtime/make namespace object */
12496 /******/ (() => {
12497 /******/ // define __esModule on exports
12498 /******/ __webpack_require__.r = (exports) => {
12499 /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
12500 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
12501 /******/ }
12502 /******/ Object.defineProperty(exports, '__esModule', { value: true });
12503 /******/ };
12504 /******/ })();
12505 /******/
12506 /******/ /* webpack/runtime/nonce */
12507 /******/ (() => {
12508 /******/ __webpack_require__.nc = undefined;
12509 /******/ })();
12510 /******/
12511 /************************************************************************/
12512 var __webpack_exports__ = {};
12513 // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
12514 (() => {
12515 "use strict";
12516 var exports = __webpack_exports__;
12517 /*!*******************************************************!*\
12518 !*** ../modules/ai/assets/js/editor/layout-module.js ***!
12519 \*******************************************************/
12520
12521
12522 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
12523 Object.defineProperty(exports, "__esModule", ({
12524 value: true
12525 }));
12526 exports["default"] = exports.AI_ATTACHMENT = void 0;
12527 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
12528 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
12529 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
12530 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
12531 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
12532 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
12533 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
12534 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
12535 var _aiLayoutBehavior = _interopRequireDefault(__webpack_require__(/*! ./ai-layout-behavior */ "../modules/ai/assets/js/editor/ai-layout-behavior.js"));
12536 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
12537 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
12538 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
12539 var _applyTemplateForAiBehavior = _interopRequireDefault(__webpack_require__(/*! ./integration/library/apply-template-for-ai-behavior */ "../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js"));
12540 var _attachments = __webpack_require__(/*! ./pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
12541 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)); }
12542 function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
12543 var AI_ATTACHMENT = exports.AI_ATTACHMENT = 'ai-attachment';
12544 var Module = exports["default"] = /*#__PURE__*/function (_elementorModules$edi) {
12545 function Module() {
12546 var _this;
12547 (0, _classCallCheck2.default)(this, Module);
12548 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12549 args[_key] = arguments[_key];
12550 }
12551 _this = _callSuper(this, Module, [].concat(args));
12552 (0, _defineProperty2.default)(_this, "registerVariationsContextMenu", function (groups, currentElement) {
12553 var saveGroup = groups.find(function (group) {
12554 return 'save' === group.name;
12555 });
12556 if (!saveGroup) {
12557 return groups;
12558 }
12559 var contextMenu = {
12560 name: 'ai',
12561 icon: 'eicon-ai',
12562 isEnabled: function isEnabled() {
12563 return 0 !== currentElement.getContainer().children.length;
12564 },
12565 title: (0, _i18n.__)('Generate variations with AI', 'elementor'),
12566 callback: function () {
12567 var _callback = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
12568 var container, json, attachments;
12569 return _regenerator.default.wrap(function _callee$(_context) {
12570 while (1) switch (_context.prev = _context.next) {
12571 case 0:
12572 container = currentElement.getContainer();
12573 json = container.model.toJSON({
12574 remove: ['default']
12575 });
12576 attachments = [{
12577 type: 'json',
12578 previewHTML: '',
12579 content: json,
12580 label: container.model.get('title'),
12581 source: _attachments.USER_VARIATION_SOURCE
12582 }];
12583 (0, _editorIntegration.renderLayoutApp)({
12584 parentContainer: container.parent,
12585 mode: _config.MODE_VARIATION,
12586 at: container.view._index,
12587 attachments: attachments,
12588 onSelect: function onSelect() {
12589 container.view.$el.hide();
12590 },
12591 onClose: function onClose() {
12592 container.view.$el.show();
12593 },
12594 onInsert: function onInsert(template) {
12595 (0, _editorIntegration.importToEditor)({
12596 parentContainer: container.parent,
12597 at: container.view._index,
12598 template: template,
12599 historyTitle: (0, _i18n.__)('AI Variation', 'elementor'),
12600 replace: true
12601 });
12602 }
12603 });
12604 case 4:
12605 case "end":
12606 return _context.stop();
12607 }
12608 }, _callee);
12609 }));
12610 function callback() {
12611 return _callback.apply(this, arguments);
12612 }
12613 return callback;
12614 }()
12615 };
12616
12617 // Add on top of save group actions
12618 saveGroup.actions.unshift(contextMenu);
12619 return groups;
12620 });
12621 return _this;
12622 }
12623 (0, _inherits2.default)(Module, _elementorModules$edi);
12624 return (0, _createClass2.default)(Module, [{
12625 key: "onElementorInit",
12626 value: function onElementorInit() {
12627 var _this2 = this;
12628 elementor.hooks.addFilter('views/add-section/behaviors', this.registerAiLayoutBehavior);
12629 elementor.hooks.addFilter('elements/container/contextMenuGroups', this.registerVariationsContextMenu);
12630 elementor.hooks.addFilter('elementor/editor/template-library/template/behaviors', this.registerLibraryActionButtonBehavior);
12631 elementor.hooks.addFilter('elementor/editor/template-library/template/action-button', this.filterLibraryActionButtonTemplate, 11);
12632 $e.commands.register('library', 'generate-ai-variation', function (args) {
12633 return _this2.applyTemplate(args);
12634 });
12635 }
12636 }, {
12637 key: "applyTemplate",
12638 value: function applyTemplate(args) {
12639 window.postMessage({
12640 type: 'library/attach:start'
12641 });
12642 $e.components.get('library').downloadTemplate(args, function (data) {
12643 var model = args.model;
12644 window.postMessage({
12645 type: 'library/attach',
12646 json: data.content[0],
12647 html: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
12648 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
12649 source: _attachments.ELEMENTOR_LIBRARY_SOURCE
12650 }, window.location.origin);
12651 });
12652 }
12653 }, {
12654 key: "registerLibraryActionButtonBehavior",
12655 value: function registerLibraryActionButtonBehavior(behaviors) {
12656 behaviors.applyAiTemplate = {
12657 behaviorClass: _applyTemplateForAiBehavior.default
12658 };
12659 return behaviors;
12660 }
12661 }, {
12662 key: "registerAiLayoutBehavior",
12663 value: function registerAiLayoutBehavior(behaviors) {
12664 behaviors.ai = {
12665 behaviorClass: _aiLayoutBehavior.default,
12666 context: {
12667 documentType: window.elementor.documents.getCurrent().config.type
12668 }
12669 };
12670 return behaviors;
12671 }
12672 }, {
12673 key: "filterLibraryActionButtonTemplate",
12674 value: function filterLibraryActionButtonTemplate(viewId) {
12675 var modalConfig = $e.components.get('library').manager.modalConfig;
12676 var originalCoreViewId = '#tmpl-elementor-template-library-insert-button';
12677 if (originalCoreViewId !== viewId) {
12678 return viewId;
12679 }
12680 if ($e.routes.current.library !== 'library/templates/blocks') {
12681 return viewId;
12682 }
12683 if (AI_ATTACHMENT === modalConfig.mode) {
12684 viewId = '#tmpl-elementor-template-library-apply-ai-button';
12685 } else {
12686 viewId = '#tmpl-elementor-template-library-insert-and-ai-variations-buttons';
12687 }
12688 return viewId;
12689 }
12690 }]);
12691 }(elementorModules.editor.utils.Module);
12692 new Module();
12693 })();
12694
12695 /******/ })()
12696 ;
12697 //# sourceMappingURL=ai-layout.js.map