PluginProbe
Elementor Website Builder – more than just a page builder / 3.23.0-dev3
Elementor Website Builder – more than just a page builder v3.23.0-dev3
4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 4.0.7 All 451 releases
elementor / assets / js / ai-layout.js

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

13,150 lines 584.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*! elementor - v3.23.0 - 01-07-2024 */
2 /******/ (() => { // webpackBootstrap
3 /******/ var __webpack_modules__ = ({
4
5 /***/ "../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js":
6 /*!********************************************************************************!*\
7 !*** ../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js ***!
8 \********************************************************************************/
9 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10
11 "use strict";
12 __webpack_require__.r(__webpack_exports__);
13 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
14 /* harmony export */ "default": () => (/* binding */ isPropValid)
15 /* harmony export */ });
16 /* harmony import */ var _emotion_memoize__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @emotion/memoize */ "../node_modules/@emotion/memoize/dist/emotion-memoize.esm.js");
17
18
19 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|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
20
21 var isPropValid = /* #__PURE__ */(0,_emotion_memoize__WEBPACK_IMPORTED_MODULE_0__["default"])(function (prop) {
22 return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111
23 /* o */
24 && prop.charCodeAt(1) === 110
25 /* n */
26 && prop.charCodeAt(2) < 91;
27 }
28 /* Z+1 */
29 );
30
31
32
33
34 /***/ }),
35
36 /***/ "../node_modules/@emotion/memoize/dist/emotion-memoize.esm.js":
37 /*!********************************************************************!*\
38 !*** ../node_modules/@emotion/memoize/dist/emotion-memoize.esm.js ***!
39 \********************************************************************/
40 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
41
42 "use strict";
43 __webpack_require__.r(__webpack_exports__);
44 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
45 /* harmony export */ "default": () => (/* binding */ memoize)
46 /* harmony export */ });
47 function memoize(fn) {
48 var cache = Object.create(null);
49 return function (arg) {
50 if (cache[arg] === undefined) cache[arg] = fn(arg);
51 return cache[arg];
52 };
53 }
54
55
56
57
58 /***/ }),
59
60 /***/ "../node_modules/@emotion/stylis/dist/stylis.browser.esm.js":
61 /*!******************************************************************!*\
62 !*** ../node_modules/@emotion/stylis/dist/stylis.browser.esm.js ***!
63 \******************************************************************/
64 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
65
66 "use strict";
67 __webpack_require__.r(__webpack_exports__);
68 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
69 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
70 /* harmony export */ });
71 function stylis_min (W) {
72 function M(d, c, e, h, a) {
73 for (var m = 0, b = 0, v = 0, n = 0, q, g, x = 0, K = 0, k, u = k = q = 0, l = 0, r = 0, I = 0, t = 0, B = e.length, J = B - 1, y, f = '', p = '', F = '', G = '', C; l < B;) {
74 g = e.charCodeAt(l);
75 l === J && 0 !== b + n + v + m && (0 !== b && (g = 47 === b ? 10 : 47), n = v = m = 0, B++, J++);
76
77 if (0 === b + n + v + m) {
78 if (l === J && (0 < r && (f = f.replace(N, '')), 0 < f.trim().length)) {
79 switch (g) {
80 case 32:
81 case 9:
82 case 59:
83 case 13:
84 case 10:
85 break;
86
87 default:
88 f += e.charAt(l);
89 }
90
91 g = 59;
92 }
93
94 switch (g) {
95 case 123:
96 f = f.trim();
97 q = f.charCodeAt(0);
98 k = 1;
99
100 for (t = ++l; l < B;) {
101 switch (g = e.charCodeAt(l)) {
102 case 123:
103 k++;
104 break;
105
106 case 125:
107 k--;
108 break;
109
110 case 47:
111 switch (g = e.charCodeAt(l + 1)) {
112 case 42:
113 case 47:
114 a: {
115 for (u = l + 1; u < J; ++u) {
116 switch (e.charCodeAt(u)) {
117 case 47:
118 if (42 === g && 42 === e.charCodeAt(u - 1) && l + 2 !== u) {
119 l = u + 1;
120 break a;
121 }
122
123 break;
124
125 case 10:
126 if (47 === g) {
127 l = u + 1;
128 break a;
129 }
130
131 }
132 }
133
134 l = u;
135 }
136
137 }
138
139 break;
140
141 case 91:
142 g++;
143
144 case 40:
145 g++;
146
147 case 34:
148 case 39:
149 for (; l++ < J && e.charCodeAt(l) !== g;) {
150 }
151
152 }
153
154 if (0 === k) break;
155 l++;
156 }
157
158 k = e.substring(t, l);
159 0 === q && (q = (f = f.replace(ca, '').trim()).charCodeAt(0));
160
161 switch (q) {
162 case 64:
163 0 < r && (f = f.replace(N, ''));
164 g = f.charCodeAt(1);
165
166 switch (g) {
167 case 100:
168 case 109:
169 case 115:
170 case 45:
171 r = c;
172 break;
173
174 default:
175 r = O;
176 }
177
178 k = M(c, r, k, g, a + 1);
179 t = k.length;
180 0 < A && (r = X(O, f, I), C = H(3, k, r, c, D, z, t, g, a, h), f = r.join(''), void 0 !== C && 0 === (t = (k = C.trim()).length) && (g = 0, k = ''));
181 if (0 < t) switch (g) {
182 case 115:
183 f = f.replace(da, ea);
184
185 case 100:
186 case 109:
187 case 45:
188 k = f + '{' + k + '}';
189 break;
190
191 case 107:
192 f = f.replace(fa, '$1 $2');
193 k = f + '{' + k + '}';
194 k = 1 === w || 2 === w && L('@' + k, 3) ? '@-webkit-' + k + '@' + k : '@' + k;
195 break;
196
197 default:
198 k = f + k, 112 === h && (k = (p += k, ''));
199 } else k = '';
200 break;
201
202 default:
203 k = M(c, X(c, f, I), k, h, a + 1);
204 }
205
206 F += k;
207 k = I = r = u = q = 0;
208 f = '';
209 g = e.charCodeAt(++l);
210 break;
211
212 case 125:
213 case 59:
214 f = (0 < r ? f.replace(N, '') : f).trim();
215 if (1 < (t = f.length)) switch (0 === u && (q = f.charCodeAt(0), 45 === q || 96 < q && 123 > q) && (t = (f = f.replace(' ', ':')).length), 0 < A && void 0 !== (C = H(1, f, c, d, D, z, p.length, h, a, h)) && 0 === (t = (f = C.trim()).length) && (f = '\x00\x00'), q = f.charCodeAt(0), g = f.charCodeAt(1), q) {
216 case 0:
217 break;
218
219 case 64:
220 if (105 === g || 99 === g) {
221 G += f + e.charAt(l);
222 break;
223 }
224
225 default:
226 58 !== f.charCodeAt(t - 1) && (p += P(f, q, g, f.charCodeAt(2)));
227 }
228 I = r = u = q = 0;
229 f = '';
230 g = e.charCodeAt(++l);
231 }
232 }
233
234 switch (g) {
235 case 13:
236 case 10:
237 47 === b ? b = 0 : 0 === 1 + q && 107 !== h && 0 < f.length && (r = 1, f += '\x00');
238 0 < A * Y && H(0, f, c, d, D, z, p.length, h, a, h);
239 z = 1;
240 D++;
241 break;
242
243 case 59:
244 case 125:
245 if (0 === b + n + v + m) {
246 z++;
247 break;
248 }
249
250 default:
251 z++;
252 y = e.charAt(l);
253
254 switch (g) {
255 case 9:
256 case 32:
257 if (0 === n + m + b) switch (x) {
258 case 44:
259 case 58:
260 case 9:
261 case 32:
262 y = '';
263 break;
264
265 default:
266 32 !== g && (y = ' ');
267 }
268 break;
269
270 case 0:
271 y = '\\0';
272 break;
273
274 case 12:
275 y = '\\f';
276 break;
277
278 case 11:
279 y = '\\v';
280 break;
281
282 case 38:
283 0 === n + b + m && (r = I = 1, y = '\f' + y);
284 break;
285
286 case 108:
287 if (0 === n + b + m + E && 0 < u) switch (l - u) {
288 case 2:
289 112 === x && 58 === e.charCodeAt(l - 3) && (E = x);
290
291 case 8:
292 111 === K && (E = K);
293 }
294 break;
295
296 case 58:
297 0 === n + b + m && (u = l);
298 break;
299
300 case 44:
301 0 === b + v + n + m && (r = 1, y += '\r');
302 break;
303
304 case 34:
305 case 39:
306 0 === b && (n = n === g ? 0 : 0 === n ? g : n);
307 break;
308
309 case 91:
310 0 === n + b + v && m++;
311 break;
312
313 case 93:
314 0 === n + b + v && m--;
315 break;
316
317 case 41:
318 0 === n + b + m && v--;
319 break;
320
321 case 40:
322 if (0 === n + b + m) {
323 if (0 === q) switch (2 * x + 3 * K) {
324 case 533:
325 break;
326
327 default:
328 q = 1;
329 }
330 v++;
331 }
332
333 break;
334
335 case 64:
336 0 === b + v + n + m + u + k && (k = 1);
337 break;
338
339 case 42:
340 case 47:
341 if (!(0 < n + m + v)) switch (b) {
342 case 0:
343 switch (2 * g + 3 * e.charCodeAt(l + 1)) {
344 case 235:
345 b = 47;
346 break;
347
348 case 220:
349 t = l, b = 42;
350 }
351
352 break;
353
354 case 42:
355 47 === g && 42 === x && t + 2 !== l && (33 === e.charCodeAt(t + 2) && (p += e.substring(t, l + 1)), y = '', b = 0);
356 }
357 }
358
359 0 === b && (f += y);
360 }
361
362 K = x;
363 x = g;
364 l++;
365 }
366
367 t = p.length;
368
369 if (0 < t) {
370 r = c;
371 if (0 < A && (C = H(2, p, r, d, D, z, t, h, a, h), void 0 !== C && 0 === (p = C).length)) return G + p + F;
372 p = r.join(',') + '{' + p + '}';
373
374 if (0 !== w * E) {
375 2 !== w || L(p, 2) || (E = 0);
376
377 switch (E) {
378 case 111:
379 p = p.replace(ha, ':-moz-$1') + p;
380 break;
381
382 case 112:
383 p = p.replace(Q, '::-webkit-input-$1') + p.replace(Q, '::-moz-$1') + p.replace(Q, ':-ms-input-$1') + p;
384 }
385
386 E = 0;
387 }
388 }
389
390 return G + p + F;
391 }
392
393 function X(d, c, e) {
394 var h = c.trim().split(ia);
395 c = h;
396 var a = h.length,
397 m = d.length;
398
399 switch (m) {
400 case 0:
401 case 1:
402 var b = 0;
403
404 for (d = 0 === m ? '' : d[0] + ' '; b < a; ++b) {
405 c[b] = Z(d, c[b], e).trim();
406 }
407
408 break;
409
410 default:
411 var v = b = 0;
412
413 for (c = []; b < a; ++b) {
414 for (var n = 0; n < m; ++n) {
415 c[v++] = Z(d[n] + ' ', h[b], e).trim();
416 }
417 }
418
419 }
420
421 return c;
422 }
423
424 function Z(d, c, e) {
425 var h = c.charCodeAt(0);
426 33 > h && (h = (c = c.trim()).charCodeAt(0));
427
428 switch (h) {
429 case 38:
430 return c.replace(F, '$1' + d.trim());
431
432 case 58:
433 return d.trim() + c.replace(F, '$1' + d.trim());
434
435 default:
436 if (0 < 1 * e && 0 < c.indexOf('\f')) return c.replace(F, (58 === d.charCodeAt(0) ? '' : '$1') + d.trim());
437 }
438
439 return d + c;
440 }
441
442 function P(d, c, e, h) {
443 var a = d + ';',
444 m = 2 * c + 3 * e + 4 * h;
445
446 if (944 === m) {
447 d = a.indexOf(':', 9) + 1;
448 var b = a.substring(d, a.length - 1).trim();
449 b = a.substring(0, d).trim() + b + ';';
450 return 1 === w || 2 === w && L(b, 1) ? '-webkit-' + b + b : b;
451 }
452
453 if (0 === w || 2 === w && !L(a, 1)) return a;
454
455 switch (m) {
456 case 1015:
457 return 97 === a.charCodeAt(10) ? '-webkit-' + a + a : a;
458
459 case 951:
460 return 116 === a.charCodeAt(3) ? '-webkit-' + a + a : a;
461
462 case 963:
463 return 110 === a.charCodeAt(5) ? '-webkit-' + a + a : a;
464
465 case 1009:
466 if (100 !== a.charCodeAt(4)) break;
467
468 case 969:
469 case 942:
470 return '-webkit-' + a + a;
471
472 case 978:
473 return '-webkit-' + a + '-moz-' + a + a;
474
475 case 1019:
476 case 983:
477 return '-webkit-' + a + '-moz-' + a + '-ms-' + a + a;
478
479 case 883:
480 if (45 === a.charCodeAt(8)) return '-webkit-' + a + a;
481 if (0 < a.indexOf('image-set(', 11)) return a.replace(ja, '$1-webkit-$2') + a;
482 break;
483
484 case 932:
485 if (45 === a.charCodeAt(4)) switch (a.charCodeAt(5)) {
486 case 103:
487 return '-webkit-box-' + a.replace('-grow', '') + '-webkit-' + a + '-ms-' + a.replace('grow', 'positive') + a;
488
489 case 115:
490 return '-webkit-' + a + '-ms-' + a.replace('shrink', 'negative') + a;
491
492 case 98:
493 return '-webkit-' + a + '-ms-' + a.replace('basis', 'preferred-size') + a;
494 }
495 return '-webkit-' + a + '-ms-' + a + a;
496
497 case 964:
498 return '-webkit-' + a + '-ms-flex-' + a + a;
499
500 case 1023:
501 if (99 !== a.charCodeAt(8)) break;
502 b = a.substring(a.indexOf(':', 15)).replace('flex-', '').replace('space-between', 'justify');
503 return '-webkit-box-pack' + b + '-webkit-' + a + '-ms-flex-pack' + b + a;
504
505 case 1005:
506 return ka.test(a) ? a.replace(aa, ':-webkit-') + a.replace(aa, ':-moz-') + a : a;
507
508 case 1e3:
509 b = a.substring(13).trim();
510 c = b.indexOf('-') + 1;
511
512 switch (b.charCodeAt(0) + b.charCodeAt(c)) {
513 case 226:
514 b = a.replace(G, 'tb');
515 break;
516
517 case 232:
518 b = a.replace(G, 'tb-rl');
519 break;
520
521 case 220:
522 b = a.replace(G, 'lr');
523 break;
524
525 default:
526 return a;
527 }
528
529 return '-webkit-' + a + '-ms-' + b + a;
530
531 case 1017:
532 if (-1 === a.indexOf('sticky', 9)) break;
533
534 case 975:
535 c = (a = d).length - 10;
536 b = (33 === a.charCodeAt(c) ? a.substring(0, c) : a).substring(d.indexOf(':', 7) + 1).trim();
537
538 switch (m = b.charCodeAt(0) + (b.charCodeAt(7) | 0)) {
539 case 203:
540 if (111 > b.charCodeAt(8)) break;
541
542 case 115:
543 a = a.replace(b, '-webkit-' + b) + ';' + a;
544 break;
545
546 case 207:
547 case 102:
548 a = a.replace(b, '-webkit-' + (102 < m ? 'inline-' : '') + 'box') + ';' + a.replace(b, '-webkit-' + b) + ';' + a.replace(b, '-ms-' + b + 'box') + ';' + a;
549 }
550
551 return a + ';';
552
553 case 938:
554 if (45 === a.charCodeAt(5)) switch (a.charCodeAt(6)) {
555 case 105:
556 return b = a.replace('-items', ''), '-webkit-' + a + '-webkit-box-' + b + '-ms-flex-' + b + a;
557
558 case 115:
559 return '-webkit-' + a + '-ms-flex-item-' + a.replace(ba, '') + a;
560
561 default:
562 return '-webkit-' + a + '-ms-flex-line-pack' + a.replace('align-content', '').replace(ba, '') + a;
563 }
564 break;
565
566 case 973:
567 case 989:
568 if (45 !== a.charCodeAt(3) || 122 === a.charCodeAt(4)) break;
569
570 case 931:
571 case 953:
572 if (!0 === la.test(d)) return 115 === (b = d.substring(d.indexOf(':') + 1)).charCodeAt(0) ? P(d.replace('stretch', 'fill-available'), c, e, h).replace(':fill-available', ':stretch') : a.replace(b, '-webkit-' + b) + a.replace(b, '-moz-' + b.replace('fill-', '')) + a;
573 break;
574
575 case 962:
576 if (a = '-webkit-' + a + (102 === a.charCodeAt(5) ? '-ms-' + a : '') + a, 211 === e + h && 105 === a.charCodeAt(13) && 0 < a.indexOf('transform', 10)) return a.substring(0, a.indexOf(';', 27) + 1).replace(ma, '$1-webkit-$2') + a;
577 }
578
579 return a;
580 }
581
582 function L(d, c) {
583 var e = d.indexOf(1 === c ? ':' : '{'),
584 h = d.substring(0, 3 !== c ? e : 10);
585 e = d.substring(e + 1, d.length - 1);
586 return R(2 !== c ? h : h.replace(na, '$1'), e, c);
587 }
588
589 function ea(d, c) {
590 var e = P(c, c.charCodeAt(0), c.charCodeAt(1), c.charCodeAt(2));
591 return e !== c + ';' ? e.replace(oa, ' or ($1)').substring(4) : '(' + c + ')';
592 }
593
594 function H(d, c, e, h, a, m, b, v, n, q) {
595 for (var g = 0, x = c, w; g < A; ++g) {
596 switch (w = S[g].call(B, d, x, e, h, a, m, b, v, n, q)) {
597 case void 0:
598 case !1:
599 case !0:
600 case null:
601 break;
602
603 default:
604 x = w;
605 }
606 }
607
608 if (x !== c) return x;
609 }
610
611 function T(d) {
612 switch (d) {
613 case void 0:
614 case null:
615 A = S.length = 0;
616 break;
617
618 default:
619 if ('function' === typeof d) S[A++] = d;else if ('object' === typeof d) for (var c = 0, e = d.length; c < e; ++c) {
620 T(d[c]);
621 } else Y = !!d | 0;
622 }
623
624 return T;
625 }
626
627 function U(d) {
628 d = d.prefix;
629 void 0 !== d && (R = null, d ? 'function' !== typeof d ? w = 1 : (w = 2, R = d) : w = 0);
630 return U;
631 }
632
633 function B(d, c) {
634 var e = d;
635 33 > e.charCodeAt(0) && (e = e.trim());
636 V = e;
637 e = [V];
638
639 if (0 < A) {
640 var h = H(-1, c, e, e, D, z, 0, 0, 0, 0);
641 void 0 !== h && 'string' === typeof h && (c = h);
642 }
643
644 var a = M(O, e, c, 0, 0);
645 0 < A && (h = H(-2, a, e, e, D, z, a.length, 0, 0, 0), void 0 !== h && (a = h));
646 V = '';
647 E = 0;
648 z = D = 1;
649 return a;
650 }
651
652 var ca = /^\0+/g,
653 N = /[\0\r\f]/g,
654 aa = /: */g,
655 ka = /zoo|gra/,
656 ma = /([,: ])(transform)/g,
657 ia = /,\r+?/g,
658 F = /([\t\r\n ])*\f?&/g,
659 fa = /@(k\w+)\s*(\S*)\s*/,
660 Q = /::(place)/g,
661 ha = /:(read-only)/g,
662 G = /[svh]\w+-[tblr]{2}/,
663 da = /\(\s*(.*)\s*\)/g,
664 oa = /([\s\S]*?);/g,
665 ba = /-self|flex-/g,
666 na = /[^]*?(:[rp][el]a[\w-]+)[^]*/,
667 la = /stretch|:\s*\w+\-(?:conte|avail)/,
668 ja = /([^-])(image-set\()/,
669 z = 1,
670 D = 1,
671 E = 0,
672 w = 1,
673 O = [],
674 S = [],
675 A = 0,
676 R = null,
677 Y = 0,
678 V = '';
679 B.use = T;
680 B.set = U;
681 void 0 !== W && U(W);
682 return B;
683 }
684
685 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (stylis_min);
686
687
688 /***/ }),
689
690 /***/ "../assets/dev/js/utils/react.js":
691 /*!***************************************!*\
692 !*** ../assets/dev/js/utils/react.js ***!
693 \***************************************/
694 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
695
696 "use strict";
697
698
699 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
700 Object.defineProperty(exports, "__esModule", ({
701 value: true
702 }));
703 exports["default"] = void 0;
704 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
705 var ReactDOM = _interopRequireWildcard(__webpack_require__(/*! react-dom */ "react-dom"));
706 var _client = __webpack_require__(/*! react-dom/client */ "../node_modules/react-dom/client.js");
707 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
708 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; }
709 /**
710 * Support conditional rendering of a React App to the DOM, based on the React version.
711 * We use `createRoot` when available, but fallback to `ReactDOM.render` for older versions.
712 *
713 * @param { React.ReactElement } app The app to render.
714 * @param { HTMLElement } domElement The DOM element to render the app into.
715 *
716 * @return {{ unmount: () => void }} The unmount function.
717 */
718 function render(app, domElement) {
719 var unmountFunction;
720 try {
721 var root = (0, _client.createRoot)(domElement);
722 root.render(app);
723 unmountFunction = function unmountFunction() {
724 root.unmount();
725 };
726 } catch (e) {
727 // eslint-disable-next-line react/no-deprecated
728 ReactDOM.render(app, domElement);
729 unmountFunction = function unmountFunction() {
730 // eslint-disable-next-line react/no-deprecated
731 ReactDOM.unmountComponentAtNode(domElement);
732 };
733 }
734 return {
735 unmount: unmountFunction
736 };
737 }
738 var _default = {
739 render: render
740 };
741 exports["default"] = _default;
742
743 /***/ }),
744
745 /***/ "../modules/ai/assets/js/editor/ai-layout-behavior.js":
746 /*!************************************************************!*\
747 !*** ../modules/ai/assets/js/editor/ai-layout-behavior.js ***!
748 \************************************************************/
749 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
750
751 "use strict";
752
753
754 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
755 Object.defineProperty(exports, "__esModule", ({
756 value: true
757 }));
758 exports["default"] = void 0;
759 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
760 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
761 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
762 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
763 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
764 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
765 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
766 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
767 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
768 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
769 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
770 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
771 var AiLayoutBehavior = /*#__PURE__*/function (_Marionette$Behavior) {
772 (0, _inherits2.default)(AiLayoutBehavior, _Marionette$Behavior);
773 var _super = _createSuper(AiLayoutBehavior);
774 function AiLayoutBehavior() {
775 var _this;
776 (0, _classCallCheck2.default)(this, AiLayoutBehavior);
777 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
778 args[_key] = arguments[_key];
779 }
780 _this = _super.call.apply(_super, [this].concat(args));
781 (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "previewContainer", null);
782 return _this;
783 }
784 (0, _createClass2.default)(AiLayoutBehavior, [{
785 key: "ui",
786 value: function ui() {
787 return {
788 aiButton: '.e-ai-layout-button',
789 addTemplateButton: '.elementor-add-template-button'
790 };
791 }
792 }, {
793 key: "events",
794 value: function events() {
795 return {
796 'click @ui.aiButton': 'onAiButtonClick'
797 };
798 }
799 }, {
800 key: "onAiButtonClick",
801 value: function onAiButtonClick(e) {
802 e.stopPropagation();
803 window.elementorAiCurrentContext = this.getOption('context');
804 (0, _editorIntegration.renderLayoutApp)({
805 parentContainer: elementor.getPreviewContainer(),
806 mode: _config.MODE_LAYOUT,
807 at: this.view.getOption('at'),
808 onInsert: this.onInsert.bind(this),
809 onRenderApp: function onRenderApp(args) {
810 args.previewContainer.init();
811 },
812 onGenerate: function onGenerate(args) {
813 args.previewContainer.reset();
814 }
815 });
816 }
817 }, {
818 key: "hideDropArea",
819 value: function hideDropArea() {
820 this.view.onCloseButtonClick();
821 }
822 }, {
823 key: "onInsert",
824 value: function onInsert(template) {
825 this.hideDropArea();
826 (0, _editorIntegration.importToEditor)({
827 parentContainer: elementor.getPreviewContainer(),
828 at: this.view.getOption('at'),
829 template: template,
830 historyTitle: (0, _i18n.__)('AI Layout', 'elementor')
831 });
832 }
833 }, {
834 key: "onRender",
835 value: function onRender() {
836 var $button = jQuery('<div>', {
837 class: 'e-ai-layout-button elementor-add-section-area-button e-button-primary',
838 title: (0, _i18n.__)('Build with AI', 'elementor'),
839 role: 'button'
840 });
841 $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\"></i>\n\t\t");
842 this.ui.addTemplateButton.after($button);
843 }
844 }]);
845 return AiLayoutBehavior;
846 }(Marionette.Behavior);
847 exports["default"] = AiLayoutBehavior;
848
849 /***/ }),
850
851 /***/ "../modules/ai/assets/js/editor/api/index.js":
852 /*!***************************************************!*\
853 !*** ../modules/ai/assets/js/editor/api/index.js ***!
854 \***************************************************/
855 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
856
857 "use strict";
858
859
860 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
861 Object.defineProperty(exports, "__esModule", ({
862 value: true
863 }));
864 exports.uploadImage = exports.toggleFavoriteHistoryItem = exports.setStatusFeedback = exports.setGetStarted = exports.getUserInformation = exports.getTextToImageGeneration = exports.getRemoteConfig = exports.getLayoutPromptEnhanced = exports.getImageToImageUpscale = exports.getImageToImageReplaceBackground = exports.getImageToImageRemoveText = exports.getImageToImageRemoveBackground = exports.getImageToImageOutPainting = exports.getImageToImageMaskGeneration = exports.getImageToImageGeneration = exports.getImagePromptEnhanced = exports.getHistory = exports.getFeaturedImage = exports.getExcerpt = exports.getEditText = exports.getCustomCode = exports.getCustomCSS = exports.getCompletionText = exports.generateLayout = exports.deleteHistoryItem = void 0;
865 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
866 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
867 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
868 var request = function request(endpoint) {
869 var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
870 var immediately = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
871 var signal = arguments.length > 3 ? arguments[3] : undefined;
872 if (Object.keys(data).length) {
873 data.context = window.elementorAiCurrentContext;
874 }
875 data.editor_session_id = window.EDITOR_SESSION_ID;
876 return new Promise(function (resolve, reject) {
877 var ajaxData = elementorCommon.ajax.addRequest(endpoint, {
878 success: resolve,
879 error: reject,
880 data: data
881 }, immediately);
882 if (signal && ajaxData.jqXhr) {
883 signal.addEventListener('abort', ajaxData.jqXhr.abort);
884 }
885 });
886 };
887 var getUserInformation = function getUserInformation(immediately) {
888 return request('ai_get_user_information', undefined, immediately);
889 };
890 exports.getUserInformation = getUserInformation;
891 var getRemoteConfig = function getRemoteConfig() {
892 return request('ai_get_remote_config');
893 };
894 exports.getRemoteConfig = getRemoteConfig;
895 var getCompletionText = function getCompletionText(payload) {
896 return request('ai_get_completion_text', {
897 payload: payload
898 });
899 };
900 exports.getCompletionText = getCompletionText;
901 var getExcerpt = function getExcerpt(payload) {
902 return request('ai_get_excerpt', {
903 payload: payload
904 });
905 };
906 exports.getExcerpt = getExcerpt;
907 var getFeaturedImage = function getFeaturedImage(payload) {
908 return request('ai_get_featured_image', {
909 payload: payload
910 });
911 };
912 exports.getFeaturedImage = getFeaturedImage;
913 var getEditText = function getEditText(payload) {
914 return request('ai_get_edit_text', {
915 payload: payload
916 });
917 };
918 exports.getEditText = getEditText;
919 var getCustomCode = function getCustomCode(payload) {
920 return request('ai_get_custom_code', {
921 payload: payload
922 });
923 };
924 exports.getCustomCode = getCustomCode;
925 var getCustomCSS = function getCustomCSS(payload) {
926 return request('ai_get_custom_css', {
927 payload: payload
928 });
929 };
930 exports.getCustomCSS = getCustomCSS;
931 var setGetStarted = function setGetStarted() {
932 return request('ai_set_get_started');
933 };
934 exports.setGetStarted = setGetStarted;
935 var setStatusFeedback = function setStatusFeedback(responseId) {
936 return request('ai_set_status_feedback', {
937 response_id: responseId
938 });
939 };
940 exports.setStatusFeedback = setStatusFeedback;
941 var getTextToImageGeneration = function getTextToImageGeneration(payload) {
942 return request('ai_get_text_to_image', {
943 payload: payload
944 });
945 };
946 exports.getTextToImageGeneration = getTextToImageGeneration;
947 var getImageToImageGeneration = function getImageToImageGeneration(payload) {
948 return request('ai_get_image_to_image', {
949 payload: payload
950 });
951 };
952 exports.getImageToImageGeneration = getImageToImageGeneration;
953 var getImageToImageMaskGeneration = function getImageToImageMaskGeneration(payload) {
954 return request('ai_get_image_to_image_mask', {
955 payload: payload
956 });
957 };
958 exports.getImageToImageMaskGeneration = getImageToImageMaskGeneration;
959 var getImageToImageOutPainting = function getImageToImageOutPainting(payload) {
960 return request('ai_get_image_to_image_outpainting', {
961 payload: payload
962 });
963 };
964 exports.getImageToImageOutPainting = getImageToImageOutPainting;
965 var getImageToImageUpscale = function getImageToImageUpscale(payload) {
966 return request('ai_get_image_to_image_upscale', {
967 payload: payload
968 });
969 };
970 exports.getImageToImageUpscale = getImageToImageUpscale;
971 var getImageToImageRemoveBackground = function getImageToImageRemoveBackground(payload) {
972 return request('ai_get_image_to_image_remove_background', {
973 payload: payload
974 });
975 };
976 exports.getImageToImageRemoveBackground = getImageToImageRemoveBackground;
977 var getImageToImageReplaceBackground = function getImageToImageReplaceBackground(payload) {
978 return request('ai_get_image_to_image_replace_background', {
979 payload: payload
980 });
981 };
982 exports.getImageToImageReplaceBackground = getImageToImageReplaceBackground;
983 var getImageToImageRemoveText = function getImageToImageRemoveText(image) {
984 return request('ai_get_image_to_image_remove_text', {
985 image: image
986 });
987 };
988 exports.getImageToImageRemoveText = getImageToImageRemoveText;
989 var getImagePromptEnhanced = function getImagePromptEnhanced(prompt) {
990 return request('ai_get_image_prompt_enhancer', {
991 prompt: prompt
992 });
993 };
994 exports.getImagePromptEnhanced = getImagePromptEnhanced;
995 var uploadImage = function uploadImage(image) {
996 return request('ai_upload_image', _objectSpread({}, image));
997 };
998
999 /**
1000 * @typedef {Object} AttachmentPropType - See ./types/attachment.js
1001 * @typedef {Object} requestBody
1002 * @property {string} prompt - Prompt to generate the layout from.
1003 * @property {0|1|2} [variationType] - Type of the layout to generate (actually it's a position).
1004 * @property {string[]} [prevGeneratedIds] - Previously generated ids for exclusion on regeneration.
1005 * @property {AttachmentPropType[]} [attachments] - Attachments to use for the generation. currently only `json` type is supported - a container JSON to generate variations from.
1006 */
1007
1008 /**
1009 * @param {requestBody} requestBody
1010 * @param {AbortSignal} [signal]
1011 */
1012 exports.uploadImage = uploadImage;
1013 var generateLayout = function generateLayout(requestBody, signal) {
1014 return request('ai_generate_layout', requestBody, true, signal);
1015 };
1016 exports.generateLayout = generateLayout;
1017 var getLayoutPromptEnhanced = function getLayoutPromptEnhanced(prompt, enhanceType) {
1018 return request('ai_get_layout_prompt_enhancer', {
1019 prompt: prompt,
1020 enhance_type: enhanceType
1021 });
1022 };
1023 exports.getLayoutPromptEnhanced = getLayoutPromptEnhanced;
1024 var getHistory = function getHistory(type, page, limit) {
1025 return request('ai_get_history', {
1026 type: type,
1027 page: page,
1028 limit: limit
1029 });
1030 };
1031 exports.getHistory = getHistory;
1032 var deleteHistoryItem = function deleteHistoryItem(id) {
1033 return request('ai_delete_history_item', {
1034 id: id
1035 });
1036 };
1037 exports.deleteHistoryItem = deleteHistoryItem;
1038 var toggleFavoriteHistoryItem = function toggleFavoriteHistoryItem(id) {
1039 return request('ai_toggle_favorite_history_item', {
1040 id: id
1041 });
1042 };
1043 exports.toggleFavoriteHistoryItem = toggleFavoriteHistoryItem;
1044
1045 /***/ }),
1046
1047 /***/ "../modules/ai/assets/js/editor/components/alert-dialog.js":
1048 /*!*****************************************************************!*\
1049 !*** ../modules/ai/assets/js/editor/components/alert-dialog.js ***!
1050 \*****************************************************************/
1051 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1052
1053 "use strict";
1054
1055
1056 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1057 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1058 Object.defineProperty(exports, "__esModule", ({
1059 value: true
1060 }));
1061 exports.AlertDialog = void 0;
1062 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1063 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1064 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1065 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1066 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1067 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
1068 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; }
1069 var AlertDialog = function AlertDialog(props) {
1070 var _useState = (0, _react.useState)(true),
1071 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1072 isShown = _useState2[0],
1073 setIsShown = _useState2[1];
1074 if (!isShown) {
1075 return null;
1076 }
1077 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1078 open: true,
1079 maxWidth: "lg"
1080 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
1081 sx: {
1082 padding: 0
1083 }
1084 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1085 sx: {
1086 textAlign: 'center',
1087 padding: 3
1088 }
1089 }, props.message), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1090 alignItems: "center",
1091 spacing: 2,
1092 marginBottom: 2
1093 }, /*#__PURE__*/_react.default.createElement(_ui.Button, {
1094 variant: "contained",
1095 type: "button",
1096 color: "primary",
1097 onClick: function onClick() {
1098 var _props$onClose;
1099 setIsShown(false);
1100 (_props$onClose = props.onClose) === null || _props$onClose === void 0 ? void 0 : _props$onClose.call(props);
1101 }
1102 }, (0, _i18n.__)('Close', 'elementor')))));
1103 };
1104 exports.AlertDialog = AlertDialog;
1105 AlertDialog.propTypes = {
1106 message: _propTypes.default.string.isRequired,
1107 onClose: _propTypes.default.func
1108 };
1109
1110 /***/ }),
1111
1112 /***/ "../modules/ai/assets/js/editor/components/dialog-header.js":
1113 /*!******************************************************************!*\
1114 !*** ../modules/ai/assets/js/editor/components/dialog-header.js ***!
1115 \******************************************************************/
1116 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1117
1118 "use strict";
1119
1120
1121 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1122 Object.defineProperty(exports, "__esModule", ({
1123 value: true
1124 }));
1125 exports["default"] = void 0;
1126 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1127 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1128 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1129 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1130 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1131 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1132 var ElementorLogo = function ElementorLogo(props) {
1133 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1134 viewBox: "0 0 32 32"
1135 }, props), /*#__PURE__*/_react.default.createElement("path", {
1136 fillRule: "evenodd",
1137 clipRule: "evenodd",
1138 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"
1139 }));
1140 };
1141 var StyledElementorLogo = (0, _ui.styled)(ElementorLogo)(function (_ref) {
1142 var theme = _ref.theme;
1143 return {
1144 width: theme.spacing(3),
1145 height: theme.spacing(3),
1146 '& path': {
1147 fill: theme.palette.text.primary
1148 }
1149 };
1150 });
1151 var DialogHeader = function DialogHeader(props) {
1152 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
1153 sx: {
1154 fontWeight: 'normal'
1155 },
1156 color: "transparent",
1157 position: "relative"
1158 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
1159 variant: "dense"
1160 }, /*#__PURE__*/_react.default.createElement(StyledElementorLogo, {
1161 sx: {
1162 mr: 1
1163 }
1164 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1165 component: "span",
1166 variant: "subtitle2",
1167 sx: {
1168 fontWeight: 'bold',
1169 textTransform: 'uppercase'
1170 }
1171 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
1172 label: (0, _i18n.__)('Beta', 'elementor'),
1173 color: "default",
1174 size: "small",
1175 sx: {
1176 ml: 1
1177 }
1178 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1179 direction: "row",
1180 spacing: 1,
1181 alignItems: "center",
1182 sx: {
1183 ml: 'auto'
1184 }
1185 }, props.children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
1186 size: "small",
1187 "aria-label": "close",
1188 onClick: props.onClose,
1189 sx: {
1190 '&.MuiButtonBase-root': {
1191 mr: -1
1192 }
1193 }
1194 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
1195 };
1196 DialogHeader.propTypes = {
1197 onClose: _propTypes.default.func.isRequired,
1198 children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node])
1199 };
1200 var _default = DialogHeader;
1201 exports["default"] = _default;
1202
1203 /***/ }),
1204
1205 /***/ "../modules/ai/assets/js/editor/components/loader.js":
1206 /*!***********************************************************!*\
1207 !*** ../modules/ai/assets/js/editor/components/loader.js ***!
1208 \***********************************************************/
1209 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1210
1211 "use strict";
1212
1213
1214 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1215 Object.defineProperty(exports, "__esModule", ({
1216 value: true
1217 }));
1218 exports["default"] = void 0;
1219 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1220 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1221 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1222 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1223 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1224 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1225 var _excluded = ["sx", "BoxProps"];
1226 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1227 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1228 var Loader = function Loader(_ref) {
1229 var _ref$sx = _ref.sx,
1230 sx = _ref$sx === void 0 ? {} : _ref$sx,
1231 _ref$BoxProps = _ref.BoxProps,
1232 BoxProps = _ref$BoxProps === void 0 ? {} : _ref$BoxProps,
1233 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1234 return /*#__PURE__*/_react.default.createElement(_ui.Box, (0, _extends2.default)({
1235 width: "100%",
1236 display: "flex",
1237 alignItems: "center"
1238 }, BoxProps, {
1239 sx: _objectSpread({
1240 px: 1.5,
1241 minHeight: function minHeight(theme) {
1242 return theme.spacing(5);
1243 }
1244 }, BoxProps.sx || {})
1245 }), /*#__PURE__*/_react.default.createElement(_ui.LinearProgress, (0, _extends2.default)({
1246 color: "secondary"
1247 }, props, {
1248 sx: _objectSpread({
1249 width: '100%'
1250 }, sx)
1251 })));
1252 };
1253 Loader.propTypes = {
1254 sx: _propTypes.default.object,
1255 BoxProps: _propTypes.default.object
1256 };
1257 var _default = Loader;
1258 exports["default"] = _default;
1259
1260 /***/ }),
1261
1262 /***/ "../modules/ai/assets/js/editor/components/prompt-dialog.js":
1263 /*!******************************************************************!*\
1264 !*** ../modules/ai/assets/js/editor/components/prompt-dialog.js ***!
1265 \******************************************************************/
1266 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1267
1268 "use strict";
1269
1270
1271 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1272 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1273 Object.defineProperty(exports, "__esModule", ({
1274 value: true
1275 }));
1276 exports["default"] = void 0;
1277 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1278 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1279 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1280 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1281 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1282 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1283 var _reactDraggable = _interopRequireDefault(__webpack_require__(/*! react-draggable */ "../node_modules/react-draggable/build/cjs/cjs.js"));
1284 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1285 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
1286 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; }
1287 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1288 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1289 var DraggablePaper = function DraggablePaper(props) {
1290 var _useState = (0, _react.useState)({
1291 x: 0,
1292 y: 0
1293 }),
1294 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1295 position = _useState2[0],
1296 setPosition = _useState2[1];
1297 var paperRef = (0, _react.useRef)(null);
1298 var timeout = (0, _react.useRef)(null);
1299 var onDrag = function onDrag(_e, _ref) {
1300 var x = _ref.x,
1301 y = _ref.y;
1302 return setPosition({
1303 x: x,
1304 y: y
1305 });
1306 };
1307 var handlePositionBoundaries = function handlePositionBoundaries() {
1308 clearTimeout(timeout.current);
1309
1310 // Ensuring the dialog header, which is used as the dialog dragging handle, does not exceed the screen.
1311 timeout.current = setTimeout(function () {
1312 var _paperRef$current;
1313 var dialogTop = (_paperRef$current = paperRef.current) === null || _paperRef$current === void 0 ? void 0 : _paperRef$current.getBoundingClientRect().top;
1314 if (dialogTop < 0) {
1315 setPosition(function (prev) {
1316 return _objectSpread(_objectSpread({}, prev), {}, {
1317 y: prev.y - dialogTop
1318 });
1319 });
1320 }
1321 }, 50);
1322 };
1323 (0, _react.useEffect)(function () {
1324 var resizeObserver = new ResizeObserver(handlePositionBoundaries);
1325 resizeObserver.observe(paperRef.current);
1326 return function () {
1327 resizeObserver.disconnect();
1328 };
1329 }, []);
1330 return /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
1331 position: position,
1332 onDrag: onDrag,
1333 handle: ".MuiAppBar-root",
1334 cancel: '[class*="MuiDialogContent-root"]',
1335 bounds: "parent"
1336 }, /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
1337 ref: paperRef
1338 })));
1339 };
1340 var PromptDialog = function PromptDialog(props) {
1341 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
1342 scroll: "paper",
1343 open: true,
1344 fullWidth: true,
1345 hideBackdrop: true,
1346 PaperComponent: DraggablePaper,
1347 disableScrollLock: true,
1348 sx: {
1349 '& .MuiDialog-container': {
1350 alignItems: 'flex-start',
1351 mt: '18vh'
1352 }
1353 },
1354 PaperProps: {
1355 sx: {
1356 m: 0,
1357 maxHeight: '76vh'
1358 }
1359 }
1360 }, props), props.children);
1361 };
1362 PromptDialog.propTypes = {
1363 onClose: _propTypes.default.func.isRequired,
1364 children: _propTypes.default.node,
1365 maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false])
1366 };
1367 PromptDialog.Header = _dialogHeader.default;
1368 PromptDialog.Content = _ui.DialogContent;
1369 var _default = PromptDialog;
1370 exports["default"] = _default;
1371
1372 /***/ }),
1373
1374 /***/ "../modules/ai/assets/js/editor/components/prompt-error-message.js":
1375 /*!*************************************************************************!*\
1376 !*** ../modules/ai/assets/js/editor/components/prompt-error-message.js ***!
1377 \*************************************************************************/
1378 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1379
1380 "use strict";
1381 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
1382
1383
1384 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1385 Object.defineProperty(exports, "__esModule", ({
1386 value: true
1387 }));
1388 exports["default"] = void 0;
1389 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1390 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1391 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1392 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1393 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1394 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1395 var _excluded = ["error", "onRetry", "actionPosition"];
1396 var PromptErrorMessage = function PromptErrorMessage(_ref) {
1397 var error = _ref.error,
1398 _ref$onRetry = _ref.onRetry,
1399 onRetry = _ref$onRetry === void 0 ? function () {} : _ref$onRetry,
1400 _ref$actionPosition = _ref.actionPosition,
1401 actionPosition = _ref$actionPosition === void 0 ? 'default' : _ref$actionPosition,
1402 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1403 function getQuotaReachedTrailMessage(featureName) {
1404 if (!featureName) {
1405 return {
1406 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('It\'s time to upgrade.', 'elementor')),
1407 description: (0, _i18n.__)('Enjoy the free trial? Upgrade now for unlimited access to built-in image, text and custom code generators.', 'elementor'),
1408 buttonText: (0, _i18n.__)('Upgrade', 'elementor'),
1409 buttonAction: function buttonAction() {
1410 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1411 }
1412 };
1413 }
1414 return {
1415 // Translators: %s is the feature name.
1416 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, sprintf((0, _i18n.__)('You\'ve used all AI credits for %s.', 'elementor'), featureName.toLowerCase())),
1417 description: (0, _i18n.__)('Upgrade now to keep using this feature. You still have credits for other AI features (Text, Code, Images, Containers, etc.)', 'elementor'),
1418 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1419 buttonAction: function buttonAction() {
1420 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1421 }
1422 };
1423 }
1424 function getErrorMessage() {
1425 var _error$extra_data;
1426 var errMsg = error.message || error;
1427 var featureName = (_error$extra_data = error.extra_data) === null || _error$extra_data === void 0 ? void 0 : _error$extra_data.featureName;
1428 var messages = {
1429 default: {
1430 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1431 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1432 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1433 buttonAction: onRetry
1434 },
1435 service_outage_internal: {
1436 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1437 description: (0, _i18n.__)('Wait a moment and give it another go.', 'elementor'),
1438 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1439 buttonAction: onRetry
1440 },
1441 invalid_connect_data: {
1442 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1443 description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'), ' ', /*#__PURE__*/_react.default.createElement("a", {
1444 href: "https://elementor.com/help/disconnecting-reconnecting-your-elementor-account/",
1445 target: "_blank",
1446 rel: "noreferrer"
1447 }, (0, _i18n.__)('Show me how', 'elementor'))),
1448 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1449 buttonAction: function buttonAction() {
1450 return window.open(window.ElementorAiConfig.connect_url);
1451 }
1452 },
1453 not_connected: {
1454 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('You aren\'t connected to Elementor AI.', 'elementor')),
1455 description: (0, _i18n.__)('Elementor AI is just a few clicks away. Connect your account to instantly create texts and custom code.', 'elementor'),
1456 buttonText: (0, _i18n.__)('Connect', 'elementor'),
1457 buttonAction: function buttonAction() {
1458 return window.open(window.ElementorAiConfig.connect_url);
1459 }
1460 },
1461 quota_reached_trail: getQuotaReachedTrailMessage(featureName),
1462 quota_reached_subscription: {
1463 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Looks like you\'re out of credits.', 'elementor')),
1464 description: (0, _i18n.__)('Ready to take it to the next level?', 'elementor'),
1465 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1466 buttonAction: function buttonAction() {
1467 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1468 }
1469 },
1470 rate_limit_network: {
1471 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Whoa! Slow down there.', 'elementor')),
1472 description: (0, _i18n.__)('We can’t process that many requests so fast. Try again in 15 minutes.', 'elementor')
1473 },
1474 invalid_prompts: {
1475 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('We were unable to generate that prompt.', 'elementor')),
1476 description: (0, _i18n.__)('Seems like the prompt contains words that could generate harmful content. Write a different prompt to continue.', 'elementor')
1477 },
1478 service_unavailable: {
1479 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1480 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1481 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1482 buttonAction: onRetry
1483 },
1484 request_timeout_error: {
1485 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1486 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1487 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1488 buttonAction: onRetry
1489 },
1490 invalid_token: {
1491 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Try again', 'elementor')),
1492 description: (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'),
1493 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1494 buttonAction: onRetry
1495 },
1496 file_too_large: {
1497 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('The file is too large.', 'elementor')),
1498 description: (0, _i18n.__)('Please upload a file that is less than 4MB.', 'elementor')
1499 }
1500 };
1501 return messages[errMsg] || messages.default;
1502 }
1503 var message = getErrorMessage();
1504 var action = (message === null || message === void 0 ? void 0 : message.buttonText) && /*#__PURE__*/_react.default.createElement(_ui.Button, {
1505 color: "inherit",
1506 size: "small",
1507 variant: "outlined",
1508 onClick: message.buttonAction
1509 }, message.buttonText);
1510 return /*#__PURE__*/_react.default.createElement(_ui.Alert, (0, _extends2.default)({
1511 severity: message.severity || 'error',
1512 action: 'default' === actionPosition && action
1513 }, props), message.text, message.description, 'bottom' === actionPosition && /*#__PURE__*/_react.default.createElement(_ui.Box, {
1514 sx: {
1515 mt: 1
1516 }
1517 }, action));
1518 };
1519 PromptErrorMessage.propTypes = {
1520 error: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
1521 onRetry: _propTypes.default.func,
1522 actionPosition: _propTypes.default.oneOf(['default', 'bottom'])
1523 };
1524 var _default = PromptErrorMessage;
1525 exports["default"] = _default;
1526
1527 /***/ }),
1528
1529 /***/ "../modules/ai/assets/js/editor/components/prompt-library-link.js":
1530 /*!************************************************************************!*\
1531 !*** ../modules/ai/assets/js/editor/components/prompt-library-link.js ***!
1532 \************************************************************************/
1533 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1534
1535 "use strict";
1536
1537
1538 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1539 Object.defineProperty(exports, "__esModule", ({
1540 value: true
1541 }));
1542 exports["default"] = void 0;
1543 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1544 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1545 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1546 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1547 var PromptLibraryLink = function PromptLibraryLink(props) {
1548 return /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1549 variant: "body2",
1550 color: "text.secondary"
1551 }, (0, _i18n.__)('For more suggestions, explore our'), ' ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
1552 href: props.libraryLink,
1553 className: "elementor-clickable",
1554 target: "_blank"
1555 }, (0, _i18n.__)('prompt library')));
1556 };
1557 PromptLibraryLink.propTypes = {
1558 libraryLink: _propTypes.default.string
1559 };
1560 var _default = PromptLibraryLink;
1561 exports["default"] = _default;
1562
1563 /***/ }),
1564
1565 /***/ "../modules/ai/assets/js/editor/components/upgrade-chip.js":
1566 /*!*****************************************************************!*\
1567 !*** ../modules/ai/assets/js/editor/components/upgrade-chip.js ***!
1568 \*****************************************************************/
1569 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1570
1571 "use strict";
1572
1573
1574 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1575 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1576 Object.defineProperty(exports, "__esModule", ({
1577 value: true
1578 }));
1579 exports["default"] = void 0;
1580 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1581 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1582 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1583 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1584 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1585 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1586 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
1587 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; }
1588 var popoverId = 'e-ai-upgrade-popover';
1589 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
1590 var theme = _ref.theme;
1591 return {
1592 position: 'relative',
1593 '[data-popper-placement="top"] &': {
1594 marginBottom: theme.spacing(2.5)
1595 },
1596 '[data-popper-placement="bottom"] &': {
1597 marginTop: theme.spacing(2.5)
1598 },
1599 padding: theme.spacing(3),
1600 boxShadow: theme.shadows[4],
1601 zIndex: '9999'
1602 };
1603 });
1604 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
1605 var theme = _ref2.theme;
1606 return {
1607 width: theme.spacing(5),
1608 height: theme.spacing(2.5),
1609 position: 'absolute',
1610 overflow: 'hidden',
1611 // Override Popper inline styles.
1612 left: '50% !important',
1613 transform: 'translateX(-50%) rotate(var(--rotate, 0deg)) !important',
1614 '[data-popper-placement="top"] &': {
1615 top: '100%'
1616 },
1617 '[data-popper-placement="bottom"] &': {
1618 '--rotate': '180deg',
1619 top: "calc(".concat(theme.spacing(2.5), " * -1)")
1620 },
1621 '&::after': {
1622 backgroundColor: theme.palette.background.paper,
1623 content: '""',
1624 display: 'block',
1625 position: 'absolute',
1626 width: theme.spacing(2.5),
1627 height: theme.spacing(2.5),
1628 top: 0,
1629 left: '50%',
1630 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
1631 boxShadow: '1px 1px 5px 0px rgba(0, 0, 0, 0.2)',
1632 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
1633 }
1634 };
1635 });
1636 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')];
1637 var Chip = (0, _ui.styled)(_ui.Chip)(function () {
1638 return {
1639 '& .MuiChip-label': {
1640 lineHeight: 1.5
1641 },
1642 '& .MuiSvgIcon-root.MuiChip-icon': {
1643 fontSize: '1.25rem'
1644 }
1645 };
1646 });
1647 var UpgradeChip = function UpgradeChip(_ref3) {
1648 var _ref3$hasSubscription = _ref3.hasSubscription,
1649 hasSubscription = _ref3$hasSubscription === void 0 ? false : _ref3$hasSubscription,
1650 _ref3$usagePercentage = _ref3.usagePercentage,
1651 usagePercentage = _ref3$usagePercentage === void 0 ? 0 : _ref3$usagePercentage;
1652 var _useState = (0, _react.useState)(false),
1653 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1654 isPopoverOpen = _useState2[0],
1655 setIsPopoverOpen = _useState2[1];
1656 var anchorEl = (0, _react.useRef)(null);
1657 var arrowEl = (0, _react.useRef)(null);
1658 var showPopover = function showPopover() {
1659 return setIsPopoverOpen(true);
1660 };
1661 var hidePopover = function hidePopover() {
1662 return setIsPopoverOpen(false);
1663 };
1664 var actionUrl = 'https://go.elementor.com/ai-popup-purchase-dropdown/';
1665 if (hasSubscription) {
1666 actionUrl = usagePercentage >= 100 ? 'https://go.elementor.com/ai-popup-upgrade-limit-reached/' : 'https://go.elementor.com/ai-popup-upgrade-limit-reached-80-percent/';
1667 }
1668 var actionLabel = hasSubscription ? (0, _i18n.__)('Upgrade Elementor AI', 'elementor') : (0, _i18n.__)('Get Elementor AI', 'elementor');
1669 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1670 component: "span",
1671 "aria-owns": isPopoverOpen ? popoverId : undefined,
1672 "aria-haspopup": "true",
1673 onMouseEnter: showPopover,
1674 onMouseLeave: hidePopover,
1675 ref: anchorEl,
1676 display: "flex",
1677 alignItems: "center"
1678 }, /*#__PURE__*/_react.default.createElement(Chip, {
1679 color: "promotion",
1680 label: (0, _i18n.__)('Upgrade', 'elementor'),
1681 icon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1682 size: "small"
1683 }), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
1684 open: isPopoverOpen,
1685 anchorEl: anchorEl.current,
1686 sx: {
1687 zIndex: '9999',
1688 maxWidth: 300
1689 },
1690 modifiers: [{
1691 name: 'arrow',
1692 enabled: true,
1693 options: {
1694 element: arrowEl.current
1695 }
1696 }]
1697 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
1698 ref: arrowEl
1699 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1700 variant: "h5",
1701 color: "text.primary"
1702 }, (0, _i18n.__)('Unlimited access to Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.List, {
1703 sx: {
1704 mb: 1
1705 }
1706 }, upgradeBullets.map(function (bullet, index) {
1707 return /*#__PURE__*/_react.default.createElement(_ui.ListItem, {
1708 key: index,
1709 disableGutters: true,
1710 sx: {
1711 alignItems: 'flex-start'
1712 }
1713 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(_icons.CheckedCircleIcon, null)), /*#__PURE__*/_react.default.createElement(_ui.ListItemText, {
1714 sx: {
1715 m: 0
1716 }
1717 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1718 variant: "body2"
1719 }, bullet)));
1720 })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
1721 variant: "contained",
1722 color: "promotion",
1723 size: "small",
1724 href: actionUrl,
1725 target: "_blank",
1726 startIcon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1727 sx: {
1728 '&:hover': {
1729 color: 'promotion.contrastText'
1730 }
1731 }
1732 }, actionLabel))));
1733 };
1734 var _default = UpgradeChip;
1735 exports["default"] = _default;
1736 UpgradeChip.propTypes = {
1737 hasSubscription: _propTypes.default.bool,
1738 usagePercentage: _propTypes.default.number
1739 };
1740
1741 /***/ }),
1742
1743 /***/ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js":
1744 /*!**************************************************************************!*\
1745 !*** ../modules/ai/assets/js/editor/components/voice-promotion-alert.js ***!
1746 \**************************************************************************/
1747 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1748
1749 "use strict";
1750
1751
1752 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1753 Object.defineProperty(exports, "__esModule", ({
1754 value: true
1755 }));
1756 exports["default"] = exports.VoicePromotionAlert = void 0;
1757 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1758 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1759 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1760 var _bulbIcon = _interopRequireDefault(__webpack_require__(/*! ../icons/bulb-icon */ "../modules/ai/assets/js/editor/icons/bulb-icon.js"));
1761 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
1762 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1763 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1764 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1765 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1766 var VoicePromotionAlert = function VoicePromotionAlert(props) {
1767 var _useIntroduction = (0, _useIntroduction2.default)(props.introductionKey),
1768 isViewed = _useIntroduction.isViewed,
1769 markAsViewed = _useIntroduction.markAsViewed;
1770 if (isViewed) {
1771 return null;
1772 }
1773 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1774 sx: _objectSpread({
1775 mt: 2
1776 }, props.sx),
1777 alignItems: "top"
1778 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
1779 severity: "info",
1780 variant: "standard",
1781 icon: /*#__PURE__*/_react.default.createElement(_bulbIcon.default, {
1782 sx: {
1783 alignSelf: 'flex-start'
1784 }
1785 }),
1786 onClose: markAsViewed
1787 }, (0, _i18n.__)('Get improved results from AI by adding personal context.', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
1788 onClick: function onClick() {
1789 return $e.route('panel/global/menu');
1790 },
1791 className: "elementor-clickable",
1792 style: {
1793 textDecoration: 'none'
1794 },
1795 color: "info.main",
1796 href: "#"
1797 }, (0, _i18n.__)('Let’s do it', 'elementor'))));
1798 };
1799 exports.VoicePromotionAlert = VoicePromotionAlert;
1800 VoicePromotionAlert.propTypes = {
1801 sx: _propTypes.default.object,
1802 introductionKey: _propTypes.default.string
1803 };
1804 var _default = VoicePromotionAlert;
1805 exports["default"] = _default;
1806
1807 /***/ }),
1808
1809 /***/ "../modules/ai/assets/js/editor/components/wizard-dialog.js":
1810 /*!******************************************************************!*\
1811 !*** ../modules/ai/assets/js/editor/components/wizard-dialog.js ***!
1812 \******************************************************************/
1813 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1814
1815 "use strict";
1816
1817
1818 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1819 Object.defineProperty(exports, "__esModule", ({
1820 value: true
1821 }));
1822 exports["default"] = void 0;
1823 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1824 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1825 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1826 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1827 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1828 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1829 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1830 var _excluded = ["sx"];
1831 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1832 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1833 var WizardDialog = function WizardDialog(props) {
1834 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1835 open: true,
1836 onClose: props.onClose,
1837 fullWidth: true,
1838 hideBackdrop: true,
1839 maxWidth: "lg",
1840 PaperProps: {
1841 sx: {
1842 height: '88vh'
1843 }
1844 },
1845 sx: {
1846 zIndex: 9999
1847 }
1848 }, props.children);
1849 };
1850 WizardDialog.propTypes = {
1851 onClose: _propTypes.default.func.isRequired,
1852 children: _propTypes.default.node.isRequired
1853 };
1854 var WizardDialogContent = function WizardDialogContent(_ref) {
1855 var _ref$sx = _ref.sx,
1856 sx = _ref$sx === void 0 ? {} : _ref$sx,
1857 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1858 return /*#__PURE__*/_react.default.createElement(_ui.DialogContent, (0, _extends2.default)({}, props, {
1859 sx: _objectSpread({
1860 display: 'flex',
1861 flexDirection: 'column',
1862 justifyContent: 'center'
1863 }, sx)
1864 }));
1865 };
1866 WizardDialogContent.propTypes = {
1867 sx: _propTypes.default.object
1868 };
1869 WizardDialog.Header = _dialogHeader.default;
1870 WizardDialog.Content = WizardDialogContent;
1871 var _default = WizardDialog;
1872 exports["default"] = _default;
1873
1874 /***/ }),
1875
1876 /***/ "../modules/ai/assets/js/editor/context/requests-ids.js":
1877 /*!**************************************************************!*\
1878 !*** ../modules/ai/assets/js/editor/context/requests-ids.js ***!
1879 \**************************************************************/
1880 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1881
1882 "use strict";
1883
1884
1885 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1886 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1887 Object.defineProperty(exports, "__esModule", ({
1888 value: true
1889 }));
1890 exports["default"] = exports.RequestIdsProvider = void 0;
1891 exports.generateIds = generateIds;
1892 exports.useRequestIds = exports.getUniqueId = void 0;
1893 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1894 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1895 var _window$ElementorAiCo;
1896 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
1897 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; }
1898 var Context = (0, _react.createContext)({});
1899 var useRequestIds = function useRequestIds() {
1900 var context = (0, _react.useContext)(Context);
1901 if (!context) {
1902 throw new Error('useRequestIds must be used within a RequestIdsProvider');
1903 }
1904 return context;
1905 };
1906 exports.useRequestIds = useRequestIds;
1907 var getUniqueId = function getUniqueId(prefix) {
1908 return prefix + '-' + Math.random().toString(16).substr(2, 7);
1909 };
1910 exports.getUniqueId = getUniqueId;
1911 window.EDITOR_SESSION_ID = window.EDITOR_SESSION_ID || ((_window$ElementorAiCo = window.ElementorAiConfig) === null || _window$ElementorAiCo === void 0 ? void 0 : _window$ElementorAiCo.client_session_id) || getUniqueId('editor-session');
1912 function generateIds(template) {
1913 var _template$elements;
1914 template.id = getUniqueId().toString();
1915 if ((_template$elements = template.elements) !== null && _template$elements !== void 0 && _template$elements.length) {
1916 template.elements.map(function (child) {
1917 return generateIds(child);
1918 });
1919 }
1920 return template;
1921 }
1922 var RequestIdsProvider = function RequestIdsProvider(props) {
1923 var editorSessionId = (0, _react.useRef)(window.EDITOR_SESSION_ID);
1924 var sessionId = (0, _react.useRef)('');
1925 var generateId = (0, _react.useRef)('');
1926 var batchId = (0, _react.useRef)('');
1927 var requestId = (0, _react.useRef)('');
1928 sessionId.current = getUniqueId('session');
1929 var setGenerate = function setGenerate() {
1930 generateId.current = getUniqueId('generate');
1931 return generateId;
1932 };
1933 var setBatch = function setBatch() {
1934 batchId.current = getUniqueId('batch');
1935 return batchId;
1936 };
1937 var setRequest = function setRequest() {
1938 requestId.current = getUniqueId('request');
1939 return requestId;
1940 };
1941 return /*#__PURE__*/_react.default.createElement(Context.Provider, {
1942 value: {
1943 editorSessionId: editorSessionId,
1944 sessionId: sessionId,
1945 generateId: generateId,
1946 batchId: batchId,
1947 requestId: requestId,
1948 setGenerate: setGenerate,
1949 setBatch: setBatch,
1950 setRequest: setRequest
1951 }
1952 }, props.children);
1953 };
1954 exports.RequestIdsProvider = RequestIdsProvider;
1955 RequestIdsProvider.propTypes = {
1956 children: _propTypes.default.node.isRequired
1957 };
1958 var _default = Context;
1959 exports["default"] = _default;
1960
1961 /***/ }),
1962
1963 /***/ "../modules/ai/assets/js/editor/hooks/use-introduction.js":
1964 /*!****************************************************************!*\
1965 !*** ../modules/ai/assets/js/editor/hooks/use-introduction.js ***!
1966 \****************************************************************/
1967 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1968
1969 "use strict";
1970
1971
1972 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1973 Object.defineProperty(exports, "__esModule", ({
1974 value: true
1975 }));
1976 exports["default"] = useIntroduction;
1977 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1978 var _react = __webpack_require__(/*! react */ "react");
1979 function useIntroduction(key) {
1980 var _window$elementor$con, _window$elementorAdmi, _window$elementorAdmi2, _globalConfig$introdu;
1981 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 ? void 0 : (_window$elementorAdmi2 = _window$elementorAdmi.config) === null || _window$elementorAdmi2 === void 0 ? void 0 : _window$elementorAdmi2.user;
1982 var _useState = (0, _react.useState)(!!(globalConfig !== null && globalConfig !== void 0 && (_globalConfig$introdu = globalConfig.introduction) !== null && _globalConfig$introdu !== void 0 && _globalConfig$introdu[key])),
1983 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1984 isViewed = _useState2[0],
1985 setIsViewed = _useState2[1];
1986 function markAsViewed() {
1987 if (!key) {
1988 return Promise.reject();
1989 }
1990 return new Promise(function (resolve, reject) {
1991 if (isViewed) {
1992 reject();
1993 }
1994 setIsViewed(true);
1995 elementorCommon.ajax.addRequest('introduction_viewed', {
1996 data: {
1997 introductionKey: key
1998 },
1999 error: function error() {
2000 setIsViewed(false);
2001 reject();
2002 },
2003 success: function success() {
2004 setIsViewed(true);
2005 if (globalConfig !== null && globalConfig !== void 0 && globalConfig.introduction) {
2006 globalConfig.introduction[key] = true;
2007 }
2008 resolve();
2009 }
2010 });
2011 });
2012 }
2013 return {
2014 isViewed: isViewed,
2015 markAsViewed: markAsViewed
2016 };
2017 }
2018
2019 /***/ }),
2020
2021 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js":
2022 /*!*******************************************************************!*\
2023 !*** ../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js ***!
2024 \*******************************************************************/
2025 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2026
2027 "use strict";
2028
2029
2030 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2031 Object.defineProperty(exports, "__esModule", ({
2032 value: true
2033 }));
2034 exports["default"] = void 0;
2035 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2036 var _usePrompt2 = _interopRequireDefault(__webpack_require__(/*! ./use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
2037 var _config = __webpack_require__(/*! ../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2038 var enhancePromptMap = new Map([['media', _api.getImagePromptEnhanced], ['layout', _api.getLayoutPromptEnhanced]]);
2039 var getResult = function getResult(prompt, type, enhanceType) {
2040 if (!enhancePromptMap.has(type)) {
2041 throw new Error("Invalid prompt type: ".concat(type));
2042 }
2043 return enhancePromptMap.get(type)(prompt, enhanceType);
2044 };
2045
2046 /**
2047 * Hook to enhance a prompt.
2048 *
2049 * @param {string} prompt
2050 * @param {'media' | 'layout'} type
2051 * @return {{enhancedPrompt: string | undefined, isEnhancing: boolean, enhance: (function(...[*]): Promise)}}
2052 */
2053 var usePromptEnhancer = function usePromptEnhancer(prompt, type) {
2054 var _useConfig = (0, _config.useConfig)(),
2055 mode = _useConfig.mode;
2056 var _usePrompt = (0, _usePrompt2.default)(function () {
2057 return getResult(prompt, type, mode);
2058 }, prompt),
2059 enhancedData = _usePrompt.data,
2060 isEnhancing = _usePrompt.isLoading,
2061 enhance = _usePrompt.send;
2062 return {
2063 enhance: enhance,
2064 isEnhancing: isEnhancing,
2065 enhancedPrompt: enhancedData === null || enhancedData === void 0 ? void 0 : enhancedData.result
2066 };
2067 };
2068 var _default = usePromptEnhancer;
2069 exports["default"] = _default;
2070
2071 /***/ }),
2072
2073 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt.js":
2074 /*!**********************************************************!*\
2075 !*** ../modules/ai/assets/js/editor/hooks/use-prompt.js ***!
2076 \**********************************************************/
2077 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2078
2079 "use strict";
2080
2081
2082 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2083 Object.defineProperty(exports, "__esModule", ({
2084 value: true
2085 }));
2086 exports["default"] = void 0;
2087 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2088 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2089 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2090 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2091 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
2092 var _react = __webpack_require__(/*! react */ "react");
2093 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2094 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2095 var _excluded = ["text", "response_id", "usage", "images"];
2096 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2097 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
2098 var normalizeResponse = function normalizeResponse(_ref) {
2099 var text = _ref.text,
2100 responseId = _ref.response_id,
2101 usage = _ref.usage,
2102 images = _ref.images,
2103 optional = (0, _objectWithoutProperties2.default)(_ref, _excluded);
2104 var creditsData = usage ? usage.quota - usage.usedQuota : 0;
2105 var credits = Math.max(creditsData, 0);
2106 var result = text || images;
2107 var normalized = {
2108 result: result,
2109 responseId: responseId,
2110 credits: credits
2111 };
2112 if (optional.base_template_id) {
2113 normalized.baseTemplateId = optional.base_template_id;
2114 }
2115 normalized.type = optional.template_type;
2116 return normalized;
2117 };
2118 var usePrompt = function usePrompt(fetchData, initialState) {
2119 var _useState = (0, _react.useState)(false),
2120 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2121 isLoading = _useState2[0],
2122 setIsLoading = _useState2[1];
2123 var _useState3 = (0, _react.useState)(''),
2124 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2125 error = _useState4[0],
2126 setError = _useState4[1];
2127 var _useState5 = (0, _react.useState)(initialState),
2128 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2129 data = _useState6[0],
2130 setData = _useState6[1];
2131 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
2132 setRequest = _useRequestIds.setRequest,
2133 editorSessionId = _useRequestIds.editorSessionId,
2134 sessionId = _useRequestIds.sessionId,
2135 generateId = _useRequestIds.generateId,
2136 batchId = _useRequestIds.batchId;
2137 var send = /*#__PURE__*/function () {
2138 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(payload) {
2139 return _regenerator.default.wrap(function _callee$(_context) {
2140 while (1) switch (_context.prev = _context.next) {
2141 case 0:
2142 return _context.abrupt("return", new Promise(function (resolve, reject) {
2143 setError('');
2144 setIsLoading(true);
2145 var requestId = setRequest();
2146 var requestIds = {
2147 editorSessionId: editorSessionId.current,
2148 sessionId: sessionId.current,
2149 generateId: generateId.current,
2150 batchId: batchId.current,
2151 requestId: requestId.current
2152 };
2153 payload = _objectSpread(_objectSpread({}, payload), {}, {
2154 requestIds: requestIds
2155 });
2156 fetchData(payload).then(function (result) {
2157 var normalizedData = normalizeResponse(result);
2158 setData(normalizedData);
2159 resolve(normalizedData);
2160 }).catch(function (err) {
2161 var finalError = (err === null || err === void 0 ? void 0 : err.responseText) || err;
2162 setError(finalError);
2163 reject(finalError);
2164 }).finally(function () {
2165 return setIsLoading(false);
2166 });
2167 }));
2168 case 1:
2169 case "end":
2170 return _context.stop();
2171 }
2172 }, _callee);
2173 }));
2174 return function send(_x) {
2175 return _ref2.apply(this, arguments);
2176 };
2177 }();
2178 var sendUsageData = function sendUsageData() {
2179 var usageData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : data;
2180 return usageData.responseId && (0, _api.setStatusFeedback)(usageData.responseId);
2181 };
2182 var reset = function reset() {
2183 setData(function (_ref3) {
2184 var credits = _ref3.credits;
2185 return {
2186 credits: credits,
2187 result: '',
2188 responseId: ''
2189 };
2190 });
2191 setError('');
2192 setIsLoading(false);
2193 };
2194 var setResult = function setResult(result) {
2195 var responseId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
2196 var updatedResult = _objectSpread({}, data);
2197 updatedResult.result = result;
2198 if (responseId) {
2199 updatedResult.responseId = responseId;
2200 }
2201 setData(updatedResult);
2202 };
2203 return {
2204 isLoading: isLoading,
2205 error: error,
2206 data: data,
2207 setResult: setResult,
2208 reset: reset,
2209 send: send,
2210 sendUsageData: sendUsageData
2211 };
2212 };
2213 var _default = usePrompt;
2214 exports["default"] = _default;
2215
2216 /***/ }),
2217
2218 /***/ "../modules/ai/assets/js/editor/hooks/use-timeout.js":
2219 /*!***********************************************************!*\
2220 !*** ../modules/ai/assets/js/editor/hooks/use-timeout.js ***!
2221 \***********************************************************/
2222 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2223
2224 "use strict";
2225
2226
2227 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2228 Object.defineProperty(exports, "__esModule", ({
2229 value: true
2230 }));
2231 exports.useTimeout = void 0;
2232 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2233 var _react = __webpack_require__(/*! react */ "react");
2234 var useTimeout = function useTimeout(delay) {
2235 var _useState = (0, _react.useState)(false),
2236 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2237 isTimeout = _useState2[0],
2238 setIsTimeout = _useState2[1];
2239 var timeoutIdRef = (0, _react.useRef)(null);
2240 var turnOffTimeout = function turnOffTimeout() {
2241 clearTimeout(timeoutIdRef.current);
2242 setIsTimeout(false);
2243 };
2244 (0, _react.useEffect)(function () {
2245 timeoutIdRef.current = setTimeout(function () {
2246 setIsTimeout(true);
2247 }, delay);
2248 return function () {
2249 clearTimeout(timeoutIdRef.current);
2250 };
2251 }, [delay]);
2252 return [isTimeout, turnOffTimeout];
2253 };
2254 exports.useTimeout = useTimeout;
2255
2256 /***/ }),
2257
2258 /***/ "../modules/ai/assets/js/editor/hooks/use-user-info.js":
2259 /*!*************************************************************!*\
2260 !*** ../modules/ai/assets/js/editor/hooks/use-user-info.js ***!
2261 \*************************************************************/
2262 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2263
2264 "use strict";
2265
2266
2267 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2268 Object.defineProperty(exports, "__esModule", ({
2269 value: true
2270 }));
2271 exports["default"] = void 0;
2272 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2273 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2274 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2275 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2276 var _react = __webpack_require__(/*! react */ "react");
2277 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2278 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2279 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2280 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
2281 var useUserInfo = function useUserInfo() {
2282 var immediately = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
2283 var _useState = (0, _react.useState)(false),
2284 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2285 isLoaded = _useState2[0],
2286 setIsLoaded = _useState2[1];
2287 var _useState3 = (0, _react.useState)(false),
2288 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2289 isLoading = _useState4[0],
2290 setIsLoading = _useState4[1];
2291 var _useState5 = (0, _react.useState)({
2292 is_connected: false,
2293 is_get_started: false,
2294 connect_url: '',
2295 usage: {
2296 hasAiSubscription: false,
2297 quota: 0,
2298 usedQuota: 0
2299 }
2300 }),
2301 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2302 userInfo = _useState6[0],
2303 setUserInfo = _useState6[1];
2304 var credits = userInfo.usage.quota - userInfo.usage.usedQuota;
2305 var usagePercentage = userInfo.usage.usedQuota / userInfo.usage.quota * 100;
2306 var fetchData = /*#__PURE__*/function () {
2307 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
2308 var userInfoResult;
2309 return _regenerator.default.wrap(function _callee$(_context) {
2310 while (1) switch (_context.prev = _context.next) {
2311 case 0:
2312 setIsLoading(true);
2313 _context.next = 3;
2314 return (0, _api.getUserInformation)(immediately);
2315 case 3:
2316 userInfoResult = _context.sent;
2317 setUserInfo(function (prevState) {
2318 return _objectSpread(_objectSpread({}, prevState), userInfoResult);
2319 });
2320 setIsLoaded(true);
2321 setIsLoading(false);
2322 case 7:
2323 case "end":
2324 return _context.stop();
2325 }
2326 }, _callee);
2327 }));
2328 return function fetchData() {
2329 return _ref.apply(this, arguments);
2330 };
2331 }();
2332 if (!isLoaded && !isLoading) {
2333 fetchData();
2334 }
2335 return {
2336 isLoading: isLoading,
2337 isLoaded: isLoaded,
2338 isConnected: userInfo.is_connected,
2339 isGetStarted: userInfo.is_get_started,
2340 connectUrl: userInfo.connect_url,
2341 builderUrl: userInfo.usage.builderUrl,
2342 hasSubscription: userInfo.usage.hasAiSubscription,
2343 credits: credits < 0 ? 0 : credits,
2344 usagePercentage: Math.round(usagePercentage),
2345 fetchData: fetchData
2346 };
2347 };
2348 useUserInfo.propTypes = {
2349 immediately: _propTypes.default.bool
2350 };
2351 var _default = useUserInfo;
2352 exports["default"] = _default;
2353
2354 /***/ }),
2355
2356 /***/ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js":
2357 /*!***************************************************************!*\
2358 !*** ../modules/ai/assets/js/editor/icons/arrow-left-icon.js ***!
2359 \***************************************************************/
2360 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2361
2362 "use strict";
2363
2364
2365 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2366 Object.defineProperty(exports, "__esModule", ({
2367 value: true
2368 }));
2369 exports["default"] = void 0;
2370 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2371 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2372 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2373 var ArrowLeftIcon = _react.default.forwardRef(function (props, ref) {
2374 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2375 viewBox: "0 0 24 24"
2376 }, props, {
2377 ref: ref
2378 }), /*#__PURE__*/_react.default.createElement("path", {
2379 fillRule: "evenodd",
2380 clipRule: "evenodd",
2381 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"
2382 }));
2383 });
2384 var _default = ArrowLeftIcon;
2385 exports["default"] = _default;
2386
2387 /***/ }),
2388
2389 /***/ "../modules/ai/assets/js/editor/icons/bulb-icon.js":
2390 /*!*********************************************************!*\
2391 !*** ../modules/ai/assets/js/editor/icons/bulb-icon.js ***!
2392 \*********************************************************/
2393 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2394
2395 "use strict";
2396
2397
2398 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2399 Object.defineProperty(exports, "__esModule", ({
2400 value: true
2401 }));
2402 exports["default"] = void 0;
2403 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2404 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2405 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2406 var BulbIcon = _react.default.forwardRef(function (props, ref) {
2407 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({}, props, {
2408 ref: ref
2409 }), /*#__PURE__*/_react.default.createElement("svg", {
2410 width: "22",
2411 height: "22",
2412 viewBox: "0 0 22 22",
2413 fill: "none",
2414 xmlns: "http://www.w3.org/2000/svg"
2415 }, /*#__PURE__*/_react.default.createElement("g", {
2416 clipPath: "url(#clip0_10743_8902)"
2417 }, /*#__PURE__*/_react.default.createElement("path", {
2418 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",
2419 stroke: "#2563EB",
2420 strokeWidth: "1.5",
2421 strokeLinecap: "round",
2422 strokeLinejoin: "round"
2423 }), /*#__PURE__*/_react.default.createElement("path", {
2424 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",
2425 stroke: "#2563EB",
2426 strokeWidth: "1.5",
2427 strokeLinecap: "round",
2428 strokeLinejoin: "round"
2429 }), /*#__PURE__*/_react.default.createElement("path", {
2430 d: "M10.0833 16.5H11.9166",
2431 stroke: "#2563EB",
2432 strokeWidth: "1.5",
2433 strokeLinecap: "round",
2434 strokeLinejoin: "round"
2435 })), /*#__PURE__*/_react.default.createElement("defs", null, /*#__PURE__*/_react.default.createElement("clipPath", {
2436 id: "clip0_10743_8902"
2437 }, /*#__PURE__*/_react.default.createElement("rect", {
2438 width: "22",
2439 height: "22",
2440 fill: "white"
2441 })))));
2442 });
2443 var _default = BulbIcon;
2444 exports["default"] = _default;
2445
2446 /***/ }),
2447
2448 /***/ "../modules/ai/assets/js/editor/icons/copy-page-icon.js":
2449 /*!**************************************************************!*\
2450 !*** ../modules/ai/assets/js/editor/icons/copy-page-icon.js ***!
2451 \**************************************************************/
2452 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2453
2454 "use strict";
2455
2456
2457 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2458 Object.defineProperty(exports, "__esModule", ({
2459 value: true
2460 }));
2461 exports["default"] = void 0;
2462 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2463 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2464 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2465 var CopyPageIcon = _react.default.forwardRef(function (props, ref) {
2466 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2467 viewBox: "0 0 24 24"
2468 }, props, {
2469 ref: ref
2470 }), /*#__PURE__*/_react.default.createElement("path", {
2471 fillRule: "evenodd",
2472 clipRule: "evenodd",
2473 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"
2474 }));
2475 });
2476 var _default = CopyPageIcon;
2477 exports["default"] = _default;
2478
2479 /***/ }),
2480
2481 /***/ "../modules/ai/assets/js/editor/icons/edit-icon.js":
2482 /*!*********************************************************!*\
2483 !*** ../modules/ai/assets/js/editor/icons/edit-icon.js ***!
2484 \*********************************************************/
2485 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2486
2487 "use strict";
2488
2489
2490 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2491 Object.defineProperty(exports, "__esModule", ({
2492 value: true
2493 }));
2494 exports["default"] = void 0;
2495 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2496 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2497 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2498 var EditIcon = _react.default.forwardRef(function (props, ref) {
2499 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2500 viewBox: "0 0 24 24"
2501 }, props, {
2502 ref: ref
2503 }), /*#__PURE__*/_react.default.createElement("path", {
2504 fillRule: "evenodd",
2505 clipRule: "evenodd",
2506 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"
2507 }), /*#__PURE__*/_react.default.createElement("path", {
2508 fillRule: "evenodd",
2509 clipRule: "evenodd",
2510 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"
2511 }));
2512 });
2513 var _default = EditIcon;
2514 exports["default"] = _default;
2515
2516 /***/ }),
2517
2518 /***/ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js":
2519 /*!********************************************************************!*\
2520 !*** ../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js ***!
2521 \********************************************************************/
2522 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2523
2524 "use strict";
2525
2526
2527 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2528 Object.defineProperty(exports, "__esModule", ({
2529 value: true
2530 }));
2531 exports["default"] = void 0;
2532 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2533 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2534 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2535 var ExpandDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2536 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2537 viewBox: "0 0 24 24"
2538 }, props, {
2539 ref: ref
2540 }), /*#__PURE__*/_react.default.createElement("path", {
2541 fillRule: "evenodd",
2542 clipRule: "evenodd",
2543 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"
2544 }));
2545 });
2546 var _default = ExpandDiagonalIcon;
2547 exports["default"] = _default;
2548
2549 /***/ }),
2550
2551 /***/ "../modules/ai/assets/js/editor/icons/lock-icon.js":
2552 /*!*********************************************************!*\
2553 !*** ../modules/ai/assets/js/editor/icons/lock-icon.js ***!
2554 \*********************************************************/
2555 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2556
2557 "use strict";
2558
2559
2560 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2561 Object.defineProperty(exports, "__esModule", ({
2562 value: true
2563 }));
2564 exports["default"] = void 0;
2565 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2566 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2567 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2568 var LockIcon = _react.default.forwardRef(function (props, ref) {
2569 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2570 viewBox: "0 0 24 24"
2571 }, props, {
2572 ref: ref
2573 }), /*#__PURE__*/_react.default.createElement("path", {
2574 fillRule: "evenodd",
2575 clipRule: "evenodd",
2576 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"
2577 }), /*#__PURE__*/_react.default.createElement("path", {
2578 fillRule: "evenodd",
2579 clipRule: "evenodd",
2580 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"
2581 }), /*#__PURE__*/_react.default.createElement("path", {
2582 d: "M6 12H19V20H6V12Z"
2583 }));
2584 });
2585 var _default = LockIcon;
2586 exports["default"] = _default;
2587
2588 /***/ }),
2589
2590 /***/ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js":
2591 /*!**********************************************************************!*\
2592 !*** ../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js ***!
2593 \**********************************************************************/
2594 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2595
2596 "use strict";
2597
2598
2599 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2600 Object.defineProperty(exports, "__esModule", ({
2601 value: true
2602 }));
2603 exports["default"] = void 0;
2604 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2605 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2606 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2607 var MinimizeDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2608 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2609 viewBox: "0 0 24 24"
2610 }, props, {
2611 ref: ref
2612 }), /*#__PURE__*/_react.default.createElement("path", {
2613 fillRule: "evenodd",
2614 clipRule: "evenodd",
2615 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"
2616 }));
2617 });
2618 var _default = MinimizeDiagonalIcon;
2619 exports["default"] = _default;
2620
2621 /***/ }),
2622
2623 /***/ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js":
2624 /*!****************************************************************!*\
2625 !*** ../modules/ai/assets/js/editor/icons/plus-circle-icon.js ***!
2626 \****************************************************************/
2627 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2628
2629 "use strict";
2630
2631
2632 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2633 Object.defineProperty(exports, "__esModule", ({
2634 value: true
2635 }));
2636 exports["default"] = void 0;
2637 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2638 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2639 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2640 var PlusCircleIcon = _react.default.forwardRef(function (props, ref) {
2641 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2642 viewBox: "0 0 24 24"
2643 }, props, {
2644 ref: ref
2645 }), /*#__PURE__*/_react.default.createElement("path", {
2646 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"
2647 }));
2648 });
2649 var _default = PlusCircleIcon;
2650 exports["default"] = _default;
2651
2652 /***/ }),
2653
2654 /***/ "../modules/ai/assets/js/editor/icons/refresh-icon.js":
2655 /*!************************************************************!*\
2656 !*** ../modules/ai/assets/js/editor/icons/refresh-icon.js ***!
2657 \************************************************************/
2658 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2659
2660 "use strict";
2661
2662
2663 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2664 Object.defineProperty(exports, "__esModule", ({
2665 value: true
2666 }));
2667 exports["default"] = void 0;
2668 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2669 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2670 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2671 var RefreshIcon = _react.default.forwardRef(function (props, ref) {
2672 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2673 viewBox: "0 0 24 24"
2674 }, props, {
2675 ref: ref
2676 }), /*#__PURE__*/_react.default.createElement("path", {
2677 fillRule: "evenodd",
2678 clipRule: "evenodd",
2679 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"
2680 }), /*#__PURE__*/_react.default.createElement("path", {
2681 fillRule: "evenodd",
2682 clipRule: "evenodd",
2683 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"
2684 }));
2685 });
2686 var _default = RefreshIcon;
2687 exports["default"] = _default;
2688
2689 /***/ }),
2690
2691 /***/ "../modules/ai/assets/js/editor/icons/wand-icon.js":
2692 /*!*********************************************************!*\
2693 !*** ../modules/ai/assets/js/editor/icons/wand-icon.js ***!
2694 \*********************************************************/
2695 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2696
2697 "use strict";
2698
2699
2700 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2701 Object.defineProperty(exports, "__esModule", ({
2702 value: true
2703 }));
2704 exports["default"] = void 0;
2705 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2706 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2707 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2708 var WandIcon = _react.default.forwardRef(function (props, ref) {
2709 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2710 viewBox: "0 0 24 24"
2711 }, props, {
2712 ref: ref
2713 }), /*#__PURE__*/_react.default.createElement("path", {
2714 fillRule: "evenodd",
2715 clipRule: "evenodd",
2716 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"
2717 }), /*#__PURE__*/_react.default.createElement("path", {
2718 fillRule: "evenodd",
2719 clipRule: "evenodd",
2720 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"
2721 }), /*#__PURE__*/_react.default.createElement("path", {
2722 fillRule: "evenodd",
2723 clipRule: "evenodd",
2724 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"
2725 }));
2726 });
2727 var _default = WandIcon;
2728 exports["default"] = _default;
2729
2730 /***/ }),
2731
2732 /***/ "../modules/ai/assets/js/editor/icons/website-icon.js":
2733 /*!************************************************************!*\
2734 !*** ../modules/ai/assets/js/editor/icons/website-icon.js ***!
2735 \************************************************************/
2736 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2737
2738 "use strict";
2739
2740
2741 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2742 Object.defineProperty(exports, "__esModule", ({
2743 value: true
2744 }));
2745 exports["default"] = void 0;
2746 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2747 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2748 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2749 var WebsiteIcon = _react.default.forwardRef(function (props, ref) {
2750 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2751 viewBox: "0 0 24 24"
2752 }, props, {
2753 ref: ref
2754 }), /*#__PURE__*/_react.default.createElement("path", {
2755 fillRule: "evenodd",
2756 clipRule: "evenodd",
2757 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"
2758 }));
2759 });
2760 var _default = WebsiteIcon;
2761 exports["default"] = _default;
2762
2763 /***/ }),
2764
2765 /***/ "../modules/ai/assets/js/editor/icons/x-circle-icon.js":
2766 /*!*************************************************************!*\
2767 !*** ../modules/ai/assets/js/editor/icons/x-circle-icon.js ***!
2768 \*************************************************************/
2769 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2770
2771 "use strict";
2772
2773
2774 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2775 Object.defineProperty(exports, "__esModule", ({
2776 value: true
2777 }));
2778 exports["default"] = void 0;
2779 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2780 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2781 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2782 var XCircleIcon = _react.default.forwardRef(function (props, ref) {
2783 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2784 viewBox: "0 0 24 24"
2785 }, props, {
2786 ref: ref
2787 }), /*#__PURE__*/_react.default.createElement("path", {
2788 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"
2789 }));
2790 });
2791 var _default = XCircleIcon;
2792 exports["default"] = _default;
2793
2794 /***/ }),
2795
2796 /***/ "../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js":
2797 /*!********************************************************************************************!*\
2798 !*** ../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js ***!
2799 \********************************************************************************************/
2800 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2801
2802 "use strict";
2803
2804
2805 var _require = __webpack_require__(/*! ../../utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js"),
2806 renderLayoutApp = _require.renderLayoutApp,
2807 importToEditor = _require.importToEditor;
2808 var _require2 = __webpack_require__(/*! ../../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js"),
2809 MODE_VARIATION = _require2.MODE_VARIATION;
2810 var _require3 = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"),
2811 __ = _require3.__;
2812 var _require4 = __webpack_require__(/*! ../../pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"),
2813 ATTACHMENT_TYPE_JSON = _require4.ATTACHMENT_TYPE_JSON,
2814 ELEMENTOR_LIBRARY_SOURCE = _require4.ELEMENTOR_LIBRARY_SOURCE;
2815 var ApplyTemplateForAiBehavior;
2816 ApplyTemplateForAiBehavior = Marionette.Behavior.extend({
2817 ui: {
2818 applyButton: '.elementor-template-library-template-apply-ai',
2819 generateVariation: '.elementor-template-library-template-generate-variation'
2820 },
2821 events: {
2822 'click @ui.applyButton': 'onApplyButtonClick',
2823 'click @ui.generateVariation': 'onGenerateVariationClick'
2824 },
2825 onGenerateVariationClick: function onGenerateVariationClick() {
2826 var _libraryComponent$man, _libraryComponent$man2;
2827 var args = {
2828 model: this.view.model
2829 };
2830 var libraryComponent = $e.components.get('library');
2831 var at = (_libraryComponent$man = libraryComponent.manager.modalConfig) === null || _libraryComponent$man === void 0 ? void 0 : (_libraryComponent$man2 = _libraryComponent$man.importOptions) === null || _libraryComponent$man2 === void 0 ? void 0 : _libraryComponent$man2.at;
2832 libraryComponent.downloadTemplate(args, function (data) {
2833 var model = args.model;
2834 var attachment = {
2835 type: ATTACHMENT_TYPE_JSON,
2836 previewHTML: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
2837 content: data.content[0],
2838 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
2839 source: ELEMENTOR_LIBRARY_SOURCE
2840 };
2841 renderLayoutApp({
2842 parentContainer: elementor.getPreviewContainer(),
2843 mode: MODE_VARIATION,
2844 at: at,
2845 attachments: [attachment],
2846 onInsert: function onInsert(template) {
2847 importToEditor({
2848 parentContainer: elementor.getPreviewContainer(),
2849 at: at,
2850 template: template,
2851 historyTitle: __('AI Variation from library', 'elementor')
2852 });
2853 }
2854 });
2855 $e.run('library/close');
2856 });
2857 },
2858 onApplyButtonClick: function onApplyButtonClick() {
2859 var args = {
2860 model: this.view.model
2861 };
2862 this.ui.applyButton.addClass('elementor-disabled');
2863 if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
2864 $e.route('library/connect', args);
2865 return;
2866 }
2867 $e.run('library/generate-ai-variation', args);
2868 }
2869 });
2870 module.exports = ApplyTemplateForAiBehavior;
2871
2872 /***/ }),
2873
2874 /***/ "../modules/ai/assets/js/editor/layout-app-wrapper.js":
2875 /*!************************************************************!*\
2876 !*** ../modules/ai/assets/js/editor/layout-app-wrapper.js ***!
2877 \************************************************************/
2878 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2879
2880 "use strict";
2881
2882
2883 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2884 Object.defineProperty(exports, "__esModule", ({
2885 value: true
2886 }));
2887 exports["default"] = void 0;
2888 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2889 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2890 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2891 var LayoutAppWrapper = function LayoutAppWrapper(props) {
2892 return /*#__PURE__*/_react.default.createElement(_ui.DirectionProvider, {
2893 rtl: props.isRTL
2894 }, /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, {
2895 colorScheme: props.colorScheme
2896 }, props.children));
2897 };
2898 LayoutAppWrapper.propTypes = {
2899 children: _propTypes.default.node,
2900 isRTL: _propTypes.default.bool,
2901 colorScheme: _propTypes.default.oneOf(['auto', 'light', 'dark'])
2902 };
2903 var _default = LayoutAppWrapper;
2904 exports["default"] = _default;
2905
2906 /***/ }),
2907
2908 /***/ "../modules/ai/assets/js/editor/layout-app.js":
2909 /*!****************************************************!*\
2910 !*** ../modules/ai/assets/js/editor/layout-app.js ***!
2911 \****************************************************/
2912 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2913
2914 "use strict";
2915
2916
2917 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2918 Object.defineProperty(exports, "__esModule", ({
2919 value: true
2920 }));
2921 exports["default"] = void 0;
2922 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2923 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2924 var _layoutContent = _interopRequireDefault(__webpack_require__(/*! ./layout-content */ "../modules/ai/assets/js/editor/layout-content.js"));
2925 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2926 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2927 var _remoteConfig = __webpack_require__(/*! ./pages/form-layout/context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
2928 var _requestsIds = __webpack_require__(/*! ./context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2929 var LayoutApp = function LayoutApp(props) {
2930 return /*#__PURE__*/_react.default.createElement(_remoteConfig.RemoteConfigProvider, {
2931 onError: props.onClose
2932 }, /*#__PURE__*/_react.default.createElement(_requestsIds.RequestIdsProvider, null, /*#__PURE__*/_react.default.createElement(_config.ConfigProvider, {
2933 mode: props.mode,
2934 attachmentsTypes: props.attachmentsTypes,
2935 onClose: props.onClose,
2936 onConnect: props.onConnect,
2937 onData: props.onData,
2938 onInsert: props.onInsert,
2939 onSelect: props.onSelect,
2940 onGenerate: props.onGenerate,
2941 currentContext: props.currentContext,
2942 hasPro: props.hasPro
2943 }, /*#__PURE__*/_react.default.createElement(_layoutContent.default, {
2944 attachments: props.attachments
2945 }))));
2946 };
2947 LayoutApp.propTypes = {
2948 mode: _propTypes.default.oneOf(_config.LAYOUT_APP_MODES).isRequired,
2949 attachmentsTypes: _attachment.AttachmentsTypesPropType,
2950 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
2951 onClose: _propTypes.default.func.isRequired,
2952 onConnect: _propTypes.default.func.isRequired,
2953 onData: _propTypes.default.func.isRequired,
2954 onInsert: _propTypes.default.func.isRequired,
2955 onSelect: _propTypes.default.func.isRequired,
2956 onGenerate: _propTypes.default.func.isRequired,
2957 currentContext: _propTypes.default.object,
2958 hasPro: _propTypes.default.bool
2959 };
2960 var _default = LayoutApp;
2961 exports["default"] = _default;
2962
2963 /***/ }),
2964
2965 /***/ "../modules/ai/assets/js/editor/layout-content.js":
2966 /*!********************************************************!*\
2967 !*** ../modules/ai/assets/js/editor/layout-content.js ***!
2968 \********************************************************/
2969 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2970
2971 "use strict";
2972
2973
2974 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2975 Object.defineProperty(exports, "__esModule", ({
2976 value: true
2977 }));
2978 exports["default"] = void 0;
2979 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2980 var _connect = _interopRequireDefault(__webpack_require__(/*! ./pages/connect */ "../modules/ai/assets/js/editor/pages/connect/index.js"));
2981 var _formLayout = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout */ "../modules/ai/assets/js/editor/pages/form-layout/index.js"));
2982 var _getStarted = _interopRequireDefault(__webpack_require__(/*! ./pages/get-started */ "../modules/ai/assets/js/editor/pages/get-started/index.js"));
2983 var _loader = _interopRequireDefault(__webpack_require__(/*! ./components/loader */ "../modules/ai/assets/js/editor/components/loader.js"));
2984 var _upgradeChip = _interopRequireDefault(__webpack_require__(/*! ./components/upgrade-chip */ "../modules/ai/assets/js/editor/components/upgrade-chip.js"));
2985 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
2986 var _wizardDialog = _interopRequireDefault(__webpack_require__(/*! ./components/wizard-dialog */ "../modules/ai/assets/js/editor/components/wizard-dialog.js"));
2987 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout/components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
2988 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2989 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2990 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2991 var LayoutContent = function LayoutContent(props) {
2992 var _useUserInfo = (0, _useUserInfo2.default)(),
2993 isLoading = _useUserInfo.isLoading,
2994 isConnected = _useUserInfo.isConnected,
2995 isGetStarted = _useUserInfo.isGetStarted,
2996 connectUrl = _useUserInfo.connectUrl,
2997 fetchData = _useUserInfo.fetchData,
2998 hasSubscription = _useUserInfo.hasSubscription,
2999 usagePercentage = _useUserInfo.usagePercentage;
3000 var _useConfig = (0, _config.useConfig)(),
3001 onClose = _useConfig.onClose,
3002 onConnect = _useConfig.onConnect;
3003 if (isLoading) {
3004 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3005 onClose: onClose
3006 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, {
3007 onClose: onClose
3008 }), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, {
3009 dividers: true
3010 }, /*#__PURE__*/_react.default.createElement(_loader.default, {
3011 BoxProps: {
3012 sx: {
3013 px: 3
3014 }
3015 }
3016 })));
3017 }
3018 if (!isConnected) {
3019 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3020 onClose: onClose
3021 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3022 onClose: onClose
3023 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3024 dividers: true
3025 }, /*#__PURE__*/_react.default.createElement(_connect.default, {
3026 connectUrl: connectUrl,
3027 onSuccess: function onSuccess(data) {
3028 onConnect(data);
3029 fetchData();
3030 }
3031 })));
3032 }
3033 if (!isGetStarted) {
3034 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3035 onClose: onClose
3036 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3037 onClose: onClose
3038 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3039 dividers: true
3040 }, /*#__PURE__*/_react.default.createElement(_getStarted.default, {
3041 onSuccess: fetchData
3042 })));
3043 }
3044 var showUpgradeChip = !hasSubscription || 80 <= usagePercentage;
3045 return /*#__PURE__*/_react.default.createElement(_formLayout.default, {
3046 attachments: props.attachments,
3047 DialogHeaderProps: {
3048 children: showUpgradeChip && /*#__PURE__*/_react.default.createElement(_upgradeChip.default, {
3049 hasSubscription: hasSubscription,
3050 usagePercentage: usagePercentage
3051 })
3052 }
3053 });
3054 };
3055 LayoutContent.propTypes = {
3056 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
3057 };
3058 var _default = LayoutContent;
3059 exports["default"] = _default;
3060
3061 /***/ }),
3062
3063 /***/ "../modules/ai/assets/js/editor/pages/connect/index.js":
3064 /*!*************************************************************!*\
3065 !*** ../modules/ai/assets/js/editor/pages/connect/index.js ***!
3066 \*************************************************************/
3067 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3068
3069 "use strict";
3070
3071
3072 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3073 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3074 Object.defineProperty(exports, "__esModule", ({
3075 value: true
3076 }));
3077 exports["default"] = void 0;
3078 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3079 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3080 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3081 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3082 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3083 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
3084 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; }
3085 var Connect = function Connect(_ref) {
3086 var connectUrl = _ref.connectUrl,
3087 onSuccess = _ref.onSuccess;
3088 var approveButtonRef = (0, _react.useRef)();
3089 (0, _react.useEffect)(function () {
3090 // On local dev (as a standalone app), the connect lib is not loaded.
3091 if (!jQuery.fn.elementorConnect) {
3092 return;
3093 }
3094 jQuery(approveButtonRef.current).elementorConnect({
3095 success: function success(_, data) {
3096 return onSuccess(data);
3097 },
3098 error: function error() {
3099 throw new Error('Elementor AI: Failed to connect.');
3100 }
3101 });
3102 }, []);
3103 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3104 alignItems: "center",
3105 gap: 2
3106 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3107 sx: {
3108 color: 'text.primary',
3109 fontSize: '60px',
3110 mb: 1
3111 }
3112 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3113 variant: "h4",
3114 sx: {
3115 color: 'text.primary'
3116 }
3117 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3118 variant: "body2"
3119 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3120 variant: "caption",
3121 sx: {
3122 maxWidth: 520,
3123 textAlign: 'center'
3124 }
3125 }, (0, _i18n.__)('By clicking "Connect", I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
3126 href: "https://go.elementor.com/ai-terms/",
3127 target: "_blank",
3128 color: "info.main"
3129 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
3130 href: "https://go.elementor.com/ai-privacy-policy/",
3131 target: "_blank",
3132 color: "info.main"
3133 }, (0, _i18n.__)('Privacy Policy', 'elementor')), (0, _i18n.__)(' of the Elementor AI service.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
3134 ref: approveButtonRef,
3135 href: connectUrl,
3136 variant: "contained",
3137 sx: {
3138 mt: 1,
3139 '&:hover': {
3140 color: 'primary.contrastText'
3141 }
3142 }
3143 }, (0, _i18n.__)('Connect', 'elementor')));
3144 };
3145 Connect.propTypes = {
3146 connectUrl: _propTypes.default.string.isRequired,
3147 onSuccess: _propTypes.default.func.isRequired
3148 };
3149 var _default = Connect;
3150 exports["default"] = _default;
3151
3152 /***/ }),
3153
3154 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js":
3155 /*!**********************************************************************************!*\
3156 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js ***!
3157 \**********************************************************************************/
3158 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3159
3160 "use strict";
3161
3162
3163 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3164 Object.defineProperty(exports, "__esModule", ({
3165 value: true
3166 }));
3167 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;
3168 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3169 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3170 var _menu = __webpack_require__(/*! ./attachments/menu */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js");
3171 var _thumbnailJson = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-json */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js"));
3172 var _thumbnailUrl = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-url */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js"));
3173 var _websiteIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/website-icon */ "../modules/ai/assets/js/editor/icons/website-icon.js"));
3174 var _copyPageIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/copy-page-icon */ "../modules/ai/assets/js/editor/icons/copy-page-icon.js"));
3175 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3176 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3177 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3178 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3179 var ATTACHMENT_TYPE_JSON = 'json';
3180 exports.ATTACHMENT_TYPE_JSON = ATTACHMENT_TYPE_JSON;
3181 var ATTACHMENT_TYPE_URL = 'url';
3182 exports.ATTACHMENT_TYPE_URL = ATTACHMENT_TYPE_URL;
3183 var MENU_TYPE_LIBRARY = 'library';
3184 exports.MENU_TYPE_LIBRARY = MENU_TYPE_LIBRARY;
3185 var USER_VARIATION_SOURCE = 'user-variation';
3186 exports.USER_VARIATION_SOURCE = USER_VARIATION_SOURCE;
3187 var ELEMENTOR_LIBRARY_SOURCE = 'elementor-library';
3188 exports.ELEMENTOR_LIBRARY_SOURCE = ELEMENTOR_LIBRARY_SOURCE;
3189 var USER_URL_SOURCE = 'user-url';
3190 exports.USER_URL_SOURCE = USER_URL_SOURCE;
3191 var Attachments = function Attachments(props) {
3192 if (!props.attachments.length) {
3193 return /*#__PURE__*/_react.default.createElement(_menu.Menu, {
3194 disabled: props.disabled,
3195 onAttach: props.onAttach,
3196 items: [{
3197 title: (0, _i18n.__)('Reference a website', 'elementor'),
3198 icon: _websiteIcon.default,
3199 type: ATTACHMENT_TYPE_URL
3200 }, {
3201 title: (0, _i18n.__)('Create variations from Template Library', 'elementor'),
3202 icon: _copyPageIcon.default,
3203 type: MENU_TYPE_LIBRARY
3204 }]
3205 });
3206 }
3207 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3208 direction: "row",
3209 spacing: 1
3210 }, props.attachments.map(function (attachment, index) {
3211 switch (attachment.type) {
3212 case ATTACHMENT_TYPE_JSON:
3213 return /*#__PURE__*/_react.default.createElement(_thumbnailJson.default, (0, _extends2.default)({
3214 key: index
3215 }, props));
3216 case ATTACHMENT_TYPE_URL:
3217 return /*#__PURE__*/_react.default.createElement(_thumbnailUrl.default, (0, _extends2.default)({
3218 key: index
3219 }, props));
3220 default:
3221 return null;
3222 }
3223 }));
3224 };
3225 Attachments.propTypes = {
3226 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3227 onAttach: _propTypes.default.func.isRequired,
3228 onDetach: _propTypes.default.func,
3229 disabled: _propTypes.default.bool
3230 };
3231 var _default = Attachments;
3232 exports["default"] = _default;
3233
3234 /***/ }),
3235
3236 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js":
3237 /*!************************************************************************************************!*\
3238 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js ***!
3239 \************************************************************************************************/
3240 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3241
3242 "use strict";
3243
3244
3245 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3246 Object.defineProperty(exports, "__esModule", ({
3247 value: true
3248 }));
3249 exports["default"] = exports.AttachDialog = void 0;
3250 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3251 var _urlDialog = __webpack_require__(/*! ./url-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js");
3252 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3253 var _libraryDialog = __webpack_require__(/*! ./library-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js");
3254 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3255 var AttachDialog = function AttachDialog(props) {
3256 var type = props.type;
3257 var url = props.url;
3258 switch (type) {
3259 case _attachments.ATTACHMENT_TYPE_URL:
3260 return /*#__PURE__*/_react.default.createElement(_urlDialog.UrlDialog, {
3261 url: url,
3262 onAttach: props.onAttach,
3263 onClose: props.onClose
3264 });
3265 case _attachments.MENU_TYPE_LIBRARY:
3266 return /*#__PURE__*/_react.default.createElement(_libraryDialog.LibraryDialog, {
3267 onAttach: props.onAttach,
3268 onClose: props.onClose
3269 });
3270 }
3271 return null;
3272 };
3273 exports.AttachDialog = AttachDialog;
3274 AttachDialog.propTypes = {
3275 type: _propTypes.default.string,
3276 onAttach: _propTypes.default.func,
3277 onClose: _propTypes.default.func,
3278 url: _propTypes.default.string
3279 };
3280 var _default = AttachDialog;
3281 exports["default"] = _default;
3282
3283 /***/ }),
3284
3285 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js":
3286 /*!*************************************************************************************************!*\
3287 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js ***!
3288 \*************************************************************************************************/
3289 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3290
3291 "use strict";
3292
3293
3294 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3295 Object.defineProperty(exports, "__esModule", ({
3296 value: true
3297 }));
3298 exports.LibraryDialog = void 0;
3299 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3300 var _react = __webpack_require__(/*! react */ "react");
3301 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3302 var LibraryDialog = function LibraryDialog(props) {
3303 var isApplyingTemplate = (0, _react.useRef)(false);
3304 (0, _react.useEffect)(function () {
3305 var onLibraryHide = function onLibraryHide() {
3306 if (isApplyingTemplate.current) {
3307 return;
3308 }
3309 props.onClose();
3310 };
3311 $e.components.get('library').layout.getModal().on('hide', onLibraryHide);
3312 return function () {
3313 $e.components.get('library').layout.getModal().off('hide', onLibraryHide);
3314 };
3315 }, [props]);
3316 (0, _react.useEffect)(function () {
3317 var onMessage = function onMessage(event) {
3318 var _event$data = event.data,
3319 type = _event$data.type,
3320 json = _event$data.json,
3321 html = _event$data.html,
3322 label = _event$data.label,
3323 source = _event$data.source;
3324 switch (type) {
3325 case 'library/attach:start':
3326 isApplyingTemplate.current = true;
3327 break;
3328 case 'library/attach':
3329 props.onAttach([{
3330 type: _attachments.ATTACHMENT_TYPE_JSON,
3331 previewHTML: html,
3332 content: json,
3333 label: label,
3334 source: source
3335 }]);
3336 isApplyingTemplate.current = false;
3337 props.onClose();
3338 break;
3339 }
3340 };
3341 window.addEventListener('message', onMessage);
3342 return function () {
3343 window.removeEventListener('message', onMessage);
3344 };
3345 });
3346 $e.run('library/open', {
3347 toDefault: true,
3348 mode: 'ai-attachment'
3349 });
3350 isApplyingTemplate.current = false;
3351 return null;
3352 };
3353 exports.LibraryDialog = LibraryDialog;
3354 LibraryDialog.propTypes = {
3355 onAttach: _propTypes.default.func.isRequired,
3356 onClose: _propTypes.default.func.isRequired
3357 };
3358
3359 /***/ }),
3360
3361 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js":
3362 /*!***************************************************************************************!*\
3363 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js ***!
3364 \***************************************************************************************/
3365 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3366
3367 "use strict";
3368
3369
3370 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3371 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3372 Object.defineProperty(exports, "__esModule", ({
3373 value: true
3374 }));
3375 exports.Menu = void 0;
3376 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3377 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3378 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3379 var _xCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/x-circle-icon */ "../modules/ai/assets/js/editor/icons/x-circle-icon.js"));
3380 var _plusCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/plus-circle-icon */ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js"));
3381 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3382 var _attachDialog = __webpack_require__(/*! ./attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js");
3383 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3384 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
3385 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; }
3386 var Menu = function Menu(props) {
3387 var _useState = (0, _react.useState)(false),
3388 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3389 isOpen = _useState2[0],
3390 setIsOpen = _useState2[1];
3391 var _useState3 = (0, _react.useState)(null),
3392 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
3393 selectedType = _useState4[0],
3394 setSelectedType = _useState4[1];
3395 var _useTheme = (0, _ui.useTheme)(),
3396 direction = _useTheme.direction;
3397 var anchorRef = (0, _react.useRef)(null);
3398 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-attachment-badge'),
3399 isViewed = _useIntroduction.isViewed,
3400 markAsViewed = _useIntroduction.markAsViewed;
3401 return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3402 size: "small",
3403 ref: anchorRef,
3404 disabled: props.disabled,
3405 onClick: function onClick() {
3406 setIsOpen(true);
3407 if (!isViewed) {
3408 markAsViewed();
3409 }
3410 },
3411 color: "secondary"
3412 }, function () {
3413 if (isOpen) {
3414 return /*#__PURE__*/_react.default.createElement(_xCircleIcon.default, {
3415 fontSize: "small"
3416 });
3417 } else if (isViewed) {
3418 return /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3419 fontSize: "small"
3420 });
3421 }
3422 return /*#__PURE__*/_react.default.createElement(_ui.Badge, {
3423 color: "primary",
3424 badgeContent: " ",
3425 variant: "dot"
3426 }, /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3427 fontSize: "small"
3428 }));
3429 }()), /*#__PURE__*/_react.default.createElement(_ui.Popover, {
3430 open: isOpen,
3431 anchorEl: anchorRef.current,
3432 onClose: function onClose() {
3433 return setIsOpen(false);
3434 },
3435 anchorOrigin: {
3436 vertical: 'bottom',
3437 horizontal: 'rtl' === direction ? 'right' : 'left'
3438 },
3439 transformOrigin: {
3440 vertical: 'top',
3441 horizontal: 'rtl' === direction ? 'right' : 'left'
3442 }
3443 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3444 sx: {
3445 width: 440
3446 }
3447 }, props.items.map(function (item) {
3448 var IconComponent = item.icon;
3449 return /*#__PURE__*/_react.default.createElement(_ui.MenuItem, {
3450 key: item.type,
3451 onClick: function onClick() {
3452 setSelectedType(item.type);
3453 setIsOpen(false);
3454 }
3455 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(IconComponent, null)), item.title);
3456 }))), /*#__PURE__*/_react.default.createElement(_attachDialog.AttachDialog, {
3457 type: selectedType,
3458 onAttach: props.onAttach,
3459 onClose: function onClose() {
3460 setIsOpen(false);
3461 setSelectedType(null);
3462 }
3463 }));
3464 };
3465 exports.Menu = Menu;
3466 Menu.propTypes = {
3467 items: _propTypes.default.arrayOf(_propTypes.default.shape({
3468 title: _propTypes.default.string.isRequired,
3469 type: _propTypes.default.string.isRequired,
3470 icon: _propTypes.default.elementType
3471 })).isRequired,
3472 onAttach: _propTypes.default.func.isRequired,
3473 disabled: _propTypes.default.bool
3474 };
3475
3476 /***/ }),
3477
3478 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js":
3479 /*!******************************************************************************************************!*\
3480 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js ***!
3481 \******************************************************************************************************/
3482 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3483
3484 "use strict";
3485
3486
3487 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3488 Object.defineProperty(exports, "__esModule", ({
3489 value: true
3490 }));
3491 exports.PromptPowerNotice = void 0;
3492 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3493 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3494 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3495 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3496 var PromptPowerNotice = function PromptPowerNotice() {
3497 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-attachments-power'),
3498 isViewed = _useIntroduction.isViewed,
3499 markAsViewed = _useIntroduction.markAsViewed;
3500 if (isViewed) {
3501 return null;
3502 }
3503 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3504 sx: {
3505 pt: 2,
3506 px: 2,
3507 pb: 0
3508 }
3509 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
3510 severity: "info",
3511 onClose: function onClose() {
3512 return markAsViewed();
3513 }
3514 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3515 variant: "body2",
3516 display: "inline-block",
3517 sx: {
3518 paddingInlineEnd: 1
3519 }
3520 }, (0, _i18n.__)('You’ve got the power.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3521 variant: "body2",
3522 display: "inline-block"
3523 }, (0, _i18n.__)('Craft your prompt to affect content, images and/or colors - whichever you decide.', 'elementor'))));
3524 };
3525 exports.PromptPowerNotice = PromptPowerNotice;
3526
3527 /***/ }),
3528
3529 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js":
3530 /*!*************************************************************************************************!*\
3531 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js ***!
3532 \*************************************************************************************************/
3533 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3534
3535 "use strict";
3536
3537
3538 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3539 Object.defineProperty(exports, "__esModule", ({
3540 value: true
3541 }));
3542 exports["default"] = exports.ThumbnailJson = void 0;
3543 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3544 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3545 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3546 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3547 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3548 var ThumbnailJson = function ThumbnailJson(props) {
3549 var _props$attachments;
3550 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3551 return 'json' === item.type;
3552 });
3553 if (!attachment) {
3554 return null;
3555 }
3556 if (!attachment.previewHTML) {
3557 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
3558 animation: "wave",
3559 variant: "rounded",
3560 width: 60,
3561 height: 60
3562 });
3563 }
3564 return /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3565 html: attachment.previewHTML,
3566 disabled: props.disabled
3567 });
3568 };
3569 exports.ThumbnailJson = ThumbnailJson;
3570 ThumbnailJson.propTypes = {
3571 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3572 disabled: _propTypes.default.bool
3573 };
3574 var _default = ThumbnailJson;
3575 exports["default"] = _default;
3576
3577 /***/ }),
3578
3579 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js":
3580 /*!************************************************************************************************!*\
3581 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js ***!
3582 \************************************************************************************************/
3583 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3584
3585 "use strict";
3586
3587
3588 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3589 Object.defineProperty(exports, "__esModule", ({
3590 value: true
3591 }));
3592 exports["default"] = exports.ThumbnailUrl = void 0;
3593 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3594 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3595 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3596 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3597 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3598 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3599 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3600 var ThumbnailUrl = function ThumbnailUrl(props) {
3601 var _props$attachments;
3602 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3603 return 'url' === item.type;
3604 });
3605 if (!attachment) {
3606 return null;
3607 }
3608 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3609 sx: {
3610 position: 'relative',
3611 '&:hover::before': {
3612 content: '""',
3613 position: 'absolute',
3614 userSelect: 'none',
3615 inset: 0,
3616 backgroundColor: 'rgba(0,0,0,0.6)',
3617 borderRadius: 1,
3618 zIndex: 1
3619 },
3620 '&:hover .remove-attachment': {
3621 display: 'flex'
3622 }
3623 }
3624 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3625 className: "remove-attachment",
3626 size: "small",
3627 "aria-label": (0, _i18n.__)('Remove', 'elementor'),
3628 disabled: props.disabled,
3629 onClick: function onClick(event) {
3630 event.stopPropagation();
3631 props.onDetach();
3632 },
3633 sx: {
3634 display: 'none',
3635 position: 'absolute',
3636 insetInlineEnd: 4,
3637 insetBlockStart: 4,
3638 backgroundColor: 'secondary.main',
3639 zIndex: 1,
3640 borderRadius: 1,
3641 p: '3px',
3642 '&:hover': {
3643 backgroundColor: 'secondary.dark'
3644 }
3645 }
3646 }, /*#__PURE__*/_react.default.createElement(_icons.TrashIcon, {
3647 sx: {
3648 fontSize: '1.125rem',
3649 color: 'common.white'
3650 }
3651 })), /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3652 disabled: props.disabled,
3653 html: attachment.previewHTML
3654 }));
3655 };
3656 exports.ThumbnailUrl = ThumbnailUrl;
3657 ThumbnailUrl.propTypes = {
3658 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3659 disabled: _propTypes.default.bool,
3660 onDetach: _propTypes.default.func
3661 };
3662 var _default = ThumbnailUrl;
3663 exports["default"] = _default;
3664
3665 /***/ }),
3666
3667 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js":
3668 /*!********************************************************************************************!*\
3669 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js ***!
3670 \********************************************************************************************/
3671 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3672
3673 "use strict";
3674
3675
3676 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3677 Object.defineProperty(exports, "__esModule", ({
3678 value: true
3679 }));
3680 exports.Thumbnail = exports.THUMBNAIL_SIZE = void 0;
3681 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3682 var _taggedTemplateLiteral2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js"));
3683 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3684 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3685 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3686 var _styledComponents = _interopRequireDefault(__webpack_require__(/*! styled-components */ "../node_modules/styled-components/dist/styled-components.browser.esm.js"));
3687 var _templateObject;
3688 var THUMBNAIL_SIZE = 64;
3689 exports.THUMBNAIL_SIZE = THUMBNAIL_SIZE;
3690 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);
3691 var Thumbnail = function Thumbnail(props) {
3692 var _props$html$match, _props$html$match$gro, _props$html$match2, _props$html$match2$gr;
3693 var dataWidth = (_props$html$match = props.html.match('data-width="(?<width>\\d+)"')) === null || _props$html$match === void 0 ? void 0 : (_props$html$match$gro = _props$html$match.groups) === null || _props$html$match$gro === void 0 ? void 0 : _props$html$match$gro.width;
3694 var dataHeight = (_props$html$match2 = props.html.match('data-height="(?<height>\\d+)"')) === null || _props$html$match2 === void 0 ? void 0 : (_props$html$match2$gr = _props$html$match2.groups) === null || _props$html$match2$gr === void 0 ? void 0 : _props$html$match2$gr.height;
3695 var width = dataWidth ? parseInt(dataWidth) : THUMBNAIL_SIZE;
3696 var height = dataHeight ? parseInt(dataHeight) : THUMBNAIL_SIZE;
3697 var scaleFactor = Math.min(height, width);
3698 var scale = THUMBNAIL_SIZE / scaleFactor;
3699
3700 // Center the preview
3701 var top = height > width ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (height / width)) / 2 : 0;
3702 var left = width > height ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (width / height)) / 2 : 0;
3703 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3704 dir: "ltr",
3705 sx: {
3706 position: 'relative',
3707 cursor: 'default',
3708 overflow: 'hidden',
3709 border: '1px solid',
3710 borderColor: 'grey.300',
3711 borderRadius: 1,
3712 boxSizing: 'border-box',
3713 width: THUMBNAIL_SIZE,
3714 height: THUMBNAIL_SIZE,
3715 opacity: props.disabled ? 0.5 : 1
3716 }
3717 }, /*#__PURE__*/_react.default.createElement("iframe", {
3718 title: (0, _i18n.__)('Preview', 'elementor'),
3719 sandbox: "",
3720 srcDoc: "<style>" + StyledBody.componentStyle.rules.join('') + "</style>" + props.html,
3721 style: {
3722 border: 'none',
3723 overflow: 'hidden',
3724 width: width,
3725 height: height,
3726 transform: "scale(".concat(scale, ")"),
3727 transformOrigin: "".concat(left, "px ").concat(top, "px")
3728 }
3729 }));
3730 };
3731 exports.Thumbnail = Thumbnail;
3732 Thumbnail.propTypes = {
3733 html: _propTypes.default.string.isRequired,
3734 disabled: _propTypes.default.bool
3735 };
3736
3737 /***/ }),
3738
3739 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js":
3740 /*!*********************************************************************************************!*\
3741 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js ***!
3742 \*********************************************************************************************/
3743 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3744
3745 "use strict";
3746
3747
3748 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3749 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3750 Object.defineProperty(exports, "__esModule", ({
3751 value: true
3752 }));
3753 exports.UrlDialog = void 0;
3754 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3755 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3756 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3757 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3758 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3759 var _useAttachUrlService2 = __webpack_require__(/*! ../../hooks/use-attach-url-service */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js");
3760 var _alertDialog = __webpack_require__(/*! ../../../../components/alert-dialog */ "../modules/ai/assets/js/editor/components/alert-dialog.js");
3761 var _useTimeout3 = __webpack_require__(/*! ../../../../hooks/use-timeout */ "../modules/ai/assets/js/editor/hooks/use-timeout.js");
3762 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3763 var _remoteConfig = __webpack_require__(/*! ../../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
3764 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
3765 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
3766 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; }
3767 var UrlDialog = function UrlDialog(props) {
3768 var iframeRef = (0, _react.useRef)(null);
3769 var _useAttachUrlService = (0, _useAttachUrlService2.useAttachUrlService)({
3770 targetUrl: props.url
3771 }),
3772 iframeSource = _useAttachUrlService.iframeSource;
3773 var iframeOrigin = iframeSource ? new URL(iframeSource).origin : '';
3774 var _useTimeout = (0, _useTimeout3.useTimeout)(10000),
3775 _useTimeout2 = (0, _slicedToArray2.default)(_useTimeout, 2),
3776 isTimeout = _useTimeout2[0],
3777 turnOffTimeout = _useTimeout2[1];
3778 var _useUserInfo = (0, _useUserInfo2.default)(),
3779 isConnected = _useUserInfo.isConnected,
3780 hasSubscription = _useUserInfo.hasSubscription,
3781 credits = _useUserInfo.credits,
3782 usagePercentage = _useUserInfo.usagePercentage;
3783 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
3784 isLoaded = _useRemoteConfig.isLoaded,
3785 isError = _useRemoteConfig.isError,
3786 remoteConfig = _useRemoteConfig.remoteConfig;
3787 (0, _react.useEffect)(function () {
3788 var onMessage = function onMessage(event) {
3789 if (event.origin !== iframeOrigin) {
3790 return;
3791 }
3792 var _event$data = event.data,
3793 type = _event$data.type,
3794 html = _event$data.html,
3795 url = _event$data.url;
3796 switch (type) {
3797 case 'element-selector/close':
3798 props.onClose();
3799 break;
3800 case 'element-selector/loaded':
3801 turnOffTimeout();
3802 break;
3803 case 'element-selector/attach':
3804 props.onAttach([{
3805 type: 'url',
3806 previewHTML: html,
3807 content: html,
3808 label: url ? new URL(url).host : '',
3809 source: _attachments.USER_URL_SOURCE
3810 }]);
3811 break;
3812 }
3813 };
3814 window.addEventListener('message', onMessage);
3815 return function () {
3816 window.removeEventListener('message', onMessage);
3817 };
3818 }, [iframeOrigin, iframeSource, props, turnOffTimeout]);
3819 if (!iframeSource) {
3820 return /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3821 message: (0, _i18n.__)('The app is not available. Please try again later.', 'elementor'),
3822 onClose: props.onClose
3823 });
3824 }
3825 if (!isLoaded || isError) {
3826 return null;
3827 }
3828 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
3829 open: true,
3830 fullScreen: true,
3831 hideBackdrop: true,
3832 maxWidth: "md",
3833 sx: {
3834 '& .MuiPaper-root': {
3835 backgroundColor: 'transparent'
3836 }
3837 }
3838 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
3839 sx: {
3840 padding: 0
3841 }
3842 }, isTimeout && /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3843 message: (0, _i18n.__)('The app is not responding. Please try again later.', 'elementor'),
3844 onClose: props.onClose
3845 }), !isTimeout && /*#__PURE__*/_react.default.createElement("iframe", {
3846 ref: iframeRef,
3847 title: (0, _i18n.__)('URL as a reference', 'elementor'),
3848 src: iframeSource,
3849 onLoad: function onLoad() {
3850 var _window$elementorAppC = window.elementorAppConfig['kit-library'],
3851 accessLevel = _window$elementorAppC.access_level,
3852 accessTier = _window$elementorAppC.access_tier,
3853 isPro = _window$elementorAppC.is_pro;
3854 iframeRef.current.contentWindow.postMessage({
3855 type: 'referrer/info',
3856 info: {
3857 page: {
3858 url: window.location.href
3859 },
3860 authToken: remoteConfig[_remoteConfig.CONFIG_KEYS.AUTH_TOKEN] || '',
3861 products: {
3862 core: {
3863 version: window.elementor.config.version
3864 },
3865 pro: {
3866 isPro: isPro,
3867 accessLevel: accessLevel,
3868 accessTier: accessTier
3869 },
3870 ai: {
3871 isConnected: isConnected,
3872 hasSubscription: hasSubscription,
3873 credits: credits,
3874 usagePercentage: usagePercentage
3875 }
3876 },
3877 user: {
3878 isAdmin: window.elementor.config.user.is_administrator
3879 }
3880 }
3881 }, iframeOrigin);
3882 },
3883 style: {
3884 border: 'none',
3885 overflow: 'scroll',
3886 width: '100%',
3887 height: '100%',
3888 backgroundColor: 'rgba(255,255,255,0.6)'
3889 }
3890 })));
3891 };
3892 exports.UrlDialog = UrlDialog;
3893 UrlDialog.propTypes = {
3894 onAttach: _propTypes.default.func.isRequired,
3895 onClose: _propTypes.default.func.isRequired,
3896 url: _propTypes.default.string
3897 };
3898
3899 /***/ }),
3900
3901 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js":
3902 /*!************************************************************************************!*\
3903 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js ***!
3904 \************************************************************************************/
3905 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3906
3907 "use strict";
3908
3909
3910 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3911 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3912 Object.defineProperty(exports, "__esModule", ({
3913 value: true
3914 }));
3915 exports["default"] = void 0;
3916 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3917 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3918 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3919 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3920 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3921 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3922 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3923 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3924 var _promptDialog = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-dialog */ "../modules/ai/assets/js/editor/components/prompt-dialog.js"));
3925 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3926 var _excluded = ["sx", "PaperProps"];
3927 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
3928 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; }
3929 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3930 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
3931 var StyledDialog = (0, _ui.styled)(_promptDialog.default)(function () {
3932 return {
3933 '& .MuiDialog-container': {
3934 marginTop: 0,
3935 alignItems: 'flex-end',
3936 paddingBottom: '16vh'
3937 },
3938 '& .MuiPaper-root': {
3939 margin: 0,
3940 maxHeight: '55vh'
3941 }
3942 };
3943 });
3944 var DialogHeader = function DialogHeader(_ref) {
3945 var onClose = _ref.onClose,
3946 children = _ref.children;
3947 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
3948 sx: {
3949 fontWeight: 'normal'
3950 },
3951 color: "transparent",
3952 position: "relative"
3953 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
3954 variant: "dense"
3955 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3956 sx: {
3957 mr: 1
3958 }
3959 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3960 component: "span",
3961 variant: "subtitle2",
3962 sx: {
3963 fontWeight: 'bold',
3964 textTransform: 'uppercase'
3965 }
3966 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
3967 label: (0, _i18n.__)('Beta', 'elementor'),
3968 color: "default",
3969 size: "small",
3970 sx: {
3971 ml: 1
3972 }
3973 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3974 direction: "row",
3975 spacing: 1,
3976 alignItems: "center",
3977 sx: {
3978 ml: 'auto'
3979 }
3980 }, children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3981 size: "small",
3982 "aria-label": "close",
3983 onClick: onClose,
3984 sx: {
3985 '&.MuiButtonBase-root': {
3986 mr: -1
3987 }
3988 }
3989 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
3990 };
3991 DialogHeader.propTypes = {
3992 children: _propTypes.default.node,
3993 onClose: _propTypes.default.func.isRequired
3994 };
3995 var StyledDialogContent = (0, _ui.styled)(_promptDialog.default.Content)(function () {
3996 return {
3997 '&.MuiDialogContent-root': {
3998 padding: 0
3999 }
4000 };
4001 });
4002 var LayoutDialog = function LayoutDialog(_ref2) {
4003 var _ref2$sx = _ref2.sx,
4004 sx = _ref2$sx === void 0 ? {} : _ref2$sx,
4005 _ref2$PaperProps = _ref2.PaperProps,
4006 PaperProps = _ref2$PaperProps === void 0 ? {} : _ref2$PaperProps,
4007 props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
4008 var _useState = (0, _react.useState)({
4009 pointerEvents: 'none'
4010 }),
4011 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4012 sxStyle = _useState2[0],
4013 setSxStyle = _useState2[1];
4014 var timeoutRef = (0, _react.useRef)(null);
4015
4016 /**
4017 * The PromptDialog is using disableScrollLock in order to allow scrolling the page when the Dialog is opened.
4018 * When using the react-draggable library inside the editor, the background page scroll is not working smoothly.
4019 * Therefore, we need to delay the pointerEvents: none, which allowing to scroll the page content.
4020 */
4021 return /*#__PURE__*/_react.default.createElement(StyledDialog, (0, _extends2.default)({
4022 maxWidth: "md",
4023 PaperProps: _objectSpread({
4024 sx: {
4025 pointerEvents: 'auto'
4026 },
4027 onMouseEnter: function onMouseEnter() {
4028 clearTimeout(timeoutRef.current);
4029 setSxStyle({
4030 pointerEvents: 'all'
4031 });
4032 },
4033 onMouseLeave: function onMouseLeave() {
4034 clearTimeout(timeoutRef.current);
4035 timeoutRef.current = setTimeout(function () {
4036 setSxStyle({
4037 pointerEvents: 'none'
4038 });
4039 }, 200);
4040 }
4041 }, PaperProps)
4042 }, props, {
4043 sx: _objectSpread(_objectSpread({}, sxStyle), sx)
4044 }));
4045 };
4046 LayoutDialog.propTypes = {
4047 sx: _propTypes.default.object,
4048 PaperProps: _propTypes.default.object
4049 };
4050 LayoutDialog.Header = DialogHeader;
4051 LayoutDialog.Content = StyledDialogContent;
4052 var _default = LayoutDialog;
4053 exports["default"] = _default;
4054
4055 /***/ }),
4056
4057 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js":
4058 /*!*********************************************************************************************!*\
4059 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js ***!
4060 \*********************************************************************************************/
4061 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4062
4063 "use strict";
4064
4065
4066 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4067 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4068 Object.defineProperty(exports, "__esModule", ({
4069 value: true
4070 }));
4071 exports.ProTemplateIndicator = void 0;
4072 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4073 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4074 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4075 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4076 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4077 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
4078 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; }
4079 var popoverId = 'e-pro-upgrade-popover';
4080 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
4081 var theme = _ref.theme;
4082 return {
4083 position: 'relative',
4084 padding: theme.spacing(3),
4085 boxShadow: theme.shadows[4],
4086 zIndex: '9999'
4087 };
4088 });
4089 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
4090 var theme = _ref2.theme;
4091 return {
4092 position: 'absolute',
4093 width: theme.spacing(5),
4094 height: theme.spacing(5),
4095 overflow: 'hidden',
4096 // Override Popper inline styles.
4097 left: '100% !important',
4098 transform: 'translateX(-50%) translateY(-50%) rotate(var(--rotate, 0deg)) !important',
4099 '&::after': {
4100 backgroundColor: theme.palette.background.paper,
4101 content: '""',
4102 display: 'block',
4103 position: 'absolute',
4104 width: theme.spacing(2.5),
4105 height: theme.spacing(2.5),
4106 top: '50%',
4107 left: '50%',
4108 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
4109 boxShadow: '5px -5px 5px 0px rgba(0, 0, 0, 0.2)',
4110 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
4111 }
4112 };
4113 });
4114 var ProTemplateIndicator = function ProTemplateIndicator() {
4115 var actionUrl = 'https://go.elementor.com/go-pro-ai/';
4116 var actionLabel = (0, _i18n.__)('Go Pro', 'elementor');
4117 var _useState = (0, _react.useState)(false),
4118 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4119 isPopoverOpen = _useState2[0],
4120 setIsPopoverOpen = _useState2[1];
4121 var anchorEl = (0, _react.useRef)(null);
4122 var arrowEl = (0, _react.useRef)(null);
4123 var showPopover = function showPopover() {
4124 return setIsPopoverOpen(true);
4125 };
4126 var hidePopover = function hidePopover() {
4127 return setIsPopoverOpen(false);
4128 };
4129 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4130 flexDirection: "row-reverse",
4131 component: "span",
4132 display: "flex",
4133 onMouseLeave: hidePopover,
4134 alignItems: "center"
4135 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
4136 ref: anchorEl,
4137 onMouseEnter: showPopover,
4138 onClick: function onClick(e) {
4139 return e.stopPropagation();
4140 } /* Do nothing */,
4141 "aria-owns": isPopoverOpen ? popoverId : undefined,
4142 "aria-haspopup": "true",
4143 sx: {
4144 m: 1,
4145 '&:hover': {
4146 backgroundColor: 'action.selected'
4147 }
4148 }
4149 }, /*#__PURE__*/_react.default.createElement(_lockIcon.default, {
4150 sx: {
4151 color: 'text.primary'
4152 }
4153 })), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
4154 open: isPopoverOpen,
4155 popperOptions: {
4156 placement: 'left-start',
4157 modifiers: [{
4158 name: 'arrow',
4159 enabled: true,
4160 options: {
4161 element: arrowEl.current,
4162 padding: 5
4163 }
4164 }, {
4165 name: 'offset',
4166 options: {
4167 offset: [0, 10]
4168 }
4169 }]
4170 },
4171 anchorEl: anchorEl.current,
4172 sx: {
4173 zIndex: '9999',
4174 maxWidth: 300
4175 }
4176 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
4177 ref: arrowEl
4178 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4179 alignItems: "start",
4180 spacing: 2
4181 }, /*#__PURE__*/_react.default.createElement(_ui.Chip, {
4182 color: "promotion",
4183 variant: "outlined",
4184 size: "small",
4185 label: (0, _i18n.__)('Pro', 'elementor'),
4186 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null)
4187 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4188 variant: "body2"
4189 }, (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, {
4190 variant: "contained",
4191 color: "promotion",
4192 size: "small",
4193 href: actionUrl,
4194 target: "_blank",
4195 sx: {
4196 alignSelf: 'flex-end'
4197 }
4198 }, actionLabel)))));
4199 };
4200 exports.ProTemplateIndicator = ProTemplateIndicator;
4201
4202 /***/ }),
4203
4204 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js":
4205 /*!*****************************************************************************************!*\
4206 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js ***!
4207 \*****************************************************************************************/
4208 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4209
4210 "use strict";
4211
4212
4213 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4214 Object.defineProperty(exports, "__esModule", ({
4215 value: true
4216 }));
4217 exports.ProWidgetsNotice = void 0;
4218 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4219 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4220 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4221 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4222 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
4223 var ProWidgetsNotice = function ProWidgetsNotice() {
4224 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-pro-widget'),
4225 isViewed = _useIntroduction.isViewed,
4226 markAsViewed = _useIntroduction.markAsViewed;
4227 if (isViewed) {
4228 return null;
4229 }
4230 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4231 sx: {
4232 pt: 2,
4233 px: 2,
4234 pb: 0
4235 }
4236 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
4237 severity: "info",
4238 variant: "filled",
4239 color: "promotion",
4240 onClose: function onClose() {
4241 return markAsViewed();
4242 },
4243 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null),
4244 sx: {
4245 '& .MuiAlert-message': {
4246 width: '100%'
4247 }
4248 }
4249 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4250 flexDirection: "row",
4251 alignItems: "baseline",
4252 justifyContent: "space-between"
4253 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4254 variant: "body2",
4255 component: "span",
4256 sx: {
4257 paddingInlineEnd: 0.5
4258 }
4259 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4260 variant: "subtitle2",
4261 component: "span",
4262 sx: {
4263 paddingInlineEnd: 1
4264 }
4265 }, (0, _i18n.__)('Upgrade your plan for best results.', 'elementor')), (0, _i18n.__)('You won’t be able to use layouts with Elementor Pro widgets until you do.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
4266 variant: "outlined",
4267 size: "small",
4268 onClick: function onClick() {
4269 return window.open('https://go.elementor.com/upgrade-pro/', '_blank');
4270 },
4271 color: "inherit"
4272 }, (0, _i18n.__)('Go Pro', 'elementor')))));
4273 };
4274 exports.ProWidgetsNotice = ProWidgetsNotice;
4275
4276 /***/ }),
4277
4278 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js":
4279 /*!******************************************************************************************!*\
4280 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js ***!
4281 \******************************************************************************************/
4282 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4283
4284 "use strict";
4285
4286
4287 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4288 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4289 Object.defineProperty(exports, "__esModule", ({
4290 value: true
4291 }));
4292 exports["default"] = void 0;
4293 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4294 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4295 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4296 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4297 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4298 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4299 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4300 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4301 var _promptLibraryLink = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-library-link */ "../modules/ai/assets/js/editor/components/prompt-library-link.js"));
4302 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4303 var _excluded = ["onSubmit"];
4304 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
4305 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; }
4306 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4307 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4308 var TextInput = (0, _react.forwardRef)(function (props, ref) {
4309 return /*#__PURE__*/_react.default.createElement(_ui.TextField
4310 // eslint-disable-next-line jsx-a11y/no-autofocus
4311 , (0, _extends2.default)({
4312 autoFocus: true,
4313 multiline: true,
4314 size: "small",
4315 maxRows: 3,
4316 color: "secondary",
4317 variant: "standard"
4318 }, props, {
4319 inputRef: ref,
4320 InputProps: _objectSpread(_objectSpread({}, props.InputProps), {}, {
4321 type: 'search',
4322 sx: {
4323 pt: 0
4324 }
4325 })
4326 }));
4327 });
4328 TextInput.propTypes = {
4329 InputProps: _propTypes.default.object
4330 };
4331 var PaperComponent = function PaperComponent(props) {
4332 var _useConfig = (0, _config.useConfig)(),
4333 mode = _useConfig.mode;
4334 var libraryLink = _config.MODE_VARIATION === mode ? 'https://go.elementor.com/ai-prompt-library-variations/' : 'https://go.elementor.com/ai-prompt-library-containers/';
4335 return /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
4336 elevation: 8,
4337 sx: {
4338 borderRadius: 2
4339 }
4340 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4341 component: _ui.Box,
4342 color: function color(theme) {
4343 return theme.palette.text.tertiary;
4344 },
4345 variant: "caption",
4346 paddingX: 2,
4347 paddingY: 1
4348 }, (0, _i18n.__)('Suggested Prompts', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Divider, null), props.children, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4349 sx: {
4350 m: 2
4351 }
4352 }, /*#__PURE__*/_react.default.createElement(_promptLibraryLink.default, {
4353 libraryLink: libraryLink
4354 })));
4355 };
4356 PaperComponent.propTypes = {
4357 children: _propTypes.default.node
4358 };
4359 var PromptAutocomplete = function PromptAutocomplete(_ref) {
4360 var onSubmit = _ref.onSubmit,
4361 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4362 var _useState = (0, _react.useState)(false),
4363 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4364 showSuggestions = _useState2[0],
4365 setShowSuggestions = _useState2[1];
4366 var theme = (0, _ui.useTheme)();
4367 var itemHeight = parseInt(theme.spacing(4));
4368 var maxItems = 5;
4369 return /*#__PURE__*/_react.default.createElement(_ui.Autocomplete, (0, _extends2.default)({
4370 PaperComponent: PaperComponent,
4371 ListboxProps: {
4372 sx: {
4373 maxHeight: maxItems * itemHeight
4374 }
4375 },
4376 renderOption: function renderOption(optionProps, option) {
4377 return /*#__PURE__*/_react.default.createElement(_ui.Typography, (0, _extends2.default)({}, optionProps, {
4378 title: option.text,
4379 noWrap: true,
4380 variant: "body2",
4381 component: _ui.Box,
4382 sx: {
4383 '&.MuiAutocomplete-option': {
4384 display: 'block',
4385 minHeight: itemHeight
4386 }
4387 }
4388 }), option.text);
4389 },
4390 freeSolo: true,
4391 fullWidth: true,
4392 disableClearable: true,
4393 open: showSuggestions,
4394 onClose: function onClose(e) {
4395 var _e$relatedTarget;
4396 return setShowSuggestions('A' === ((_e$relatedTarget = e.relatedTarget) === null || _e$relatedTarget === void 0 ? void 0 : _e$relatedTarget.tagName));
4397 },
4398 onKeyDown: function onKeyDown(e) {
4399 if ('Enter' === e.key && !e.shiftKey && !showSuggestions) {
4400 onSubmit(e);
4401 } else if ('/' === e.key && '' === e.target.value) {
4402 e.preventDefault();
4403 setShowSuggestions(true);
4404 }
4405 }
4406 }, props));
4407 };
4408 PromptAutocomplete.propTypes = {
4409 onSubmit: _propTypes.default.func.isRequired
4410 };
4411 PromptAutocomplete.TextInput = TextInput;
4412 var _default = PromptAutocomplete;
4413 exports["default"] = _default;
4414
4415 /***/ }),
4416
4417 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js":
4418 /*!**********************************************************************************!*\
4419 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js ***!
4420 \**********************************************************************************/
4421 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4422
4423 "use strict";
4424
4425
4426 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4427 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4428 Object.defineProperty(exports, "__esModule", ({
4429 value: true
4430 }));
4431 exports["default"] = void 0;
4432 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4433 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4434 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4435 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4436 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4437 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4438 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4439 var _promptAutocomplete = _interopRequireDefault(__webpack_require__(/*! ./prompt-autocomplete */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js"));
4440 var _enhanceButton = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/enhance-button */ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js"));
4441 var _generateSubmit = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/generate-submit */ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js"));
4442 var _arrowLeftIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/arrow-left-icon */ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js"));
4443 var _editIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/edit-icon */ "../modules/ai/assets/js/editor/icons/edit-icon.js"));
4444 var _usePromptEnhancer2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt-enhancer */ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js"));
4445 var _attachments = _interopRequireDefault(__webpack_require__(/*! ./attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"));
4446 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4447 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
4448 var _excluded = ["tooltip"];
4449 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
4450 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; }
4451 var PROMPT_SUGGESTIONS = Object.freeze([{
4452 text: (0, _i18n.__)('Hero section on [topic] with heading, text, buttons on the right, and an image on the left', 'elementor.com')
4453 }, {
4454 text: (0, _i18n.__)('About Us section on [topic] with heading, text, and big image below', 'elementor.com')
4455 }, {
4456 text: (0, _i18n.__)('Team section with four image boxes showcasing team members', 'elementor.com')
4457 }, {
4458 text: (0, _i18n.__)('FAQ section with a toggle widget showcasing FAQs about [topic]', 'elementor.com')
4459 }, {
4460 text: (0, _i18n.__)('Gallery section with a carousel displaying three images at once', 'elementor.com')
4461 }, {
4462 text: (0, _i18n.__)('Contact section with a form for [topic]', 'elementor.com')
4463 }, {
4464 text: (0, _i18n.__)('Client section featuring companies\' logos', 'elementor.com')
4465 }, {
4466 text: (0, _i18n.__)('Testimonial section with testimonials, each featuring a star rating and an image', 'elementor.com')
4467 }, {
4468 text: (0, _i18n.__)('Service section about [topic], showcasing four services with buttons', 'elementor.com')
4469 }, {
4470 text: (0, _i18n.__)('Stats section with counters displaying data about [topic]', 'elementor.com')
4471 }, {
4472 text: (0, _i18n.__)('Quote section with colored background, featuring a centered quote', 'elementor.com')
4473 }, {
4474 text: (0, _i18n.__)('Pricing section for [topic] with a pricing list', 'elementor.com')
4475 }, {
4476 text: (0, _i18n.__)('Subscribe section featuring a simple email form, inviting users to stay informed on [topic]', 'elementor.com')
4477 }]);
4478 var IconButtonWithTooltip = function IconButtonWithTooltip(_ref) {
4479 var tooltip = _ref.tooltip,
4480 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4481 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
4482 title: tooltip
4483 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
4484 component: "span",
4485 sx: {
4486 cursor: props.disabled ? 'default' : 'pointer'
4487 }
4488 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, props)));
4489 };
4490 IconButtonWithTooltip.propTypes = {
4491 tooltip: _propTypes.default.string,
4492 disabled: _propTypes.default.bool
4493 };
4494 var BackButton = function BackButton(props) {
4495 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4496 size: "small",
4497 color: "secondary",
4498 tooltip: (0, _i18n.__)('Back to results', 'elementor')
4499 }, props), /*#__PURE__*/_react.default.createElement(_arrowLeftIcon.default, null));
4500 };
4501 var EditButton = function EditButton(props) {
4502 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4503 size: "small",
4504 color: "primary",
4505 tooltip: (0, _i18n.__)('Edit prompt', 'elementor')
4506 }, props), /*#__PURE__*/_react.default.createElement(_editIcon.default, null));
4507 };
4508 var GenerateButton = function GenerateButton(props) {
4509 return /*#__PURE__*/_react.default.createElement(_generateSubmit.default, (0, _extends2.default)({
4510 size: "small",
4511 fullWidth: false
4512 }, props), (0, _i18n.__)('Generate', 'elementor'));
4513 };
4514 var PromptForm = (0, _react.forwardRef)(function (_ref2, ref) {
4515 var _attachments$;
4516 var attachments = _ref2.attachments,
4517 isActive = _ref2.isActive,
4518 isLoading = _ref2.isLoading,
4519 _ref2$showActions = _ref2.showActions,
4520 showActions = _ref2$showActions === void 0 ? false : _ref2$showActions,
4521 onAttach = _ref2.onAttach,
4522 onDetach = _ref2.onDetach,
4523 _onSubmit = _ref2.onSubmit,
4524 onBack = _ref2.onBack,
4525 onEdit = _ref2.onEdit,
4526 _ref2$shouldResetProm = _ref2.shouldResetPrompt,
4527 shouldResetPrompt = _ref2$shouldResetProm === void 0 ? false : _ref2$shouldResetProm;
4528 var _useState = (0, _react.useState)(''),
4529 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4530 prompt = _useState2[0],
4531 setPrompt = _useState2[1];
4532 (0, _react.useEffect)(function () {
4533 if (shouldResetPrompt) {
4534 setPrompt('');
4535 }
4536 }, [shouldResetPrompt]);
4537 var _usePromptEnhancer = (0, _usePromptEnhancer2.default)(prompt, 'layout'),
4538 isEnhancing = _usePromptEnhancer.isEnhancing,
4539 enhance = _usePromptEnhancer.enhance;
4540 var previousPrompt = (0, _react.useRef)('');
4541 var _useConfig = (0, _config.useConfig)(),
4542 attachmentsTypes = _useConfig.attachmentsTypes;
4543 var isInputDisabled = isLoading || isEnhancing || !isActive;
4544 var isInputEmpty = '' === prompt && !attachments.length;
4545 var isGenerateDisabled = isInputDisabled || isInputEmpty;
4546 var attachmentsType = ((_attachments$ = attachments[0]) === null || _attachments$ === void 0 ? void 0 : _attachments$.type) || '';
4547 var attachmentsConfig = attachmentsTypes[attachmentsType];
4548 var promptSuggestions = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptSuggestions) || PROMPT_SUGGESTIONS;
4549 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');
4550 var handleBack = function handleBack() {
4551 setPrompt(previousPrompt.current);
4552 onBack();
4553 };
4554 var handleEdit = function handleEdit() {
4555 previousPrompt.current = prompt;
4556 onEdit();
4557 };
4558 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4559 component: "form",
4560 onSubmit: function onSubmit(e) {
4561 return _onSubmit(e, prompt);
4562 },
4563 direction: "row",
4564 sx: {
4565 p: 3
4566 },
4567 alignItems: "start",
4568 gap: 1
4569 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4570 direction: "row",
4571 alignItems: "start",
4572 flexGrow: 1,
4573 spacing: 2
4574 }, showActions && (isActive ? /*#__PURE__*/_react.default.createElement(BackButton, {
4575 disabled: isLoading || isEnhancing,
4576 onClick: handleBack
4577 }) : /*#__PURE__*/_react.default.createElement(EditButton, {
4578 disabled: isLoading,
4579 onClick: handleEdit
4580 })), /*#__PURE__*/_react.default.createElement(_attachments.default, {
4581 attachments: attachments,
4582 onAttach: onAttach,
4583 onDetach: onDetach,
4584 disabled: isInputDisabled
4585 }), /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default, {
4586 value: prompt,
4587 disabled: isInputDisabled,
4588 onSubmit: function onSubmit(e) {
4589 return _onSubmit(e, prompt);
4590 },
4591 options: promptSuggestions,
4592 onChange: function onChange(_, selectedValue) {
4593 return setPrompt(selectedValue.text + ' ');
4594 },
4595 renderInput: function renderInput(params) {
4596 return /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default.TextInput, (0, _extends2.default)({}, params, {
4597 ref: ref,
4598 onChange: function onChange(e) {
4599 return setPrompt(e.target.value);
4600 },
4601 placeholder: promptPlaceholder
4602 }));
4603 }
4604 })), /*#__PURE__*/_react.default.createElement(_enhanceButton.default, {
4605 size: "small",
4606 disabled: isGenerateDisabled || '' === prompt,
4607 isLoading: isEnhancing,
4608 onClick: function onClick() {
4609 return enhance().then(function (_ref3) {
4610 var result = _ref3.result;
4611 return setPrompt(result);
4612 });
4613 }
4614 }), /*#__PURE__*/_react.default.createElement(GenerateButton, {
4615 disabled: isGenerateDisabled
4616 }));
4617 });
4618 PromptForm.propTypes = {
4619 isActive: _propTypes.default.bool,
4620 onAttach: _propTypes.default.func,
4621 onDetach: _propTypes.default.func,
4622 isLoading: _propTypes.default.bool,
4623 showActions: _propTypes.default.bool,
4624 onSubmit: _propTypes.default.func.isRequired,
4625 onBack: _propTypes.default.func.isRequired,
4626 onEdit: _propTypes.default.func.isRequired,
4627 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
4628 shouldResetPrompt: _propTypes.default.bool
4629 };
4630 var _default = PromptForm;
4631 exports["default"] = _default;
4632
4633 /***/ }),
4634
4635 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js":
4636 /*!*******************************************************************************************!*\
4637 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js ***!
4638 \*******************************************************************************************/
4639 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4640
4641 "use strict";
4642
4643
4644 Object.defineProperty(exports, "__esModule", ({
4645 value: true
4646 }));
4647 exports["default"] = void 0;
4648 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4649 var ScreenshotContainer = (0, _ui.styled)(_ui.Box, {
4650 shouldForwardProp: function shouldForwardProp(prop) {
4651 return prop !== 'outlineOffset';
4652 }
4653 })(function (_ref) {
4654 var theme = _ref.theme,
4655 selected = _ref.selected,
4656 height = _ref.height,
4657 disabled = _ref.disabled,
4658 _ref$outlineOffset = _ref.outlineOffset,
4659 outlineOffset = _ref$outlineOffset === void 0 ? '0px' : _ref$outlineOffset;
4660 var outlineColor = selected ? theme.palette.text.primary : theme.palette.text.disabled;
4661 var outline = "2px solid ".concat(outlineColor);
4662 return {
4663 height: height,
4664 cursor: disabled ? 'default' : 'pointer',
4665 overflow: 'hidden',
4666 boxSizing: 'border-box',
4667 backgroundPosition: 'top center',
4668 backgroundSize: '100% auto',
4669 backgroundRepeat: 'no-repeat',
4670 backgroundColor: theme.palette.common.white,
4671 borderRadius: theme.shape.borderRadius * 0.5,
4672 outlineOffset: outlineOffset,
4673 outline: outline,
4674 opacity: disabled ? '0.4' : '1',
4675 transition: "all 50ms linear",
4676 '&:hover': disabled ? {} : {
4677 outlineColor: theme.palette.text.primary
4678 }
4679 };
4680 });
4681 var _default = ScreenshotContainer;
4682 exports["default"] = _default;
4683
4684 /***/ }),
4685
4686 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js":
4687 /*!*********************************************************************************************!*\
4688 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js ***!
4689 \*********************************************************************************************/
4690 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4691
4692 "use strict";
4693
4694
4695 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4696 Object.defineProperty(exports, "__esModule", ({
4697 value: true
4698 }));
4699 exports["default"] = ScreenshotUnavailable;
4700 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4701 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4702 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4703 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4704 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4705 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4706 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4707 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4708 function ScreenshotUnavailable(props) {
4709 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, (0, _extends2.default)({}, props, {
4710 sx: _objectSpread(_objectSpread({}, props.sx || {}), {}, {
4711 display: 'flex',
4712 alignItems: 'center',
4713 justifyContent: 'center',
4714 backgroundColor: 'background.paper',
4715 color: 'text.tertiary',
4716 fontStyle: 'italic',
4717 fontSize: '12px',
4718 paddingInline: 12,
4719 textAlign: 'center',
4720 lineHeight: 1.5
4721 })
4722 }), (0, _i18n.__)('Preview unavailable', 'elementor'));
4723 }
4724 ScreenshotUnavailable.propTypes = {
4725 sx: _propTypes.default.object
4726 };
4727
4728 /***/ }),
4729
4730 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js":
4731 /*!*********************************************************************************!*\
4732 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js ***!
4733 \*********************************************************************************/
4734 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4735
4736 "use strict";
4737
4738
4739 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4740 Object.defineProperty(exports, "__esModule", ({
4741 value: true
4742 }));
4743 exports["default"] = void 0;
4744 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4745 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4746 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4747 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4748 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4749 var _screenshotUnavailable = _interopRequireDefault(__webpack_require__(/*! ./screenshot-unavailable */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js"));
4750 var _templateBadge = _interopRequireDefault(__webpack_require__(/*! ./template-badge */ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js"));
4751 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4752 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4753 var SCREENSHOT_HEIGHT = '138px';
4754 var Screenshot = function Screenshot(_ref) {
4755 var url = _ref.url,
4756 type = _ref.type,
4757 _ref$isLoading = _ref.isLoading,
4758 isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
4759 _ref$isSelected = _ref.isSelected,
4760 isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
4761 isPlaceholder = _ref.isPlaceholder,
4762 disabled = _ref.disabled,
4763 onClick = _ref.onClick,
4764 _ref$sx = _ref.sx,
4765 sx = _ref$sx === void 0 ? {} : _ref$sx,
4766 outlineOffset = _ref.outlineOffset;
4767 if (isPlaceholder) {
4768 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4769 sx: _objectSpread({
4770 height: SCREENSHOT_HEIGHT
4771 }, sx)
4772 });
4773 }
4774 if (isLoading) {
4775 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
4776 width: "100%",
4777 animation: "wave",
4778 variant: "rounded",
4779 height: SCREENSHOT_HEIGHT,
4780 sx: sx
4781 });
4782 }
4783 if (!url) {
4784 return /*#__PURE__*/_react.default.createElement(_screenshotUnavailable.default, {
4785 selected: isSelected,
4786 disabled: disabled,
4787 sx: sx,
4788 onClick: onClick,
4789 height: SCREENSHOT_HEIGHT,
4790 outlineOffset: outlineOffset
4791 });
4792 }
4793 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, {
4794 selected: isSelected,
4795 disabled: disabled,
4796 sx: _objectSpread({
4797 backgroundImage: "url('".concat(url, "')")
4798 }, sx),
4799 onClick: onClick,
4800 height: SCREENSHOT_HEIGHT,
4801 outlineOffset: outlineOffset
4802 }, /*#__PURE__*/_react.default.createElement(_templateBadge.default, {
4803 type: type
4804 }));
4805 };
4806 Screenshot.propTypes = {
4807 isSelected: _propTypes.default.bool,
4808 isLoading: _propTypes.default.bool,
4809 isPlaceholder: _propTypes.default.bool,
4810 disabled: _propTypes.default.bool,
4811 onClick: _propTypes.default.func.isRequired,
4812 url: _propTypes.default.string,
4813 type: _propTypes.default.string,
4814 sx: _propTypes.default.object,
4815 outlineOffset: _propTypes.default.string
4816 };
4817 var _default = Screenshot;
4818 exports["default"] = _default;
4819
4820 /***/ }),
4821
4822 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js":
4823 /*!*************************************************************************************!*\
4824 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js ***!
4825 \*************************************************************************************/
4826 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4827
4828 "use strict";
4829
4830
4831 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4832 Object.defineProperty(exports, "__esModule", ({
4833 value: true
4834 }));
4835 exports["default"] = void 0;
4836 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4837 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4838 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4839 var _proTemplateIndicator = __webpack_require__(/*! ./pro-template-indicator */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js");
4840 var TemplateBadge = function TemplateBadge(props) {
4841 var _useConfig = (0, _config.useConfig)(),
4842 hasPro = _useConfig.hasPro;
4843 if ('Pro' === props.type && !hasPro) {
4844 return /*#__PURE__*/_react.default.createElement(_proTemplateIndicator.ProTemplateIndicator, null);
4845 }
4846 return null;
4847 };
4848 var _default = TemplateBadge;
4849 exports["default"] = _default;
4850 TemplateBadge.propTypes = {
4851 type: _propTypes.default.string
4852 };
4853
4854 /***/ }),
4855
4856 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js":
4857 /*!********************************************************************************************!*\
4858 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js ***!
4859 \********************************************************************************************/
4860 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4861
4862 "use strict";
4863
4864
4865 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4866 Object.defineProperty(exports, "__esModule", ({
4867 value: true
4868 }));
4869 exports["default"] = void 0;
4870 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4871 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4872 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4873 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4874 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4875 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4876 var _excluded = ["onClose", "onCancel", "title", "text"];
4877 var UnsavedChangesAlert = function UnsavedChangesAlert(_ref) {
4878 var onClose = _ref.onClose,
4879 onCancel = _ref.onCancel,
4880 title = _ref.title,
4881 text = _ref.text,
4882 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4883 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
4884 "aria-labelledby": "unsaved-changes-alert-title",
4885 "aria-describedby": "unsaved-changes-alert-description"
4886 }, props), /*#__PURE__*/_react.default.createElement(_ui.DialogTitle, {
4887 id: "unsaved-changes-alert-title"
4888 }, title), /*#__PURE__*/_react.default.createElement(_ui.DialogContent, null, /*#__PURE__*/_react.default.createElement(_ui.DialogContentText, {
4889 id: "unsaved-changes-alert-description"
4890 }, text)), /*#__PURE__*/_react.default.createElement(_ui.DialogActions, null, /*#__PURE__*/_react.default.createElement(_ui.Button, {
4891 onClick: onCancel,
4892 color: "secondary"
4893 }, (0, _i18n.__)('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
4894 onClick: onClose,
4895 color: "error",
4896 variant: "contained"
4897 }, (0, _i18n.__)('Yes, leave', 'elementor'))));
4898 };
4899 UnsavedChangesAlert.propTypes = {
4900 title: _propTypes.default.string,
4901 text: _propTypes.default.string,
4902 onCancel: _propTypes.default.func,
4903 onClose: _propTypes.default.func
4904 };
4905 var _default = UnsavedChangesAlert;
4906 exports["default"] = _default;
4907
4908 /***/ }),
4909
4910 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js":
4911 /*!**************************************************************************!*\
4912 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/config.js ***!
4913 \**************************************************************************/
4914 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4915
4916 "use strict";
4917
4918
4919 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4920 Object.defineProperty(exports, "__esModule", ({
4921 value: true
4922 }));
4923 exports.useConfig = exports["default"] = exports.MODE_VARIATION = exports.MODE_LAYOUT = exports.LAYOUT_APP_MODES = exports.ConfigProvider = void 0;
4924 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4925 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4926 var MODE_LAYOUT = 'layout';
4927 exports.MODE_LAYOUT = MODE_LAYOUT;
4928 var MODE_VARIATION = 'variation';
4929 exports.MODE_VARIATION = MODE_VARIATION;
4930 var LAYOUT_APP_MODES = [MODE_LAYOUT, MODE_VARIATION];
4931 exports.LAYOUT_APP_MODES = LAYOUT_APP_MODES;
4932 var ConfigContext = _react.default.createContext({});
4933 var useConfig = function useConfig() {
4934 return _react.default.useContext(ConfigContext);
4935 };
4936 exports.useConfig = useConfig;
4937 var ConfigProvider = function ConfigProvider(props) {
4938 return /*#__PURE__*/_react.default.createElement(ConfigContext.Provider, {
4939 value: {
4940 mode: props.mode,
4941 attachmentsTypes: props.attachmentsTypes,
4942 onClose: props.onClose,
4943 onConnect: props.onConnect,
4944 onData: props.onData,
4945 onInsert: props.onInsert,
4946 onSelect: props.onSelect,
4947 onGenerate: props.onGenerate,
4948 currentContext: props.currentContext,
4949 hasPro: props.hasPro
4950 }
4951 }, props.children);
4952 };
4953 exports.ConfigProvider = ConfigProvider;
4954 ConfigProvider.propTypes = {
4955 mode: _propTypes.default.oneOf(LAYOUT_APP_MODES).isRequired,
4956 children: _propTypes.default.node.isRequired,
4957 attachmentsTypes: _propTypes.default.object.isRequired,
4958 onClose: _propTypes.default.func.isRequired,
4959 onConnect: _propTypes.default.func.isRequired,
4960 onData: _propTypes.default.func.isRequired,
4961 onInsert: _propTypes.default.func.isRequired,
4962 onSelect: _propTypes.default.func.isRequired,
4963 onGenerate: _propTypes.default.func.isRequired,
4964 currentContext: _propTypes.default.object,
4965 hasPro: _propTypes.default.bool
4966 };
4967 var _default = ConfigContext;
4968 exports["default"] = _default;
4969
4970 /***/ }),
4971
4972 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js":
4973 /*!*********************************************************************************!*\
4974 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js ***!
4975 \*********************************************************************************/
4976 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4977
4978 "use strict";
4979
4980
4981 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4982 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4983 Object.defineProperty(exports, "__esModule", ({
4984 value: true
4985 }));
4986 exports.useRemoteConfig = exports.RemoteConfigProvider = exports.CONFIG_KEYS = void 0;
4987 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4988 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4989 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4990 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4991 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4992 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
4993 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
4994 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; }
4995 var RemoteConfigContext = _react.default.createContext({});
4996 var useRemoteConfig = function useRemoteConfig() {
4997 return _react.default.useContext(RemoteConfigContext);
4998 };
4999 exports.useRemoteConfig = useRemoteConfig;
5000 var CONFIG_KEYS = {
5001 WEB_BASED_BUILDER_URL: 'webBasedBuilderUrl',
5002 AUTH_TOKEN: 'jwt'
5003 };
5004 exports.CONFIG_KEYS = CONFIG_KEYS;
5005 var RemoteConfigProvider = function RemoteConfigProvider(props) {
5006 var _useState = (0, _react.useState)(false),
5007 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5008 isLoading = _useState2[0],
5009 setIsLoading = _useState2[1];
5010 var _useState3 = (0, _react.useState)(false),
5011 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5012 isLoaded = _useState4[0],
5013 setIsLoaded = _useState4[1];
5014 var _useState5 = (0, _react.useState)(false),
5015 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
5016 isError = _useState6[0],
5017 setIsError = _useState6[1];
5018 var _useState7 = (0, _react.useState)({}),
5019 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
5020 remoteConfig = _useState8[0],
5021 setRemoteConfig = _useState8[1];
5022 var fetchData = /*#__PURE__*/function () {
5023 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5024 var result;
5025 return _regenerator.default.wrap(function _callee$(_context) {
5026 while (1) switch (_context.prev = _context.next) {
5027 case 0:
5028 setIsLoading(true);
5029 _context.prev = 1;
5030 _context.next = 4;
5031 return (0, _api.getRemoteConfig)().finally(function () {
5032 setIsLoaded(true);
5033 setIsLoading(false);
5034 });
5035 case 4:
5036 result = _context.sent;
5037 if (result.config) {
5038 _context.next = 7;
5039 break;
5040 }
5041 throw new Error('Invalid remote config');
5042 case 7:
5043 setRemoteConfig(result.config);
5044 _context.next = 15;
5045 break;
5046 case 10:
5047 _context.prev = 10;
5048 _context.t0 = _context["catch"](1);
5049 setIsError(true);
5050 setIsLoaded(true);
5051 setIsLoading(false);
5052 case 15:
5053 case "end":
5054 return _context.stop();
5055 }
5056 }, _callee, null, [[1, 10]]);
5057 }));
5058 return function fetchData() {
5059 return _ref.apply(this, arguments);
5060 };
5061 }();
5062 if (!isLoaded && !isLoading) {
5063 fetchData();
5064 }
5065 return /*#__PURE__*/_react.default.createElement(RemoteConfigContext.Provider, {
5066 value: {
5067 isLoading: isLoading,
5068 isLoaded: isLoaded,
5069 isError: isError,
5070 remoteConfig: remoteConfig
5071 }
5072 }, props.children);
5073 };
5074 exports.RemoteConfigProvider = RemoteConfigProvider;
5075 RemoteConfigProvider.propTypes = {
5076 children: _propTypes.default.node.isRequired,
5077 onError: _propTypes.default.func.isRequired
5078 };
5079
5080 /***/ }),
5081
5082 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js":
5083 /*!****************************************************************************************!*\
5084 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js ***!
5085 \****************************************************************************************/
5086 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5087
5088 "use strict";
5089
5090
5091 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5092 Object.defineProperty(exports, "__esModule", ({
5093 value: true
5094 }));
5095 exports.useAttachUrlService = void 0;
5096 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5097 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5098 var _react = __webpack_require__(/*! react */ "react");
5099 var _remoteConfig = __webpack_require__(/*! ../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
5100 var useAttachUrlService = function useAttachUrlService(args) {
5101 var _window$elementorComm, _window$elementorComm2;
5102 var _useState = (0, _react.useState)(args.targetUrl),
5103 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5104 currentUrl = _useState2[0],
5105 setCurrentUrl = _useState2[1];
5106 var theme = (0, _ui.useTheme)();
5107 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
5108 isLoaded = _useRemoteConfig.isLoaded,
5109 isError = _useRemoteConfig.isError,
5110 remoteConfig = _useRemoteConfig.remoteConfig;
5111 if (!isLoaded || isError || !remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]) {
5112 return {
5113 iframeSource: '',
5114 currentUrl: currentUrl,
5115 setCurrentUrl: setCurrentUrl
5116 };
5117 }
5118 var urlObject = new URL(remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]);
5119 urlObject.searchParams.append('colorScheme', theme.palette.mode);
5120 urlObject.searchParams.append('isRTL', 'rtl' === theme.direction ? 'true' : 'false');
5121 urlObject.searchParams.append('version', (_window$elementorComm = window.elementorCommon) === null || _window$elementorComm === void 0 ? void 0 : (_window$elementorComm2 = _window$elementorComm.config) === null || _window$elementorComm2 === void 0 ? void 0 : _window$elementorComm2.version);
5122 if (currentUrl) {
5123 urlObject.searchParams.append('url', currentUrl);
5124 }
5125 return {
5126 iframeSource: urlObject.toString(),
5127 currentUrl: currentUrl,
5128 setCurrentUrl: setCurrentUrl
5129 };
5130 };
5131 exports.useAttachUrlService = useAttachUrlService;
5132
5133 /***/ }),
5134
5135 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js":
5136 /*!***********************************************************************************!*\
5137 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js ***!
5138 \***********************************************************************************/
5139 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5140
5141 "use strict";
5142
5143
5144 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5145 Object.defineProperty(exports, "__esModule", ({
5146 value: true
5147 }));
5148 exports["default"] = void 0;
5149 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
5150 var _usePrompt = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
5151 var useLayoutPrompt = function useLayoutPrompt(type, initialValue) {
5152 return (0, _usePrompt.default)(function (requestBody, signal) {
5153 requestBody.variationType = type;
5154 return (0, _api.generateLayout)(requestBody, signal);
5155 }, initialValue);
5156 };
5157 var _default = useLayoutPrompt;
5158 exports["default"] = _default;
5159
5160 /***/ }),
5161
5162 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js":
5163 /*!********************************************************************************!*\
5164 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js ***!
5165 \********************************************************************************/
5166 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5167
5168 "use strict";
5169
5170
5171 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5172 Object.defineProperty(exports, "__esModule", ({
5173 value: true
5174 }));
5175 exports["default"] = void 0;
5176 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5177 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5178 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5179 var _react = __webpack_require__(/*! react */ "react");
5180 var _useLayoutPrompt = _interopRequireDefault(__webpack_require__(/*! ./use-layout-prompt */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js"));
5181 var ERROR_INITIAL_VALUE = '';
5182 var useScreenshot = function useScreenshot(type, onData) {
5183 var _useState = (0, _react.useState)(ERROR_INITIAL_VALUE),
5184 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5185 error = _useState2[0],
5186 setError = _useState2[1];
5187 var _useState3 = (0, _react.useState)(false),
5188 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5189 isLoading = _useState4[0],
5190 setIsLoading = _useState4[1];
5191 var layoutData = (0, _useLayoutPrompt.default)(type, null);
5192 var generate = function generate(requestBody, signal) {
5193 setIsLoading(true);
5194 setError(ERROR_INITIAL_VALUE);
5195 return layoutData.send(requestBody, signal).then( /*#__PURE__*/function () {
5196 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(data) {
5197 var createdScreenshot;
5198 return _regenerator.default.wrap(function _callee$(_context) {
5199 while (1) switch (_context.prev = _context.next) {
5200 case 0:
5201 _context.next = 2;
5202 return onData(data.result);
5203 case 2:
5204 createdScreenshot = _context.sent;
5205 createdScreenshot.sendUsageData = function () {
5206 return layoutData.sendUsageData(data);
5207 };
5208 createdScreenshot.baseTemplateId = data.baseTemplateId;
5209 createdScreenshot.type = data.type;
5210 return _context.abrupt("return", createdScreenshot);
5211 case 7:
5212 case "end":
5213 return _context.stop();
5214 }
5215 }, _callee);
5216 }));
5217 return function (_x) {
5218 return _ref.apply(this, arguments);
5219 };
5220 }()).catch(function (err) {
5221 setError(err.extra_data ? err : err.message || err);
5222 throw err;
5223 }).finally(function () {
5224 return setIsLoading(false);
5225 });
5226 };
5227 return {
5228 generate: generate,
5229 error: error,
5230 isLoading: isLoading
5231 };
5232 };
5233 var _default = useScreenshot;
5234 exports["default"] = _default;
5235
5236 /***/ }),
5237
5238 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js":
5239 /*!*********************************************************************************!*\
5240 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js ***!
5241 \*********************************************************************************/
5242 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5243
5244 "use strict";
5245
5246
5247 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5248 Object.defineProperty(exports, "__esModule", ({
5249 value: true
5250 }));
5251 exports["default"] = void 0;
5252 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5253 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5254 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5255 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5256 var _react = __webpack_require__(/*! react */ "react");
5257 var _useScreenshot = _interopRequireDefault(__webpack_require__(/*! ./use-screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js"));
5258 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5259 var _requestsIds = __webpack_require__(/*! ../../../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5260 var PENDING_VALUE = {
5261 isPending: true
5262 };
5263 var useScreenshots = function useScreenshots(_ref) {
5264 var onData = _ref.onData;
5265 var _useState = (0, _react.useState)([]),
5266 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5267 screenshots = _useState2[0],
5268 setScreenshots = _useState2[1];
5269
5270 /**
5271 * The ids for each request are:
5272 * - editorSessionId: a unique id for each editor opening
5273 * - sessionId: a unique id for each session. (open the AI builder)
5274 * - generateId: a unique id for each generate request. (prompt change)
5275 * - batchId: a unique id for each batch of generate requests. (generate, regenerate)
5276 * - requestId: a unique id for each generate request.
5277 */
5278
5279 var _useConfig = (0, _config.useConfig)(),
5280 currentContext = _useConfig.currentContext;
5281 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
5282 editorSessionId = _useRequestIds.editorSessionId,
5283 sessionId = _useRequestIds.sessionId,
5284 setRequest = _useRequestIds.setRequest,
5285 setBatch = _useRequestIds.setBatch,
5286 setGenerate = _useRequestIds.setGenerate;
5287 var generateIdRef = (0, _react.useRef)('');
5288 var batchId = setBatch();
5289 var screenshotsData = [(0, _useScreenshot.default)(0, onData), (0, _useScreenshot.default)(1, onData), (0, _useScreenshot.default)(2, onData)];
5290 var screenshotsGroupCount = screenshotsData.length;
5291 var error = screenshotsData.every(function (s) {
5292 return s === null || s === void 0 ? void 0 : s.error;
5293 }) ? screenshotsData[0].error : '';
5294 var isLoading = screenshotsData.some(function (s) {
5295 return s === null || s === void 0 ? void 0 : s.isLoading;
5296 });
5297 var abortController = (0, _react.useRef)(null);
5298 var abort = function abort() {
5299 var _abortController$curr;
5300 return (_abortController$curr = abortController.current) === null || _abortController$curr === void 0 ? void 0 : _abortController$curr.abort();
5301 };
5302 var createScreenshots = /*#__PURE__*/function () {
5303 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(prompt, attachments) {
5304 var onGenerate, onError, promises, results, isAllFailed;
5305 return _regenerator.default.wrap(function _callee$(_context) {
5306 while (1) switch (_context.prev = _context.next) {
5307 case 0:
5308 abortController.current = new AbortController();
5309 onGenerate = function onGenerate(screenshot) {
5310 setScreenshots(function (prev) {
5311 var updatedData = (0, _toConsumableArray2.default)(prev);
5312 var pendingIndex = updatedData.indexOf(PENDING_VALUE);
5313 updatedData[pendingIndex] = screenshot;
5314 return updatedData;
5315 });
5316 return true;
5317 };
5318 onError = function onError() {
5319 setScreenshots(function (prev) {
5320 var updatedData = (0, _toConsumableArray2.default)(prev);
5321 var pendingIndex = updatedData.lastIndexOf(PENDING_VALUE);
5322 updatedData[pendingIndex] = {
5323 isError: true
5324 };
5325 return updatedData;
5326 });
5327 return false;
5328 };
5329 promises = screenshotsData.map(function (_ref3) {
5330 var generate = _ref3.generate;
5331 var prevGeneratedIds = screenshots.map(function (screenshot) {
5332 return screenshot.baseTemplateId || '';
5333 });
5334 var requestBody = {
5335 prompt: prompt,
5336 prevGeneratedIds: prevGeneratedIds,
5337 currentContext: currentContext,
5338 ids: {
5339 editorSessionId: editorSessionId.current,
5340 sessionId: sessionId.current,
5341 generateId: generateIdRef.current,
5342 batchId: batchId.current,
5343 requestId: setRequest().current
5344 },
5345 attachments: attachments.map(function (_ref4) {
5346 var type = _ref4.type,
5347 content = _ref4.content,
5348 label = _ref4.label,
5349 source = _ref4.source;
5350 // Send only the data that is needed for the generation.
5351 return {
5352 type: type,
5353 content: content,
5354 label: label,
5355 source: source
5356 };
5357 })
5358 };
5359 return generate(requestBody, abortController.current.signal).then(onGenerate).catch(onError);
5360 });
5361 _context.next = 6;
5362 return Promise.all(promises);
5363 case 6:
5364 results = _context.sent;
5365 isAllFailed = results.every(function (value) {
5366 return false === value;
5367 });
5368 if (isAllFailed) {
5369 setScreenshots(function (prev) {
5370 var updatedData = (0, _toConsumableArray2.default)(prev);
5371 updatedData.splice(screenshotsGroupCount * -1);
5372 return updatedData;
5373 });
5374 }
5375 case 9:
5376 case "end":
5377 return _context.stop();
5378 }
5379 }, _callee);
5380 }));
5381 return function createScreenshots(_x, _x2) {
5382 return _ref2.apply(this, arguments);
5383 };
5384 }();
5385 var generate = function generate(prompt, attachments) {
5386 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5387 generateIdRef.current = setGenerate().current;
5388 setScreenshots(placeholders);
5389 createScreenshots(prompt, attachments);
5390 };
5391 var regenerate = function regenerate(prompt, attachments) {
5392 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5393 setScreenshots(function (prev) {
5394 return [].concat((0, _toConsumableArray2.default)(prev), (0, _toConsumableArray2.default)(placeholders));
5395 });
5396 createScreenshots(prompt, attachments);
5397 };
5398 return {
5399 generate: generate,
5400 regenerate: regenerate,
5401 screenshots: screenshots,
5402 isLoading: isLoading,
5403 error: error,
5404 abort: abort
5405 };
5406 };
5407 var _default = useScreenshots;
5408 exports["default"] = _default;
5409
5410 /***/ }),
5411
5412 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js":
5413 /*!****************************************************************************!*\
5414 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js ***!
5415 \****************************************************************************/
5416 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5417
5418 "use strict";
5419
5420
5421 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5422 Object.defineProperty(exports, "__esModule", ({
5423 value: true
5424 }));
5425 exports["default"] = exports.SCREENSHOTS_PER_PAGE = exports.MAX_PAGES = void 0;
5426 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5427 var _react = __webpack_require__(/*! react */ "react");
5428 var SCREENSHOTS_PER_PAGE = 3;
5429 exports.SCREENSHOTS_PER_PAGE = SCREENSHOTS_PER_PAGE;
5430 var MAX_PAGES = 5;
5431 exports.MAX_PAGES = MAX_PAGES;
5432 var useSlider = function useSlider() {
5433 var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
5434 _ref$slidesCount = _ref.slidesCount,
5435 slidesCount = _ref$slidesCount === void 0 ? 0 : _ref$slidesCount,
5436 _ref$slidesPerPage = _ref.slidesPerPage,
5437 slidesPerPage = _ref$slidesPerPage === void 0 ? SCREENSHOTS_PER_PAGE : _ref$slidesPerPage,
5438 _ref$gapPercentage = _ref.gapPercentage,
5439 gapPercentage = _ref$gapPercentage === void 0 ? 2 : _ref$gapPercentage;
5440 var _useState = (0, _react.useState)(1),
5441 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5442 currentPage = _useState2[0],
5443 setCurrentPage = _useState2[1];
5444 var gapsCount = slidesPerPage - 1;
5445 var slideWidthPercentage = (100 - gapPercentage * gapsCount) / slidesPerPage;
5446 var offsetXPercentage = (slideWidthPercentage + gapPercentage) * slidesPerPage * (currentPage - 1) * -1;
5447 var pagesCount = Math.ceil(slidesCount / slidesPerPage);
5448 (0, _react.useEffect)(function () {
5449 // In cases when the slidesCount value was reduced, we need to navigate to the last page.
5450 if (currentPage > 1 && currentPage > pagesCount) {
5451 setCurrentPage(pagesCount);
5452 }
5453 }, [pagesCount]);
5454 return {
5455 currentPage: currentPage,
5456 setCurrentPage: setCurrentPage,
5457 pagesCount: pagesCount,
5458 slidesPerPage: slidesPerPage,
5459 gapPercentage: gapPercentage,
5460 offsetXPercentage: offsetXPercentage,
5461 slideWidthPercentage: slideWidthPercentage
5462 };
5463 };
5464 var _default = useSlider;
5465 exports["default"] = _default;
5466
5467 /***/ }),
5468
5469 /***/ "../modules/ai/assets/js/editor/pages/form-layout/index.js":
5470 /*!*****************************************************************!*\
5471 !*** ../modules/ai/assets/js/editor/pages/form-layout/index.js ***!
5472 \*****************************************************************/
5473 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5474
5475 "use strict";
5476
5477
5478 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5479 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5480 Object.defineProperty(exports, "__esModule", ({
5481 value: true
5482 }));
5483 exports["default"] = void 0;
5484 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5485 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5486 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5487 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5488 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5489 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5490 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5491 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5492 var _promptErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../../components/prompt-error-message */ "../modules/ai/assets/js/editor/components/prompt-error-message.js"));
5493 var _unsavedChangesAlert = _interopRequireDefault(__webpack_require__(/*! ./components/unsaved-changes-alert */ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js"));
5494 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
5495 var _promptForm = _interopRequireDefault(__webpack_require__(/*! ./components/prompt-form */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js"));
5496 var _refreshIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/refresh-icon */ "../modules/ai/assets/js/editor/icons/refresh-icon.js"));
5497 var _screenshot = _interopRequireDefault(__webpack_require__(/*! ./components/screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js"));
5498 var _useScreenshots2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-screenshots */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js"));
5499 var _useSlider2 = _interopRequireWildcard(__webpack_require__(/*! ./hooks/use-slider */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js"));
5500 var _minimizeDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/minimize-diagonal-icon */ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js"));
5501 var _expandDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/expand-diagonal-icon */ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js"));
5502 var _config = __webpack_require__(/*! ./context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5503 var _attachment = __webpack_require__(/*! ../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
5504 var _promptPowerNotice = __webpack_require__(/*! ./components/attachments/prompt-power-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js");
5505 var _proWidgetsNotice = __webpack_require__(/*! ./components/pro-widgets-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js");
5506 var _attachments = __webpack_require__(/*! ./components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
5507 var _attachDialog = _interopRequireDefault(__webpack_require__(/*! ./components/attachments/attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js"));
5508 var _isURL = _interopRequireDefault(__webpack_require__(/*! validator/lib/isURL */ "../node_modules/validator/lib/isURL.js"));
5509 var _voicePromotionAlert = __webpack_require__(/*! ../../components/voice-promotion-alert */ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js");
5510 var _excluded = ["children"];
5511 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
5512 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; }
5513 var DirectionalMinimizeDiagonalIcon = (0, _ui.withDirection)(_minimizeDiagonalIcon.default);
5514 var DirectionalExpandDiagonalIcon = (0, _ui.withDirection)(_expandDiagonalIcon.default);
5515
5516 /**
5517 * @typedef {Object} Attachment
5518 * @property {('json')} type - The type of the attachment, currently only `json` is supported.
5519 * @property {string} previewHTML - HTML content as a string, representing a preview.
5520 * @property {string} content - Actual content of the attachment as a string.
5521 * @property {string} label - Label for the attachment.
5522 */
5523
5524 var RegenerateButton = function RegenerateButton(props) {
5525 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5526 size: "small",
5527 color: "secondary",
5528 startIcon: /*#__PURE__*/_react.default.createElement(_refreshIcon.default, null)
5529 }, props), (0, _i18n.__)('Regenerate', 'elementor'));
5530 };
5531 var UseLayoutButton = function UseLayoutButton(props) {
5532 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5533 size: "small",
5534 variant: "contained"
5535 }, props), (0, _i18n.__)('Use Layout', 'elementor'));
5536 };
5537 UseLayoutButton.propTypes = {
5538 sx: _propTypes.default.object
5539 };
5540 var isRegenerateButtonDisabled = function isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive) {
5541 if (isLoading || isPromptFormActive) {
5542 return true;
5543 }
5544 return screenshots.length >= _useSlider2.SCREENSHOTS_PER_PAGE * _useSlider2.MAX_PAGES;
5545 };
5546 var FormLayout = function FormLayout(_ref) {
5547 var _screenshots$selected, _screenshots$2;
5548 var _ref$DialogHeaderProp = _ref.DialogHeaderProps,
5549 DialogHeaderProps = _ref$DialogHeaderProp === void 0 ? {} : _ref$DialogHeaderProp,
5550 _ref$DialogContentPro = _ref.DialogContentProps,
5551 DialogContentProps = _ref$DialogContentPro === void 0 ? {} : _ref$DialogContentPro,
5552 initialAttachments = _ref.attachments;
5553 var _useConfig = (0, _config.useConfig)(),
5554 attachmentsTypes = _useConfig.attachmentsTypes,
5555 onData = _useConfig.onData,
5556 onInsert = _useConfig.onInsert,
5557 onSelect = _useConfig.onSelect,
5558 onClose = _useConfig.onClose,
5559 onGenerate = _useConfig.onGenerate,
5560 hasPro = _useConfig.hasPro;
5561 var _useScreenshots = (0, _useScreenshots2.default)({
5562 onData: onData
5563 }),
5564 screenshots = _useScreenshots.screenshots,
5565 generate = _useScreenshots.generate,
5566 regenerate = _useScreenshots.regenerate,
5567 isLoading = _useScreenshots.isLoading,
5568 error = _useScreenshots.error,
5569 abort = _useScreenshots.abort;
5570 var screenshotOutlineOffset = '2px';
5571 var _useSlider = (0, _useSlider2.default)({
5572 slidesCount: screenshots.length
5573 }),
5574 currentPage = _useSlider.currentPage,
5575 setCurrentPage = _useSlider.setCurrentPage,
5576 pagesCount = _useSlider.pagesCount,
5577 gapPercentage = _useSlider.gapPercentage,
5578 slidesPerPage = _useSlider.slidesPerPage,
5579 offsetXPercentage = _useSlider.offsetXPercentage,
5580 slideWidthPercentage = _useSlider.slideWidthPercentage;
5581 var _useState = (0, _react.useState)(-1),
5582 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5583 selectedScreenshotIndex = _useState2[0],
5584 setSelectedScreenshotIndex = _useState2[1];
5585 var _useState3 = (0, _react.useState)(false),
5586 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5587 showUnsavedChangesAlert = _useState4[0],
5588 setShowUnsavedChangesAlert = _useState4[1];
5589 var _useState5 = (0, _react.useState)(true),
5590 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
5591 isPromptEditable = _useState6[0],
5592 setIsPromptEditable = _useState6[1];
5593 var _useState7 = (0, _react.useState)([]),
5594 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
5595 attachments = _useState8[0],
5596 setAttachments = _useState8[1];
5597 var _useState9 = (0, _react.useState)(false),
5598 _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
5599 shouldRenderWebApp = _useState10[0],
5600 setShouldRenderWebApp = _useState10[1];
5601 var _useState11 = (0, _react.useState)(false),
5602 _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
5603 isMinimized = _useState12[0],
5604 setIsMinimized = _useState12[1];
5605 var lastRun = (0, _react.useRef)(function () {});
5606 var promptInputRef = (0, _react.useRef)(null);
5607 var selectedTemplate = (_screenshots$selected = screenshots[selectedScreenshotIndex]) === null || _screenshots$selected === void 0 ? void 0 : _screenshots$selected.template;
5608 var dialogContentChildren = DialogContentProps.children,
5609 dialogContentProps = (0, _objectWithoutProperties2.default)(DialogContentProps, _excluded);
5610
5611 // When there are no screenshots the prompt field should be editable.
5612 var shouldFallbackToEditPrompt = !!(error && 0 === screenshots.length);
5613 var isPromptFormActive = isPromptEditable || shouldFallbackToEditPrompt;
5614 var mayContainProWidgets = 0 === attachments.length || attachments.some(function (attachment) {
5615 return _attachments.ATTACHMENT_TYPE_URL === attachment.type;
5616 });
5617 var abortAndClose = function abortAndClose() {
5618 abort();
5619 onClose();
5620 };
5621 var onCloseIntent = function onCloseIntent() {
5622 var hasUnsavedChanges = promptInputRef.current.value.trim() !== '' || screenshots.length > 0;
5623 if (hasUnsavedChanges) {
5624 return setShowUnsavedChangesAlert(true);
5625 }
5626 abortAndClose();
5627 };
5628 var handleGenerate = function handleGenerate(event, prompt) {
5629 event.preventDefault();
5630 if ('' === prompt.trim() && 0 === attachments.length) {
5631 return;
5632 }
5633 if ((0, _isURL.default)(prompt)) {
5634 setShouldRenderWebApp(true);
5635 return;
5636 }
5637 onGenerate();
5638 lastRun.current = function () {
5639 setSelectedScreenshotIndex(-1);
5640 generate(prompt, attachments);
5641 };
5642 lastRun.current();
5643 setIsPromptEditable(false);
5644 setCurrentPage(1);
5645 };
5646 var handleRegenerate = function handleRegenerate() {
5647 lastRun.current = function () {
5648 regenerate(promptInputRef.current.value, attachments);
5649 // Changing the current page to the next page number.
5650 setCurrentPage(pagesCount + 1);
5651 };
5652 lastRun.current();
5653 };
5654 var applyTemplate = function applyTemplate() {
5655 onInsert(selectedTemplate);
5656 screenshots[selectedScreenshotIndex].sendUsageData();
5657 abortAndClose();
5658 };
5659 var handleScreenshotClick = function handleScreenshotClick(index, template) {
5660 return function () {
5661 if (isPromptFormActive) {
5662 return;
5663 }
5664 setSelectedScreenshotIndex(index);
5665 onSelect(template);
5666 };
5667 };
5668
5669 /**
5670 * @param {Attachment[]} items
5671 */
5672 var onAttach = function onAttach(items) {
5673 items.forEach(function (item) {
5674 if (!attachmentsTypes[item.type]) {
5675 throw new Error("Invalid attachment type: ".concat(item.type));
5676 }
5677 var typeConfig = attachmentsTypes[item.type];
5678 if (!item.previewHTML && typeConfig.previewGenerator) {
5679 typeConfig.previewGenerator(item.content).then(function (html) {
5680 item.previewHTML = html;
5681 setAttachments(function (prev) {
5682 // Replace the attachment with the updated one.
5683 return prev.map(function (attachment) {
5684 if (attachment.content === item.content) {
5685 return item;
5686 }
5687 return attachment;
5688 });
5689 });
5690 });
5691 }
5692 });
5693 setAttachments(items);
5694 setShouldRenderWebApp(false);
5695 setIsPromptEditable(true);
5696 };
5697 (0, _react.useEffect)(function () {
5698 var _screenshots$;
5699 var isFirstTemplateExist = (_screenshots$ = screenshots[0]) === null || _screenshots$ === void 0 ? void 0 : _screenshots$.template;
5700 if (isFirstTemplateExist) {
5701 onSelect(screenshots[0].template);
5702 setSelectedScreenshotIndex(0);
5703 }
5704 }, [(_screenshots$2 = screenshots[0]) === null || _screenshots$2 === void 0 ? void 0 : _screenshots$2.template]);
5705 (0, _react.useEffect)(function () {
5706 if (initialAttachments !== null && initialAttachments !== void 0 && initialAttachments.length) {
5707 onAttach(initialAttachments);
5708 }
5709 }, []);
5710 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
5711 onClose: onCloseIntent
5712 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, (0, _extends2.default)({
5713 onClose: onCloseIntent
5714 }, DialogHeaderProps), DialogHeaderProps.children, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5715 title: isMinimized ? (0, _i18n.__)('Expand', 'elementor') : (0, _i18n.__)('Minimize', 'elementor')
5716 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
5717 size: "small",
5718 "aria-label": "minimize",
5719 onClick: function onClick() {
5720 return setIsMinimized(function (prev) {
5721 return !prev;
5722 });
5723 }
5724 }, isMinimized ? /*#__PURE__*/_react.default.createElement(DirectionalExpandDiagonalIcon, null) : /*#__PURE__*/_react.default.createElement(DirectionalMinimizeDiagonalIcon, null)))), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, (0, _extends2.default)({
5725 dividers: true
5726 }, dialogContentProps), /*#__PURE__*/_react.default.createElement(_ui.Collapse, {
5727 in: !isMinimized
5728 }, dialogContentChildren && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5729 sx: {
5730 pt: 2,
5731 px: 2,
5732 pb: 0
5733 }
5734 }, dialogContentChildren), mayContainProWidgets && !hasPro && /*#__PURE__*/_react.default.createElement(_proWidgetsNotice.ProWidgetsNotice, null), attachments.length > 0 && /*#__PURE__*/_react.default.createElement(_promptPowerNotice.PromptPowerNotice, null), error && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5735 sx: {
5736 pt: 2,
5737 px: 2,
5738 pb: 0
5739 }
5740 }, /*#__PURE__*/_react.default.createElement(_promptErrorMessage.default, {
5741 error: error,
5742 onRetry: lastRun.current
5743 })), showUnsavedChangesAlert && /*#__PURE__*/_react.default.createElement(_unsavedChangesAlert.default, {
5744 open: showUnsavedChangesAlert,
5745 title: (0, _i18n.__)('Leave Elementor AI?', 'elementor'),
5746 text: (0, _i18n.__)("Your progress will be deleted, and can't be recovered.", 'elementor'),
5747 onClose: abortAndClose,
5748 onCancel: function onCancel() {
5749 return setShowUnsavedChangesAlert(false);
5750 }
5751 }), shouldRenderWebApp && /*#__PURE__*/_react.default.createElement(_attachDialog.default, {
5752 type: _attachments.ATTACHMENT_TYPE_URL,
5753 url: promptInputRef.current.value,
5754 onAttach: onAttach,
5755 onClose: function onClose() {
5756 setShouldRenderWebApp(false);
5757 }
5758 }), /*#__PURE__*/_react.default.createElement(_promptForm.default, {
5759 shouldResetPrompt: shouldRenderWebApp,
5760 ref: promptInputRef,
5761 isActive: isPromptFormActive,
5762 isLoading: isLoading,
5763 showActions: screenshots.length > 0 || isLoading,
5764 attachmentsTypes: attachmentsTypes,
5765 attachments: attachments,
5766 onAttach: onAttach,
5767 onDetach: function onDetach(index) {
5768 setAttachments(function (prev) {
5769 var newAttachments = (0, _toConsumableArray2.default)(prev);
5770 newAttachments.splice(index, 1);
5771 return newAttachments;
5772 });
5773 setIsPromptEditable(true);
5774 },
5775 onSubmit: handleGenerate,
5776 onBack: function onBack() {
5777 return setIsPromptEditable(false);
5778 },
5779 onEdit: function onEdit() {
5780 return setIsPromptEditable(true);
5781 }
5782 }), (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, {
5783 sx: {
5784 p: 1.5
5785 }
5786 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5787 sx: {
5788 overflow: 'hidden',
5789 p: 0.5
5790 }
5791 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5792 sx: {
5793 display: 'flex',
5794 transition: 'all 0.4s ease',
5795 gap: "".concat(gapPercentage, "%"),
5796 transform: "translateX(".concat(offsetXPercentage, "%)")
5797 }
5798 }, screenshots.map(function (_ref2, index) {
5799 var screenshot = _ref2.screenshot,
5800 type = _ref2.type,
5801 template = _ref2.template,
5802 isError = _ref2.isError,
5803 isPending = _ref2.isPending;
5804 return /*#__PURE__*/_react.default.createElement(_screenshot.default, {
5805 key: index,
5806 url: screenshot,
5807 type: type,
5808 disabled: isPromptFormActive,
5809 isPlaceholder: isError,
5810 isLoading: isPending,
5811 isSelected: selectedScreenshotIndex === index,
5812 onClick: handleScreenshotClick(index, template),
5813 outlineOffset: screenshotOutlineOffset,
5814 sx: {
5815 flex: "0 0 ".concat(slideWidthPercentage, "%")
5816 }
5817 });
5818 }))), /*#__PURE__*/_react.default.createElement(_voicePromotionAlert.VoicePromotionAlert, {
5819 introductionKey: "ai-context-layout-promotion"
5820 })), screenshots.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5821 sx: {
5822 pt: 0,
5823 px: 2,
5824 pb: 2
5825 },
5826 display: "grid",
5827 gridTemplateColumns: "repeat(3, 1fr)",
5828 justifyItems: "center"
5829 }, /*#__PURE__*/_react.default.createElement(RegenerateButton, {
5830 onClick: handleRegenerate,
5831 disabled: isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive),
5832 sx: {
5833 justifySelf: 'start'
5834 }
5835 }), screenshots.length > slidesPerPage && /*#__PURE__*/_react.default.createElement(_ui.Pagination, {
5836 page: currentPage,
5837 count: pagesCount,
5838 disabled: isPromptFormActive,
5839 onChange: function onChange(_, page) {
5840 return setCurrentPage(page);
5841 }
5842 }), /*#__PURE__*/_react.default.createElement(UseLayoutButton, {
5843 onClick: applyTemplate,
5844 disabled: isPromptFormActive || -1 === selectedScreenshotIndex,
5845 sx: {
5846 justifySelf: 'end',
5847 gridColumn: 3
5848 }
5849 }))))));
5850 };
5851 FormLayout.propTypes = {
5852 DialogHeaderProps: _propTypes.default.object,
5853 DialogContentProps: _propTypes.default.object,
5854 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
5855 };
5856 var _default = FormLayout;
5857 exports["default"] = _default;
5858
5859 /***/ }),
5860
5861 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js":
5862 /*!************************************************************************************!*\
5863 !*** ../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js ***!
5864 \************************************************************************************/
5865 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5866
5867 "use strict";
5868
5869
5870 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5871 Object.defineProperty(exports, "__esModule", ({
5872 value: true
5873 }));
5874 exports["default"] = void 0;
5875 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5876 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5877 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5878 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5879 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5880 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5881 var _wandIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/wand-icon */ "../modules/ai/assets/js/editor/icons/wand-icon.js"));
5882 var _excluded = ["isLoading"];
5883 var StyledWandIcon = (0, _ui.withDirection)(_wandIcon.default);
5884 var EnhanceButton = function EnhanceButton(_ref) {
5885 var isLoading = _ref.isLoading,
5886 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
5887 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5888 title: (0, _i18n.__)('Enhance prompt', 'elementor')
5889 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5890 component: "span",
5891 sx: {
5892 cursor: props.disabled ? 'default' : 'pointer'
5893 }
5894 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, (0, _extends2.default)({
5895 size: "small",
5896 color: "secondary"
5897 }, props), isLoading ? /*#__PURE__*/_react.default.createElement(_ui.CircularProgress, {
5898 color: "secondary",
5899 size: 20
5900 }) : /*#__PURE__*/_react.default.createElement(StyledWandIcon, {
5901 fontSize: "small"
5902 }))));
5903 };
5904 EnhanceButton.propTypes = {
5905 disabled: _propTypes.default.bool,
5906 isLoading: _propTypes.default.bool
5907 };
5908 var _default = EnhanceButton;
5909 exports["default"] = _default;
5910
5911 /***/ }),
5912
5913 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js":
5914 /*!*************************************************************************************!*\
5915 !*** ../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js ***!
5916 \*************************************************************************************/
5917 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5918
5919 "use strict";
5920
5921
5922 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5923 Object.defineProperty(exports, "__esModule", ({
5924 value: true
5925 }));
5926 exports["default"] = void 0;
5927 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5928 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5929 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5930 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5931 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5932 var GenerateSubmit = function GenerateSubmit(props) {
5933 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5934 fullWidth: true,
5935 size: "medium",
5936 type: "submit",
5937 variant: "contained"
5938 }, props), props.children || (0, _i18n.__)('Generate', 'elementor'));
5939 };
5940 GenerateSubmit.propTypes = {
5941 children: _propTypes.default.node
5942 };
5943 var _default = GenerateSubmit;
5944 exports["default"] = _default;
5945
5946 /***/ }),
5947
5948 /***/ "../modules/ai/assets/js/editor/pages/get-started/index.js":
5949 /*!*****************************************************************!*\
5950 !*** ../modules/ai/assets/js/editor/pages/get-started/index.js ***!
5951 \*****************************************************************/
5952 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5953
5954 "use strict";
5955
5956
5957 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5958 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5959 Object.defineProperty(exports, "__esModule", ({
5960 value: true
5961 }));
5962 exports["default"] = void 0;
5963 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5964 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5965 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5966 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5967 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5968 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5969 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5970 var _api = __webpack_require__(/*! ../../api */ "../modules/ai/assets/js/editor/api/index.js");
5971 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
5972 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
5973 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; }
5974 var GetStarted = function GetStarted(_ref) {
5975 var onSuccess = _ref.onSuccess;
5976 var _useState = (0, _react.useState)(false),
5977 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5978 isTermsChecked = _useState2[0],
5979 setIsTermsChecked = _useState2[1];
5980 var onGetStartedClick = /*#__PURE__*/function () {
5981 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5982 return _regenerator.default.wrap(function _callee$(_context) {
5983 while (1) switch (_context.prev = _context.next) {
5984 case 0:
5985 _context.next = 2;
5986 return (0, _api.setGetStarted)();
5987 case 2:
5988 onSuccess();
5989 case 3:
5990 case "end":
5991 return _context.stop();
5992 }
5993 }, _callee);
5994 }));
5995 return function onGetStartedClick() {
5996 return _ref2.apply(this, arguments);
5997 };
5998 }();
5999 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
6000 alignItems: "center",
6001 gap: 1.5
6002 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
6003 sx: {
6004 color: 'text.primary',
6005 fontSize: '60px',
6006 mb: 1
6007 }
6008 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6009 variant: "h4",
6010 sx: {
6011 color: 'text.primary'
6012 }
6013 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6014 variant: "body2"
6015 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
6016 direction: "row",
6017 gap: 1.5,
6018 alignItems: "flex-start"
6019 }, /*#__PURE__*/_react.default.createElement(_ui.Checkbox, {
6020 id: "e-ai-terms-approval",
6021 color: "secondary",
6022 checked: isTermsChecked,
6023 onClick: function onClick() {
6024 return setIsTermsChecked(function (prevState) {
6025 return !prevState;
6026 });
6027 }
6028 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6029 variant: "caption",
6030 sx: {
6031 maxWidth: 520
6032 },
6033 component: "label",
6034 htmlFor: "e-ai-terms-approval"
6035 }, (0, _i18n.__)('I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
6036 href: "https://go.elementor.com/ai-terms/",
6037 target: "_blank",
6038 color: "info.main"
6039 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
6040 href: "https://go.elementor.com/ai-privacy-policy/",
6041 target: "_blank",
6042 color: "info.main"
6043 }, (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, {
6044 disabled: !isTermsChecked,
6045 variant: "contained",
6046 onClick: onGetStartedClick,
6047 sx: {
6048 mt: 1,
6049 '&:hover': {
6050 color: 'primary.contrastText'
6051 }
6052 }
6053 }, (0, _i18n.__)('Get Started', 'elementor')));
6054 };
6055 GetStarted.propTypes = {
6056 onSuccess: _propTypes.default.func.isRequired
6057 };
6058 var _default = GetStarted;
6059 exports["default"] = _default;
6060
6061 /***/ }),
6062
6063 /***/ "../modules/ai/assets/js/editor/types/attachment.js":
6064 /*!**********************************************************!*\
6065 !*** ../modules/ai/assets/js/editor/types/attachment.js ***!
6066 \**********************************************************/
6067 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6068
6069 "use strict";
6070
6071
6072 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6073 Object.defineProperty(exports, "__esModule", ({
6074 value: true
6075 }));
6076 exports.AttachmentsTypesPropType = exports.AttachmentPropType = void 0;
6077 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
6078 var AttachmentPropType = _propTypes.default.shape({
6079 type: _propTypes.default.string,
6080 previewHTML: _propTypes.default.string,
6081 content: _propTypes.default.string,
6082 label: _propTypes.default.string,
6083 source: _propTypes.default.string
6084 });
6085 exports.AttachmentPropType = AttachmentPropType;
6086 var AttachmentsTypesPropType = _propTypes.default.shape({
6087 type: _propTypes.default.shape({
6088 promptPlaceholder: _propTypes.default.string,
6089 promptSuggestions: _propTypes.default.arrayOf(_propTypes.default.shape({
6090 text: _propTypes.default.string.isRequired
6091 })),
6092 previewGenerator: _propTypes.default.func
6093 })
6094 });
6095 exports.AttachmentsTypesPropType = AttachmentsTypesPropType;
6096
6097 /***/ }),
6098
6099 /***/ "../modules/ai/assets/js/editor/utils/editor-integration.js":
6100 /*!******************************************************************!*\
6101 !*** ../modules/ai/assets/js/editor/utils/editor-integration.js ***!
6102 \******************************************************************/
6103 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6104
6105 "use strict";
6106
6107
6108 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6109 Object.defineProperty(exports, "__esModule", ({
6110 value: true
6111 }));
6112 exports.renderLayoutApp = exports.openPanel = exports.onConnect = exports.importToEditor = exports.getUiConfig = exports.closePanel = void 0;
6113 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
6114 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6115 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6116 var _react2 = _interopRequireDefault(__webpack_require__(/*! elementor-utils/react */ "../assets/dev/js/utils/react.js"));
6117 var _previewContainer = __webpack_require__(/*! ./preview-container */ "../modules/ai/assets/js/editor/utils/preview-container.js");
6118 var _layoutApp = _interopRequireDefault(__webpack_require__(/*! ../layout-app */ "../modules/ai/assets/js/editor/layout-app.js"));
6119 var _screenshot = __webpack_require__(/*! ./screenshot */ "../modules/ai/assets/js/editor/utils/screenshot.js");
6120 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6121 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
6122 var _layoutAppWrapper = _interopRequireDefault(__webpack_require__(/*! ../layout-app-wrapper */ "../modules/ai/assets/js/editor/layout-app-wrapper.js"));
6123 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6124 var closePanel = function closePanel() {
6125 $e.run('panel/close');
6126 $e.components.get('panel').blockUserInteractions();
6127 };
6128 exports.closePanel = closePanel;
6129 var openPanel = function openPanel() {
6130 $e.run('panel/open');
6131 $e.components.get('panel').unblockUserInteractions();
6132 };
6133 exports.openPanel = openPanel;
6134 var onConnect = function onConnect(data) {
6135 elementorCommon.config.library_connect.is_connected = true;
6136 elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0;
6137 elementorCommon.config.library_connect.current_access_tier = data.access_tier;
6138 };
6139 exports.onConnect = onConnect;
6140 var getUiConfig = function getUiConfig() {
6141 var _elementor, _elementor$getPrefere;
6142 var colorScheme = ((_elementor = elementor) === null || _elementor === void 0 ? void 0 : (_elementor$getPrefere = _elementor.getPreferences) === null || _elementor$getPrefere === void 0 ? void 0 : _elementor$getPrefere.call(_elementor, 'ui_theme')) || 'auto';
6143 var isRTL = elementorCommon.config.isRTL;
6144 return {
6145 colorScheme: colorScheme,
6146 isRTL: isRTL
6147 };
6148 };
6149 exports.getUiConfig = getUiConfig;
6150 var VARIATIONS_PROMPTS = [{
6151 text: (0, _i18n.__)('Change the content to be about [topic]', 'elementor')
6152 }, {
6153 text: (0, _i18n.__)('Generate lorem ipsum placeholder text for all paragraphs', 'elementor')
6154 }, {
6155 text: (0, _i18n.__)('Revise the content to focus on [topic] and then translate it into Spanish', 'elementor')
6156 }, {
6157 text: (0, _i18n.__)('Shift the focus of the content to [topic] in order to showcase our company\'s mission and values', 'elementor')
6158 }, {
6159 text: (0, _i18n.__)('Alter the content to provide helpful tips related to [topic]', 'elementor')
6160 }, {
6161 text: (0, _i18n.__)('Adjust the content to include FAQs and answers for common inquiries about [topic]', 'elementor')
6162 }];
6163 var PROMPT_PLACEHOLDER = (0, _i18n.__)("Press '/' for suggestions or describe the changes you want to apply (optional)...", 'elementor');
6164 var renderLayoutApp = function renderLayoutApp() {
6165 var _options$onRenderApp;
6166 var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
6167 parentContainer: null,
6168 mode: '',
6169 at: null,
6170 onClose: null,
6171 onGenerate: null,
6172 onInsert: null,
6173 onRenderApp: null,
6174 onSelect: null,
6175 attachments: []
6176 };
6177 closePanel();
6178 var previewContainer = (0, _previewContainer.createPreviewContainer)(options.parentContainer, {
6179 // Create the container at the "drag widget here" area position.
6180 at: options.at
6181 });
6182 var _getUiConfig = getUiConfig(),
6183 colorScheme = _getUiConfig.colorScheme,
6184 isRTL = _getUiConfig.isRTL;
6185 var rootElement = document.createElement('div');
6186 document.body.append(rootElement);
6187 var bodyStyle = window.elementorFrontend.elements.$window[0].getComputedStyle(window.elementorFrontend.elements.$body[0]);
6188 var _ReactUtils$render = _react2.default.render( /*#__PURE__*/_react.default.createElement(_layoutAppWrapper.default, {
6189 isRTL: isRTL,
6190 colorScheme: colorScheme
6191 }, /*#__PURE__*/_react.default.createElement(_layoutApp.default, {
6192 mode: options.mode,
6193 currentContext: {
6194 body: {
6195 backgroundColor: bodyStyle.backgroundColor,
6196 backgroundImage: bodyStyle.backgroundImage
6197 }
6198 },
6199 attachmentsTypes: {
6200 json: {
6201 promptSuggestions: VARIATIONS_PROMPTS,
6202 promptPlaceholder: PROMPT_PLACEHOLDER,
6203 previewGenerator: function () {
6204 var _previewGenerator = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(json) {
6205 var screenshot;
6206 return _regenerator.default.wrap(function _callee$(_context) {
6207 while (1) switch (_context.prev = _context.next) {
6208 case 0:
6209 _context.next = 2;
6210 return (0, _screenshot.takeScreenshot)(json);
6211 case 2:
6212 screenshot = _context.sent;
6213 return _context.abrupt("return", "<img src=\"".concat(screenshot, "\" />"));
6214 case 4:
6215 case "end":
6216 return _context.stop();
6217 }
6218 }, _callee);
6219 }));
6220 function previewGenerator(_x) {
6221 return _previewGenerator.apply(this, arguments);
6222 }
6223 return previewGenerator;
6224 }()
6225 },
6226 url: {
6227 promptPlaceholder: PROMPT_PLACEHOLDER,
6228 promptSuggestions: VARIATIONS_PROMPTS
6229 }
6230 },
6231 attachments: options.attachments || [],
6232 onClose: function onClose() {
6233 var _options$onClose;
6234 previewContainer.destroy();
6235 (_options$onClose = options.onClose) === null || _options$onClose === void 0 ? void 0 : _options$onClose.call(options);
6236 unmount();
6237 rootElement.remove();
6238 openPanel();
6239 },
6240 onConnect: onConnect,
6241 onGenerate: function onGenerate() {
6242 var _options$onGenerate;
6243 (_options$onGenerate = options.onGenerate) === null || _options$onGenerate === void 0 ? void 0 : _options$onGenerate.call(options, {
6244 previewContainer: previewContainer
6245 });
6246 },
6247 onData: /*#__PURE__*/function () {
6248 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(template) {
6249 var screenshot;
6250 return _regenerator.default.wrap(function _callee2$(_context2) {
6251 while (1) switch (_context2.prev = _context2.next) {
6252 case 0:
6253 _context2.next = 2;
6254 return (0, _screenshot.takeScreenshot)(template);
6255 case 2:
6256 screenshot = _context2.sent;
6257 return _context2.abrupt("return", {
6258 screenshot: screenshot,
6259 template: template
6260 });
6261 case 4:
6262 case "end":
6263 return _context2.stop();
6264 }
6265 }, _callee2);
6266 }));
6267 return function (_x2) {
6268 return _ref.apply(this, arguments);
6269 };
6270 }(),
6271 onSelect: function onSelect(template) {
6272 var _options$onSelect;
6273 (_options$onSelect = options.onSelect) === null || _options$onSelect === void 0 ? void 0 : _options$onSelect.call(options);
6274 previewContainer.setContent(template);
6275 },
6276 onInsert: options.onInsert,
6277 hasPro: elementor.helpers.hasPro()
6278 })), rootElement),
6279 unmount = _ReactUtils$render.unmount;
6280 (_options$onRenderApp = options.onRenderApp) === null || _options$onRenderApp === void 0 ? void 0 : _options$onRenderApp.call(options, {
6281 previewContainer: previewContainer
6282 });
6283 };
6284 exports.renderLayoutApp = renderLayoutApp;
6285 var importToEditor = function importToEditor(_ref2) {
6286 var parentContainer = _ref2.parentContainer,
6287 at = _ref2.at,
6288 template = _ref2.template,
6289 historyTitle = _ref2.historyTitle,
6290 _ref2$replace = _ref2.replace,
6291 replace = _ref2$replace === void 0 ? false : _ref2$replace;
6292 var endHistoryLog = (0, _history.startHistoryLog)({
6293 type: 'import',
6294 title: historyTitle
6295 });
6296 if (replace) {
6297 $e.run('document/elements/delete', {
6298 container: parentContainer.children.at(at)
6299 });
6300 }
6301 $e.run('document/elements/create', {
6302 container: parentContainer,
6303 model: (0, _requestsIds.generateIds)(template),
6304 options: {
6305 at: at,
6306 edit: true
6307 }
6308 });
6309 endHistoryLog();
6310 };
6311 exports.importToEditor = importToEditor;
6312
6313 /***/ }),
6314
6315 /***/ "../modules/ai/assets/js/editor/utils/history.js":
6316 /*!*******************************************************!*\
6317 !*** ../modules/ai/assets/js/editor/utils/history.js ***!
6318 \*******************************************************/
6319 /***/ ((__unused_webpack_module, exports) => {
6320
6321 "use strict";
6322
6323
6324 Object.defineProperty(exports, "__esModule", ({
6325 value: true
6326 }));
6327 exports.startHistoryLog = startHistoryLog;
6328 exports.toggleHistory = toggleHistory;
6329 function toggleHistory(isActive) {
6330 elementor.documents.getCurrent().history.setActive(isActive);
6331 }
6332
6333 /**
6334 * @param {Object} options
6335 * @param { 'add' | 'change' | 'disable' | 'duplicate' | 'enable' | 'import' | 'move' | 'paste' | 'paste_style' | 'remove' | 'reset_settings' | 'reset_style' | 'selected' } options.type
6336 * @param { string } options.title
6337 *
6338 * @return {*}
6339 */
6340 function startHistoryLog(_ref) {
6341 var type = _ref.type,
6342 title = _ref.title;
6343 var id = $e.internal('document/history/start-log', {
6344 type: type,
6345 title: title
6346 });
6347 return function () {
6348 return $e.internal('document/history/end-log', {
6349 id: id
6350 });
6351 };
6352 }
6353
6354 /***/ }),
6355
6356 /***/ "../modules/ai/assets/js/editor/utils/preview-container.js":
6357 /*!*****************************************************************!*\
6358 !*** ../modules/ai/assets/js/editor/utils/preview-container.js ***!
6359 \*****************************************************************/
6360 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6361
6362 "use strict";
6363
6364
6365 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6366 Object.defineProperty(exports, "__esModule", ({
6367 value: true
6368 }));
6369 exports.createPreviewContainer = createPreviewContainer;
6370 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
6371 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6372 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6373 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6374 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6375 /**
6376 * @typedef {import('elementor/assets/dev/js/editor/container/container')} Container
6377 */
6378
6379 var PREFIX = 'e-ai-preview-container';
6380 var CLASS_HIDDEN = PREFIX + '--hidden';
6381 var CLASS_IDLE = PREFIX + '--idle';
6382
6383 /**
6384 * @param {Container} parentContainer
6385 * @param {{}} containerOptions
6386 * @return {{init, setContent, reset, destroy}}
6387 */
6388
6389 function createPreviewContainer(parentContainer) {
6390 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6391 var createdContainers = new Map();
6392 var idleContainer = createIdleContainer(parentContainer, containerOptions);
6393 function init() {
6394 showContainer(idleContainer);
6395 }
6396 function getAllContainers() {
6397 return [].concat((0, _toConsumableArray2.default)(createdContainers.values()), [idleContainer]);
6398 }
6399 function reset() {
6400 deleteContainers((0, _toConsumableArray2.default)(createdContainers.values()));
6401 createdContainers.clear();
6402 showContainer(idleContainer);
6403 }
6404 function setContent(template) {
6405 if (!template) {
6406 return;
6407 }
6408 hideContainers(getAllContainers());
6409 if (!createdContainers.has(template)) {
6410 var newContainer = createContainer(parentContainer, template, containerOptions);
6411 createdContainers.set(template, newContainer);
6412 }
6413 showContainer(createdContainers.get(template));
6414 }
6415 function destroy() {
6416 deleteContainers(getAllContainers());
6417 createdContainers.clear();
6418 }
6419 return {
6420 init: init,
6421 reset: reset,
6422 setContent: setContent,
6423 destroy: destroy
6424 };
6425 }
6426
6427 /**
6428 * @param {Container} parentContainer
6429 * @param {{}} model
6430 * @param {{}} options
6431 * @return {*}
6432 */
6433 function createContainer(parentContainer, model) {
6434 var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6435 (0, _history.toggleHistory)(false);
6436 var container = $e.run('document/elements/create', {
6437 container: parentContainer,
6438 model: _objectSpread(_objectSpread({}, model), {}, {
6439 id: "".concat(PREFIX, "-").concat(elementorCommon.helpers.getUniqueId().toString())
6440 }),
6441 options: _objectSpread(_objectSpread({}, options), {}, {
6442 edit: false
6443 })
6444 });
6445 (0, _history.toggleHistory)(true);
6446 container.view.$el.addClass(CLASS_HIDDEN);
6447 return container;
6448 }
6449
6450 /**
6451 * @param {Container} parentContainer
6452 * @param {{}} containerOptions
6453 * @return {*}
6454 */
6455 function createIdleContainer(parentContainer) {
6456 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6457 // Create an empty container that'll be used of UI purposes.
6458 var container = createContainer(parentContainer, {
6459 elType: 'container'
6460 }, containerOptions);
6461 container.view.$el.addClass(CLASS_IDLE);
6462 return container;
6463 }
6464 function hideContainers(containers) {
6465 containers.forEach(function (container) {
6466 container.view.$el.addClass(CLASS_HIDDEN);
6467 });
6468 }
6469 function showContainer(container) {
6470 container.view.$el.removeClass(CLASS_HIDDEN);
6471
6472 // Delay the scroll to avoid UI jumps when toggling between containers.
6473 setTimeout(function () {
6474 container.view.$el[0].scrollIntoView({
6475 behavior: 'smooth',
6476 block: 'start'
6477 });
6478 });
6479 }
6480 function deleteContainers(containers) {
6481 (0, _history.toggleHistory)(false);
6482 $e.run('document/elements/delete', {
6483 containers: containers
6484 });
6485 (0, _history.toggleHistory)(true);
6486 }
6487
6488 /***/ }),
6489
6490 /***/ "../modules/ai/assets/js/editor/utils/screenshot.js":
6491 /*!**********************************************************!*\
6492 !*** ../modules/ai/assets/js/editor/utils/screenshot.js ***!
6493 \**********************************************************/
6494 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6495
6496 "use strict";
6497
6498
6499 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6500 Object.defineProperty(exports, "__esModule", ({
6501 value: true
6502 }));
6503 exports.takeScreenshot = void 0;
6504 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6505 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6506 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6507 var _htmlToImage = __webpack_require__(/*! html-to-image */ "../node_modules/html-to-image/es/index.js");
6508 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6509 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6510 var takeScreenshot = /*#__PURE__*/function () {
6511 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(template) {
6512 var hiddenWrapper, container, screenshot;
6513 return _regenerator.default.wrap(function _callee$(_context) {
6514 while (1) switch (_context.prev = _context.next) {
6515 case 0:
6516 if (template) {
6517 _context.next = 2;
6518 break;
6519 }
6520 return _context.abrupt("return", '');
6521 case 2:
6522 // Disable history so the Editor won't show our hidden container as a user action.
6523 (0, _history.toggleHistory)(false);
6524 hiddenWrapper = createHiddenWrapper();
6525 container = createContainer(template);
6526 wrapContainer(container, hiddenWrapper);
6527 elementor.getPreviewView().$childViewContainer[0].appendChild(hiddenWrapper);
6528
6529 // Wait for the container to render.
6530 _context.next = 9;
6531 return waitForContainer(container.id);
6532 case 9:
6533 if (!template.elements.length) {
6534 _context.next = 12;
6535 break;
6536 }
6537 _context.next = 12;
6538 return Promise.all(template.elements.map(function (child) {
6539 return waitForContainer(child.id);
6540 }));
6541 case 12:
6542 _context.prev = 12;
6543 _context.next = 15;
6544 return screenshotNode(container.view.$el[0]);
6545 case 15:
6546 screenshot = _context.sent;
6547 _context.next = 21;
6548 break;
6549 case 18:
6550 _context.prev = 18;
6551 _context.t0 = _context["catch"](12);
6552 // Return an empty image url if the screenshot failed.
6553 screenshot = '';
6554 case 21:
6555 deleteContainer(container);
6556 hiddenWrapper.remove();
6557 (0, _history.toggleHistory)(true);
6558 return _context.abrupt("return", screenshot);
6559 case 25:
6560 case "end":
6561 return _context.stop();
6562 }
6563 }, _callee, null, [[12, 18]]);
6564 }));
6565 return function takeScreenshot(_x) {
6566 return _ref.apply(this, arguments);
6567 };
6568 }();
6569 exports.takeScreenshot = takeScreenshot;
6570 function screenshotNode(node) {
6571 return toWebp(node, {
6572 quality: 0.01,
6573 // Transparent 1x1 pixel.
6574 imagePlaceholder: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII='
6575 });
6576 }
6577 function toWebp(_x2) {
6578 return _toWebp.apply(this, arguments);
6579 }
6580 function _toWebp() {
6581 _toWebp = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(node) {
6582 var _options$quality;
6583 var options,
6584 canvas,
6585 _args3 = arguments;
6586 return _regenerator.default.wrap(function _callee3$(_context3) {
6587 while (1) switch (_context3.prev = _context3.next) {
6588 case 0:
6589 options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
6590 _context3.next = 3;
6591 return (0, _htmlToImage.toCanvas)(node, options);
6592 case 3:
6593 canvas = _context3.sent;
6594 return _context3.abrupt("return", canvas.toDataURL('image/webp', (_options$quality = options.quality) !== null && _options$quality !== void 0 ? _options$quality : 1));
6595 case 5:
6596 case "end":
6597 return _context3.stop();
6598 }
6599 }, _callee3);
6600 }));
6601 return _toWebp.apply(this, arguments);
6602 }
6603 function createHiddenWrapper() {
6604 var wrapper = document.createElement('div');
6605 wrapper.style.position = 'fixed';
6606 wrapper.style.opacity = '0';
6607 wrapper.style.inset = '0';
6608 return wrapper;
6609 }
6610 function createContainer(template) {
6611 var model = (0, _requestsIds.generateIds)(template);
6612
6613 // Set a custom ID, so it can be used later on in the backend.
6614 model.id = "e-ai-screenshot-container-".concat(model.id);
6615 return $e.run('document/elements/create', {
6616 container: elementor.getPreviewContainer(),
6617 model: model,
6618 options: {
6619 edit: false
6620 }
6621 });
6622 }
6623 function deleteContainer(container) {
6624 return $e.run('document/elements/delete', {
6625 container: container
6626 });
6627 }
6628 function waitForContainer(id) {
6629 var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
6630 var timeoutPromise = sleep(timeout);
6631 var waitPromise = new Promise(function (resolve) {
6632 elementorFrontend.hooks.addAction('frontend/element_ready/global', /*#__PURE__*/function () {
6633 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2($element) {
6634 var images;
6635 return _regenerator.default.wrap(function _callee2$(_context2) {
6636 while (1) switch (_context2.prev = _context2.next) {
6637 case 0:
6638 if (!($element.data('id') === id)) {
6639 _context2.next = 5;
6640 break;
6641 }
6642 images = (0, _toConsumableArray2.default)($element[0].querySelectorAll('img')); // Wait for all images to load.
6643 _context2.next = 4;
6644 return Promise.all(images.map(waitForImage));
6645 case 4:
6646 resolve();
6647 case 5:
6648 case "end":
6649 return _context2.stop();
6650 }
6651 }, _callee2);
6652 }));
6653 return function (_x3) {
6654 return _ref2.apply(this, arguments);
6655 };
6656 }());
6657 });
6658 return Promise.any([timeoutPromise, waitPromise]);
6659 }
6660 function waitForImage(image) {
6661 if (image.complete) {
6662 return Promise.resolve();
6663 }
6664 return new Promise(function (resolve) {
6665 image.addEventListener('load', resolve);
6666 image.addEventListener('error', function () {
6667 // Remove the image to make sure it won't break the screenshot.
6668 image.remove();
6669 resolve();
6670 });
6671 });
6672 }
6673 function sleep(ms) {
6674 return new Promise(function (resolve) {
6675 return setTimeout(resolve, ms);
6676 });
6677 }
6678 function wrapContainer(container, wrapper) {
6679 var el = container.view.$el[0];
6680 el.parentNode.insertBefore(wrapper, el);
6681 wrapper.appendChild(el);
6682 }
6683
6684 /***/ }),
6685
6686 /***/ "../node_modules/clsx/dist/clsx.m.js":
6687 /*!*******************************************!*\
6688 !*** ../node_modules/clsx/dist/clsx.m.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 */ clsx: () => (/* binding */ clsx),
6696 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
6697 /* harmony export */ });
6698 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);
6699
6700 /***/ }),
6701
6702 /***/ "../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js":
6703 /*!***********************************************************************************!*\
6704 !*** ../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js ***!
6705 \***********************************************************************************/
6706 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6707
6708 "use strict";
6709
6710
6711 var reactIs = __webpack_require__(/*! react-is */ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js");
6712
6713 /**
6714 * Copyright 2015, Yahoo! Inc.
6715 * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
6716 */
6717 var REACT_STATICS = {
6718 childContextTypes: true,
6719 contextType: true,
6720 contextTypes: true,
6721 defaultProps: true,
6722 displayName: true,
6723 getDefaultProps: true,
6724 getDerivedStateFromError: true,
6725 getDerivedStateFromProps: true,
6726 mixins: true,
6727 propTypes: true,
6728 type: true
6729 };
6730 var KNOWN_STATICS = {
6731 name: true,
6732 length: true,
6733 prototype: true,
6734 caller: true,
6735 callee: true,
6736 arguments: true,
6737 arity: true
6738 };
6739 var FORWARD_REF_STATICS = {
6740 '$$typeof': true,
6741 render: true,
6742 defaultProps: true,
6743 displayName: true,
6744 propTypes: true
6745 };
6746 var MEMO_STATICS = {
6747 '$$typeof': true,
6748 compare: true,
6749 defaultProps: true,
6750 displayName: true,
6751 propTypes: true,
6752 type: true
6753 };
6754 var TYPE_STATICS = {};
6755 TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
6756 TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
6757
6758 function getStatics(component) {
6759 // React v16.11 and below
6760 if (reactIs.isMemo(component)) {
6761 return MEMO_STATICS;
6762 } // React v16.12 and above
6763
6764
6765 return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
6766 }
6767
6768 var defineProperty = Object.defineProperty;
6769 var getOwnPropertyNames = Object.getOwnPropertyNames;
6770 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
6771 var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
6772 var getPrototypeOf = Object.getPrototypeOf;
6773 var objectPrototype = Object.prototype;
6774 function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
6775 if (typeof sourceComponent !== 'string') {
6776 // don't hoist over string (html) components
6777 if (objectPrototype) {
6778 var inheritedComponent = getPrototypeOf(sourceComponent);
6779
6780 if (inheritedComponent && inheritedComponent !== objectPrototype) {
6781 hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
6782 }
6783 }
6784
6785 var keys = getOwnPropertyNames(sourceComponent);
6786
6787 if (getOwnPropertySymbols) {
6788 keys = keys.concat(getOwnPropertySymbols(sourceComponent));
6789 }
6790
6791 var targetStatics = getStatics(targetComponent);
6792 var sourceStatics = getStatics(sourceComponent);
6793
6794 for (var i = 0; i < keys.length; ++i) {
6795 var key = keys[i];
6796
6797 if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
6798 var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
6799
6800 try {
6801 // Avoid failures from read-only properties
6802 defineProperty(targetComponent, key, descriptor);
6803 } catch (e) {}
6804 }
6805 }
6806 }
6807
6808 return targetComponent;
6809 }
6810
6811 module.exports = hoistNonReactStatics;
6812
6813
6814 /***/ }),
6815
6816 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js":
6817 /*!*************************************************************************************************!*\
6818 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js ***!
6819 \*************************************************************************************************/
6820 /***/ ((__unused_webpack_module, exports) => {
6821
6822 "use strict";
6823 /** @license React v16.13.1
6824 * react-is.development.js
6825 *
6826 * Copyright (c) Facebook, Inc. and its affiliates.
6827 *
6828 * This source code is licensed under the MIT license found in the
6829 * LICENSE file in the root directory of this source tree.
6830 */
6831
6832
6833
6834
6835
6836 if (true) {
6837 (function() {
6838 'use strict';
6839
6840 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
6841 // nor polyfill, then a plain number is used for performance.
6842 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
6843 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
6844 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
6845 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
6846 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
6847 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
6848 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
6849 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
6850 // (unstable) APIs that have been removed. Can we remove the symbols?
6851
6852 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
6853 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
6854 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
6855 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
6856 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
6857 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
6858 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
6859 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
6860 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
6861 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
6862 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
6863
6864 function isValidElementType(type) {
6865 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
6866 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);
6867 }
6868
6869 function typeOf(object) {
6870 if (typeof object === 'object' && object !== null) {
6871 var $$typeof = object.$$typeof;
6872
6873 switch ($$typeof) {
6874 case REACT_ELEMENT_TYPE:
6875 var type = object.type;
6876
6877 switch (type) {
6878 case REACT_ASYNC_MODE_TYPE:
6879 case REACT_CONCURRENT_MODE_TYPE:
6880 case REACT_FRAGMENT_TYPE:
6881 case REACT_PROFILER_TYPE:
6882 case REACT_STRICT_MODE_TYPE:
6883 case REACT_SUSPENSE_TYPE:
6884 return type;
6885
6886 default:
6887 var $$typeofType = type && type.$$typeof;
6888
6889 switch ($$typeofType) {
6890 case REACT_CONTEXT_TYPE:
6891 case REACT_FORWARD_REF_TYPE:
6892 case REACT_LAZY_TYPE:
6893 case REACT_MEMO_TYPE:
6894 case REACT_PROVIDER_TYPE:
6895 return $$typeofType;
6896
6897 default:
6898 return $$typeof;
6899 }
6900
6901 }
6902
6903 case REACT_PORTAL_TYPE:
6904 return $$typeof;
6905 }
6906 }
6907
6908 return undefined;
6909 } // AsyncMode is deprecated along with isAsyncMode
6910
6911 var AsyncMode = REACT_ASYNC_MODE_TYPE;
6912 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
6913 var ContextConsumer = REACT_CONTEXT_TYPE;
6914 var ContextProvider = REACT_PROVIDER_TYPE;
6915 var Element = REACT_ELEMENT_TYPE;
6916 var ForwardRef = REACT_FORWARD_REF_TYPE;
6917 var Fragment = REACT_FRAGMENT_TYPE;
6918 var Lazy = REACT_LAZY_TYPE;
6919 var Memo = REACT_MEMO_TYPE;
6920 var Portal = REACT_PORTAL_TYPE;
6921 var Profiler = REACT_PROFILER_TYPE;
6922 var StrictMode = REACT_STRICT_MODE_TYPE;
6923 var Suspense = REACT_SUSPENSE_TYPE;
6924 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
6925
6926 function isAsyncMode(object) {
6927 {
6928 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
6929 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
6930
6931 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.');
6932 }
6933 }
6934
6935 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
6936 }
6937 function isConcurrentMode(object) {
6938 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
6939 }
6940 function isContextConsumer(object) {
6941 return typeOf(object) === REACT_CONTEXT_TYPE;
6942 }
6943 function isContextProvider(object) {
6944 return typeOf(object) === REACT_PROVIDER_TYPE;
6945 }
6946 function isElement(object) {
6947 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
6948 }
6949 function isForwardRef(object) {
6950 return typeOf(object) === REACT_FORWARD_REF_TYPE;
6951 }
6952 function isFragment(object) {
6953 return typeOf(object) === REACT_FRAGMENT_TYPE;
6954 }
6955 function isLazy(object) {
6956 return typeOf(object) === REACT_LAZY_TYPE;
6957 }
6958 function isMemo(object) {
6959 return typeOf(object) === REACT_MEMO_TYPE;
6960 }
6961 function isPortal(object) {
6962 return typeOf(object) === REACT_PORTAL_TYPE;
6963 }
6964 function isProfiler(object) {
6965 return typeOf(object) === REACT_PROFILER_TYPE;
6966 }
6967 function isStrictMode(object) {
6968 return typeOf(object) === REACT_STRICT_MODE_TYPE;
6969 }
6970 function isSuspense(object) {
6971 return typeOf(object) === REACT_SUSPENSE_TYPE;
6972 }
6973
6974 exports.AsyncMode = AsyncMode;
6975 exports.ConcurrentMode = ConcurrentMode;
6976 exports.ContextConsumer = ContextConsumer;
6977 exports.ContextProvider = ContextProvider;
6978 exports.Element = Element;
6979 exports.ForwardRef = ForwardRef;
6980 exports.Fragment = Fragment;
6981 exports.Lazy = Lazy;
6982 exports.Memo = Memo;
6983 exports.Portal = Portal;
6984 exports.Profiler = Profiler;
6985 exports.StrictMode = StrictMode;
6986 exports.Suspense = Suspense;
6987 exports.isAsyncMode = isAsyncMode;
6988 exports.isConcurrentMode = isConcurrentMode;
6989 exports.isContextConsumer = isContextConsumer;
6990 exports.isContextProvider = isContextProvider;
6991 exports.isElement = isElement;
6992 exports.isForwardRef = isForwardRef;
6993 exports.isFragment = isFragment;
6994 exports.isLazy = isLazy;
6995 exports.isMemo = isMemo;
6996 exports.isPortal = isPortal;
6997 exports.isProfiler = isProfiler;
6998 exports.isStrictMode = isStrictMode;
6999 exports.isSuspense = isSuspense;
7000 exports.isValidElementType = isValidElementType;
7001 exports.typeOf = typeOf;
7002 })();
7003 }
7004
7005
7006 /***/ }),
7007
7008 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js":
7009 /*!******************************************************************************!*\
7010 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/index.js ***!
7011 \******************************************************************************/
7012 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
7013
7014 "use strict";
7015
7016
7017 if (false) {} else {
7018 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js");
7019 }
7020
7021
7022 /***/ }),
7023
7024 /***/ "../node_modules/html-to-image/es/apply-style.js":
7025 /*!*******************************************************!*\
7026 !*** ../node_modules/html-to-image/es/apply-style.js ***!
7027 \*******************************************************/
7028 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7029
7030 "use strict";
7031 __webpack_require__.r(__webpack_exports__);
7032 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7033 /* harmony export */ applyStyle: () => (/* binding */ applyStyle)
7034 /* harmony export */ });
7035 function applyStyle(node, options) {
7036 const { style } = node;
7037 if (options.backgroundColor) {
7038 style.backgroundColor = options.backgroundColor;
7039 }
7040 if (options.width) {
7041 style.width = `${options.width}px`;
7042 }
7043 if (options.height) {
7044 style.height = `${options.height}px`;
7045 }
7046 const manual = options.style;
7047 if (manual != null) {
7048 Object.keys(manual).forEach((key) => {
7049 style[key] = manual[key];
7050 });
7051 }
7052 return node;
7053 }
7054 //# sourceMappingURL=apply-style.js.map
7055
7056 /***/ }),
7057
7058 /***/ "../node_modules/html-to-image/es/clone-node.js":
7059 /*!******************************************************!*\
7060 !*** ../node_modules/html-to-image/es/clone-node.js ***!
7061 \******************************************************/
7062 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7063
7064 "use strict";
7065 __webpack_require__.r(__webpack_exports__);
7066 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7067 /* harmony export */ cloneNode: () => (/* binding */ cloneNode)
7068 /* harmony export */ });
7069 /* harmony import */ var _clone_pseudos__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-pseudos */ "../node_modules/html-to-image/es/clone-pseudos.js");
7070 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7071 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7072 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7073
7074
7075
7076
7077 async function cloneCanvasElement(canvas) {
7078 const dataURL = canvas.toDataURL();
7079 if (dataURL === 'data:,') {
7080 return canvas.cloneNode(false);
7081 }
7082 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7083 }
7084 async function cloneVideoElement(video, options) {
7085 if (video.currentSrc) {
7086 const canvas = document.createElement('canvas');
7087 const ctx = canvas.getContext('2d');
7088 canvas.width = video.clientWidth;
7089 canvas.height = video.clientHeight;
7090 ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
7091 const dataURL = canvas.toDataURL();
7092 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7093 }
7094 const poster = video.poster;
7095 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_2__.getMimeType)(poster);
7096 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_3__.resourceToDataURL)(poster, contentType, options);
7097 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7098 }
7099 async function cloneIFrameElement(iframe) {
7100 var _a;
7101 try {
7102 if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) {
7103 return (await cloneNode(iframe.contentDocument.body, {}, true));
7104 }
7105 }
7106 catch (_b) {
7107 // Failed to clone iframe
7108 }
7109 return iframe.cloneNode(false);
7110 }
7111 async function cloneSingleNode(node, options) {
7112 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLCanvasElement)) {
7113 return cloneCanvasElement(node);
7114 }
7115 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLVideoElement)) {
7116 return cloneVideoElement(node, options);
7117 }
7118 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLIFrameElement)) {
7119 return cloneIFrameElement(node);
7120 }
7121 return node.cloneNode(false);
7122 }
7123 const isSlotElement = (node) => node.tagName != null && node.tagName.toUpperCase() === 'SLOT';
7124 async function cloneChildren(nativeNode, clonedNode, options) {
7125 var _a, _b;
7126 let children = [];
7127 if (isSlotElement(nativeNode) && nativeNode.assignedNodes) {
7128 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.assignedNodes());
7129 }
7130 else if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7131 ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {
7132 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.contentDocument.body.childNodes);
7133 }
7134 else {
7135 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);
7136 }
7137 if (children.length === 0 ||
7138 (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLVideoElement)) {
7139 return clonedNode;
7140 }
7141 await children.reduce((deferred, child) => deferred
7142 .then(() => cloneNode(child, options))
7143 .then((clonedChild) => {
7144 if (clonedChild) {
7145 clonedNode.appendChild(clonedChild);
7146 }
7147 }), Promise.resolve());
7148 return clonedNode;
7149 }
7150 function cloneCSSStyle(nativeNode, clonedNode) {
7151 const targetStyle = clonedNode.style;
7152 if (!targetStyle) {
7153 return;
7154 }
7155 const sourceStyle = window.getComputedStyle(nativeNode);
7156 if (sourceStyle.cssText) {
7157 targetStyle.cssText = sourceStyle.cssText;
7158 targetStyle.transformOrigin = sourceStyle.transformOrigin;
7159 }
7160 else {
7161 (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(sourceStyle).forEach((name) => {
7162 let value = sourceStyle.getPropertyValue(name);
7163 if (name === 'font-size' && value.endsWith('px')) {
7164 const reducedFont = Math.floor(parseFloat(value.substring(0, value.length - 2))) - 0.1;
7165 value = `${reducedFont}px`;
7166 }
7167 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7168 name === 'display' &&
7169 value === 'inline') {
7170 value = 'block';
7171 }
7172 if (name === 'd' && clonedNode.getAttribute('d')) {
7173 value = `path(${clonedNode.getAttribute('d')})`;
7174 }
7175 targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));
7176 });
7177 }
7178 }
7179 function cloneInputValue(nativeNode, clonedNode) {
7180 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLTextAreaElement)) {
7181 clonedNode.innerHTML = nativeNode.value;
7182 }
7183 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLInputElement)) {
7184 clonedNode.setAttribute('value', nativeNode.value);
7185 }
7186 }
7187 function cloneSelectValue(nativeNode, clonedNode) {
7188 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLSelectElement)) {
7189 const clonedSelect = clonedNode;
7190 const selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute('value'));
7191 if (selectedOption) {
7192 selectedOption.setAttribute('selected', '');
7193 }
7194 }
7195 }
7196 function decorate(nativeNode, clonedNode) {
7197 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7198 cloneCSSStyle(nativeNode, clonedNode);
7199 (0,_clone_pseudos__WEBPACK_IMPORTED_MODULE_0__.clonePseudoElements)(nativeNode, clonedNode);
7200 cloneInputValue(nativeNode, clonedNode);
7201 cloneSelectValue(nativeNode, clonedNode);
7202 }
7203 return clonedNode;
7204 }
7205 async function ensureSVGSymbols(clone, options) {
7206 const uses = clone.querySelectorAll ? clone.querySelectorAll('use') : [];
7207 if (uses.length === 0) {
7208 return clone;
7209 }
7210 const processedDefs = {};
7211 for (let i = 0; i < uses.length; i++) {
7212 const use = uses[i];
7213 const id = use.getAttribute('xlink:href');
7214 if (id) {
7215 const exist = clone.querySelector(id);
7216 const definition = document.querySelector(id);
7217 if (!exist && definition && !processedDefs[id]) {
7218 // eslint-disable-next-line no-await-in-loop
7219 processedDefs[id] = (await cloneNode(definition, options, true));
7220 }
7221 }
7222 }
7223 const nodes = Object.values(processedDefs);
7224 if (nodes.length) {
7225 const ns = 'http://www.w3.org/1999/xhtml';
7226 const svg = document.createElementNS(ns, 'svg');
7227 svg.setAttribute('xmlns', ns);
7228 svg.style.position = 'absolute';
7229 svg.style.width = '0';
7230 svg.style.height = '0';
7231 svg.style.overflow = 'hidden';
7232 svg.style.display = 'none';
7233 const defs = document.createElementNS(ns, 'defs');
7234 svg.appendChild(defs);
7235 for (let i = 0; i < nodes.length; i++) {
7236 defs.appendChild(nodes[i]);
7237 }
7238 clone.appendChild(svg);
7239 }
7240 return clone;
7241 }
7242 async function cloneNode(node, options, isRoot) {
7243 if (!isRoot && options.filter && !options.filter(node)) {
7244 return null;
7245 }
7246 return Promise.resolve(node)
7247 .then((clonedNode) => cloneSingleNode(clonedNode, options))
7248 .then((clonedNode) => cloneChildren(node, clonedNode, options))
7249 .then((clonedNode) => decorate(node, clonedNode))
7250 .then((clonedNode) => ensureSVGSymbols(clonedNode, options));
7251 }
7252 //# sourceMappingURL=clone-node.js.map
7253
7254 /***/ }),
7255
7256 /***/ "../node_modules/html-to-image/es/clone-pseudos.js":
7257 /*!*********************************************************!*\
7258 !*** ../node_modules/html-to-image/es/clone-pseudos.js ***!
7259 \*********************************************************/
7260 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7261
7262 "use strict";
7263 __webpack_require__.r(__webpack_exports__);
7264 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7265 /* harmony export */ clonePseudoElements: () => (/* binding */ clonePseudoElements)
7266 /* harmony export */ });
7267 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7268
7269 function formatCSSText(style) {
7270 const content = style.getPropertyValue('content');
7271 return `${style.cssText} content: '${content.replace(/'|"/g, '')}';`;
7272 }
7273 function formatCSSProperties(style) {
7274 return (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(style)
7275 .map((name) => {
7276 const value = style.getPropertyValue(name);
7277 const priority = style.getPropertyPriority(name);
7278 return `${name}: ${value}${priority ? ' !important' : ''};`;
7279 })
7280 .join(' ');
7281 }
7282 function getPseudoElementStyle(className, pseudo, style) {
7283 const selector = `.${className}:${pseudo}`;
7284 const cssText = style.cssText
7285 ? formatCSSText(style)
7286 : formatCSSProperties(style);
7287 return document.createTextNode(`${selector}{${cssText}}`);
7288 }
7289 function clonePseudoElement(nativeNode, clonedNode, pseudo) {
7290 const style = window.getComputedStyle(nativeNode, pseudo);
7291 const content = style.getPropertyValue('content');
7292 if (content === '' || content === 'none') {
7293 return;
7294 }
7295 const className = (0,_util__WEBPACK_IMPORTED_MODULE_0__.uuid)();
7296 try {
7297 clonedNode.className = `${clonedNode.className} ${className}`;
7298 }
7299 catch (err) {
7300 return;
7301 }
7302 const styleElement = document.createElement('style');
7303 styleElement.appendChild(getPseudoElementStyle(className, pseudo, style));
7304 clonedNode.appendChild(styleElement);
7305 }
7306 function clonePseudoElements(nativeNode, clonedNode) {
7307 clonePseudoElement(nativeNode, clonedNode, ':before');
7308 clonePseudoElement(nativeNode, clonedNode, ':after');
7309 }
7310 //# sourceMappingURL=clone-pseudos.js.map
7311
7312 /***/ }),
7313
7314 /***/ "../node_modules/html-to-image/es/dataurl.js":
7315 /*!***************************************************!*\
7316 !*** ../node_modules/html-to-image/es/dataurl.js ***!
7317 \***************************************************/
7318 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7319
7320 "use strict";
7321 __webpack_require__.r(__webpack_exports__);
7322 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7323 /* harmony export */ fetchAsDataURL: () => (/* binding */ fetchAsDataURL),
7324 /* harmony export */ isDataUrl: () => (/* binding */ isDataUrl),
7325 /* harmony export */ makeDataUrl: () => (/* binding */ makeDataUrl),
7326 /* harmony export */ resourceToDataURL: () => (/* binding */ resourceToDataURL)
7327 /* harmony export */ });
7328 function getContentFromDataUrl(dataURL) {
7329 return dataURL.split(/,/)[1];
7330 }
7331 function isDataUrl(url) {
7332 return url.search(/^(data:)/) !== -1;
7333 }
7334 function makeDataUrl(content, mimeType) {
7335 return `data:${mimeType};base64,${content}`;
7336 }
7337 async function fetchAsDataURL(url, init, process) {
7338 const res = await fetch(url, init);
7339 if (res.status === 404) {
7340 throw new Error(`Resource "${res.url}" not found`);
7341 }
7342 const blob = await res.blob();
7343 return new Promise((resolve, reject) => {
7344 const reader = new FileReader();
7345 reader.onerror = reject;
7346 reader.onloadend = () => {
7347 try {
7348 resolve(process({ res, result: reader.result }));
7349 }
7350 catch (error) {
7351 reject(error);
7352 }
7353 };
7354 reader.readAsDataURL(blob);
7355 });
7356 }
7357 const cache = {};
7358 function getCacheKey(url, contentType, includeQueryParams) {
7359 let key = url.replace(/\?.*/, '');
7360 if (includeQueryParams) {
7361 key = url;
7362 }
7363 // font resource
7364 if (/ttf|otf|eot|woff2?/i.test(key)) {
7365 key = key.replace(/.*\//, '');
7366 }
7367 return contentType ? `[${contentType}]${key}` : key;
7368 }
7369 async function resourceToDataURL(resourceUrl, contentType, options) {
7370 const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);
7371 if (cache[cacheKey] != null) {
7372 return cache[cacheKey];
7373 }
7374 // ref: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache
7375 if (options.cacheBust) {
7376 // eslint-disable-next-line no-param-reassign
7377 resourceUrl += (/\?/.test(resourceUrl) ? '&' : '?') + new Date().getTime();
7378 }
7379 let dataURL;
7380 try {
7381 const content = await fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result }) => {
7382 if (!contentType) {
7383 // eslint-disable-next-line no-param-reassign
7384 contentType = res.headers.get('Content-Type') || '';
7385 }
7386 return getContentFromDataUrl(result);
7387 });
7388 dataURL = makeDataUrl(content, contentType);
7389 }
7390 catch (error) {
7391 dataURL = options.imagePlaceholder || '';
7392 let msg = `Failed to fetch resource: ${resourceUrl}`;
7393 if (error) {
7394 msg = typeof error === 'string' ? error : error.message;
7395 }
7396 if (msg) {
7397 console.warn(msg);
7398 }
7399 }
7400 cache[cacheKey] = dataURL;
7401 return dataURL;
7402 }
7403 //# sourceMappingURL=dataurl.js.map
7404
7405 /***/ }),
7406
7407 /***/ "../node_modules/html-to-image/es/embed-images.js":
7408 /*!********************************************************!*\
7409 !*** ../node_modules/html-to-image/es/embed-images.js ***!
7410 \********************************************************/
7411 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7412
7413 "use strict";
7414 __webpack_require__.r(__webpack_exports__);
7415 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7416 /* harmony export */ embedImages: () => (/* binding */ embedImages)
7417 /* harmony export */ });
7418 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7419 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7420 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7421 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7422
7423
7424
7425
7426 async function embedProp(propName, node, options) {
7427 var _a;
7428 const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);
7429 if (propValue) {
7430 const cssString = await (0,_embed_resources__WEBPACK_IMPORTED_MODULE_0__.embedResources)(propValue, null, options);
7431 node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));
7432 return true;
7433 }
7434 return false;
7435 }
7436 async function embedBackground(clonedNode, options) {
7437 if (!(await embedProp('background', clonedNode, options))) {
7438 await embedProp('background-image', clonedNode, options);
7439 }
7440 if (!(await embedProp('mask', clonedNode, options))) {
7441 await embedProp('mask-image', clonedNode, options);
7442 }
7443 }
7444 async function embedImageNode(clonedNode, options) {
7445 const isImageElement = (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, HTMLImageElement);
7446 if (!(isImageElement && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.src)) &&
7447 !((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, SVGImageElement) &&
7448 !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.href.baseVal))) {
7449 return;
7450 }
7451 const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;
7452 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(url, (0,_mimes__WEBPACK_IMPORTED_MODULE_3__.getMimeType)(url), options);
7453 await new Promise((resolve, reject) => {
7454 clonedNode.onload = resolve;
7455 clonedNode.onerror = reject;
7456 const image = clonedNode;
7457 if (image.decode) {
7458 image.decode = resolve;
7459 }
7460 if (image.loading === 'lazy') {
7461 image.loading = 'eager';
7462 }
7463 if (isImageElement) {
7464 clonedNode.srcset = '';
7465 clonedNode.src = dataURL;
7466 }
7467 else {
7468 clonedNode.href.baseVal = dataURL;
7469 }
7470 });
7471 }
7472 async function embedChildren(clonedNode, options) {
7473 const children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(clonedNode.childNodes);
7474 const deferreds = children.map((child) => embedImages(child, options));
7475 await Promise.all(deferreds).then(() => clonedNode);
7476 }
7477 async function embedImages(clonedNode, options) {
7478 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7479 await embedBackground(clonedNode, options);
7480 await embedImageNode(clonedNode, options);
7481 await embedChildren(clonedNode, options);
7482 }
7483 }
7484 //# sourceMappingURL=embed-images.js.map
7485
7486 /***/ }),
7487
7488 /***/ "../node_modules/html-to-image/es/embed-resources.js":
7489 /*!***********************************************************!*\
7490 !*** ../node_modules/html-to-image/es/embed-resources.js ***!
7491 \***********************************************************/
7492 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7493
7494 "use strict";
7495 __webpack_require__.r(__webpack_exports__);
7496 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7497 /* harmony export */ embed: () => (/* binding */ embed),
7498 /* harmony export */ embedResources: () => (/* binding */ embedResources),
7499 /* harmony export */ parseURLs: () => (/* binding */ parseURLs),
7500 /* harmony export */ shouldEmbed: () => (/* binding */ shouldEmbed)
7501 /* harmony export */ });
7502 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7503 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7504 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7505
7506
7507
7508 const URL_REGEX = /url\((['"]?)([^'"]+?)\1\)/g;
7509 const URL_WITH_FORMAT_REGEX = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
7510 const FONT_SRC_REGEX = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
7511 function toRegex(url) {
7512 // eslint-disable-next-line no-useless-escape
7513 const escaped = url.replace(/([.*+?^${}()|\[\]\/\\])/g, '\\$1');
7514 return new RegExp(`(url\\(['"]?)(${escaped})(['"]?\\))`, 'g');
7515 }
7516 function parseURLs(cssText) {
7517 const urls = [];
7518 cssText.replace(URL_REGEX, (raw, quotation, url) => {
7519 urls.push(url);
7520 return raw;
7521 });
7522 return urls.filter((url) => !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(url));
7523 }
7524 async function embed(cssText, resourceURL, baseURL, options, getContentFromUrl) {
7525 try {
7526 const resolvedURL = baseURL ? (0,_util__WEBPACK_IMPORTED_MODULE_0__.resolveUrl)(resourceURL, baseURL) : resourceURL;
7527 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_1__.getMimeType)(resourceURL);
7528 let dataURL;
7529 if (getContentFromUrl) {
7530 const content = await getContentFromUrl(resolvedURL);
7531 dataURL = (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.makeDataUrl)(content, contentType);
7532 }
7533 else {
7534 dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(resolvedURL, contentType, options);
7535 }
7536 return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);
7537 }
7538 catch (error) {
7539 // pass
7540 }
7541 return cssText;
7542 }
7543 function filterPreferredFontFormat(str, { preferredFontFormat }) {
7544 return !preferredFontFormat
7545 ? str
7546 : str.replace(FONT_SRC_REGEX, (match) => {
7547 // eslint-disable-next-line no-constant-condition
7548 while (true) {
7549 const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];
7550 if (!format) {
7551 return '';
7552 }
7553 if (format === preferredFontFormat) {
7554 return `src: ${src};`;
7555 }
7556 }
7557 });
7558 }
7559 function shouldEmbed(url) {
7560 return url.search(URL_REGEX) !== -1;
7561 }
7562 async function embedResources(cssText, baseUrl, options) {
7563 if (!shouldEmbed(cssText)) {
7564 return cssText;
7565 }
7566 const filteredCSSText = filterPreferredFontFormat(cssText, options);
7567 const urls = parseURLs(filteredCSSText);
7568 return urls.reduce((deferred, url) => deferred.then((css) => embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));
7569 }
7570 //# sourceMappingURL=embed-resources.js.map
7571
7572 /***/ }),
7573
7574 /***/ "../node_modules/html-to-image/es/embed-webfonts.js":
7575 /*!**********************************************************!*\
7576 !*** ../node_modules/html-to-image/es/embed-webfonts.js ***!
7577 \**********************************************************/
7578 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7579
7580 "use strict";
7581 __webpack_require__.r(__webpack_exports__);
7582 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7583 /* harmony export */ embedWebFonts: () => (/* binding */ embedWebFonts),
7584 /* harmony export */ getWebFontCSS: () => (/* binding */ getWebFontCSS)
7585 /* harmony export */ });
7586 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7587 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7588 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7589
7590
7591
7592 const cssFetchCache = {};
7593 async function fetchCSS(url) {
7594 let cache = cssFetchCache[url];
7595 if (cache != null) {
7596 return cache;
7597 }
7598 const res = await fetch(url);
7599 const cssText = await res.text();
7600 cache = { url, cssText };
7601 cssFetchCache[url] = cache;
7602 return cache;
7603 }
7604 async function embedFonts(data, options) {
7605 let cssText = data.cssText;
7606 const regexUrl = /url\(["']?([^"')]+)["']?\)/g;
7607 const fontLocs = cssText.match(/url\([^)]+\)/g) || [];
7608 const loadFonts = fontLocs.map(async (loc) => {
7609 let url = loc.replace(regexUrl, '$1');
7610 if (!url.startsWith('https://')) {
7611 url = new URL(url, data.url).href;
7612 }
7613 return (0,_dataurl__WEBPACK_IMPORTED_MODULE_1__.fetchAsDataURL)(url, options.fetchRequestInit, ({ result }) => {
7614 cssText = cssText.replace(loc, `url(${result})`);
7615 return [loc, result];
7616 });
7617 });
7618 return Promise.all(loadFonts).then(() => cssText);
7619 }
7620 function parseCSS(source) {
7621 if (source == null) {
7622 return [];
7623 }
7624 const result = [];
7625 const commentsRegex = /(\/\*[\s\S]*?\*\/)/gi;
7626 // strip out comments
7627 let cssText = source.replace(commentsRegex, '');
7628 // eslint-disable-next-line prefer-regex-literals
7629 const keyframesRegex = new RegExp('((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})', 'gi');
7630 // eslint-disable-next-line no-constant-condition
7631 while (true) {
7632 const matches = keyframesRegex.exec(cssText);
7633 if (matches === null) {
7634 break;
7635 }
7636 result.push(matches[0]);
7637 }
7638 cssText = cssText.replace(keyframesRegex, '');
7639 const importRegex = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi;
7640 // to match css & media queries together
7641 const combinedCSSRegex = '((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]' +
7642 '*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})';
7643 // unified regex
7644 const unifiedRegex = new RegExp(combinedCSSRegex, 'gi');
7645 // eslint-disable-next-line no-constant-condition
7646 while (true) {
7647 let matches = importRegex.exec(cssText);
7648 if (matches === null) {
7649 matches = unifiedRegex.exec(cssText);
7650 if (matches === null) {
7651 break;
7652 }
7653 else {
7654 importRegex.lastIndex = unifiedRegex.lastIndex;
7655 }
7656 }
7657 else {
7658 unifiedRegex.lastIndex = importRegex.lastIndex;
7659 }
7660 result.push(matches[0]);
7661 }
7662 return result;
7663 }
7664 async function getCSSRules(styleSheets, options) {
7665 const ret = [];
7666 const deferreds = [];
7667 // First loop inlines imports
7668 styleSheets.forEach((sheet) => {
7669 if ('cssRules' in sheet) {
7670 try {
7671 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item, index) => {
7672 if (item.type === CSSRule.IMPORT_RULE) {
7673 let importIndex = index + 1;
7674 const url = item.href;
7675 const deferred = fetchCSS(url)
7676 .then((metadata) => embedFonts(metadata, options))
7677 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7678 try {
7679 sheet.insertRule(rule, rule.startsWith('@import')
7680 ? (importIndex += 1)
7681 : sheet.cssRules.length);
7682 }
7683 catch (error) {
7684 console.error('Error inserting rule from remote css', {
7685 rule,
7686 error,
7687 });
7688 }
7689 }))
7690 .catch((e) => {
7691 console.error('Error loading remote css', e.toString());
7692 });
7693 deferreds.push(deferred);
7694 }
7695 });
7696 }
7697 catch (e) {
7698 const inline = styleSheets.find((a) => a.href == null) || document.styleSheets[0];
7699 if (sheet.href != null) {
7700 deferreds.push(fetchCSS(sheet.href)
7701 .then((metadata) => embedFonts(metadata, options))
7702 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7703 inline.insertRule(rule, sheet.cssRules.length);
7704 }))
7705 .catch((err) => {
7706 console.error('Error loading remote stylesheet', err);
7707 }));
7708 }
7709 console.error('Error inlining remote css file', e);
7710 }
7711 }
7712 });
7713 return Promise.all(deferreds).then(() => {
7714 // Second loop parses rules
7715 styleSheets.forEach((sheet) => {
7716 if ('cssRules' in sheet) {
7717 try {
7718 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item) => {
7719 ret.push(item);
7720 });
7721 }
7722 catch (e) {
7723 console.error(`Error while reading CSS rules from ${sheet.href}`, e);
7724 }
7725 }
7726 });
7727 return ret;
7728 });
7729 }
7730 function getWebFontRules(cssRules) {
7731 return cssRules
7732 .filter((rule) => rule.type === CSSRule.FONT_FACE_RULE)
7733 .filter((rule) => (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.shouldEmbed)(rule.style.getPropertyValue('src')));
7734 }
7735 async function parseWebFontRules(node, options) {
7736 if (node.ownerDocument == null) {
7737 throw new Error('Provided element is not within a Document');
7738 }
7739 const styleSheets = (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(node.ownerDocument.styleSheets);
7740 const cssRules = await getCSSRules(styleSheets, options);
7741 return getWebFontRules(cssRules);
7742 }
7743 async function getWebFontCSS(node, options) {
7744 const rules = await parseWebFontRules(node, options);
7745 const cssTexts = await Promise.all(rules.map((rule) => {
7746 const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;
7747 return (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.embedResources)(rule.cssText, baseUrl, options);
7748 }));
7749 return cssTexts.join('\n');
7750 }
7751 async function embedWebFonts(clonedNode, options) {
7752 const cssText = options.fontEmbedCSS != null
7753 ? options.fontEmbedCSS
7754 : options.skipFonts
7755 ? null
7756 : await getWebFontCSS(clonedNode, options);
7757 if (cssText) {
7758 const styleNode = document.createElement('style');
7759 const sytleContent = document.createTextNode(cssText);
7760 styleNode.appendChild(sytleContent);
7761 if (clonedNode.firstChild) {
7762 clonedNode.insertBefore(styleNode, clonedNode.firstChild);
7763 }
7764 else {
7765 clonedNode.appendChild(styleNode);
7766 }
7767 }
7768 }
7769 //# sourceMappingURL=embed-webfonts.js.map
7770
7771 /***/ }),
7772
7773 /***/ "../node_modules/html-to-image/es/index.js":
7774 /*!*************************************************!*\
7775 !*** ../node_modules/html-to-image/es/index.js ***!
7776 \*************************************************/
7777 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7778
7779 "use strict";
7780 __webpack_require__.r(__webpack_exports__);
7781 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7782 /* harmony export */ getFontEmbedCSS: () => (/* binding */ getFontEmbedCSS),
7783 /* harmony export */ toBlob: () => (/* binding */ toBlob),
7784 /* harmony export */ toCanvas: () => (/* binding */ toCanvas),
7785 /* harmony export */ toJpeg: () => (/* binding */ toJpeg),
7786 /* harmony export */ toPixelData: () => (/* binding */ toPixelData),
7787 /* harmony export */ toPng: () => (/* binding */ toPng),
7788 /* harmony export */ toSvg: () => (/* binding */ toSvg)
7789 /* harmony export */ });
7790 /* harmony import */ var _clone_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-node */ "../node_modules/html-to-image/es/clone-node.js");
7791 /* harmony import */ var _embed_images__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./embed-images */ "../node_modules/html-to-image/es/embed-images.js");
7792 /* harmony import */ var _apply_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apply-style */ "../node_modules/html-to-image/es/apply-style.js");
7793 /* harmony import */ var _embed_webfonts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./embed-webfonts */ "../node_modules/html-to-image/es/embed-webfonts.js");
7794 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7795
7796
7797
7798
7799
7800 async function toSvg(node, options = {}) {
7801 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7802 const clonedNode = (await (0,_clone_node__WEBPACK_IMPORTED_MODULE_0__.cloneNode)(node, options, true));
7803 await (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.embedWebFonts)(clonedNode, options);
7804 await (0,_embed_images__WEBPACK_IMPORTED_MODULE_1__.embedImages)(clonedNode, options);
7805 (0,_apply_style__WEBPACK_IMPORTED_MODULE_2__.applyStyle)(clonedNode, options);
7806 const datauri = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.nodeToDataURL)(clonedNode, width, height);
7807 return datauri;
7808 }
7809 async function toCanvas(node, options = {}) {
7810 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7811 const svg = await toSvg(node, options);
7812 const img = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.createImage)(svg);
7813 const canvas = document.createElement('canvas');
7814 const context = canvas.getContext('2d');
7815 const ratio = options.pixelRatio || (0,_util__WEBPACK_IMPORTED_MODULE_4__.getPixelRatio)();
7816 const canvasWidth = options.canvasWidth || width;
7817 const canvasHeight = options.canvasHeight || height;
7818 canvas.width = canvasWidth * ratio;
7819 canvas.height = canvasHeight * ratio;
7820 if (!options.skipAutoScale) {
7821 (0,_util__WEBPACK_IMPORTED_MODULE_4__.checkCanvasDimensions)(canvas);
7822 }
7823 canvas.style.width = `${canvasWidth}`;
7824 canvas.style.height = `${canvasHeight}`;
7825 if (options.backgroundColor) {
7826 context.fillStyle = options.backgroundColor;
7827 context.fillRect(0, 0, canvas.width, canvas.height);
7828 }
7829 context.drawImage(img, 0, 0, canvas.width, canvas.height);
7830 return canvas;
7831 }
7832 async function toPixelData(node, options = {}) {
7833 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7834 const canvas = await toCanvas(node, options);
7835 const ctx = canvas.getContext('2d');
7836 return ctx.getImageData(0, 0, width, height).data;
7837 }
7838 async function toPng(node, options = {}) {
7839 const canvas = await toCanvas(node, options);
7840 return canvas.toDataURL();
7841 }
7842 async function toJpeg(node, options = {}) {
7843 const canvas = await toCanvas(node, options);
7844 return canvas.toDataURL('image/jpeg', options.quality || 1);
7845 }
7846 async function toBlob(node, options = {}) {
7847 const canvas = await toCanvas(node, options);
7848 const blob = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.canvasToBlob)(canvas);
7849 return blob;
7850 }
7851 async function getFontEmbedCSS(node, options = {}) {
7852 return (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.getWebFontCSS)(node, options);
7853 }
7854 //# sourceMappingURL=index.js.map
7855
7856 /***/ }),
7857
7858 /***/ "../node_modules/html-to-image/es/mimes.js":
7859 /*!*************************************************!*\
7860 !*** ../node_modules/html-to-image/es/mimes.js ***!
7861 \*************************************************/
7862 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7863
7864 "use strict";
7865 __webpack_require__.r(__webpack_exports__);
7866 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7867 /* harmony export */ getMimeType: () => (/* binding */ getMimeType)
7868 /* harmony export */ });
7869 const WOFF = 'application/font-woff';
7870 const JPEG = 'image/jpeg';
7871 const mimes = {
7872 woff: WOFF,
7873 woff2: WOFF,
7874 ttf: 'application/font-truetype',
7875 eot: 'application/vnd.ms-fontobject',
7876 png: 'image/png',
7877 jpg: JPEG,
7878 jpeg: JPEG,
7879 gif: 'image/gif',
7880 tiff: 'image/tiff',
7881 svg: 'image/svg+xml',
7882 webp: 'image/webp',
7883 };
7884 function getExtension(url) {
7885 const match = /\.([^./]*?)$/g.exec(url);
7886 return match ? match[1] : '';
7887 }
7888 function getMimeType(url) {
7889 const extension = getExtension(url).toLowerCase();
7890 return mimes[extension] || '';
7891 }
7892 //# sourceMappingURL=mimes.js.map
7893
7894 /***/ }),
7895
7896 /***/ "../node_modules/html-to-image/es/util.js":
7897 /*!************************************************!*\
7898 !*** ../node_modules/html-to-image/es/util.js ***!
7899 \************************************************/
7900 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7901
7902 "use strict";
7903 __webpack_require__.r(__webpack_exports__);
7904 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7905 /* harmony export */ canvasToBlob: () => (/* binding */ canvasToBlob),
7906 /* harmony export */ checkCanvasDimensions: () => (/* binding */ checkCanvasDimensions),
7907 /* harmony export */ createImage: () => (/* binding */ createImage),
7908 /* harmony export */ delay: () => (/* binding */ delay),
7909 /* harmony export */ getImageSize: () => (/* binding */ getImageSize),
7910 /* harmony export */ getPixelRatio: () => (/* binding */ getPixelRatio),
7911 /* harmony export */ isInstanceOfElement: () => (/* binding */ isInstanceOfElement),
7912 /* harmony export */ nodeToDataURL: () => (/* binding */ nodeToDataURL),
7913 /* harmony export */ resolveUrl: () => (/* binding */ resolveUrl),
7914 /* harmony export */ svgToDataURL: () => (/* binding */ svgToDataURL),
7915 /* harmony export */ toArray: () => (/* binding */ toArray),
7916 /* harmony export */ uuid: () => (/* binding */ uuid)
7917 /* harmony export */ });
7918 function resolveUrl(url, baseUrl) {
7919 // url is absolute already
7920 if (url.match(/^[a-z]+:\/\//i)) {
7921 return url;
7922 }
7923 // url is absolute already, without protocol
7924 if (url.match(/^\/\//)) {
7925 return window.location.protocol + url;
7926 }
7927 // dataURI, mailto:, tel:, etc.
7928 if (url.match(/^[a-z]+:/i)) {
7929 return url;
7930 }
7931 const doc = document.implementation.createHTMLDocument();
7932 const base = doc.createElement('base');
7933 const a = doc.createElement('a');
7934 doc.head.appendChild(base);
7935 doc.body.appendChild(a);
7936 if (baseUrl) {
7937 base.href = baseUrl;
7938 }
7939 a.href = url;
7940 return a.href;
7941 }
7942 const uuid = (() => {
7943 // generate uuid for className of pseudo elements.
7944 // We should not use GUIDs, otherwise pseudo elements sometimes cannot be captured.
7945 let counter = 0;
7946 // ref: http://stackoverflow.com/a/6248722/2519373
7947 const random = () =>
7948 // eslint-disable-next-line no-bitwise
7949 `0000${((Math.random() * 36 ** 4) << 0).toString(36)}`.slice(-4);
7950 return () => {
7951 counter += 1;
7952 return `u${random()}${counter}`;
7953 };
7954 })();
7955 function delay(ms) {
7956 return (args) => new Promise((resolve) => {
7957 setTimeout(() => resolve(args), ms);
7958 });
7959 }
7960 function toArray(arrayLike) {
7961 const arr = [];
7962 for (let i = 0, l = arrayLike.length; i < l; i++) {
7963 arr.push(arrayLike[i]);
7964 }
7965 return arr;
7966 }
7967 function px(node, styleProperty) {
7968 const win = node.ownerDocument.defaultView || window;
7969 const val = win.getComputedStyle(node).getPropertyValue(styleProperty);
7970 return val ? parseFloat(val.replace('px', '')) : 0;
7971 }
7972 function getNodeWidth(node) {
7973 const leftBorder = px(node, 'border-left-width');
7974 const rightBorder = px(node, 'border-right-width');
7975 return node.clientWidth + leftBorder + rightBorder;
7976 }
7977 function getNodeHeight(node) {
7978 const topBorder = px(node, 'border-top-width');
7979 const bottomBorder = px(node, 'border-bottom-width');
7980 return node.clientHeight + topBorder + bottomBorder;
7981 }
7982 function getImageSize(targetNode, options = {}) {
7983 const width = options.width || getNodeWidth(targetNode);
7984 const height = options.height || getNodeHeight(targetNode);
7985 return { width, height };
7986 }
7987 function getPixelRatio() {
7988 let ratio;
7989 let FINAL_PROCESS;
7990 try {
7991 FINAL_PROCESS = process;
7992 }
7993 catch (e) {
7994 // pass
7995 }
7996 const val = FINAL_PROCESS && FINAL_PROCESS.env
7997 ? FINAL_PROCESS.env.devicePixelRatio
7998 : null;
7999 if (val) {
8000 ratio = parseInt(val, 10);
8001 if (Number.isNaN(ratio)) {
8002 ratio = 1;
8003 }
8004 }
8005 return ratio || window.devicePixelRatio || 1;
8006 }
8007 // @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas#maximum_canvas_size
8008 const canvasDimensionLimit = 16384;
8009 function checkCanvasDimensions(canvas) {
8010 if (canvas.width > canvasDimensionLimit ||
8011 canvas.height > canvasDimensionLimit) {
8012 if (canvas.width > canvasDimensionLimit &&
8013 canvas.height > canvasDimensionLimit) {
8014 if (canvas.width > canvas.height) {
8015 canvas.height *= canvasDimensionLimit / canvas.width;
8016 canvas.width = canvasDimensionLimit;
8017 }
8018 else {
8019 canvas.width *= canvasDimensionLimit / canvas.height;
8020 canvas.height = canvasDimensionLimit;
8021 }
8022 }
8023 else if (canvas.width > canvasDimensionLimit) {
8024 canvas.height *= canvasDimensionLimit / canvas.width;
8025 canvas.width = canvasDimensionLimit;
8026 }
8027 else {
8028 canvas.width *= canvasDimensionLimit / canvas.height;
8029 canvas.height = canvasDimensionLimit;
8030 }
8031 }
8032 }
8033 function canvasToBlob(canvas, options = {}) {
8034 if (canvas.toBlob) {
8035 return new Promise((resolve) => {
8036 canvas.toBlob(resolve, options.type ? options.type : 'image/png', options.quality ? options.quality : 1);
8037 });
8038 }
8039 return new Promise((resolve) => {
8040 const binaryString = window.atob(canvas
8041 .toDataURL(options.type ? options.type : undefined, options.quality ? options.quality : undefined)
8042 .split(',')[1]);
8043 const len = binaryString.length;
8044 const binaryArray = new Uint8Array(len);
8045 for (let i = 0; i < len; i += 1) {
8046 binaryArray[i] = binaryString.charCodeAt(i);
8047 }
8048 resolve(new Blob([binaryArray], {
8049 type: options.type ? options.type : 'image/png',
8050 }));
8051 });
8052 }
8053 function createImage(url) {
8054 return new Promise((resolve, reject) => {
8055 const img = new Image();
8056 img.decode = () => resolve(img);
8057 img.onload = () => resolve(img);
8058 img.onerror = reject;
8059 img.crossOrigin = 'anonymous';
8060 img.decoding = 'async';
8061 img.src = url;
8062 });
8063 }
8064 async function svgToDataURL(svg) {
8065 return Promise.resolve()
8066 .then(() => new XMLSerializer().serializeToString(svg))
8067 .then(encodeURIComponent)
8068 .then((html) => `data:image/svg+xml;charset=utf-8,${html}`);
8069 }
8070 async function nodeToDataURL(node, width, height) {
8071 const xmlns = 'http://www.w3.org/2000/svg';
8072 const svg = document.createElementNS(xmlns, 'svg');
8073 const foreignObject = document.createElementNS(xmlns, 'foreignObject');
8074 svg.setAttribute('width', `${width}`);
8075 svg.setAttribute('height', `${height}`);
8076 svg.setAttribute('viewBox', `0 0 ${width} ${height}`);
8077 foreignObject.setAttribute('width', '100%');
8078 foreignObject.setAttribute('height', '100%');
8079 foreignObject.setAttribute('x', '0');
8080 foreignObject.setAttribute('y', '0');
8081 foreignObject.setAttribute('externalResourcesRequired', 'true');
8082 svg.appendChild(foreignObject);
8083 foreignObject.appendChild(node);
8084 return svgToDataURL(svg);
8085 }
8086 const isInstanceOfElement = (node, instance) => {
8087 if (node instanceof instance)
8088 return true;
8089 const nodePrototype = Object.getPrototypeOf(node);
8090 if (nodePrototype === null)
8091 return false;
8092 return (nodePrototype.constructor.name === instance.name ||
8093 isInstanceOfElement(nodePrototype, instance));
8094 };
8095 //# sourceMappingURL=util.js.map
8096
8097 /***/ }),
8098
8099 /***/ "../node_modules/object-assign/index.js":
8100 /*!**********************************************!*\
8101 !*** ../node_modules/object-assign/index.js ***!
8102 \**********************************************/
8103 /***/ ((module) => {
8104
8105 "use strict";
8106 /*
8107 object-assign
8108 (c) Sindre Sorhus
8109 @license MIT
8110 */
8111
8112
8113 /* eslint-disable no-unused-vars */
8114 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
8115 var hasOwnProperty = Object.prototype.hasOwnProperty;
8116 var propIsEnumerable = Object.prototype.propertyIsEnumerable;
8117
8118 function toObject(val) {
8119 if (val === null || val === undefined) {
8120 throw new TypeError('Object.assign cannot be called with null or undefined');
8121 }
8122
8123 return Object(val);
8124 }
8125
8126 function shouldUseNative() {
8127 try {
8128 if (!Object.assign) {
8129 return false;
8130 }
8131
8132 // Detect buggy property enumeration order in older V8 versions.
8133
8134 // https://bugs.chromium.org/p/v8/issues/detail?id=4118
8135 var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
8136 test1[5] = 'de';
8137 if (Object.getOwnPropertyNames(test1)[0] === '5') {
8138 return false;
8139 }
8140
8141 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8142 var test2 = {};
8143 for (var i = 0; i < 10; i++) {
8144 test2['_' + String.fromCharCode(i)] = i;
8145 }
8146 var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
8147 return test2[n];
8148 });
8149 if (order2.join('') !== '0123456789') {
8150 return false;
8151 }
8152
8153 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8154 var test3 = {};
8155 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
8156 test3[letter] = letter;
8157 });
8158 if (Object.keys(Object.assign({}, test3)).join('') !==
8159 'abcdefghijklmnopqrst') {
8160 return false;
8161 }
8162
8163 return true;
8164 } catch (err) {
8165 // We don't expect any of the above to throw, but better to be safe.
8166 return false;
8167 }
8168 }
8169
8170 module.exports = shouldUseNative() ? Object.assign : function (target, source) {
8171 var from;
8172 var to = toObject(target);
8173 var symbols;
8174
8175 for (var s = 1; s < arguments.length; s++) {
8176 from = Object(arguments[s]);
8177
8178 for (var key in from) {
8179 if (hasOwnProperty.call(from, key)) {
8180 to[key] = from[key];
8181 }
8182 }
8183
8184 if (getOwnPropertySymbols) {
8185 symbols = getOwnPropertySymbols(from);
8186 for (var i = 0; i < symbols.length; i++) {
8187 if (propIsEnumerable.call(from, symbols[i])) {
8188 to[symbols[i]] = from[symbols[i]];
8189 }
8190 }
8191 }
8192 }
8193
8194 return to;
8195 };
8196
8197
8198 /***/ }),
8199
8200 /***/ "../node_modules/prop-types/checkPropTypes.js":
8201 /*!****************************************************!*\
8202 !*** ../node_modules/prop-types/checkPropTypes.js ***!
8203 \****************************************************/
8204 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8205
8206 "use strict";
8207 /**
8208 * Copyright (c) 2013-present, Facebook, Inc.
8209 *
8210 * This source code is licensed under the MIT license found in the
8211 * LICENSE file in the root directory of this source tree.
8212 */
8213
8214
8215
8216 var printWarning = function() {};
8217
8218 if (true) {
8219 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8220 var loggedTypeFailures = {};
8221 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8222
8223 printWarning = function(text) {
8224 var message = 'Warning: ' + text;
8225 if (typeof console !== 'undefined') {
8226 console.error(message);
8227 }
8228 try {
8229 // --- Welcome to debugging React ---
8230 // This error was thrown as a convenience so that you can use this stack
8231 // to find the callsite that caused this warning to fire.
8232 throw new Error(message);
8233 } catch (x) { /**/ }
8234 };
8235 }
8236
8237 /**
8238 * Assert that the values match with the type specs.
8239 * Error messages are memorized and will only be shown once.
8240 *
8241 * @param {object} typeSpecs Map of name to a ReactPropType
8242 * @param {object} values Runtime values that need to be type-checked
8243 * @param {string} location e.g. "prop", "context", "child context"
8244 * @param {string} componentName Name of the component for error messages.
8245 * @param {?Function} getStack Returns the component stack.
8246 * @private
8247 */
8248 function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
8249 if (true) {
8250 for (var typeSpecName in typeSpecs) {
8251 if (has(typeSpecs, typeSpecName)) {
8252 var error;
8253 // Prop type validation may throw. In case they do, we don't want to
8254 // fail the render phase where it didn't fail before. So we log it.
8255 // After these have been cleaned up, we'll let them throw.
8256 try {
8257 // This is intentionally an invariant that gets caught. It's the same
8258 // behavior as without this statement except with a better message.
8259 if (typeof typeSpecs[typeSpecName] !== 'function') {
8260 var err = Error(
8261 (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
8262 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
8263 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
8264 );
8265 err.name = 'Invariant Violation';
8266 throw err;
8267 }
8268 error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
8269 } catch (ex) {
8270 error = ex;
8271 }
8272 if (error && !(error instanceof Error)) {
8273 printWarning(
8274 (componentName || 'React class') + ': type specification of ' +
8275 location + ' `' + typeSpecName + '` is invalid; the type checker ' +
8276 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
8277 'You may have forgotten to pass an argument to the type checker ' +
8278 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
8279 'shape all require an argument).'
8280 );
8281 }
8282 if (error instanceof Error && !(error.message in loggedTypeFailures)) {
8283 // Only monitor this failure once because there tends to be a lot of the
8284 // same error.
8285 loggedTypeFailures[error.message] = true;
8286
8287 var stack = getStack ? getStack() : '';
8288
8289 printWarning(
8290 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
8291 );
8292 }
8293 }
8294 }
8295 }
8296 }
8297
8298 /**
8299 * Resets warning cache when testing.
8300 *
8301 * @private
8302 */
8303 checkPropTypes.resetWarningCache = function() {
8304 if (true) {
8305 loggedTypeFailures = {};
8306 }
8307 }
8308
8309 module.exports = checkPropTypes;
8310
8311
8312 /***/ }),
8313
8314 /***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
8315 /*!*************************************************************!*\
8316 !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
8317 \*************************************************************/
8318 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8319
8320 "use strict";
8321 /**
8322 * Copyright (c) 2013-present, Facebook, Inc.
8323 *
8324 * This source code is licensed under the MIT license found in the
8325 * LICENSE file in the root directory of this source tree.
8326 */
8327
8328
8329
8330 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8331 var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
8332
8333 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8334 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8335 var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
8336
8337 var printWarning = function() {};
8338
8339 if (true) {
8340 printWarning = function(text) {
8341 var message = 'Warning: ' + text;
8342 if (typeof console !== 'undefined') {
8343 console.error(message);
8344 }
8345 try {
8346 // --- Welcome to debugging React ---
8347 // This error was thrown as a convenience so that you can use this stack
8348 // to find the callsite that caused this warning to fire.
8349 throw new Error(message);
8350 } catch (x) {}
8351 };
8352 }
8353
8354 function emptyFunctionThatReturnsNull() {
8355 return null;
8356 }
8357
8358 module.exports = function(isValidElement, throwOnDirectAccess) {
8359 /* global Symbol */
8360 var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
8361 var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
8362
8363 /**
8364 * Returns the iterator method function contained on the iterable object.
8365 *
8366 * Be sure to invoke the function with the iterable as context:
8367 *
8368 * var iteratorFn = getIteratorFn(myIterable);
8369 * if (iteratorFn) {
8370 * var iterator = iteratorFn.call(myIterable);
8371 * ...
8372 * }
8373 *
8374 * @param {?object} maybeIterable
8375 * @return {?function}
8376 */
8377 function getIteratorFn(maybeIterable) {
8378 var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
8379 if (typeof iteratorFn === 'function') {
8380 return iteratorFn;
8381 }
8382 }
8383
8384 /**
8385 * Collection of methods that allow declaration and validation of props that are
8386 * supplied to React components. Example usage:
8387 *
8388 * var Props = require('ReactPropTypes');
8389 * var MyArticle = React.createClass({
8390 * propTypes: {
8391 * // An optional string prop named "description".
8392 * description: Props.string,
8393 *
8394 * // A required enum prop named "category".
8395 * category: Props.oneOf(['News','Photos']).isRequired,
8396 *
8397 * // A prop named "dialog" that requires an instance of Dialog.
8398 * dialog: Props.instanceOf(Dialog).isRequired
8399 * },
8400 * render: function() { ... }
8401 * });
8402 *
8403 * A more formal specification of how these methods are used:
8404 *
8405 * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
8406 * decl := ReactPropTypes.{type}(.isRequired)?
8407 *
8408 * Each and every declaration produces a function with the same signature. This
8409 * allows the creation of custom validation functions. For example:
8410 *
8411 * var MyLink = React.createClass({
8412 * propTypes: {
8413 * // An optional string or URI prop named "href".
8414 * href: function(props, propName, componentName) {
8415 * var propValue = props[propName];
8416 * if (propValue != null && typeof propValue !== 'string' &&
8417 * !(propValue instanceof URI)) {
8418 * return new Error(
8419 * 'Expected a string or an URI for ' + propName + ' in ' +
8420 * componentName
8421 * );
8422 * }
8423 * }
8424 * },
8425 * render: function() {...}
8426 * });
8427 *
8428 * @internal
8429 */
8430
8431 var ANONYMOUS = '<<anonymous>>';
8432
8433 // Important!
8434 // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
8435 var ReactPropTypes = {
8436 array: createPrimitiveTypeChecker('array'),
8437 bigint: createPrimitiveTypeChecker('bigint'),
8438 bool: createPrimitiveTypeChecker('boolean'),
8439 func: createPrimitiveTypeChecker('function'),
8440 number: createPrimitiveTypeChecker('number'),
8441 object: createPrimitiveTypeChecker('object'),
8442 string: createPrimitiveTypeChecker('string'),
8443 symbol: createPrimitiveTypeChecker('symbol'),
8444
8445 any: createAnyTypeChecker(),
8446 arrayOf: createArrayOfTypeChecker,
8447 element: createElementTypeChecker(),
8448 elementType: createElementTypeTypeChecker(),
8449 instanceOf: createInstanceTypeChecker,
8450 node: createNodeChecker(),
8451 objectOf: createObjectOfTypeChecker,
8452 oneOf: createEnumTypeChecker,
8453 oneOfType: createUnionTypeChecker,
8454 shape: createShapeTypeChecker,
8455 exact: createStrictShapeTypeChecker,
8456 };
8457
8458 /**
8459 * inlined Object.is polyfill to avoid requiring consumers ship their own
8460 * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
8461 */
8462 /*eslint-disable no-self-compare*/
8463 function is(x, y) {
8464 // SameValue algorithm
8465 if (x === y) {
8466 // Steps 1-5, 7-10
8467 // Steps 6.b-6.e: +0 != -0
8468 return x !== 0 || 1 / x === 1 / y;
8469 } else {
8470 // Step 6.a: NaN == NaN
8471 return x !== x && y !== y;
8472 }
8473 }
8474 /*eslint-enable no-self-compare*/
8475
8476 /**
8477 * We use an Error-like object for backward compatibility as people may call
8478 * PropTypes directly and inspect their output. However, we don't use real
8479 * Errors anymore. We don't inspect their stack anyway, and creating them
8480 * is prohibitively expensive if they are created too often, such as what
8481 * happens in oneOfType() for any type before the one that matched.
8482 */
8483 function PropTypeError(message, data) {
8484 this.message = message;
8485 this.data = data && typeof data === 'object' ? data: {};
8486 this.stack = '';
8487 }
8488 // Make `instanceof Error` still work for returned errors.
8489 PropTypeError.prototype = Error.prototype;
8490
8491 function createChainableTypeChecker(validate) {
8492 if (true) {
8493 var manualPropTypeCallCache = {};
8494 var manualPropTypeWarningCount = 0;
8495 }
8496 function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
8497 componentName = componentName || ANONYMOUS;
8498 propFullName = propFullName || propName;
8499
8500 if (secret !== ReactPropTypesSecret) {
8501 if (throwOnDirectAccess) {
8502 // New behavior only for users of `prop-types` package
8503 var err = new Error(
8504 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
8505 'Use `PropTypes.checkPropTypes()` to call them. ' +
8506 'Read more at http://fb.me/use-check-prop-types'
8507 );
8508 err.name = 'Invariant Violation';
8509 throw err;
8510 } else if ( true && typeof console !== 'undefined') {
8511 // Old behavior for people using React.PropTypes
8512 var cacheKey = componentName + ':' + propName;
8513 if (
8514 !manualPropTypeCallCache[cacheKey] &&
8515 // Avoid spamming the console because they are often not actionable except for lib authors
8516 manualPropTypeWarningCount < 3
8517 ) {
8518 printWarning(
8519 'You are manually calling a React.PropTypes validation ' +
8520 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
8521 'and will throw in the standalone `prop-types` package. ' +
8522 'You may be seeing this warning due to a third-party PropTypes ' +
8523 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
8524 );
8525 manualPropTypeCallCache[cacheKey] = true;
8526 manualPropTypeWarningCount++;
8527 }
8528 }
8529 }
8530 if (props[propName] == null) {
8531 if (isRequired) {
8532 if (props[propName] === null) {
8533 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
8534 }
8535 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
8536 }
8537 return null;
8538 } else {
8539 return validate(props, propName, componentName, location, propFullName);
8540 }
8541 }
8542
8543 var chainedCheckType = checkType.bind(null, false);
8544 chainedCheckType.isRequired = checkType.bind(null, true);
8545
8546 return chainedCheckType;
8547 }
8548
8549 function createPrimitiveTypeChecker(expectedType) {
8550 function validate(props, propName, componentName, location, propFullName, secret) {
8551 var propValue = props[propName];
8552 var propType = getPropType(propValue);
8553 if (propType !== expectedType) {
8554 // `propValue` being instance of, say, date/regexp, pass the 'object'
8555 // check, but we can offer a more precise error message here rather than
8556 // 'of type `object`'.
8557 var preciseType = getPreciseType(propValue);
8558
8559 return new PropTypeError(
8560 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),
8561 {expectedType: expectedType}
8562 );
8563 }
8564 return null;
8565 }
8566 return createChainableTypeChecker(validate);
8567 }
8568
8569 function createAnyTypeChecker() {
8570 return createChainableTypeChecker(emptyFunctionThatReturnsNull);
8571 }
8572
8573 function createArrayOfTypeChecker(typeChecker) {
8574 function validate(props, propName, componentName, location, propFullName) {
8575 if (typeof typeChecker !== 'function') {
8576 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
8577 }
8578 var propValue = props[propName];
8579 if (!Array.isArray(propValue)) {
8580 var propType = getPropType(propValue);
8581 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
8582 }
8583 for (var i = 0; i < propValue.length; i++) {
8584 var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
8585 if (error instanceof Error) {
8586 return error;
8587 }
8588 }
8589 return null;
8590 }
8591 return createChainableTypeChecker(validate);
8592 }
8593
8594 function createElementTypeChecker() {
8595 function validate(props, propName, componentName, location, propFullName) {
8596 var propValue = props[propName];
8597 if (!isValidElement(propValue)) {
8598 var propType = getPropType(propValue);
8599 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
8600 }
8601 return null;
8602 }
8603 return createChainableTypeChecker(validate);
8604 }
8605
8606 function createElementTypeTypeChecker() {
8607 function validate(props, propName, componentName, location, propFullName) {
8608 var propValue = props[propName];
8609 if (!ReactIs.isValidElementType(propValue)) {
8610 var propType = getPropType(propValue);
8611 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
8612 }
8613 return null;
8614 }
8615 return createChainableTypeChecker(validate);
8616 }
8617
8618 function createInstanceTypeChecker(expectedClass) {
8619 function validate(props, propName, componentName, location, propFullName) {
8620 if (!(props[propName] instanceof expectedClass)) {
8621 var expectedClassName = expectedClass.name || ANONYMOUS;
8622 var actualClassName = getClassName(props[propName]);
8623 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
8624 }
8625 return null;
8626 }
8627 return createChainableTypeChecker(validate);
8628 }
8629
8630 function createEnumTypeChecker(expectedValues) {
8631 if (!Array.isArray(expectedValues)) {
8632 if (true) {
8633 if (arguments.length > 1) {
8634 printWarning(
8635 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
8636 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
8637 );
8638 } else {
8639 printWarning('Invalid argument supplied to oneOf, expected an array.');
8640 }
8641 }
8642 return emptyFunctionThatReturnsNull;
8643 }
8644
8645 function validate(props, propName, componentName, location, propFullName) {
8646 var propValue = props[propName];
8647 for (var i = 0; i < expectedValues.length; i++) {
8648 if (is(propValue, expectedValues[i])) {
8649 return null;
8650 }
8651 }
8652
8653 var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
8654 var type = getPreciseType(value);
8655 if (type === 'symbol') {
8656 return String(value);
8657 }
8658 return value;
8659 });
8660 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
8661 }
8662 return createChainableTypeChecker(validate);
8663 }
8664
8665 function createObjectOfTypeChecker(typeChecker) {
8666 function validate(props, propName, componentName, location, propFullName) {
8667 if (typeof typeChecker !== 'function') {
8668 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
8669 }
8670 var propValue = props[propName];
8671 var propType = getPropType(propValue);
8672 if (propType !== 'object') {
8673 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
8674 }
8675 for (var key in propValue) {
8676 if (has(propValue, key)) {
8677 var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8678 if (error instanceof Error) {
8679 return error;
8680 }
8681 }
8682 }
8683 return null;
8684 }
8685 return createChainableTypeChecker(validate);
8686 }
8687
8688 function createUnionTypeChecker(arrayOfTypeCheckers) {
8689 if (!Array.isArray(arrayOfTypeCheckers)) {
8690 true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
8691 return emptyFunctionThatReturnsNull;
8692 }
8693
8694 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8695 var checker = arrayOfTypeCheckers[i];
8696 if (typeof checker !== 'function') {
8697 printWarning(
8698 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
8699 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
8700 );
8701 return emptyFunctionThatReturnsNull;
8702 }
8703 }
8704
8705 function validate(props, propName, componentName, location, propFullName) {
8706 var expectedTypes = [];
8707 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8708 var checker = arrayOfTypeCheckers[i];
8709 var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
8710 if (checkerResult == null) {
8711 return null;
8712 }
8713 if (checkerResult.data && has(checkerResult.data, 'expectedType')) {
8714 expectedTypes.push(checkerResult.data.expectedType);
8715 }
8716 }
8717 var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';
8718 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));
8719 }
8720 return createChainableTypeChecker(validate);
8721 }
8722
8723 function createNodeChecker() {
8724 function validate(props, propName, componentName, location, propFullName) {
8725 if (!isNode(props[propName])) {
8726 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
8727 }
8728 return null;
8729 }
8730 return createChainableTypeChecker(validate);
8731 }
8732
8733 function invalidValidatorError(componentName, location, propFullName, key, type) {
8734 return new PropTypeError(
8735 (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +
8736 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'
8737 );
8738 }
8739
8740 function createShapeTypeChecker(shapeTypes) {
8741 function validate(props, propName, componentName, location, propFullName) {
8742 var propValue = props[propName];
8743 var propType = getPropType(propValue);
8744 if (propType !== 'object') {
8745 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8746 }
8747 for (var key in shapeTypes) {
8748 var checker = shapeTypes[key];
8749 if (typeof checker !== 'function') {
8750 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8751 }
8752 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8753 if (error) {
8754 return error;
8755 }
8756 }
8757 return null;
8758 }
8759 return createChainableTypeChecker(validate);
8760 }
8761
8762 function createStrictShapeTypeChecker(shapeTypes) {
8763 function validate(props, propName, componentName, location, propFullName) {
8764 var propValue = props[propName];
8765 var propType = getPropType(propValue);
8766 if (propType !== 'object') {
8767 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8768 }
8769 // We need to check all keys in case some are required but missing from props.
8770 var allKeys = assign({}, props[propName], shapeTypes);
8771 for (var key in allKeys) {
8772 var checker = shapeTypes[key];
8773 if (has(shapeTypes, key) && typeof checker !== 'function') {
8774 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8775 }
8776 if (!checker) {
8777 return new PropTypeError(
8778 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
8779 '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
8780 '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
8781 );
8782 }
8783 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8784 if (error) {
8785 return error;
8786 }
8787 }
8788 return null;
8789 }
8790
8791 return createChainableTypeChecker(validate);
8792 }
8793
8794 function isNode(propValue) {
8795 switch (typeof propValue) {
8796 case 'number':
8797 case 'string':
8798 case 'undefined':
8799 return true;
8800 case 'boolean':
8801 return !propValue;
8802 case 'object':
8803 if (Array.isArray(propValue)) {
8804 return propValue.every(isNode);
8805 }
8806 if (propValue === null || isValidElement(propValue)) {
8807 return true;
8808 }
8809
8810 var iteratorFn = getIteratorFn(propValue);
8811 if (iteratorFn) {
8812 var iterator = iteratorFn.call(propValue);
8813 var step;
8814 if (iteratorFn !== propValue.entries) {
8815 while (!(step = iterator.next()).done) {
8816 if (!isNode(step.value)) {
8817 return false;
8818 }
8819 }
8820 } else {
8821 // Iterator will provide entry [k,v] tuples rather than values.
8822 while (!(step = iterator.next()).done) {
8823 var entry = step.value;
8824 if (entry) {
8825 if (!isNode(entry[1])) {
8826 return false;
8827 }
8828 }
8829 }
8830 }
8831 } else {
8832 return false;
8833 }
8834
8835 return true;
8836 default:
8837 return false;
8838 }
8839 }
8840
8841 function isSymbol(propType, propValue) {
8842 // Native Symbol.
8843 if (propType === 'symbol') {
8844 return true;
8845 }
8846
8847 // falsy value can't be a Symbol
8848 if (!propValue) {
8849 return false;
8850 }
8851
8852 // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
8853 if (propValue['@@toStringTag'] === 'Symbol') {
8854 return true;
8855 }
8856
8857 // Fallback for non-spec compliant Symbols which are polyfilled.
8858 if (typeof Symbol === 'function' && propValue instanceof Symbol) {
8859 return true;
8860 }
8861
8862 return false;
8863 }
8864
8865 // Equivalent of `typeof` but with special handling for array and regexp.
8866 function getPropType(propValue) {
8867 var propType = typeof propValue;
8868 if (Array.isArray(propValue)) {
8869 return 'array';
8870 }
8871 if (propValue instanceof RegExp) {
8872 // Old webkits (at least until Android 4.0) return 'function' rather than
8873 // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
8874 // passes PropTypes.object.
8875 return 'object';
8876 }
8877 if (isSymbol(propType, propValue)) {
8878 return 'symbol';
8879 }
8880 return propType;
8881 }
8882
8883 // This handles more types than `getPropType`. Only used for error messages.
8884 // See `createPrimitiveTypeChecker`.
8885 function getPreciseType(propValue) {
8886 if (typeof propValue === 'undefined' || propValue === null) {
8887 return '' + propValue;
8888 }
8889 var propType = getPropType(propValue);
8890 if (propType === 'object') {
8891 if (propValue instanceof Date) {
8892 return 'date';
8893 } else if (propValue instanceof RegExp) {
8894 return 'regexp';
8895 }
8896 }
8897 return propType;
8898 }
8899
8900 // Returns a string that is postfixed to a warning about an invalid type.
8901 // For example, "undefined" or "of type array"
8902 function getPostfixForTypeWarning(value) {
8903 var type = getPreciseType(value);
8904 switch (type) {
8905 case 'array':
8906 case 'object':
8907 return 'an ' + type;
8908 case 'boolean':
8909 case 'date':
8910 case 'regexp':
8911 return 'a ' + type;
8912 default:
8913 return type;
8914 }
8915 }
8916
8917 // Returns class name of the object, if any.
8918 function getClassName(propValue) {
8919 if (!propValue.constructor || !propValue.constructor.name) {
8920 return ANONYMOUS;
8921 }
8922 return propValue.constructor.name;
8923 }
8924
8925 ReactPropTypes.checkPropTypes = checkPropTypes;
8926 ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
8927 ReactPropTypes.PropTypes = ReactPropTypes;
8928
8929 return ReactPropTypes;
8930 };
8931
8932
8933 /***/ }),
8934
8935 /***/ "../node_modules/prop-types/index.js":
8936 /*!*******************************************!*\
8937 !*** ../node_modules/prop-types/index.js ***!
8938 \*******************************************/
8939 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8940
8941 /**
8942 * Copyright (c) 2013-present, Facebook, Inc.
8943 *
8944 * This source code is licensed under the MIT license found in the
8945 * LICENSE file in the root directory of this source tree.
8946 */
8947
8948 if (true) {
8949 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8950
8951 // By explicitly using `prop-types` you are opting into new development behavior.
8952 // http://fb.me/prop-types-in-prod
8953 var throwOnDirectAccess = true;
8954 module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
8955 } else {}
8956
8957
8958 /***/ }),
8959
8960 /***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
8961 /*!**************************************************************!*\
8962 !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
8963 \**************************************************************/
8964 /***/ ((module) => {
8965
8966 "use strict";
8967 /**
8968 * Copyright (c) 2013-present, Facebook, Inc.
8969 *
8970 * This source code is licensed under the MIT license found in the
8971 * LICENSE file in the root directory of this source tree.
8972 */
8973
8974
8975
8976 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
8977
8978 module.exports = ReactPropTypesSecret;
8979
8980
8981 /***/ }),
8982
8983 /***/ "../node_modules/prop-types/lib/has.js":
8984 /*!*********************************************!*\
8985 !*** ../node_modules/prop-types/lib/has.js ***!
8986 \*********************************************/
8987 /***/ ((module) => {
8988
8989 module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
8990
8991
8992 /***/ }),
8993
8994 /***/ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js":
8995 /*!************************************************************************************!*\
8996 !*** ../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
8997 \************************************************************************************/
8998 /***/ ((__unused_webpack_module, exports) => {
8999
9000 "use strict";
9001 /** @license React v16.13.1
9002 * react-is.development.js
9003 *
9004 * Copyright (c) Facebook, Inc. and its affiliates.
9005 *
9006 * This source code is licensed under the MIT license found in the
9007 * LICENSE file in the root directory of this source tree.
9008 */
9009
9010
9011
9012
9013
9014 if (true) {
9015 (function() {
9016 'use strict';
9017
9018 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
9019 // nor polyfill, then a plain number is used for performance.
9020 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
9021 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
9022 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
9023 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
9024 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
9025 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
9026 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
9027 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
9028 // (unstable) APIs that have been removed. Can we remove the symbols?
9029
9030 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
9031 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
9032 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
9033 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
9034 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
9035 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
9036 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
9037 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
9038 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
9039 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
9040 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
9041
9042 function isValidElementType(type) {
9043 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
9044 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);
9045 }
9046
9047 function typeOf(object) {
9048 if (typeof object === 'object' && object !== null) {
9049 var $$typeof = object.$$typeof;
9050
9051 switch ($$typeof) {
9052 case REACT_ELEMENT_TYPE:
9053 var type = object.type;
9054
9055 switch (type) {
9056 case REACT_ASYNC_MODE_TYPE:
9057 case REACT_CONCURRENT_MODE_TYPE:
9058 case REACT_FRAGMENT_TYPE:
9059 case REACT_PROFILER_TYPE:
9060 case REACT_STRICT_MODE_TYPE:
9061 case REACT_SUSPENSE_TYPE:
9062 return type;
9063
9064 default:
9065 var $$typeofType = type && type.$$typeof;
9066
9067 switch ($$typeofType) {
9068 case REACT_CONTEXT_TYPE:
9069 case REACT_FORWARD_REF_TYPE:
9070 case REACT_LAZY_TYPE:
9071 case REACT_MEMO_TYPE:
9072 case REACT_PROVIDER_TYPE:
9073 return $$typeofType;
9074
9075 default:
9076 return $$typeof;
9077 }
9078
9079 }
9080
9081 case REACT_PORTAL_TYPE:
9082 return $$typeof;
9083 }
9084 }
9085
9086 return undefined;
9087 } // AsyncMode is deprecated along with isAsyncMode
9088
9089 var AsyncMode = REACT_ASYNC_MODE_TYPE;
9090 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
9091 var ContextConsumer = REACT_CONTEXT_TYPE;
9092 var ContextProvider = REACT_PROVIDER_TYPE;
9093 var Element = REACT_ELEMENT_TYPE;
9094 var ForwardRef = REACT_FORWARD_REF_TYPE;
9095 var Fragment = REACT_FRAGMENT_TYPE;
9096 var Lazy = REACT_LAZY_TYPE;
9097 var Memo = REACT_MEMO_TYPE;
9098 var Portal = REACT_PORTAL_TYPE;
9099 var Profiler = REACT_PROFILER_TYPE;
9100 var StrictMode = REACT_STRICT_MODE_TYPE;
9101 var Suspense = REACT_SUSPENSE_TYPE;
9102 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
9103
9104 function isAsyncMode(object) {
9105 {
9106 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
9107 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
9108
9109 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.');
9110 }
9111 }
9112
9113 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
9114 }
9115 function isConcurrentMode(object) {
9116 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
9117 }
9118 function isContextConsumer(object) {
9119 return typeOf(object) === REACT_CONTEXT_TYPE;
9120 }
9121 function isContextProvider(object) {
9122 return typeOf(object) === REACT_PROVIDER_TYPE;
9123 }
9124 function isElement(object) {
9125 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
9126 }
9127 function isForwardRef(object) {
9128 return typeOf(object) === REACT_FORWARD_REF_TYPE;
9129 }
9130 function isFragment(object) {
9131 return typeOf(object) === REACT_FRAGMENT_TYPE;
9132 }
9133 function isLazy(object) {
9134 return typeOf(object) === REACT_LAZY_TYPE;
9135 }
9136 function isMemo(object) {
9137 return typeOf(object) === REACT_MEMO_TYPE;
9138 }
9139 function isPortal(object) {
9140 return typeOf(object) === REACT_PORTAL_TYPE;
9141 }
9142 function isProfiler(object) {
9143 return typeOf(object) === REACT_PROFILER_TYPE;
9144 }
9145 function isStrictMode(object) {
9146 return typeOf(object) === REACT_STRICT_MODE_TYPE;
9147 }
9148 function isSuspense(object) {
9149 return typeOf(object) === REACT_SUSPENSE_TYPE;
9150 }
9151
9152 exports.AsyncMode = AsyncMode;
9153 exports.ConcurrentMode = ConcurrentMode;
9154 exports.ContextConsumer = ContextConsumer;
9155 exports.ContextProvider = ContextProvider;
9156 exports.Element = Element;
9157 exports.ForwardRef = ForwardRef;
9158 exports.Fragment = Fragment;
9159 exports.Lazy = Lazy;
9160 exports.Memo = Memo;
9161 exports.Portal = Portal;
9162 exports.Profiler = Profiler;
9163 exports.StrictMode = StrictMode;
9164 exports.Suspense = Suspense;
9165 exports.isAsyncMode = isAsyncMode;
9166 exports.isConcurrentMode = isConcurrentMode;
9167 exports.isContextConsumer = isContextConsumer;
9168 exports.isContextProvider = isContextProvider;
9169 exports.isElement = isElement;
9170 exports.isForwardRef = isForwardRef;
9171 exports.isFragment = isFragment;
9172 exports.isLazy = isLazy;
9173 exports.isMemo = isMemo;
9174 exports.isPortal = isPortal;
9175 exports.isProfiler = isProfiler;
9176 exports.isStrictMode = isStrictMode;
9177 exports.isSuspense = isSuspense;
9178 exports.isValidElementType = isValidElementType;
9179 exports.typeOf = typeOf;
9180 })();
9181 }
9182
9183
9184 /***/ }),
9185
9186 /***/ "../node_modules/prop-types/node_modules/react-is/index.js":
9187 /*!*****************************************************************!*\
9188 !*** ../node_modules/prop-types/node_modules/react-is/index.js ***!
9189 \*****************************************************************/
9190 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9191
9192 "use strict";
9193
9194
9195 if (false) {} else {
9196 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js");
9197 }
9198
9199
9200 /***/ }),
9201
9202 /***/ "../node_modules/react-dom/client.js":
9203 /*!*******************************************!*\
9204 !*** ../node_modules/react-dom/client.js ***!
9205 \*******************************************/
9206 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9207
9208 "use strict";
9209
9210
9211 var m = __webpack_require__(/*! react-dom */ "react-dom");
9212 if (false) {} else {
9213 var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
9214 exports.createRoot = function(c, o) {
9215 i.usingClientEntryPoint = true;
9216 try {
9217 return m.createRoot(c, o);
9218 } finally {
9219 i.usingClientEntryPoint = false;
9220 }
9221 };
9222 exports.hydrateRoot = function(c, h, o) {
9223 i.usingClientEntryPoint = true;
9224 try {
9225 return m.hydrateRoot(c, h, o);
9226 } finally {
9227 i.usingClientEntryPoint = false;
9228 }
9229 };
9230 }
9231
9232
9233 /***/ }),
9234
9235 /***/ "../node_modules/react-draggable/build/cjs/Draggable.js":
9236 /*!**************************************************************!*\
9237 !*** ../node_modules/react-draggable/build/cjs/Draggable.js ***!
9238 \**************************************************************/
9239 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9240
9241 "use strict";
9242
9243
9244 function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
9245
9246 Object.defineProperty(exports, "__esModule", ({
9247 value: true
9248 }));
9249 Object.defineProperty(exports, "DraggableCore", ({
9250 enumerable: true,
9251 get: function get() {
9252 return _DraggableCore.default;
9253 }
9254 }));
9255 exports["default"] = void 0;
9256
9257 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9258
9259 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9260
9261 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9262
9263 var _clsx2 = _interopRequireDefault(__webpack_require__(/*! clsx */ "../node_modules/clsx/dist/clsx.m.js"));
9264
9265 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9266
9267 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9268
9269 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9270
9271 var _DraggableCore = _interopRequireDefault(__webpack_require__(/*! ./DraggableCore */ "../node_modules/react-draggable/build/cjs/DraggableCore.js"));
9272
9273 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9274
9275 var _excluded = ["axis", "bounds", "children", "defaultPosition", "defaultClassName", "defaultClassNameDragging", "defaultClassNameDragged", "position", "positionOffset", "scale"];
9276
9277 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9278
9279 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
9280
9281 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; }
9282
9283 function _extends() { _extends = Object.assign || 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); }
9284
9285 function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
9286
9287 function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
9288
9289 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9290
9291 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9292
9293 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9294
9295 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."); }
9296
9297 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); }
9298
9299 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; }
9300
9301 function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
9302
9303 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9304
9305 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9306
9307 function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
9308
9309 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9310
9311 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
9312
9313 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9314
9315 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
9316
9317 function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
9318
9319 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9320
9321 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
9322
9323 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9324
9325 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9326
9327 //
9328 // Define <Draggable>
9329 //
9330 var Draggable = /*#__PURE__*/function (_React$Component) {
9331 _inherits(Draggable, _React$Component);
9332
9333 var _super = _createSuper(Draggable);
9334
9335 function Draggable(props
9336 /*: DraggableProps*/
9337 ) {
9338 var _this;
9339
9340 _classCallCheck(this, Draggable);
9341
9342 _this = _super.call(this, props);
9343
9344 _defineProperty(_assertThisInitialized(_this), "onDragStart", function (e, coreData) {
9345 (0, _log.default)('Draggable: onDragStart: %j', coreData); // Short-circuit if user's callback killed it.
9346
9347 var shouldStart = _this.props.onStart(e, (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData)); // Kills start event on core as well, so move handlers are never bound.
9348
9349
9350 if (shouldStart === false) return false;
9351
9352 _this.setState({
9353 dragging: true,
9354 dragged: true
9355 });
9356 });
9357
9358 _defineProperty(_assertThisInitialized(_this), "onDrag", function (e, coreData) {
9359 if (!_this.state.dragging) return false;
9360 (0, _log.default)('Draggable: onDrag: %j', coreData);
9361 var uiData = (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData);
9362 var newState
9363 /*: $Shape<DraggableState>*/
9364 = {
9365 x: uiData.x,
9366 y: uiData.y
9367 }; // Keep within bounds.
9368
9369 if (_this.props.bounds) {
9370 // Save original x and y.
9371 var x = newState.x,
9372 y = newState.y; // Add slack to the values used to calculate bound position. This will ensure that if
9373 // we start removing slack, the element won't react to it right away until it's been
9374 // completely removed.
9375
9376 newState.x += _this.state.slackX;
9377 newState.y += _this.state.slackY; // Get bound position. This will ceil/floor the x and y within the boundaries.
9378
9379 var _getBoundPosition = (0, _positionFns.getBoundPosition)(_assertThisInitialized(_this), newState.x, newState.y),
9380 _getBoundPosition2 = _slicedToArray(_getBoundPosition, 2),
9381 newStateX = _getBoundPosition2[0],
9382 newStateY = _getBoundPosition2[1];
9383
9384 newState.x = newStateX;
9385 newState.y = newStateY; // Recalculate slack by noting how much was shaved by the boundPosition handler.
9386
9387 newState.slackX = _this.state.slackX + (x - newState.x);
9388 newState.slackY = _this.state.slackY + (y - newState.y); // Update the event we fire to reflect what really happened after bounds took effect.
9389
9390 uiData.x = newState.x;
9391 uiData.y = newState.y;
9392 uiData.deltaX = newState.x - _this.state.x;
9393 uiData.deltaY = newState.y - _this.state.y;
9394 } // Short-circuit if user's callback killed it.
9395
9396
9397 var shouldUpdate = _this.props.onDrag(e, uiData);
9398
9399 if (shouldUpdate === false) return false;
9400
9401 _this.setState(newState);
9402 });
9403
9404 _defineProperty(_assertThisInitialized(_this), "onDragStop", function (e, coreData) {
9405 if (!_this.state.dragging) return false; // Short-circuit if user's callback killed it.
9406
9407 var shouldContinue = _this.props.onStop(e, (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData));
9408
9409 if (shouldContinue === false) return false;
9410 (0, _log.default)('Draggable: onDragStop: %j', coreData);
9411 var newState
9412 /*: $Shape<DraggableState>*/
9413 = {
9414 dragging: false,
9415 slackX: 0,
9416 slackY: 0
9417 }; // If this is a controlled component, the result of this operation will be to
9418 // revert back to the old position. We expect a handler on `onDragStop`, at the least.
9419
9420 var controlled = Boolean(_this.props.position);
9421
9422 if (controlled) {
9423 var _this$props$position = _this.props.position,
9424 x = _this$props$position.x,
9425 y = _this$props$position.y;
9426 newState.x = x;
9427 newState.y = y;
9428 }
9429
9430 _this.setState(newState);
9431 });
9432
9433 _this.state = {
9434 // Whether or not we are currently dragging.
9435 dragging: false,
9436 // Whether or not we have been dragged before.
9437 dragged: false,
9438 // Current transform x and y.
9439 x: props.position ? props.position.x : props.defaultPosition.x,
9440 y: props.position ? props.position.y : props.defaultPosition.y,
9441 prevPropsPosition: _objectSpread({}, props.position),
9442 // Used for compensating for out-of-bounds drags
9443 slackX: 0,
9444 slackY: 0,
9445 // Can only determine if SVG after mounting
9446 isElementSVG: false
9447 };
9448
9449 if (props.position && !(props.onDrag || props.onStop)) {
9450 // eslint-disable-next-line no-console
9451 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.');
9452 }
9453
9454 return _this;
9455 }
9456
9457 _createClass(Draggable, [{
9458 key: "componentDidMount",
9459 value: function componentDidMount() {
9460 // Check to see if the element passed is an instanceof SVGElement
9461 if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {
9462 this.setState({
9463 isElementSVG: true
9464 });
9465 }
9466 }
9467 }, {
9468 key: "componentWillUnmount",
9469 value: function componentWillUnmount() {
9470 this.setState({
9471 dragging: false
9472 }); // prevents invariant if unmounted while dragging
9473 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
9474 // the underlying DOM node ourselves. See the README for more information.
9475
9476 }, {
9477 key: "findDOMNode",
9478 value: function findDOMNode()
9479 /*: ?HTMLElement*/
9480 {
9481 var _this$props$nodeRef$c, _this$props, _this$props$nodeRef;
9482
9483 return (_this$props$nodeRef$c = (_this$props = this.props) === null || _this$props === void 0 ? void 0 : (_this$props$nodeRef = _this$props.nodeRef) === null || _this$props$nodeRef === void 0 ? void 0 : _this$props$nodeRef.current) !== null && _this$props$nodeRef$c !== void 0 ? _this$props$nodeRef$c : _reactDom.default.findDOMNode(this);
9484 }
9485 }, {
9486 key: "render",
9487 value: function render()
9488 /*: ReactElement<any>*/
9489 {
9490 var _clsx;
9491
9492 var _this$props2 = this.props,
9493 axis = _this$props2.axis,
9494 bounds = _this$props2.bounds,
9495 children = _this$props2.children,
9496 defaultPosition = _this$props2.defaultPosition,
9497 defaultClassName = _this$props2.defaultClassName,
9498 defaultClassNameDragging = _this$props2.defaultClassNameDragging,
9499 defaultClassNameDragged = _this$props2.defaultClassNameDragged,
9500 position = _this$props2.position,
9501 positionOffset = _this$props2.positionOffset,
9502 scale = _this$props2.scale,
9503 draggableCoreProps = _objectWithoutProperties(_this$props2, _excluded);
9504
9505 var style = {};
9506 var svgTransform = null; // If this is controlled, we don't want to move it - unless it's dragging.
9507
9508 var controlled = Boolean(position);
9509 var draggable = !controlled || this.state.dragging;
9510 var validPosition = position || defaultPosition;
9511 var transformOpts = {
9512 // Set left if horizontal drag is enabled
9513 x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,
9514 // Set top if vertical drag is enabled
9515 y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y
9516 }; // If this element was SVG, we use the `transform` attribute.
9517
9518 if (this.state.isElementSVG) {
9519 svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);
9520 } else {
9521 // Add a CSS transform to move the element around. This allows us to move the element around
9522 // without worrying about whether or not it is relatively or absolutely positioned.
9523 // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>
9524 // has a clean slate.
9525 style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);
9526 } // Mark with class while dragging
9527
9528
9529 var className = (0, _clsx2.default)(children.props.className || '', defaultClassName, (_clsx = {}, _defineProperty(_clsx, defaultClassNameDragging, this.state.dragging), _defineProperty(_clsx, defaultClassNameDragged, this.state.dragged), _clsx)); // Reuse the child provided
9530 // This makes it flexible to use whatever element is wanted (div, ul, etc)
9531
9532 return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {
9533 onStart: this.onDragStart,
9534 onDrag: this.onDrag,
9535 onStop: this.onDragStop
9536 }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {
9537 className: className,
9538 style: _objectSpread(_objectSpread({}, children.props.style), style),
9539 transform: svgTransform
9540 }));
9541 }
9542 }], [{
9543 key: "getDerivedStateFromProps",
9544 value: // React 16.3+
9545 // Arity (props, state)
9546 function getDerivedStateFromProps(_ref, _ref2)
9547 /*: ?$Shape<DraggableState>*/
9548 {
9549 var position = _ref.position;
9550 var prevPropsPosition = _ref2.prevPropsPosition;
9551
9552 // Set x/y if a new position is provided in props that is different than the previous.
9553 if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {
9554 (0, _log.default)('Draggable: getDerivedStateFromProps %j', {
9555 position: position,
9556 prevPropsPosition: prevPropsPosition
9557 });
9558 return {
9559 x: position.x,
9560 y: position.y,
9561 prevPropsPosition: _objectSpread({}, position)
9562 };
9563 }
9564
9565 return null;
9566 }
9567 }]);
9568
9569 return Draggable;
9570 }(React.Component);
9571
9572 exports["default"] = Draggable;
9573
9574 _defineProperty(Draggable, "displayName", 'Draggable');
9575
9576 _defineProperty(Draggable, "propTypes", _objectSpread(_objectSpread({}, _DraggableCore.default.propTypes), {}, {
9577 /**
9578 * `axis` determines which axis the draggable can move.
9579 *
9580 * Note that all callbacks will still return data as normal. This only
9581 * controls flushing to the DOM.
9582 *
9583 * 'both' allows movement horizontally and vertically.
9584 * 'x' limits movement to horizontal axis.
9585 * 'y' limits movement to vertical axis.
9586 * 'none' limits all movement.
9587 *
9588 * Defaults to 'both'.
9589 */
9590 axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),
9591
9592 /**
9593 * `bounds` determines the range of movement available to the element.
9594 * Available values are:
9595 *
9596 * 'parent' restricts movement within the Draggable's parent node.
9597 *
9598 * Alternatively, pass an object with the following properties, all of which are optional:
9599 *
9600 * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}
9601 *
9602 * All values are in px.
9603 *
9604 * Example:
9605 *
9606 * ```jsx
9607 * let App = React.createClass({
9608 * render: function () {
9609 * return (
9610 * <Draggable bounds={{right: 300, bottom: 300}}>
9611 * <div>Content</div>
9612 * </Draggable>
9613 * );
9614 * }
9615 * });
9616 * ```
9617 */
9618 bounds: _propTypes.default.oneOfType([_propTypes.default.shape({
9619 left: _propTypes.default.number,
9620 right: _propTypes.default.number,
9621 top: _propTypes.default.number,
9622 bottom: _propTypes.default.number
9623 }), _propTypes.default.string, _propTypes.default.oneOf([false])]),
9624 defaultClassName: _propTypes.default.string,
9625 defaultClassNameDragging: _propTypes.default.string,
9626 defaultClassNameDragged: _propTypes.default.string,
9627
9628 /**
9629 * `defaultPosition` specifies the x and y that the dragged item should start at
9630 *
9631 * Example:
9632 *
9633 * ```jsx
9634 * let App = React.createClass({
9635 * render: function () {
9636 * return (
9637 * <Draggable defaultPosition={{x: 25, y: 25}}>
9638 * <div>I start with transformX: 25px and transformY: 25px;</div>
9639 * </Draggable>
9640 * );
9641 * }
9642 * });
9643 * ```
9644 */
9645 defaultPosition: _propTypes.default.shape({
9646 x: _propTypes.default.number,
9647 y: _propTypes.default.number
9648 }),
9649 positionOffset: _propTypes.default.shape({
9650 x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
9651 y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
9652 }),
9653
9654 /**
9655 * `position`, if present, defines the current position of the element.
9656 *
9657 * This is similar to how form elements in React work - if no `position` is supplied, the component
9658 * is uncontrolled.
9659 *
9660 * Example:
9661 *
9662 * ```jsx
9663 * let App = React.createClass({
9664 * render: function () {
9665 * return (
9666 * <Draggable position={{x: 25, y: 25}}>
9667 * <div>I start with transformX: 25px and transformY: 25px;</div>
9668 * </Draggable>
9669 * );
9670 * }
9671 * });
9672 * ```
9673 */
9674 position: _propTypes.default.shape({
9675 x: _propTypes.default.number,
9676 y: _propTypes.default.number
9677 }),
9678
9679 /**
9680 * These properties should be defined on the child, not here.
9681 */
9682 className: _shims.dontSetMe,
9683 style: _shims.dontSetMe,
9684 transform: _shims.dontSetMe
9685 }));
9686
9687 _defineProperty(Draggable, "defaultProps", _objectSpread(_objectSpread({}, _DraggableCore.default.defaultProps), {}, {
9688 axis: 'both',
9689 bounds: false,
9690 defaultClassName: 'react-draggable',
9691 defaultClassNameDragging: 'react-draggable-dragging',
9692 defaultClassNameDragged: 'react-draggable-dragged',
9693 defaultPosition: {
9694 x: 0,
9695 y: 0
9696 },
9697 scale: 1
9698 }));
9699
9700 /***/ }),
9701
9702 /***/ "../node_modules/react-draggable/build/cjs/DraggableCore.js":
9703 /*!******************************************************************!*\
9704 !*** ../node_modules/react-draggable/build/cjs/DraggableCore.js ***!
9705 \******************************************************************/
9706 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9707
9708 "use strict";
9709
9710
9711 function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
9712
9713 Object.defineProperty(exports, "__esModule", ({
9714 value: true
9715 }));
9716 exports["default"] = void 0;
9717
9718 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9719
9720 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9721
9722 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9723
9724 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9725
9726 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9727
9728 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9729
9730 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9731
9732 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9733
9734 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
9735
9736 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; }
9737
9738 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9739
9740 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."); }
9741
9742 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); }
9743
9744 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; }
9745
9746 function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
9747
9748 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9749
9750 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9751
9752 function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
9753
9754 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9755
9756 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
9757
9758 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9759
9760 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
9761
9762 function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
9763
9764 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9765
9766 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
9767
9768 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9769
9770 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9771
9772 // Simple abstraction for dragging events names.
9773 var eventsFor = {
9774 touch: {
9775 start: 'touchstart',
9776 move: 'touchmove',
9777 stop: 'touchend'
9778 },
9779 mouse: {
9780 start: 'mousedown',
9781 move: 'mousemove',
9782 stop: 'mouseup'
9783 }
9784 }; // Default to mouse events.
9785
9786 var dragEventFor = eventsFor.mouse;
9787 /*:: type DraggableCoreState = {
9788 dragging: boolean,
9789 lastX: number,
9790 lastY: number,
9791 touchIdentifier: ?number
9792 };*/
9793
9794 /*:: export type DraggableData = {
9795 node: HTMLElement,
9796 x: number, y: number,
9797 deltaX: number, deltaY: number,
9798 lastX: number, lastY: number,
9799 };*/
9800
9801 /*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/
9802
9803 /*:: export type ControlPosition = {x: number, y: number};*/
9804
9805 /*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/
9806
9807 /*:: export type DraggableCoreDefaultProps = {
9808 allowAnyClick: boolean,
9809 disabled: boolean,
9810 enableUserSelectHack: boolean,
9811 onStart: DraggableEventHandler,
9812 onDrag: DraggableEventHandler,
9813 onStop: DraggableEventHandler,
9814 onMouseDown: (e: MouseEvent) => void,
9815 scale: number,
9816 };*/
9817
9818 /*:: export type DraggableCoreProps = {
9819 ...DraggableCoreDefaultProps,
9820 cancel: string,
9821 children: ReactElement<any>,
9822 offsetParent: HTMLElement,
9823 grid: [number, number],
9824 handle: string,
9825 nodeRef?: ?React.ElementRef<any>,
9826 };*/
9827
9828 //
9829 // Define <DraggableCore>.
9830 //
9831 // <DraggableCore> is for advanced usage of <Draggable>. It maintains minimal internal state so it can
9832 // work well with libraries that require more control over the element.
9833 //
9834 var DraggableCore = /*#__PURE__*/function (_React$Component) {
9835 _inherits(DraggableCore, _React$Component);
9836
9837 var _super = _createSuper(DraggableCore);
9838
9839 function DraggableCore() {
9840 var _this;
9841
9842 _classCallCheck(this, DraggableCore);
9843
9844 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9845 args[_key] = arguments[_key];
9846 }
9847
9848 _this = _super.call.apply(_super, [this].concat(args));
9849
9850 _defineProperty(_assertThisInitialized(_this), "state", {
9851 dragging: false,
9852 // Used while dragging to determine deltas.
9853 lastX: NaN,
9854 lastY: NaN,
9855 touchIdentifier: null
9856 });
9857
9858 _defineProperty(_assertThisInitialized(_this), "mounted", false);
9859
9860 _defineProperty(_assertThisInitialized(_this), "handleDragStart", function (e) {
9861 // Make it possible to attach event handlers on top of this one.
9862 _this.props.onMouseDown(e); // Only accept left-clicks.
9863
9864
9865 if (!_this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false; // Get nodes. Be sure to grab relative document (could be iframed)
9866
9867 var thisNode = _this.findDOMNode();
9868
9869 if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {
9870 throw new Error('<DraggableCore> not mounted on DragStart!');
9871 }
9872
9873 var ownerDocument = thisNode.ownerDocument; // Short circuit if handle or cancel prop was provided and selector doesn't match.
9874
9875 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)) {
9876 return;
9877 } // Prevent scrolling on mobile devices, like ipad/iphone.
9878 // Important that this is after handle/cancel.
9879
9880
9881 if (e.type === 'touchstart') e.preventDefault(); // Set touch identifier in component state if this is a touch event. This allows us to
9882 // distinguish between individual touches on multitouch screens by identifying which
9883 // touchpoint was set to this element.
9884
9885 var touchIdentifier = (0, _domFns.getTouchIdentifier)(e);
9886
9887 _this.setState({
9888 touchIdentifier: touchIdentifier
9889 }); // Get the current drag point from the event. This is used as the offset.
9890
9891
9892 var position = (0, _positionFns.getControlPosition)(e, touchIdentifier, _assertThisInitialized(_this));
9893 if (position == null) return; // not possible but satisfies flow
9894
9895 var x = position.x,
9896 y = position.y; // Create an event object with all the data parents need to make a decision here.
9897
9898 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9899 (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent); // Call event handler. If it returns explicit false, cancel.
9900
9901 (0, _log.default)('calling', _this.props.onStart);
9902
9903 var shouldUpdate = _this.props.onStart(e, coreEvent);
9904
9905 if (shouldUpdate === false || _this.mounted === false) return; // Add a style to the body to disable user-select. This prevents text from
9906 // being selected all over the page.
9907
9908 if (_this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument); // Initiate dragging. Set the current x and y as offsets
9909 // so we know how much we've moved during the drag. This allows us
9910 // to drag elements around even if they have been moved, without issue.
9911
9912 _this.setState({
9913 dragging: true,
9914 lastX: x,
9915 lastY: y
9916 }); // Add events to the document directly so we catch when the user's mouse/touch moves outside of
9917 // this element. We use different events depending on whether or not we have detected that this
9918 // is a touch-capable device.
9919
9920
9921 (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, _this.handleDrag);
9922 (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, _this.handleDragStop);
9923 });
9924
9925 _defineProperty(_assertThisInitialized(_this), "handleDrag", function (e) {
9926 // Get the current drag point from the event. This is used as the offset.
9927 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9928 if (position == null) return;
9929 var x = position.x,
9930 y = position.y; // Snap to grid if prop has been provided
9931
9932 if (Array.isArray(_this.props.grid)) {
9933 var deltaX = x - _this.state.lastX,
9934 deltaY = y - _this.state.lastY;
9935
9936 var _snapToGrid = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9937
9938 var _snapToGrid2 = _slicedToArray(_snapToGrid, 2);
9939
9940 deltaX = _snapToGrid2[0];
9941 deltaY = _snapToGrid2[1];
9942 if (!deltaX && !deltaY) return; // skip useless drag
9943
9944 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9945 }
9946
9947 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9948 (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent); // Call event handler. If it returns explicit false, trigger end.
9949
9950 var shouldUpdate = _this.props.onDrag(e, coreEvent);
9951
9952 if (shouldUpdate === false || _this.mounted === false) {
9953 try {
9954 // $FlowIgnore
9955 _this.handleDragStop(new MouseEvent('mouseup'));
9956 } catch (err) {
9957 // Old browsers
9958 var event = ((document.createEvent('MouseEvents')
9959 /*: any*/
9960 )
9961 /*: MouseTouchEvent*/
9962 ); // I see why this insanity was deprecated
9963 // $FlowIgnore
9964
9965 event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
9966
9967 _this.handleDragStop(event);
9968 }
9969
9970 return;
9971 }
9972
9973 _this.setState({
9974 lastX: x,
9975 lastY: y
9976 });
9977 });
9978
9979 _defineProperty(_assertThisInitialized(_this), "handleDragStop", function (e) {
9980 if (!_this.state.dragging) return;
9981 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9982 if (position == null) return;
9983 var x = position.x,
9984 y = position.y; // Snap to grid if prop has been provided
9985
9986 if (Array.isArray(_this.props.grid)) {
9987 var deltaX = x - _this.state.lastX || 0;
9988 var deltaY = y - _this.state.lastY || 0;
9989
9990 var _snapToGrid3 = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9991
9992 var _snapToGrid4 = _slicedToArray(_snapToGrid3, 2);
9993
9994 deltaX = _snapToGrid4[0];
9995 deltaY = _snapToGrid4[1];
9996 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9997 }
9998
9999 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y); // Call event handler
10000
10001 var shouldContinue = _this.props.onStop(e, coreEvent);
10002
10003 if (shouldContinue === false || _this.mounted === false) return false;
10004
10005 var thisNode = _this.findDOMNode();
10006
10007 if (thisNode) {
10008 // Remove user-select hack
10009 if (_this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);
10010 }
10011
10012 (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent); // Reset the el.
10013
10014 _this.setState({
10015 dragging: false,
10016 lastX: NaN,
10017 lastY: NaN
10018 });
10019
10020 if (thisNode) {
10021 // Remove event handlers
10022 (0, _log.default)('DraggableCore: Removing handlers');
10023 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, _this.handleDrag);
10024 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, _this.handleDragStop);
10025 }
10026 });
10027
10028 _defineProperty(_assertThisInitialized(_this), "onMouseDown", function (e) {
10029 dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse
10030
10031 return _this.handleDragStart(e);
10032 });
10033
10034 _defineProperty(_assertThisInitialized(_this), "onMouseUp", function (e) {
10035 dragEventFor = eventsFor.mouse;
10036 return _this.handleDragStop(e);
10037 });
10038
10039 _defineProperty(_assertThisInitialized(_this), "onTouchStart", function (e) {
10040 // We're on a touch device now, so change the event handlers
10041 dragEventFor = eventsFor.touch;
10042 return _this.handleDragStart(e);
10043 });
10044
10045 _defineProperty(_assertThisInitialized(_this), "onTouchEnd", function (e) {
10046 // We're on a touch device now, so change the event handlers
10047 dragEventFor = eventsFor.touch;
10048 return _this.handleDragStop(e);
10049 });
10050
10051 return _this;
10052 }
10053
10054 _createClass(DraggableCore, [{
10055 key: "componentDidMount",
10056 value: function componentDidMount() {
10057 this.mounted = true; // Touch handlers must be added with {passive: false} to be cancelable.
10058 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10059
10060 var thisNode = this.findDOMNode();
10061
10062 if (thisNode) {
10063 (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10064 passive: false
10065 });
10066 }
10067 }
10068 }, {
10069 key: "componentWillUnmount",
10070 value: function componentWillUnmount() {
10071 this.mounted = false; // Remove any leftover event handlers. Remove both touch and mouse handlers in case
10072 // some browser quirk caused a touch event to fire during a mouse move, or vice versa.
10073
10074 var thisNode = this.findDOMNode();
10075
10076 if (thisNode) {
10077 var ownerDocument = thisNode.ownerDocument;
10078 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);
10079 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);
10080 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);
10081 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);
10082 (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10083 passive: false
10084 });
10085 if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);
10086 }
10087 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
10088 // the underlying DOM node ourselves. See the README for more information.
10089
10090 }, {
10091 key: "findDOMNode",
10092 value: function findDOMNode()
10093 /*: ?HTMLElement*/
10094 {
10095 var _this$props, _this$props2, _this$props2$nodeRef;
10096
10097 return (_this$props = this.props) !== null && _this$props !== void 0 && _this$props.nodeRef ? (_this$props2 = this.props) === null || _this$props2 === void 0 ? void 0 : (_this$props2$nodeRef = _this$props2.nodeRef) === null || _this$props2$nodeRef === void 0 ? void 0 : _this$props2$nodeRef.current : _reactDom.default.findDOMNode(this);
10098 }
10099 }, {
10100 key: "render",
10101 value: function render()
10102 /*: React.Element<any>*/
10103 {
10104 // Reuse the child provided
10105 // This makes it flexible to use whatever element is wanted (div, ul, etc)
10106 return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {
10107 // Note: mouseMove handler is attached to document so it will still function
10108 // when the user drags quickly and leaves the bounds of the element.
10109 onMouseDown: this.onMouseDown,
10110 onMouseUp: this.onMouseUp,
10111 // onTouchStart is added on `componentDidMount` so they can be added with
10112 // {passive: false}, which allows it to cancel. See
10113 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10114 onTouchEnd: this.onTouchEnd
10115 });
10116 }
10117 }]);
10118
10119 return DraggableCore;
10120 }(React.Component);
10121
10122 exports["default"] = DraggableCore;
10123
10124 _defineProperty(DraggableCore, "displayName", 'DraggableCore');
10125
10126 _defineProperty(DraggableCore, "propTypes", {
10127 /**
10128 * `allowAnyClick` allows dragging using any mouse button.
10129 * By default, we only accept the left button.
10130 *
10131 * Defaults to `false`.
10132 */
10133 allowAnyClick: _propTypes.default.bool,
10134
10135 /**
10136 * `disabled`, if true, stops the <Draggable> from dragging. All handlers,
10137 * with the exception of `onMouseDown`, will not fire.
10138 */
10139 disabled: _propTypes.default.bool,
10140
10141 /**
10142 * By default, we add 'user-select:none' attributes to the document body
10143 * to prevent ugly text selection during drag. If this is causing problems
10144 * for your app, set this to `false`.
10145 */
10146 enableUserSelectHack: _propTypes.default.bool,
10147
10148 /**
10149 * `offsetParent`, if set, uses the passed DOM node to compute drag offsets
10150 * instead of using the parent node.
10151 */
10152 offsetParent: function offsetParent(props
10153 /*: DraggableCoreProps*/
10154 , propName
10155 /*: $Keys<DraggableCoreProps>*/
10156 ) {
10157 if (props[propName] && props[propName].nodeType !== 1) {
10158 throw new Error('Draggable\'s offsetParent must be a DOM Node.');
10159 }
10160 },
10161
10162 /**
10163 * `grid` specifies the x and y that dragging should snap to.
10164 */
10165 grid: _propTypes.default.arrayOf(_propTypes.default.number),
10166
10167 /**
10168 * `handle` specifies a selector to be used as the handle that initiates drag.
10169 *
10170 * Example:
10171 *
10172 * ```jsx
10173 * let App = React.createClass({
10174 * render: function () {
10175 * return (
10176 * <Draggable handle=".handle">
10177 * <div>
10178 * <div className="handle">Click me to drag</div>
10179 * <div>This is some other content</div>
10180 * </div>
10181 * </Draggable>
10182 * );
10183 * }
10184 * });
10185 * ```
10186 */
10187 handle: _propTypes.default.string,
10188
10189 /**
10190 * `cancel` specifies a selector to be used to prevent drag initialization.
10191 *
10192 * Example:
10193 *
10194 * ```jsx
10195 * let App = React.createClass({
10196 * render: function () {
10197 * return(
10198 * <Draggable cancel=".cancel">
10199 * <div>
10200 * <div className="cancel">You can't drag from here</div>
10201 * <div>Dragging here works fine</div>
10202 * </div>
10203 * </Draggable>
10204 * );
10205 * }
10206 * });
10207 * ```
10208 */
10209 cancel: _propTypes.default.string,
10210
10211 /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.
10212 * Unfortunately, in order for <Draggable> to work properly, we need raw access
10213 * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`
10214 * as in this example:
10215 *
10216 * function MyComponent() {
10217 * const nodeRef = React.useRef(null);
10218 * return (
10219 * <Draggable nodeRef={nodeRef}>
10220 * <div ref={nodeRef}>Example Target</div>
10221 * </Draggable>
10222 * );
10223 * }
10224 *
10225 * This can be used for arbitrarily nested components, so long as the ref ends up
10226 * pointing to the actual child DOM node and not a custom component.
10227 */
10228 nodeRef: _propTypes.default.object,
10229
10230 /**
10231 * Called when dragging starts.
10232 * If this function returns the boolean false, dragging will be canceled.
10233 */
10234 onStart: _propTypes.default.func,
10235
10236 /**
10237 * Called while dragging.
10238 * If this function returns the boolean false, dragging will be canceled.
10239 */
10240 onDrag: _propTypes.default.func,
10241
10242 /**
10243 * Called when dragging stops.
10244 * If this function returns the boolean false, the drag will remain active.
10245 */
10246 onStop: _propTypes.default.func,
10247
10248 /**
10249 * A workaround option which can be passed if onMouseDown needs to be accessed,
10250 * since it'll always be blocked (as there is internal use of onMouseDown)
10251 */
10252 onMouseDown: _propTypes.default.func,
10253
10254 /**
10255 * `scale`, if set, applies scaling while dragging an element
10256 */
10257 scale: _propTypes.default.number,
10258
10259 /**
10260 * These properties should be defined on the child, not here.
10261 */
10262 className: _shims.dontSetMe,
10263 style: _shims.dontSetMe,
10264 transform: _shims.dontSetMe
10265 });
10266
10267 _defineProperty(DraggableCore, "defaultProps", {
10268 allowAnyClick: false,
10269 // by default only accept left click
10270 disabled: false,
10271 enableUserSelectHack: true,
10272 onStart: function onStart() {},
10273 onDrag: function onDrag() {},
10274 onStop: function onStop() {},
10275 onMouseDown: function onMouseDown() {},
10276 scale: 1
10277 });
10278
10279 /***/ }),
10280
10281 /***/ "../node_modules/react-draggable/build/cjs/cjs.js":
10282 /*!********************************************************!*\
10283 !*** ../node_modules/react-draggable/build/cjs/cjs.js ***!
10284 \********************************************************/
10285 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10286
10287 "use strict";
10288
10289
10290 var _require = __webpack_require__(/*! ./Draggable */ "../node_modules/react-draggable/build/cjs/Draggable.js"),
10291 Draggable = _require.default,
10292 DraggableCore = _require.DraggableCore; // 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'.
10293 // See https://github.com/mzabriskie/react-draggable/pull/254
10294 // and https://github.com/mzabriskie/react-draggable/issues/266
10295
10296
10297 module.exports = Draggable;
10298 module.exports["default"] = Draggable;
10299 module.exports.DraggableCore = DraggableCore;
10300
10301 /***/ }),
10302
10303 /***/ "../node_modules/react-draggable/build/cjs/utils/domFns.js":
10304 /*!*****************************************************************!*\
10305 !*** ../node_modules/react-draggable/build/cjs/utils/domFns.js ***!
10306 \*****************************************************************/
10307 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10308
10309 "use strict";
10310
10311
10312 function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
10313
10314 Object.defineProperty(exports, "__esModule", ({
10315 value: true
10316 }));
10317 exports.addClassName = addClassName;
10318 exports.addEvent = addEvent;
10319 exports.addUserSelectStyles = addUserSelectStyles;
10320 exports.createCSSTransform = createCSSTransform;
10321 exports.createSVGTransform = createSVGTransform;
10322 exports.getTouch = getTouch;
10323 exports.getTouchIdentifier = getTouchIdentifier;
10324 exports.getTranslation = getTranslation;
10325 exports.innerHeight = innerHeight;
10326 exports.innerWidth = innerWidth;
10327 exports.matchesSelector = matchesSelector;
10328 exports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;
10329 exports.offsetXYFromParent = offsetXYFromParent;
10330 exports.outerHeight = outerHeight;
10331 exports.outerWidth = outerWidth;
10332 exports.removeClassName = removeClassName;
10333 exports.removeEvent = removeEvent;
10334 exports.removeUserSelectStyles = removeUserSelectStyles;
10335
10336 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10337
10338 var _getPrefix = _interopRequireWildcard(__webpack_require__(/*! ./getPrefix */ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js"));
10339
10340 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10341
10342 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; }
10343
10344 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10345
10346 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10347
10348 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
10349
10350 var matchesSelectorFunc = '';
10351
10352 function matchesSelector(el
10353 /*: Node*/
10354 , selector
10355 /*: string*/
10356 )
10357 /*: boolean*/
10358 {
10359 if (!matchesSelectorFunc) {
10360 matchesSelectorFunc = (0, _shims.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {
10361 // $FlowIgnore: Doesn't think elements are indexable
10362 return (0, _shims.isFunction)(el[method]);
10363 });
10364 } // Might not be found entirely (not an Element?) - in that case, bail
10365 // $FlowIgnore: Doesn't think elements are indexable
10366
10367
10368 if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false; // $FlowIgnore: Doesn't think elements are indexable
10369
10370 return el[matchesSelectorFunc](selector);
10371 } // Works up the tree to the draggable itself attempting to match selector.
10372
10373
10374 function matchesSelectorAndParentsTo(el
10375 /*: Node*/
10376 , selector
10377 /*: string*/
10378 , baseNode
10379 /*: Node*/
10380 )
10381 /*: boolean*/
10382 {
10383 var node = el;
10384
10385 do {
10386 if (matchesSelector(node, selector)) return true;
10387 if (node === baseNode) return false;
10388 node = node.parentNode;
10389 } while (node);
10390
10391 return false;
10392 }
10393
10394 function addEvent(el
10395 /*: ?Node*/
10396 , event
10397 /*: string*/
10398 , handler
10399 /*: Function*/
10400 , inputOptions
10401 /*: Object*/
10402 )
10403 /*: void*/
10404 {
10405 if (!el) return;
10406
10407 var options = _objectSpread({
10408 capture: true
10409 }, inputOptions); // $FlowIgnore[method-unbinding]
10410
10411
10412 if (el.addEventListener) {
10413 el.addEventListener(event, handler, options);
10414 } else if (el.attachEvent) {
10415 el.attachEvent('on' + event, handler);
10416 } else {
10417 // $FlowIgnore: Doesn't think elements are indexable
10418 el['on' + event] = handler;
10419 }
10420 }
10421
10422 function removeEvent(el
10423 /*: ?Node*/
10424 , event
10425 /*: string*/
10426 , handler
10427 /*: Function*/
10428 , inputOptions
10429 /*: Object*/
10430 )
10431 /*: void*/
10432 {
10433 if (!el) return;
10434
10435 var options = _objectSpread({
10436 capture: true
10437 }, inputOptions); // $FlowIgnore[method-unbinding]
10438
10439
10440 if (el.removeEventListener) {
10441 el.removeEventListener(event, handler, options);
10442 } else if (el.detachEvent) {
10443 el.detachEvent('on' + event, handler);
10444 } else {
10445 // $FlowIgnore: Doesn't think elements are indexable
10446 el['on' + event] = null;
10447 }
10448 }
10449
10450 function outerHeight(node
10451 /*: HTMLElement*/
10452 )
10453 /*: number*/
10454 {
10455 // This is deliberately excluding margin for our calculations, since we are using
10456 // offsetTop which is including margin. See getBoundPosition
10457 var height = node.clientHeight;
10458 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10459 height += (0, _shims.int)(computedStyle.borderTopWidth);
10460 height += (0, _shims.int)(computedStyle.borderBottomWidth);
10461 return height;
10462 }
10463
10464 function outerWidth(node
10465 /*: HTMLElement*/
10466 )
10467 /*: number*/
10468 {
10469 // This is deliberately excluding margin for our calculations, since we are using
10470 // offsetLeft which is including margin. See getBoundPosition
10471 var width = node.clientWidth;
10472 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10473 width += (0, _shims.int)(computedStyle.borderLeftWidth);
10474 width += (0, _shims.int)(computedStyle.borderRightWidth);
10475 return width;
10476 }
10477
10478 function innerHeight(node
10479 /*: HTMLElement*/
10480 )
10481 /*: number*/
10482 {
10483 var height = node.clientHeight;
10484 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10485 height -= (0, _shims.int)(computedStyle.paddingTop);
10486 height -= (0, _shims.int)(computedStyle.paddingBottom);
10487 return height;
10488 }
10489
10490 function innerWidth(node
10491 /*: HTMLElement*/
10492 )
10493 /*: number*/
10494 {
10495 var width = node.clientWidth;
10496 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10497 width -= (0, _shims.int)(computedStyle.paddingLeft);
10498 width -= (0, _shims.int)(computedStyle.paddingRight);
10499 return width;
10500 }
10501 /*:: interface EventWithOffset {
10502 clientX: number, clientY: number
10503 }*/
10504
10505
10506 // Get from offsetParent
10507 function offsetXYFromParent(evt
10508 /*: EventWithOffset*/
10509 , offsetParent
10510 /*: HTMLElement*/
10511 , scale
10512 /*: number*/
10513 )
10514 /*: ControlPosition*/
10515 {
10516 var isBody = offsetParent === offsetParent.ownerDocument.body;
10517 var offsetParentRect = isBody ? {
10518 left: 0,
10519 top: 0
10520 } : offsetParent.getBoundingClientRect();
10521 var x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;
10522 var y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;
10523 return {
10524 x: x,
10525 y: y
10526 };
10527 }
10528
10529 function createCSSTransform(controlPos
10530 /*: ControlPosition*/
10531 , positionOffset
10532 /*: PositionOffsetControlPosition*/
10533 )
10534 /*: Object*/
10535 {
10536 var translation = getTranslation(controlPos, positionOffset, 'px');
10537 return _defineProperty({}, (0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default), translation);
10538 }
10539
10540 function createSVGTransform(controlPos
10541 /*: ControlPosition*/
10542 , positionOffset
10543 /*: PositionOffsetControlPosition*/
10544 )
10545 /*: string*/
10546 {
10547 var translation = getTranslation(controlPos, positionOffset, '');
10548 return translation;
10549 }
10550
10551 function getTranslation(_ref2, positionOffset
10552 /*: PositionOffsetControlPosition*/
10553 , unitSuffix
10554 /*: string*/
10555 )
10556 /*: string*/
10557 {
10558 var x = _ref2.x,
10559 y = _ref2.y;
10560 var translation = "translate(".concat(x).concat(unitSuffix, ",").concat(y).concat(unitSuffix, ")");
10561
10562 if (positionOffset) {
10563 var defaultX = "".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);
10564 var defaultY = "".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);
10565 translation = "translate(".concat(defaultX, ", ").concat(defaultY, ")") + translation;
10566 }
10567
10568 return translation;
10569 }
10570
10571 function getTouch(e
10572 /*: MouseTouchEvent*/
10573 , identifier
10574 /*: number*/
10575 )
10576 /*: ?{clientX: number, clientY: number}*/
10577 {
10578 return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, function (t) {
10579 return identifier === t.identifier;
10580 }) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, function (t) {
10581 return identifier === t.identifier;
10582 });
10583 }
10584
10585 function getTouchIdentifier(e
10586 /*: MouseTouchEvent*/
10587 )
10588 /*: ?number*/
10589 {
10590 if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;
10591 if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;
10592 } // User-select Hacks:
10593 //
10594 // Useful for preventing blue highlights all over everything when dragging.
10595 // Note we're passing `document` b/c we could be iframed
10596
10597
10598 function addUserSelectStyles(doc
10599 /*: ?Document*/
10600 ) {
10601 if (!doc) return;
10602 var styleEl = doc.getElementById('react-draggable-style-el');
10603
10604 if (!styleEl) {
10605 styleEl = doc.createElement('style');
10606 styleEl.type = 'text/css';
10607 styleEl.id = 'react-draggable-style-el';
10608 styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n';
10609 styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\n';
10610 doc.getElementsByTagName('head')[0].appendChild(styleEl);
10611 }
10612
10613 if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');
10614 }
10615
10616 function removeUserSelectStyles(doc
10617 /*: ?Document*/
10618 ) {
10619 if (!doc) return;
10620
10621 try {
10622 if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection'); // $FlowIgnore: IE
10623
10624 if (doc.selection) {
10625 // $FlowIgnore: IE
10626 doc.selection.empty();
10627 } else {
10628 // Remove selection caused by scroll, unless it's a focused input
10629 // (we use doc.defaultView in case we're in an iframe)
10630 var selection = (doc.defaultView || window).getSelection();
10631
10632 if (selection && selection.type !== 'Caret') {
10633 selection.removeAllRanges();
10634 }
10635 }
10636 } catch (e) {// probably IE
10637 }
10638 }
10639
10640 function addClassName(el
10641 /*: HTMLElement*/
10642 , className
10643 /*: string*/
10644 ) {
10645 if (el.classList) {
10646 el.classList.add(className);
10647 } else {
10648 if (!el.className.match(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)")))) {
10649 el.className += " ".concat(className);
10650 }
10651 }
10652 }
10653
10654 function removeClassName(el
10655 /*: HTMLElement*/
10656 , className
10657 /*: string*/
10658 ) {
10659 if (el.classList) {
10660 el.classList.remove(className);
10661 } else {
10662 el.className = el.className.replace(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)"), 'g'), '');
10663 }
10664 }
10665
10666 /***/ }),
10667
10668 /***/ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js":
10669 /*!********************************************************************!*\
10670 !*** ../node_modules/react-draggable/build/cjs/utils/getPrefix.js ***!
10671 \********************************************************************/
10672 /***/ ((__unused_webpack_module, exports) => {
10673
10674 "use strict";
10675
10676
10677 Object.defineProperty(exports, "__esModule", ({
10678 value: true
10679 }));
10680 exports.browserPrefixToKey = browserPrefixToKey;
10681 exports.browserPrefixToStyle = browserPrefixToStyle;
10682 exports["default"] = void 0;
10683 exports.getPrefix = getPrefix;
10684 var prefixes = ['Moz', 'Webkit', 'O', 'ms'];
10685
10686 function getPrefix()
10687 /*: string*/
10688 {
10689 var _window$document, _window$document$docu;
10690
10691 var prop
10692 /*: string*/
10693 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';
10694 // Ensure we're running in an environment where there is actually a global
10695 // `window` obj
10696 if (typeof window === 'undefined') return ''; // If we're in a pseudo-browser server-side environment, this access
10697 // path may not exist, so bail out if it doesn't.
10698
10699 var style = (_window$document = window.document) === null || _window$document === void 0 ? void 0 : (_window$document$docu = _window$document.documentElement) === null || _window$document$docu === void 0 ? void 0 : _window$document$docu.style;
10700 if (!style) return '';
10701 if (prop in style) return '';
10702
10703 for (var i = 0; i < prefixes.length; i++) {
10704 if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];
10705 }
10706
10707 return '';
10708 }
10709
10710 function browserPrefixToKey(prop
10711 /*: string*/
10712 , prefix
10713 /*: string*/
10714 )
10715 /*: string*/
10716 {
10717 return prefix ? "".concat(prefix).concat(kebabToTitleCase(prop)) : prop;
10718 }
10719
10720 function browserPrefixToStyle(prop
10721 /*: string*/
10722 , prefix
10723 /*: string*/
10724 )
10725 /*: string*/
10726 {
10727 return prefix ? "-".concat(prefix.toLowerCase(), "-").concat(prop) : prop;
10728 }
10729
10730 function kebabToTitleCase(str
10731 /*: string*/
10732 )
10733 /*: string*/
10734 {
10735 var out = '';
10736 var shouldCapitalize = true;
10737
10738 for (var i = 0; i < str.length; i++) {
10739 if (shouldCapitalize) {
10740 out += str[i].toUpperCase();
10741 shouldCapitalize = false;
10742 } else if (str[i] === '-') {
10743 shouldCapitalize = true;
10744 } else {
10745 out += str[i];
10746 }
10747 }
10748
10749 return out;
10750 } // Default export is the prefix itself, like 'Moz', 'Webkit', etc
10751 // Note that you may have to re-test for certain things; for instance, Chrome 50
10752 // can handle unprefixed `transform`, but not unprefixed `user-select`
10753
10754
10755 var _default = (getPrefix()
10756 /*: string*/
10757 );
10758
10759 exports["default"] = _default;
10760
10761 /***/ }),
10762
10763 /***/ "../node_modules/react-draggable/build/cjs/utils/log.js":
10764 /*!**************************************************************!*\
10765 !*** ../node_modules/react-draggable/build/cjs/utils/log.js ***!
10766 \**************************************************************/
10767 /***/ ((__unused_webpack_module, exports) => {
10768
10769 "use strict";
10770
10771
10772 Object.defineProperty(exports, "__esModule", ({
10773 value: true
10774 }));
10775 exports["default"] = log;
10776
10777 /*eslint no-console:0*/
10778 function log() {
10779 var _console;
10780
10781 if (false) {}
10782 }
10783
10784 /***/ }),
10785
10786 /***/ "../node_modules/react-draggable/build/cjs/utils/positionFns.js":
10787 /*!**********************************************************************!*\
10788 !*** ../node_modules/react-draggable/build/cjs/utils/positionFns.js ***!
10789 \**********************************************************************/
10790 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10791
10792 "use strict";
10793
10794
10795 Object.defineProperty(exports, "__esModule", ({
10796 value: true
10797 }));
10798 exports.canDragX = canDragX;
10799 exports.canDragY = canDragY;
10800 exports.createCoreData = createCoreData;
10801 exports.createDraggableData = createDraggableData;
10802 exports.getBoundPosition = getBoundPosition;
10803 exports.getControlPosition = getControlPosition;
10804 exports.snapToGrid = snapToGrid;
10805
10806 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10807
10808 var _domFns = __webpack_require__(/*! ./domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
10809
10810 function getBoundPosition(draggable
10811 /*: Draggable*/
10812 , x
10813 /*: number*/
10814 , y
10815 /*: number*/
10816 )
10817 /*: [number, number]*/
10818 {
10819 // If no bounds, short-circuit and move on
10820 if (!draggable.props.bounds) return [x, y]; // Clone new bounds
10821
10822 var bounds = draggable.props.bounds;
10823 bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);
10824 var node = findDOMNode(draggable);
10825
10826 if (typeof bounds === 'string') {
10827 var ownerDocument = node.ownerDocument;
10828 var ownerWindow = ownerDocument.defaultView;
10829 var boundNode;
10830
10831 if (bounds === 'parent') {
10832 boundNode = node.parentNode;
10833 } else {
10834 boundNode = ownerDocument.querySelector(bounds);
10835 }
10836
10837 if (!(boundNode instanceof ownerWindow.HTMLElement)) {
10838 throw new Error('Bounds selector "' + bounds + '" could not find an element.');
10839 }
10840
10841 var boundNodeEl
10842 /*: HTMLElement*/
10843 = boundNode; // for Flow, can't seem to refine correctly
10844
10845 var nodeStyle = ownerWindow.getComputedStyle(node);
10846 var boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl); // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.
10847
10848 bounds = {
10849 left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),
10850 top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),
10851 right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),
10852 bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)
10853 };
10854 } // Keep x and y below right and bottom limits...
10855
10856
10857 if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);
10858 if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom); // But above left and top limits.
10859
10860 if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);
10861 if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);
10862 return [x, y];
10863 }
10864
10865 function snapToGrid(grid
10866 /*: [number, number]*/
10867 , pendingX
10868 /*: number*/
10869 , pendingY
10870 /*: number*/
10871 )
10872 /*: [number, number]*/
10873 {
10874 var x = Math.round(pendingX / grid[0]) * grid[0];
10875 var y = Math.round(pendingY / grid[1]) * grid[1];
10876 return [x, y];
10877 }
10878
10879 function canDragX(draggable
10880 /*: Draggable*/
10881 )
10882 /*: boolean*/
10883 {
10884 return draggable.props.axis === 'both' || draggable.props.axis === 'x';
10885 }
10886
10887 function canDragY(draggable
10888 /*: Draggable*/
10889 )
10890 /*: boolean*/
10891 {
10892 return draggable.props.axis === 'both' || draggable.props.axis === 'y';
10893 } // Get {x, y} positions from event.
10894
10895
10896 function getControlPosition(e
10897 /*: MouseTouchEvent*/
10898 , touchIdentifier
10899 /*: ?number*/
10900 , draggableCore
10901 /*: DraggableCore*/
10902 )
10903 /*: ?ControlPosition*/
10904 {
10905 var touchObj = typeof touchIdentifier === 'number' ? (0, _domFns.getTouch)(e, touchIdentifier) : null;
10906 if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch
10907
10908 var node = findDOMNode(draggableCore); // User can provide an offsetParent if desired.
10909
10910 var offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;
10911 return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);
10912 } // Create an data object exposed by <DraggableCore>'s events
10913
10914
10915 function createCoreData(draggable
10916 /*: DraggableCore*/
10917 , x
10918 /*: number*/
10919 , y
10920 /*: number*/
10921 )
10922 /*: DraggableData*/
10923 {
10924 var state = draggable.state;
10925 var isStart = !(0, _shims.isNum)(state.lastX);
10926 var node = findDOMNode(draggable);
10927
10928 if (isStart) {
10929 // If this is our first move, use the x and y as last coords.
10930 return {
10931 node: node,
10932 deltaX: 0,
10933 deltaY: 0,
10934 lastX: x,
10935 lastY: y,
10936 x: x,
10937 y: y
10938 };
10939 } else {
10940 // Otherwise calculate proper values.
10941 return {
10942 node: node,
10943 deltaX: x - state.lastX,
10944 deltaY: y - state.lastY,
10945 lastX: state.lastX,
10946 lastY: state.lastY,
10947 x: x,
10948 y: y
10949 };
10950 }
10951 } // Create an data exposed by <Draggable>'s events
10952
10953
10954 function createDraggableData(draggable
10955 /*: Draggable*/
10956 , coreData
10957 /*: DraggableData*/
10958 )
10959 /*: DraggableData*/
10960 {
10961 var scale = draggable.props.scale;
10962 return {
10963 node: coreData.node,
10964 x: draggable.state.x + coreData.deltaX / scale,
10965 y: draggable.state.y + coreData.deltaY / scale,
10966 deltaX: coreData.deltaX / scale,
10967 deltaY: coreData.deltaY / scale,
10968 lastX: draggable.state.x,
10969 lastY: draggable.state.y
10970 };
10971 } // A lot faster than stringify/parse
10972
10973
10974 function cloneBounds(bounds
10975 /*: Bounds*/
10976 )
10977 /*: Bounds*/
10978 {
10979 return {
10980 left: bounds.left,
10981 top: bounds.top,
10982 right: bounds.right,
10983 bottom: bounds.bottom
10984 };
10985 }
10986
10987 function findDOMNode(draggable
10988 /*: Draggable | DraggableCore*/
10989 )
10990 /*: HTMLElement*/
10991 {
10992 var node = draggable.findDOMNode();
10993
10994 if (!node) {
10995 throw new Error('<DraggableCore>: Unmounted during event!');
10996 } // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME
10997
10998
10999 return node;
11000 }
11001
11002 /***/ }),
11003
11004 /***/ "../node_modules/react-draggable/build/cjs/utils/shims.js":
11005 /*!****************************************************************!*\
11006 !*** ../node_modules/react-draggable/build/cjs/utils/shims.js ***!
11007 \****************************************************************/
11008 /***/ ((__unused_webpack_module, exports) => {
11009
11010 "use strict";
11011
11012
11013 Object.defineProperty(exports, "__esModule", ({
11014 value: true
11015 }));
11016 exports.dontSetMe = dontSetMe;
11017 exports.findInArray = findInArray;
11018 exports.int = int;
11019 exports.isFunction = isFunction;
11020 exports.isNum = isNum;
11021
11022 // @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc
11023 function findInArray(array
11024 /*: Array<any> | TouchList*/
11025 , callback
11026 /*: Function*/
11027 )
11028 /*: any*/
11029 {
11030 for (var i = 0, length = array.length; i < length; i++) {
11031 if (callback.apply(callback, [array[i], i, array])) return array[i];
11032 }
11033 }
11034
11035 function isFunction(func
11036 /*: any*/
11037 )
11038 /*: boolean %checks*/
11039 {
11040 // $FlowIgnore[method-unbinding]
11041 return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';
11042 }
11043
11044 function isNum(num
11045 /*: any*/
11046 )
11047 /*: boolean %checks*/
11048 {
11049 return typeof num === 'number' && !isNaN(num);
11050 }
11051
11052 function int(a
11053 /*: string*/
11054 )
11055 /*: number*/
11056 {
11057 return parseInt(a, 10);
11058 }
11059
11060 function dontSetMe(props
11061 /*: Object*/
11062 , propName
11063 /*: string*/
11064 , componentName
11065 /*: string*/
11066 )
11067 /*: ?Error*/
11068 {
11069 if (props[propName]) {
11070 return new Error("Invalid prop ".concat(propName, " passed to ").concat(componentName, " - do not set this, set it on the child."));
11071 }
11072 }
11073
11074 /***/ }),
11075
11076 /***/ "../node_modules/react-is/cjs/react-is.development.js":
11077 /*!************************************************************!*\
11078 !*** ../node_modules/react-is/cjs/react-is.development.js ***!
11079 \************************************************************/
11080 /***/ ((__unused_webpack_module, exports) => {
11081
11082 "use strict";
11083 /**
11084 * @license React
11085 * react-is.development.js
11086 *
11087 * Copyright (c) Facebook, Inc. and its affiliates.
11088 *
11089 * This source code is licensed under the MIT license found in the
11090 * LICENSE file in the root directory of this source tree.
11091 */
11092
11093
11094
11095 if (true) {
11096 (function() {
11097 'use strict';
11098
11099 // ATTENTION
11100 // When adding new symbols to this file,
11101 // Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'
11102 // The Symbol used to tag the ReactElement-like types.
11103 var REACT_ELEMENT_TYPE = Symbol.for('react.element');
11104 var REACT_PORTAL_TYPE = Symbol.for('react.portal');
11105 var REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');
11106 var REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');
11107 var REACT_PROFILER_TYPE = Symbol.for('react.profiler');
11108 var REACT_PROVIDER_TYPE = Symbol.for('react.provider');
11109 var REACT_CONTEXT_TYPE = Symbol.for('react.context');
11110 var REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_context');
11111 var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');
11112 var REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');
11113 var REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');
11114 var REACT_MEMO_TYPE = Symbol.for('react.memo');
11115 var REACT_LAZY_TYPE = Symbol.for('react.lazy');
11116 var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');
11117
11118 // -----------------------------------------------------------------------------
11119
11120 var enableScopeAPI = false; // Experimental Create Event Handle API.
11121 var enableCacheElement = false;
11122 var enableTransitionTracing = false; // No known bugs, but needs performance testing
11123
11124 var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber
11125 // stuff. Intended to enable React core members to more easily debug scheduling
11126 // issues in DEV builds.
11127
11128 var enableDebugTracing = false; // Track which Fiber(s) schedule render work.
11129
11130 var REACT_MODULE_REFERENCE;
11131
11132 {
11133 REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');
11134 }
11135
11136 function isValidElementType(type) {
11137 if (typeof type === 'string' || typeof type === 'function') {
11138 return true;
11139 } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).
11140
11141
11142 if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing ) {
11143 return true;
11144 }
11145
11146 if (typeof type === 'object' && type !== null) {
11147 if (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 || // This needs to include all possible module reference object
11148 // types supported by any Flight configuration anywhere since
11149 // we don't know which Flight build this will end up being used
11150 // with.
11151 type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {
11152 return true;
11153 }
11154 }
11155
11156 return false;
11157 }
11158
11159 function typeOf(object) {
11160 if (typeof object === 'object' && object !== null) {
11161 var $$typeof = object.$$typeof;
11162
11163 switch ($$typeof) {
11164 case REACT_ELEMENT_TYPE:
11165 var type = object.type;
11166
11167 switch (type) {
11168 case REACT_FRAGMENT_TYPE:
11169 case REACT_PROFILER_TYPE:
11170 case REACT_STRICT_MODE_TYPE:
11171 case REACT_SUSPENSE_TYPE:
11172 case REACT_SUSPENSE_LIST_TYPE:
11173 return type;
11174
11175 default:
11176 var $$typeofType = type && type.$$typeof;
11177
11178 switch ($$typeofType) {
11179 case REACT_SERVER_CONTEXT_TYPE:
11180 case REACT_CONTEXT_TYPE:
11181 case REACT_FORWARD_REF_TYPE:
11182 case REACT_LAZY_TYPE:
11183 case REACT_MEMO_TYPE:
11184 case REACT_PROVIDER_TYPE:
11185 return $$typeofType;
11186
11187 default:
11188 return $$typeof;
11189 }
11190
11191 }
11192
11193 case REACT_PORTAL_TYPE:
11194 return $$typeof;
11195 }
11196 }
11197
11198 return undefined;
11199 }
11200 var ContextConsumer = REACT_CONTEXT_TYPE;
11201 var ContextProvider = REACT_PROVIDER_TYPE;
11202 var Element = REACT_ELEMENT_TYPE;
11203 var ForwardRef = REACT_FORWARD_REF_TYPE;
11204 var Fragment = REACT_FRAGMENT_TYPE;
11205 var Lazy = REACT_LAZY_TYPE;
11206 var Memo = REACT_MEMO_TYPE;
11207 var Portal = REACT_PORTAL_TYPE;
11208 var Profiler = REACT_PROFILER_TYPE;
11209 var StrictMode = REACT_STRICT_MODE_TYPE;
11210 var Suspense = REACT_SUSPENSE_TYPE;
11211 var SuspenseList = REACT_SUSPENSE_LIST_TYPE;
11212 var hasWarnedAboutDeprecatedIsAsyncMode = false;
11213 var hasWarnedAboutDeprecatedIsConcurrentMode = false; // AsyncMode should be deprecated
11214
11215 function isAsyncMode(object) {
11216 {
11217 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
11218 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
11219
11220 console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11221 }
11222 }
11223
11224 return false;
11225 }
11226 function isConcurrentMode(object) {
11227 {
11228 if (!hasWarnedAboutDeprecatedIsConcurrentMode) {
11229 hasWarnedAboutDeprecatedIsConcurrentMode = true; // Using console['warn'] to evade Babel and ESLint
11230
11231 console['warn']('The ReactIs.isConcurrentMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11232 }
11233 }
11234
11235 return false;
11236 }
11237 function isContextConsumer(object) {
11238 return typeOf(object) === REACT_CONTEXT_TYPE;
11239 }
11240 function isContextProvider(object) {
11241 return typeOf(object) === REACT_PROVIDER_TYPE;
11242 }
11243 function isElement(object) {
11244 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
11245 }
11246 function isForwardRef(object) {
11247 return typeOf(object) === REACT_FORWARD_REF_TYPE;
11248 }
11249 function isFragment(object) {
11250 return typeOf(object) === REACT_FRAGMENT_TYPE;
11251 }
11252 function isLazy(object) {
11253 return typeOf(object) === REACT_LAZY_TYPE;
11254 }
11255 function isMemo(object) {
11256 return typeOf(object) === REACT_MEMO_TYPE;
11257 }
11258 function isPortal(object) {
11259 return typeOf(object) === REACT_PORTAL_TYPE;
11260 }
11261 function isProfiler(object) {
11262 return typeOf(object) === REACT_PROFILER_TYPE;
11263 }
11264 function isStrictMode(object) {
11265 return typeOf(object) === REACT_STRICT_MODE_TYPE;
11266 }
11267 function isSuspense(object) {
11268 return typeOf(object) === REACT_SUSPENSE_TYPE;
11269 }
11270 function isSuspenseList(object) {
11271 return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;
11272 }
11273
11274 exports.ContextConsumer = ContextConsumer;
11275 exports.ContextProvider = ContextProvider;
11276 exports.Element = Element;
11277 exports.ForwardRef = ForwardRef;
11278 exports.Fragment = Fragment;
11279 exports.Lazy = Lazy;
11280 exports.Memo = Memo;
11281 exports.Portal = Portal;
11282 exports.Profiler = Profiler;
11283 exports.StrictMode = StrictMode;
11284 exports.Suspense = Suspense;
11285 exports.SuspenseList = SuspenseList;
11286 exports.isAsyncMode = isAsyncMode;
11287 exports.isConcurrentMode = isConcurrentMode;
11288 exports.isContextConsumer = isContextConsumer;
11289 exports.isContextProvider = isContextProvider;
11290 exports.isElement = isElement;
11291 exports.isForwardRef = isForwardRef;
11292 exports.isFragment = isFragment;
11293 exports.isLazy = isLazy;
11294 exports.isMemo = isMemo;
11295 exports.isPortal = isPortal;
11296 exports.isProfiler = isProfiler;
11297 exports.isStrictMode = isStrictMode;
11298 exports.isSuspense = isSuspense;
11299 exports.isSuspenseList = isSuspenseList;
11300 exports.isValidElementType = isValidElementType;
11301 exports.typeOf = typeOf;
11302 })();
11303 }
11304
11305
11306 /***/ }),
11307
11308 /***/ "../node_modules/react-is/index.js":
11309 /*!*****************************************!*\
11310 !*** ../node_modules/react-is/index.js ***!
11311 \*****************************************/
11312 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11313
11314 "use strict";
11315
11316
11317 if (false) {} else {
11318 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
11319 }
11320
11321
11322 /***/ }),
11323
11324 /***/ "../node_modules/shallowequal/index.js":
11325 /*!*********************************************!*\
11326 !*** ../node_modules/shallowequal/index.js ***!
11327 \*********************************************/
11328 /***/ ((module) => {
11329
11330 //
11331
11332 module.exports = function shallowEqual(objA, objB, compare, compareContext) {
11333 var ret = compare ? compare.call(compareContext, objA, objB) : void 0;
11334
11335 if (ret !== void 0) {
11336 return !!ret;
11337 }
11338
11339 if (objA === objB) {
11340 return true;
11341 }
11342
11343 if (typeof objA !== "object" || !objA || typeof objB !== "object" || !objB) {
11344 return false;
11345 }
11346
11347 var keysA = Object.keys(objA);
11348 var keysB = Object.keys(objB);
11349
11350 if (keysA.length !== keysB.length) {
11351 return false;
11352 }
11353
11354 var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);
11355
11356 // Test for A's keys different from B.
11357 for (var idx = 0; idx < keysA.length; idx++) {
11358 var key = keysA[idx];
11359
11360 if (!bHasOwnProperty(key)) {
11361 return false;
11362 }
11363
11364 var valueA = objA[key];
11365 var valueB = objB[key];
11366
11367 ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;
11368
11369 if (ret === false || (ret === void 0 && valueA !== valueB)) {
11370 return false;
11371 }
11372 }
11373
11374 return true;
11375 };
11376
11377
11378 /***/ }),
11379
11380 /***/ "../node_modules/styled-components/dist/styled-components.browser.esm.js":
11381 /*!*******************************************************************************!*\
11382 !*** ../node_modules/styled-components/dist/styled-components.browser.esm.js ***!
11383 \*******************************************************************************/
11384 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11385
11386 "use strict";
11387 __webpack_require__.r(__webpack_exports__);
11388 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11389 /* harmony export */ ServerStyleSheet: () => (/* binding */ Ue),
11390 /* harmony export */ StyleSheetConsumer: () => (/* binding */ ue),
11391 /* harmony export */ StyleSheetContext: () => (/* binding */ ce),
11392 /* harmony export */ StyleSheetManager: () => (/* binding */ me),
11393 /* harmony export */ ThemeConsumer: () => (/* binding */ Ge),
11394 /* harmony export */ ThemeContext: () => (/* binding */ Me),
11395 /* harmony export */ ThemeProvider: () => (/* binding */ Le),
11396 /* harmony export */ __PRIVATE__: () => (/* binding */ Ze),
11397 /* harmony export */ createGlobalStyle: () => (/* binding */ $e),
11398 /* harmony export */ css: () => (/* binding */ Ae),
11399 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
11400 /* harmony export */ isStyledComponent: () => (/* binding */ _),
11401 /* harmony export */ keyframes: () => (/* binding */ We),
11402 /* harmony export */ useTheme: () => (/* binding */ Xe),
11403 /* harmony export */ version: () => (/* binding */ A),
11404 /* harmony export */ withTheme: () => (/* binding */ Je)
11405 /* harmony export */ });
11406 /* harmony import */ var react_is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
11407 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
11408 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
11409 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! shallowequal */ "../node_modules/shallowequal/index.js");
11410 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(shallowequal__WEBPACK_IMPORTED_MODULE_2__);
11411 /* harmony import */ var _emotion_stylis__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @emotion/stylis */ "../node_modules/@emotion/stylis/dist/stylis.browser.esm.js");
11412 /* harmony import */ var _emotion_unitless__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @emotion/unitless */ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js");
11413 /* harmony import */ var _emotion_is_prop_valid__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @emotion/is-prop-valid */ "../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js");
11414 /* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! hoist-non-react-statics */ "../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js");
11415 /* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6__);
11416 function y(){return(y=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var v=function(e,t){for(var n=[e[0]],r=0,o=t.length;r<o;r+=1)n.push(t[r],e[r+1]);return n},g=function(t){return null!==t&&"object"==typeof t&&"[object Object]"===(t.toString?t.toString():Object.prototype.toString.call(t))&&!(0,react_is__WEBPACK_IMPORTED_MODULE_0__.typeOf)(t)},S=Object.freeze([]),w=Object.freeze({});function E(e){return"function"==typeof e}function b(e){return true&&"string"==typeof e&&e||e.displayName||e.name||"Component"}function _(e){return e&&"string"==typeof e.styledComponentId}var N="undefined"!=typeof process&&void 0!==process.env&&(process.env.REACT_APP_SC_ATTR||process.env.SC_ATTR)||"data-styled",A="5.3.11",C="undefined"!=typeof window&&"HTMLElement"in window,I=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: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")),P={},O= 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"}:0;function R(){for(var e=arguments.length<=0?void 0:arguments[0],t=[],n=1,r=arguments.length;n<r;n+=1)t.push(n<0||arguments.length<=n?void 0:arguments[n]);return t.forEach((function(t){e=e.replace(/%[a-z]/,t)})),e}function D(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];throw false?0:new Error(R.apply(void 0,[O[e]].concat(n)).trim())}var j=function(){function e(e){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=e}var t=e.prototype;return t.indexOfGroup=function(e){for(var t=0,n=0;n<e;n++)t+=this.groupSizes[n];return t},t.insertRules=function(e,t){if(e>=this.groupSizes.length){for(var n=this.groupSizes,r=n.length,o=r;e>=o;)(o<<=1)<0&&D(16,""+e);this.groupSizes=new Uint32Array(o),this.groupSizes.set(n),this.length=o;for(var s=r;s<o;s++)this.groupSizes[s]=0}for(var i=this.indexOfGroup(e+1),a=0,c=t.length;a<c;a++)this.tag.insertRule(i,t[a])&&(this.groupSizes[e]++,i++)},t.clearGroup=function(e){if(e<this.length){var t=this.groupSizes[e],n=this.indexOfGroup(e),r=n+t;this.groupSizes[e]=0;for(var o=n;o<r;o++)this.tag.deleteRule(n)}},t.getGroup=function(e){var t="";if(e>=this.length||0===this.groupSizes[e])return t;for(var n=this.groupSizes[e],r=this.indexOfGroup(e),o=r+n,s=r;s<o;s++)t+=this.tag.getRule(s)+"/*!sc*/\n";return t},e}(),T=new Map,x=new Map,k=1,V=function(e){if(T.has(e))return T.get(e);for(;x.has(k);)k++;var t=k++;return true&&((0|t)<0||t>1<<30)&&D(16,""+t),T.set(e,t),x.set(t,e),t},B=function(e){return x.get(e)},z=function(e,t){t>=k&&(k=t+1),T.set(e,t),x.set(t,e)},M="style["+N+'][data-styled-version="5.3.11"]',G=new RegExp("^"+N+'\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'),L=function(e,t,n){for(var r,o=n.split(","),s=0,i=o.length;s<i;s++)(r=o[s])&&e.registerName(t,r)},F=function(e,t){for(var n=(t.textContent||"").split("/*!sc*/\n"),r=[],o=0,s=n.length;o<s;o++){var i=n[o].trim();if(i){var a=i.match(G);if(a){var c=0|parseInt(a[1],10),u=a[2];0!==c&&(z(u,c),L(e,u,a[3]),e.getTag().insertRules(c,r)),r.length=0}else r.push(i)}}},Y=function(){return true?__webpack_require__.nc:0},q=function(e){var t=document.head,n=e||t,r=document.createElement("style"),o=function(e){for(var t=e.childNodes,n=t.length;n>=0;n--){var r=t[n];if(r&&1===r.nodeType&&r.hasAttribute(N))return r}}(n),s=void 0!==o?o.nextSibling:null;r.setAttribute(N,"active"),r.setAttribute("data-styled-version","5.3.11");var i=Y();return i&&r.setAttribute("nonce",i),n.insertBefore(r,s),r},H=function(){function e(e){var t=this.element=q(e);t.appendChild(document.createTextNode("")),this.sheet=function(e){if(e.sheet)return e.sheet;for(var t=document.styleSheets,n=0,r=t.length;n<r;n++){var o=t[n];if(o.ownerNode===e)return o}D(17)}(t),this.length=0}var t=e.prototype;return t.insertRule=function(e,t){try{return this.sheet.insertRule(t,e),this.length++,!0}catch(e){return!1}},t.deleteRule=function(e){this.sheet.deleteRule(e),this.length--},t.getRule=function(e){var t=this.sheet.cssRules[e];return void 0!==t&&"string"==typeof t.cssText?t.cssText:""},e}(),$=function(){function e(e){var t=this.element=q(e);this.nodes=t.childNodes,this.length=0}var t=e.prototype;return t.insertRule=function(e,t){if(e<=this.length&&e>=0){var n=document.createTextNode(t),r=this.nodes[e];return this.element.insertBefore(n,r||null),this.length++,!0}return!1},t.deleteRule=function(e){this.element.removeChild(this.nodes[e]),this.length--},t.getRule=function(e){return e<this.length?this.nodes[e].textContent:""},e}(),W=function(){function e(e){this.rules=[],this.length=0}var t=e.prototype;return t.insertRule=function(e,t){return e<=this.length&&(this.rules.splice(e,0,t),this.length++,!0)},t.deleteRule=function(e){this.rules.splice(e,1),this.length--},t.getRule=function(e){return e<this.length?this.rules[e]:""},e}(),U=C,J={isServer:!C,useCSSOMInjection:!I},X=function(){function e(e,t,n){void 0===e&&(e=w),void 0===t&&(t={}),this.options=y({},J,{},e),this.gs=t,this.names=new Map(n),this.server=!!e.isServer,!this.server&&C&&U&&(U=!1,function(e){for(var t=document.querySelectorAll(M),n=0,r=t.length;n<r;n++){var o=t[n];o&&"active"!==o.getAttribute(N)&&(F(e,o),o.parentNode&&o.parentNode.removeChild(o))}}(this))}e.registerId=function(e){return V(e)};var t=e.prototype;return t.reconstructWithOptions=function(t,n){return void 0===n&&(n=!0),new e(y({},this.options,{},t),this.gs,n&&this.names||void 0)},t.allocateGSInstance=function(e){return this.gs[e]=(this.gs[e]||0)+1},t.getTag=function(){return this.tag||(this.tag=(n=(t=this.options).isServer,r=t.useCSSOMInjection,o=t.target,e=n?new W(o):r?new H(o):new $(o),new j(e)));var e,t,n,r,o},t.hasNameForId=function(e,t){return this.names.has(e)&&this.names.get(e).has(t)},t.registerName=function(e,t){if(V(e),this.names.has(e))this.names.get(e).add(t);else{var n=new Set;n.add(t),this.names.set(e,n)}},t.insertRules=function(e,t,n){this.registerName(e,t),this.getTag().insertRules(V(e),n)},t.clearNames=function(e){this.names.has(e)&&this.names.get(e).clear()},t.clearRules=function(e){this.getTag().clearGroup(V(e)),this.clearNames(e)},t.clearTag=function(){this.tag=void 0},t.toString=function(){return function(e){for(var t=e.getTag(),n=t.length,r="",o=0;o<n;o++){var s=B(o);if(void 0!==s){var i=e.names.get(s),a=t.getGroup(o);if(i&&a&&i.size){var c=N+".g"+o+'[id="'+s+'"]',u="";void 0!==i&&i.forEach((function(e){e.length>0&&(u+=e+",")})),r+=""+a+c+'{content:"'+u+'"}/*!sc*/\n'}}}return r}(this)},e}(),Z=/(a)(d)/gi,K=function(e){return String.fromCharCode(e+(e>25?39:97))};function Q(e){var t,n="";for(t=Math.abs(e);t>52;t=t/52|0)n=K(t%52)+n;return(K(t%52)+n).replace(Z,"$1-$2")}var ee=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},te=function(e){return ee(5381,e)};function ne(e){for(var t=0;t<e.length;t+=1){var n=e[t];if(E(n)&&!_(n))return!1}return!0}var re=te("5.3.11"),oe=function(){function e(e,t,n){this.rules=e,this.staticRulesId="",this.isStatic= false&&0,this.componentId=t,this.baseHash=ee(re,t),this.baseStyle=n,X.registerId(t)}return e.prototype.generateAndInjectStyles=function(e,t,n){var r=this.componentId,o=[];if(this.baseStyle&&o.push(this.baseStyle.generateAndInjectStyles(e,t,n)),this.isStatic&&!n.hash)if(this.staticRulesId&&t.hasNameForId(r,this.staticRulesId))o.push(this.staticRulesId);else{var s=_e(this.rules,e,t,n).join(""),i=Q(ee(this.baseHash,s)>>>0);if(!t.hasNameForId(r,i)){var a=n(s,"."+i,void 0,r);t.insertRules(r,i,a)}o.push(i),this.staticRulesId=i}else{for(var c=this.rules.length,u=ee(this.baseHash,n.hash),l="",d=0;d<c;d++){var h=this.rules[d];if("string"==typeof h)l+=h, true&&(u=ee(u,h+d));else if(h){var p=_e(h,e,t,n),f=Array.isArray(p)?p.join(""):p;u=ee(u,f+d),l+=f}}if(l){var m=Q(u>>>0);if(!t.hasNameForId(r,m)){var y=n(l,"."+m,void 0,r);t.insertRules(r,m,y)}o.push(m)}}return o.join(" ")},e}(),se=/^\s*\/\/.*$/gm,ie=[":","[",".","#"];function ae(e){var t,n,r,o,s=void 0===e?w:e,i=s.options,a=void 0===i?w:i,c=s.plugins,u=void 0===c?S:c,l=new _emotion_stylis__WEBPACK_IMPORTED_MODULE_3__["default"](a),d=[],p=function(e){function t(t){if(t)try{e(t+"}")}catch(e){}}return function(n,r,o,s,i,a,c,u,l,d){switch(n){case 1:if(0===l&&64===r.charCodeAt(0))return e(r+";"),"";break;case 2:if(0===u)return r+"/*|*/";break;case 3:switch(u){case 102:case 112:return e(o[0]+r),"";default:return r+(0===d?"/*|*/":"")}case-2:r.split("/*|*/}").forEach(t)}}}((function(e){d.push(e)})),f=function(e,r,s){return 0===r&&-1!==ie.indexOf(s[n.length])||s.match(o)?e:"."+t};function m(e,s,i,a){void 0===a&&(a="&");var c=e.replace(se,""),u=s&&i?i+" "+s+" { "+c+" }":c;return t=a,n=s,r=new RegExp("\\"+n+"\\b","g"),o=new RegExp("(\\"+n+"\\b){2,}"),l(i||!s?"":s,u)}return l.use([].concat(u,[function(e,t,o){2===e&&o.length&&o[0].lastIndexOf(n)>0&&(o[0]=o[0].replace(r,f))},p,function(e){if(-2===e){var t=d;return d=[],t}}])),m.hash=u.length?u.reduce((function(e,t){return t.name||D(15),ee(e,t.name)}),5381).toString():"",m}var ce=react__WEBPACK_IMPORTED_MODULE_1___default().createContext(),ue=ce.Consumer,le=react__WEBPACK_IMPORTED_MODULE_1___default().createContext(),de=(le.Consumer,new X),he=ae();function pe(){return (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(ce)||de}function fe(){return (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(le)||he}function me(e){var t=(0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(e.stylisPlugins),n=t[0],s=t[1],c=pe(),u=(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]),l=(0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)((function(){return ae({options:{prefix:!e.disableVendorPrefixes},plugins:n})}),[e.disableVendorPrefixes,n]);return (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)((function(){shallowequal__WEBPACK_IMPORTED_MODULE_2___default()(n,e.stylisPlugins)||s(e.stylisPlugins)}),[e.stylisPlugins]),react__WEBPACK_IMPORTED_MODULE_1___default().createElement(ce.Provider,{value:u},react__WEBPACK_IMPORTED_MODULE_1___default().createElement(le.Provider,{value:l}, true?react__WEBPACK_IMPORTED_MODULE_1___default().Children.only(e.children):0))}var ye=function(){function e(e,t){var n=this;this.inject=function(e,t){void 0===t&&(t=he);var r=n.name+t.hash;e.hasNameForId(n.id,r)||e.insertRules(n.id,r,t(n.rules,r,"@keyframes"))},this.toString=function(){return D(12,String(n.name))},this.name=e,this.id="sc-keyframes-"+e,this.rules=t}return e.prototype.getName=function(e){return void 0===e&&(e=he),this.name+e.hash},e}(),ve=/([A-Z])/,ge=/([A-Z])/g,Se=/^ms-/,we=function(e){return"-"+e.toLowerCase()};function Ee(e){return ve.test(e)?e.replace(ge,we).replace(Se,"-ms-"):e}var be=function(e){return null==e||!1===e||""===e};function _e(e,n,r,o){if(Array.isArray(e)){for(var s,i=[],a=0,c=e.length;a<c;a+=1)""!==(s=_e(e[a],n,r,o))&&(Array.isArray(s)?i.push.apply(i,s):i.push(s));return i}if(be(e))return"";if(_(e))return"."+e.styledComponentId;if(E(e)){if("function"!=typeof(l=e)||l.prototype&&l.prototype.isReactComponent||!n)return e;var u=e(n);return true&&(0,react_is__WEBPACK_IMPORTED_MODULE_0__.isElement)(u)&&console.warn(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."),_e(u,n,r,o)}var l;return e instanceof ye?r?(e.inject(r,o),e.getName(o)):e:g(e)?function e(t,n){var r,o,s=[];for(var i in t)t.hasOwnProperty(i)&&!be(t[i])&&(Array.isArray(t[i])&&t[i].isCss||E(t[i])?s.push(Ee(i)+":",t[i],";"):g(t[i])?s.push.apply(s,e(t[i],i)):s.push(Ee(i)+": "+(r=i,null==(o=t[i])||"boolean"==typeof o||""===o?"":"number"!=typeof o||0===o||r in _emotion_unitless__WEBPACK_IMPORTED_MODULE_4__["default"]||r.startsWith("--")?String(o).trim():o+"px")+";"));return n?[n+" {"].concat(s,["}"]):s}(e):e.toString()}var Ne=function(e){return Array.isArray(e)&&(e.isCss=!0),e};function Ae(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return E(e)||g(e)?Ne(_e(v(S,[e].concat(n)))):0===n.length&&1===e.length&&"string"==typeof e[0]?e:Ne(_e(v(e,n)))}var Ce=/invalid hook call/i,Ie=new Set,Pe=function(e,t){if(true){var n="The component "+e+(t?' with the id of "'+t+'"':"")+" has been created dynamically.\nYou 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.",r=console.error;try{var o=!0;console.error=function(e){if(Ce.test(e))o=!1,Ie.delete(n);else{for(var t=arguments.length,s=new Array(t>1?t-1:0),i=1;i<t;i++)s[i-1]=arguments[i];r.apply(void 0,[e].concat(s))}},(0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(),o&&!Ie.has(n)&&(console.warn(n),Ie.add(n))}catch(e){Ce.test(e.message)&&Ie.delete(n)}finally{console.error=r}}},Oe=function(e,t,n){return void 0===n&&(n=w),e.theme!==n.theme&&e.theme||t||n.theme},Re=/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g,De=/(^-|-$)/g;function je(e){return e.replace(Re,"-").replace(De,"")}var Te=function(e){return Q(te(e)>>>0)};function xe(e){return"string"==typeof e&&( false||e.charAt(0)===e.charAt(0).toLowerCase())}var ke=function(e){return"function"==typeof e||"object"==typeof e&&null!==e&&!Array.isArray(e)},Ve=function(e){return"__proto__"!==e&&"constructor"!==e&&"prototype"!==e};function Be(e,t,n){var r=e[n];ke(t)&&ke(r)?ze(r,t):e[n]=t}function ze(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];for(var o=0,s=n;o<s.length;o++){var i=s[o];if(ke(i))for(var a in i)Ve(a)&&Be(e,i[a],a)}return e}var Me=react__WEBPACK_IMPORTED_MODULE_1___default().createContext(),Ge=Me.Consumer;function Le(e){var t=(0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(Me),n=(0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)((function(){return function(e,t){if(!e)return D(14);if(E(e)){var n=e(t);return false||null!==n&&!Array.isArray(n)&&"object"==typeof n?n:D(7)}return Array.isArray(e)||"object"!=typeof e?D(8):t?y({},t,{},e):e}(e.theme,t)}),[e.theme,t]);return e.children?react__WEBPACK_IMPORTED_MODULE_1___default().createElement(Me.Provider,{value:n},e.children):null}var Fe={};function Ye(e,t,n){var o=_(e),i=!xe(e),a=t.attrs,c=void 0===a?S:a,l=t.componentId,d=void 0===l?function(e,t){var n="string"!=typeof e?"sc":je(e);Fe[n]=(Fe[n]||0)+1;var r=n+"-"+Te("5.3.11"+n+Fe[n]);return t?t+"-"+r:r}(t.displayName,t.parentComponentId):l,h=t.displayName,p=void 0===h?function(e){return xe(e)?"styled."+e:"Styled("+b(e)+")"}(e):h,v=t.displayName&&t.componentId?je(t.displayName)+"-"+t.componentId:t.componentId||d,g=o&&e.attrs?Array.prototype.concat(e.attrs,c).filter(Boolean):c,N=t.shouldForwardProp;o&&e.shouldForwardProp&&(N=t.shouldForwardProp?function(n,r,o){return e.shouldForwardProp(n,r,o)&&t.shouldForwardProp(n,r,o)}:e.shouldForwardProp);var A,C=new oe(n,v,o?e.componentStyle:void 0),I=C.isStatic&&0===c.length,P=function(e,t){return function(e,t,n,r){var o=e.attrs,i=e.componentStyle,a=e.defaultProps,c=e.foldedComponentIds,l=e.shouldForwardProp,d=e.styledComponentId,h=e.target,p=function(e,t,n){void 0===e&&(e=w);var r=y({},t,{theme:e}),o={};return n.forEach((function(e){var t,n,s,i=e;for(t in E(i)&&(i=i(r)),i)r[t]=o[t]="className"===t?(n=o[t],s=i[t],n&&s?n+" "+s:n||s):i[t]})),[r,o]}(Oe(t,(0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(Me),a)||w,t,o),m=p[0],v=p[1],g=function(e,t,n,r){var o=pe(),s=fe(),i=t?e.generateAndInjectStyles(w,o,s):e.generateAndInjectStyles(n,o,s);return true&&!t&&r&&r(i),i}(i,r,m, true?e.warnTooManyClasses:0),S=n,b=v.$as||t.$as||v.as||t.as||h,_=xe(b),N=v!==t?y({},t,{},v):t,A={};for(var C in N)"$"!==C[0]&&"as"!==C&&("forwardedAs"===C?A.as=N[C]:(l?l(C,_emotion_is_prop_valid__WEBPACK_IMPORTED_MODULE_5__["default"],b):!_||(0,_emotion_is_prop_valid__WEBPACK_IMPORTED_MODULE_5__["default"])(C))&&(A[C]=N[C]));return t.style&&v.style!==t.style&&(A.style=y({},t.style,{},v.style)),A.className=Array.prototype.concat(c,d,g!==d?g:null,t.className,v.className).filter(Boolean).join(" "),A.ref=S,(0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(b,A)}(A,e,t,I)};return P.displayName=p,(A=react__WEBPACK_IMPORTED_MODULE_1___default().forwardRef(P)).attrs=g,A.componentStyle=C,A.displayName=p,A.shouldForwardProp=N,A.foldedComponentIds=o?Array.prototype.concat(e.foldedComponentIds,e.styledComponentId):S,A.styledComponentId=v,A.target=o?e.target:e,A.withComponent=function(e){var r=t.componentId,o=function(e,t){if(null==e)return{};var n,r,o={},s=Object.keys(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(t,["componentId"]),s=r&&r+"-"+(xe(e)?e:je(b(e)));return Ye(e,y({},o,{attrs:g,componentId:s}),n)},Object.defineProperty(A,"defaultProps",{get:function(){return this._foldedDefaultProps},set:function(t){this._foldedDefaultProps=o?ze({},e.defaultProps,t):t}}), true&&(Pe(p,v),A.warnTooManyClasses=function(e,t){var n={},r=!1;return function(o){if(!r&&(n[o]=!0,Object.keys(n).length>=200)){var s=t?' with the id of "'+t+'"':"";console.warn("Over 200 classes were generated for component "+e+s+".\nConsider 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 />"),r=!0,n={}}}}(p,v)),Object.defineProperty(A,"toString",{value:function(){return"."+A.styledComponentId}}),i&&hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6___default()(A,e,{attrs:!0,componentStyle:!0,displayName:!0,foldedComponentIds:!0,shouldForwardProp:!0,styledComponentId:!0,target:!0,withComponent:!0}),A}var qe=function(e){return function e(t,r,o){if(void 0===o&&(o=w),!(0,react_is__WEBPACK_IMPORTED_MODULE_0__.isValidElementType)(r))return D(1,String(r));var s=function(){return t(r,o,Ae.apply(void 0,arguments))};return s.withConfig=function(n){return e(t,r,y({},o,{},n))},s.attrs=function(n){return e(t,r,y({},o,{attrs:Array.prototype.concat(o.attrs,n).filter(Boolean)}))},s}(Ye,e)};["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","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","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","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","textPath","tspan"].forEach((function(e){qe[e]=qe(e)}));var He=function(){function e(e,t){this.rules=e,this.componentId=t,this.isStatic=ne(e),X.registerId(this.componentId+1)}var t=e.prototype;return t.createStyles=function(e,t,n,r){var o=r(_e(this.rules,t,n,r).join(""),""),s=this.componentId+e;n.insertRules(s,s,o)},t.removeStyles=function(e,t){t.clearRules(this.componentId+e)},t.renderStyles=function(e,t,n,r){e>2&&X.registerId(this.componentId+e),this.removeStyles(e,n),this.createStyles(e,t,n,r)},e}();function $e(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];var i=Ae.apply(void 0,[e].concat(n)),a="sc-global-"+Te(JSON.stringify(i)),u=new He(i,a);function d(e){var t=pe(),n=fe(),o=(0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(Me),d=(0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(t.allocateGSInstance(a)).current;return true&&react__WEBPACK_IMPORTED_MODULE_1___default().Children.count(e.children)&&console.warn("The global style component "+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.server&&h(d,e,t,o,n),(0,react__WEBPACK_IMPORTED_MODULE_1__.useLayoutEffect)((function(){if(!t.server)return h(d,e,t,o,n),function(){return u.removeStyles(d,t)}}),[d,e,t,o,n]),null}function h(e,t,n,r,o){if(u.isStatic)u.renderStyles(e,P,n,o);else{var s=y({},t,{theme:Oe(t,r,d.defaultProps)});u.renderStyles(e,s,n,o)}}return true&&Pe(a),react__WEBPACK_IMPORTED_MODULE_1___default().memo(d)}function We(e){ 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.");for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var o=Ae.apply(void 0,[e].concat(n)).join(""),s=Te(o);return new ye(s,o)}var Ue=function(){function e(){var e=this;this._emitSheetCSS=function(){var t=e.instance.toString();if(!t)return"";var n=Y();return"<style "+[n&&'nonce="'+n+'"',N+'="true"','data-styled-version="5.3.11"'].filter(Boolean).join(" ")+">"+t+"</style>"},this.getStyleTags=function(){return e.sealed?D(2):e._emitSheetCSS()},this.getStyleElement=function(){var t;if(e.sealed)return D(2);var n=((t={})[N]="",t["data-styled-version"]="5.3.11",t.dangerouslySetInnerHTML={__html:e.instance.toString()},t),o=Y();return o&&(n.nonce=o),[react__WEBPACK_IMPORTED_MODULE_1___default().createElement("style",y({},n,{key:"sc-0-0"}))]},this.seal=function(){e.sealed=!0},this.instance=new X({isServer:!0}),this.sealed=!1}var t=e.prototype;return t.collectStyles=function(e){return this.sealed?D(2):react__WEBPACK_IMPORTED_MODULE_1___default().createElement(me,{sheet:this.instance},e)},t.interleaveWithNodeStream=function(e){return D(3)},e}(),Je=function(e){var t=react__WEBPACK_IMPORTED_MODULE_1___default().forwardRef((function(t,n){var o=(0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(Me),i=e.defaultProps,a=Oe(t,o,i);return true&&void 0===a&&console.warn('[withTheme] You are not using a ThemeProvider nor passing a theme prop or a theme in defaultProps in component class "'+b(e)+'"'),react__WEBPACK_IMPORTED_MODULE_1___default().createElement(e,y({},t,{theme:a,ref:n}))}));return hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6___default()(t,e),t.displayName="WithTheme("+b(e)+")",t},Xe=function(){return (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(Me)},Ze={StyleSheet:X,masterSheet:de}; 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"), true&&"undefined"!=typeof window&&(window["__styled-components-init__"]=window["__styled-components-init__"]||0,1===window["__styled-components-init__"]&&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["__styled-components-init__"]+=1);/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (qe);
11417 //# sourceMappingURL=styled-components.browser.esm.js.map
11418
11419
11420 /***/ }),
11421
11422 /***/ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js":
11423 /*!*****************************************************************************************************!*\
11424 !*** ../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js ***!
11425 \*****************************************************************************************************/
11426 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11427
11428 "use strict";
11429 __webpack_require__.r(__webpack_exports__);
11430 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11431 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
11432 /* harmony export */ });
11433 var unitlessKeys = {
11434 animationIterationCount: 1,
11435 borderImageOutset: 1,
11436 borderImageSlice: 1,
11437 borderImageWidth: 1,
11438 boxFlex: 1,
11439 boxFlexGroup: 1,
11440 boxOrdinalGroup: 1,
11441 columnCount: 1,
11442 columns: 1,
11443 flex: 1,
11444 flexGrow: 1,
11445 flexPositive: 1,
11446 flexShrink: 1,
11447 flexNegative: 1,
11448 flexOrder: 1,
11449 gridRow: 1,
11450 gridRowEnd: 1,
11451 gridRowSpan: 1,
11452 gridRowStart: 1,
11453 gridColumn: 1,
11454 gridColumnEnd: 1,
11455 gridColumnSpan: 1,
11456 gridColumnStart: 1,
11457 msGridRow: 1,
11458 msGridRowSpan: 1,
11459 msGridColumn: 1,
11460 msGridColumnSpan: 1,
11461 fontWeight: 1,
11462 lineHeight: 1,
11463 opacity: 1,
11464 order: 1,
11465 orphans: 1,
11466 tabSize: 1,
11467 widows: 1,
11468 zIndex: 1,
11469 zoom: 1,
11470 WebkitLineClamp: 1,
11471 // SVG-related properties
11472 fillOpacity: 1,
11473 floodOpacity: 1,
11474 stopOpacity: 1,
11475 strokeDasharray: 1,
11476 strokeDashoffset: 1,
11477 strokeMiterlimit: 1,
11478 strokeOpacity: 1,
11479 strokeWidth: 1
11480 };
11481
11482 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (unitlessKeys);
11483
11484
11485 /***/ }),
11486
11487 /***/ "../node_modules/validator/lib/isFQDN.js":
11488 /*!***********************************************!*\
11489 !*** ../node_modules/validator/lib/isFQDN.js ***!
11490 \***********************************************/
11491 /***/ ((module, exports, __webpack_require__) => {
11492
11493 "use strict";
11494
11495
11496 Object.defineProperty(exports, "__esModule", ({
11497 value: true
11498 }));
11499 exports["default"] = isFQDN;
11500
11501 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11502
11503 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11504
11505 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11506
11507 var default_fqdn_options = {
11508 require_tld: true,
11509 allow_underscores: false,
11510 allow_trailing_dot: false,
11511 allow_numeric_tld: false,
11512 allow_wildcard: false,
11513 ignore_max_length: false
11514 };
11515
11516 function isFQDN(str, options) {
11517 (0, _assertString.default)(str);
11518 options = (0, _merge.default)(options, default_fqdn_options);
11519 /* Remove the optional trailing dot before checking validity */
11520
11521 if (options.allow_trailing_dot && str[str.length - 1] === '.') {
11522 str = str.substring(0, str.length - 1);
11523 }
11524 /* Remove the optional wildcard before checking validity */
11525
11526
11527 if (options.allow_wildcard === true && str.indexOf('*.') === 0) {
11528 str = str.substring(2);
11529 }
11530
11531 var parts = str.split('.');
11532 var tld = parts[parts.length - 1];
11533
11534 if (options.require_tld) {
11535 // disallow fqdns without tld
11536 if (parts.length < 2) {
11537 return false;
11538 }
11539
11540 if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
11541 return false;
11542 } // disallow spaces
11543
11544
11545 if (/\s/.test(tld)) {
11546 return false;
11547 }
11548 } // reject numeric TLDs
11549
11550
11551 if (!options.allow_numeric_tld && /^\d+$/.test(tld)) {
11552 return false;
11553 }
11554
11555 return parts.every(function (part) {
11556 if (part.length > 63 && !options.ignore_max_length) {
11557 return false;
11558 }
11559
11560 if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) {
11561 return false;
11562 } // disallow full-width chars
11563
11564
11565 if (/[\uff01-\uff5e]/.test(part)) {
11566 return false;
11567 } // disallow parts starting or ending with hyphen
11568
11569
11570 if (/^-|-$/.test(part)) {
11571 return false;
11572 }
11573
11574 if (!options.allow_underscores && /_/.test(part)) {
11575 return false;
11576 }
11577
11578 return true;
11579 });
11580 }
11581
11582 module.exports = exports.default;
11583 module.exports["default"] = exports.default;
11584
11585 /***/ }),
11586
11587 /***/ "../node_modules/validator/lib/isIP.js":
11588 /*!*********************************************!*\
11589 !*** ../node_modules/validator/lib/isIP.js ***!
11590 \*********************************************/
11591 /***/ ((module, exports, __webpack_require__) => {
11592
11593 "use strict";
11594
11595
11596 Object.defineProperty(exports, "__esModule", ({
11597 value: true
11598 }));
11599 exports["default"] = isIP;
11600
11601 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11602
11603 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11604
11605 /**
11606 11.3. Examples
11607
11608 The following addresses
11609
11610 fe80::1234 (on the 1st link of the node)
11611 ff02::5678 (on the 5th link of the node)
11612 ff08::9abc (on the 10th organization of the node)
11613
11614 would be represented as follows:
11615
11616 fe80::1234%1
11617 ff02::5678%5
11618 ff08::9abc%10
11619
11620 (Here we assume a natural translation from a zone index to the
11621 <zone_id> part, where the Nth zone of any scope is translated into
11622 "N".)
11623
11624 If we use interface names as <zone_id>, those addresses could also be
11625 represented as follows:
11626
11627 fe80::1234%ne0
11628 ff02::5678%pvc1.3
11629 ff08::9abc%interface10
11630
11631 where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
11632 to the 5th link, and "interface10" belongs to the 10th organization.
11633 * * */
11634 var IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
11635 var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
11636 var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
11637 var IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';
11638 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,})?$');
11639
11640 function isIP(str) {
11641 var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
11642 (0, _assertString.default)(str);
11643 version = String(version);
11644
11645 if (!version) {
11646 return isIP(str, 4) || isIP(str, 6);
11647 }
11648
11649 if (version === '4') {
11650 return IPv4AddressRegExp.test(str);
11651 }
11652
11653 if (version === '6') {
11654 return IPv6AddressRegExp.test(str);
11655 }
11656
11657 return false;
11658 }
11659
11660 module.exports = exports.default;
11661 module.exports["default"] = exports.default;
11662
11663 /***/ }),
11664
11665 /***/ "../node_modules/validator/lib/isURL.js":
11666 /*!**********************************************!*\
11667 !*** ../node_modules/validator/lib/isURL.js ***!
11668 \**********************************************/
11669 /***/ ((module, exports, __webpack_require__) => {
11670
11671 "use strict";
11672
11673
11674 Object.defineProperty(exports, "__esModule", ({
11675 value: true
11676 }));
11677 exports["default"] = isURL;
11678
11679 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11680
11681 var _isFQDN = _interopRequireDefault(__webpack_require__(/*! ./isFQDN */ "../node_modules/validator/lib/isFQDN.js"));
11682
11683 var _isIP = _interopRequireDefault(__webpack_require__(/*! ./isIP */ "../node_modules/validator/lib/isIP.js"));
11684
11685 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11686
11687 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11688
11689 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11690
11691 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."); }
11692
11693 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); }
11694
11695 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; }
11696
11697 function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
11698
11699 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11700
11701 /*
11702 options for isURL method
11703
11704 require_protocol - if set as true isURL will return false if protocol is not present in the URL
11705 require_valid_protocol - isURL will check if the URL's protocol is present in the protocols option
11706 protocols - valid protocols can be modified with this option
11707 require_host - if set as false isURL will not check if host is present in the URL
11708 require_port - if set as true isURL will check if port is present in the URL
11709 allow_protocol_relative_urls - if set as true protocol relative URLs will be allowed
11710 validate_length - if set as false isURL will skip string length validation (IE maximum is 2083)
11711
11712 */
11713 var default_url_options = {
11714 protocols: ['http', 'https', 'ftp'],
11715 require_tld: true,
11716 require_protocol: false,
11717 require_host: true,
11718 require_port: false,
11719 require_valid_protocol: true,
11720 allow_underscores: false,
11721 allow_trailing_dot: false,
11722 allow_protocol_relative_urls: false,
11723 allow_fragments: true,
11724 allow_query_components: true,
11725 validate_length: true
11726 };
11727 var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
11728
11729 function isRegExp(obj) {
11730 return Object.prototype.toString.call(obj) === '[object RegExp]';
11731 }
11732
11733 function checkHost(host, matches) {
11734 for (var i = 0; i < matches.length; i++) {
11735 var match = matches[i];
11736
11737 if (host === match || isRegExp(match) && match.test(host)) {
11738 return true;
11739 }
11740 }
11741
11742 return false;
11743 }
11744
11745 function isURL(url, options) {
11746 (0, _assertString.default)(url);
11747
11748 if (!url || /[\s<>]/.test(url)) {
11749 return false;
11750 }
11751
11752 if (url.indexOf('mailto:') === 0) {
11753 return false;
11754 }
11755
11756 options = (0, _merge.default)(options, default_url_options);
11757
11758 if (options.validate_length && url.length >= 2083) {
11759 return false;
11760 }
11761
11762 if (!options.allow_fragments && url.includes('#')) {
11763 return false;
11764 }
11765
11766 if (!options.allow_query_components && (url.includes('?') || url.includes('&'))) {
11767 return false;
11768 }
11769
11770 var protocol, auth, host, hostname, port, port_str, split, ipv6;
11771 split = url.split('#');
11772 url = split.shift();
11773 split = url.split('?');
11774 url = split.shift();
11775 split = url.split('://');
11776
11777 if (split.length > 1) {
11778 protocol = split.shift().toLowerCase();
11779
11780 if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
11781 return false;
11782 }
11783 } else if (options.require_protocol) {
11784 return false;
11785 } else if (url.slice(0, 2) === '//') {
11786 if (!options.allow_protocol_relative_urls) {
11787 return false;
11788 }
11789
11790 split[0] = url.slice(2);
11791 }
11792
11793 url = split.join('://');
11794
11795 if (url === '') {
11796 return false;
11797 }
11798
11799 split = url.split('/');
11800 url = split.shift();
11801
11802 if (url === '' && !options.require_host) {
11803 return true;
11804 }
11805
11806 split = url.split('@');
11807
11808 if (split.length > 1) {
11809 if (options.disallow_auth) {
11810 return false;
11811 }
11812
11813 if (split[0] === '') {
11814 return false;
11815 }
11816
11817 auth = split.shift();
11818
11819 if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
11820 return false;
11821 }
11822
11823 var _auth$split = auth.split(':'),
11824 _auth$split2 = _slicedToArray(_auth$split, 2),
11825 user = _auth$split2[0],
11826 password = _auth$split2[1];
11827
11828 if (user === '' && password === '') {
11829 return false;
11830 }
11831 }
11832
11833 hostname = split.join('@');
11834 port_str = null;
11835 ipv6 = null;
11836 var ipv6_match = hostname.match(wrapped_ipv6);
11837
11838 if (ipv6_match) {
11839 host = '';
11840 ipv6 = ipv6_match[1];
11841 port_str = ipv6_match[2] || null;
11842 } else {
11843 split = hostname.split(':');
11844 host = split.shift();
11845
11846 if (split.length) {
11847 port_str = split.join(':');
11848 }
11849 }
11850
11851 if (port_str !== null && port_str.length > 0) {
11852 port = parseInt(port_str, 10);
11853
11854 if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
11855 return false;
11856 }
11857 } else if (options.require_port) {
11858 return false;
11859 }
11860
11861 if (options.host_whitelist) {
11862 return checkHost(host, options.host_whitelist);
11863 }
11864
11865 if (host === '' && !options.require_host) {
11866 return true;
11867 }
11868
11869 if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
11870 return false;
11871 }
11872
11873 host = host || ipv6;
11874
11875 if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
11876 return false;
11877 }
11878
11879 return true;
11880 }
11881
11882 module.exports = exports.default;
11883 module.exports["default"] = exports.default;
11884
11885 /***/ }),
11886
11887 /***/ "../node_modules/validator/lib/util/assertString.js":
11888 /*!**********************************************************!*\
11889 !*** ../node_modules/validator/lib/util/assertString.js ***!
11890 \**********************************************************/
11891 /***/ ((module, exports) => {
11892
11893 "use strict";
11894
11895
11896 Object.defineProperty(exports, "__esModule", ({
11897 value: true
11898 }));
11899 exports["default"] = assertString;
11900
11901 function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
11902
11903 function assertString(input) {
11904 var isString = typeof input === 'string' || input instanceof String;
11905
11906 if (!isString) {
11907 var invalidType = _typeof(input);
11908
11909 if (input === null) invalidType = 'null';else if (invalidType === 'object') invalidType = input.constructor.name;
11910 throw new TypeError("Expected a string but received a ".concat(invalidType));
11911 }
11912 }
11913
11914 module.exports = exports.default;
11915 module.exports["default"] = exports.default;
11916
11917 /***/ }),
11918
11919 /***/ "../node_modules/validator/lib/util/merge.js":
11920 /*!***************************************************!*\
11921 !*** ../node_modules/validator/lib/util/merge.js ***!
11922 \***************************************************/
11923 /***/ ((module, exports) => {
11924
11925 "use strict";
11926
11927
11928 Object.defineProperty(exports, "__esModule", ({
11929 value: true
11930 }));
11931 exports["default"] = merge;
11932
11933 function merge() {
11934 var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
11935 var defaults = arguments.length > 1 ? arguments[1] : undefined;
11936
11937 for (var key in defaults) {
11938 if (typeof obj[key] === 'undefined') {
11939 obj[key] = defaults[key];
11940 }
11941 }
11942
11943 return obj;
11944 }
11945
11946 module.exports = exports.default;
11947 module.exports["default"] = exports.default;
11948
11949 /***/ }),
11950
11951 /***/ "react":
11952 /*!************************!*\
11953 !*** external "React" ***!
11954 \************************/
11955 /***/ ((module) => {
11956
11957 "use strict";
11958 module.exports = React;
11959
11960 /***/ }),
11961
11962 /***/ "react-dom":
11963 /*!***************************!*\
11964 !*** external "ReactDOM" ***!
11965 \***************************/
11966 /***/ ((module) => {
11967
11968 "use strict";
11969 module.exports = ReactDOM;
11970
11971 /***/ }),
11972
11973 /***/ "@elementor/icons":
11974 /*!************************************!*\
11975 !*** external "elementorV2.icons" ***!
11976 \************************************/
11977 /***/ ((module) => {
11978
11979 "use strict";
11980 module.exports = elementorV2.icons;
11981
11982 /***/ }),
11983
11984 /***/ "@elementor/ui":
11985 /*!*********************************!*\
11986 !*** external "elementorV2.ui" ***!
11987 \*********************************/
11988 /***/ ((module) => {
11989
11990 "use strict";
11991 module.exports = elementorV2.ui;
11992
11993 /***/ }),
11994
11995 /***/ "@wordpress/i18n":
11996 /*!**************************!*\
11997 !*** external "wp.i18n" ***!
11998 \**************************/
11999 /***/ ((module) => {
12000
12001 "use strict";
12002 module.exports = wp.i18n;
12003
12004 /***/ }),
12005
12006 /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
12007 /*!******************************************************************!*\
12008 !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
12009 \******************************************************************/
12010 /***/ ((module) => {
12011
12012 function _arrayLikeToArray(arr, len) {
12013 if (len == null || len > arr.length) len = arr.length;
12014 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
12015 return arr2;
12016 }
12017 module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12018
12019 /***/ }),
12020
12021 /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
12022 /*!****************************************************************!*\
12023 !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
12024 \****************************************************************/
12025 /***/ ((module) => {
12026
12027 function _arrayWithHoles(arr) {
12028 if (Array.isArray(arr)) return arr;
12029 }
12030 module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12031
12032 /***/ }),
12033
12034 /***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
12035 /*!*******************************************************************!*\
12036 !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
12037 \*******************************************************************/
12038 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12039
12040 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12041 function _arrayWithoutHoles(arr) {
12042 if (Array.isArray(arr)) return arrayLikeToArray(arr);
12043 }
12044 module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12045
12046 /***/ }),
12047
12048 /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
12049 /*!***********************************************************************!*\
12050 !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
12051 \***********************************************************************/
12052 /***/ ((module) => {
12053
12054 function _assertThisInitialized(self) {
12055 if (self === void 0) {
12056 throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
12057 }
12058 return self;
12059 }
12060 module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
12061
12062 /***/ }),
12063
12064 /***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js":
12065 /*!******************************************************************!*\
12066 !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
12067 \******************************************************************/
12068 /***/ ((module) => {
12069
12070 function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
12071 try {
12072 var info = gen[key](arg);
12073 var value = info.value;
12074 } catch (error) {
12075 reject(error);
12076 return;
12077 }
12078 if (info.done) {
12079 resolve(value);
12080 } else {
12081 Promise.resolve(value).then(_next, _throw);
12082 }
12083 }
12084 function _asyncToGenerator(fn) {
12085 return function () {
12086 var self = this,
12087 args = arguments;
12088 return new Promise(function (resolve, reject) {
12089 var gen = fn.apply(self, args);
12090 function _next(value) {
12091 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
12092 }
12093 function _throw(err) {
12094 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
12095 }
12096 _next(undefined);
12097 });
12098 };
12099 }
12100 module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
12101
12102 /***/ }),
12103
12104 /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
12105 /*!****************************************************************!*\
12106 !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
12107 \****************************************************************/
12108 /***/ ((module) => {
12109
12110 function _classCallCheck(instance, Constructor) {
12111 if (!(instance instanceof Constructor)) {
12112 throw new TypeError("Cannot call a class as a function");
12113 }
12114 }
12115 module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
12116
12117 /***/ }),
12118
12119 /***/ "../node_modules/@babel/runtime/helpers/createClass.js":
12120 /*!*************************************************************!*\
12121 !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
12122 \*************************************************************/
12123 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12124
12125 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12126 function _defineProperties(target, props) {
12127 for (var i = 0; i < props.length; i++) {
12128 var descriptor = props[i];
12129 descriptor.enumerable = descriptor.enumerable || false;
12130 descriptor.configurable = true;
12131 if ("value" in descriptor) descriptor.writable = true;
12132 Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
12133 }
12134 }
12135 function _createClass(Constructor, protoProps, staticProps) {
12136 if (protoProps) _defineProperties(Constructor.prototype, protoProps);
12137 if (staticProps) _defineProperties(Constructor, staticProps);
12138 Object.defineProperty(Constructor, "prototype", {
12139 writable: false
12140 });
12141 return Constructor;
12142 }
12143 module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
12144
12145 /***/ }),
12146
12147 /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
12148 /*!****************************************************************!*\
12149 !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
12150 \****************************************************************/
12151 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12152
12153 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12154 function _defineProperty(obj, key, value) {
12155 key = toPropertyKey(key);
12156 if (key in obj) {
12157 Object.defineProperty(obj, key, {
12158 value: value,
12159 enumerable: true,
12160 configurable: true,
12161 writable: true
12162 });
12163 } else {
12164 obj[key] = value;
12165 }
12166 return obj;
12167 }
12168 module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
12169
12170 /***/ }),
12171
12172 /***/ "../node_modules/@babel/runtime/helpers/extends.js":
12173 /*!*********************************************************!*\
12174 !*** ../node_modules/@babel/runtime/helpers/extends.js ***!
12175 \*********************************************************/
12176 /***/ ((module) => {
12177
12178 function _extends() {
12179 module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {
12180 for (var i = 1; i < arguments.length; i++) {
12181 var source = arguments[i];
12182 for (var key in source) {
12183 if (Object.prototype.hasOwnProperty.call(source, key)) {
12184 target[key] = source[key];
12185 }
12186 }
12187 }
12188 return target;
12189 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12190 return _extends.apply(this, arguments);
12191 }
12192 module.exports = _extends, module.exports.__esModule = true, module.exports["default"] = module.exports;
12193
12194 /***/ }),
12195
12196 /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
12197 /*!****************************************************************!*\
12198 !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
12199 \****************************************************************/
12200 /***/ ((module) => {
12201
12202 function _getPrototypeOf(o) {
12203 module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
12204 return o.__proto__ || Object.getPrototypeOf(o);
12205 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12206 return _getPrototypeOf(o);
12207 }
12208 module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12209
12210 /***/ }),
12211
12212 /***/ "../node_modules/@babel/runtime/helpers/inherits.js":
12213 /*!**********************************************************!*\
12214 !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
12215 \**********************************************************/
12216 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12217
12218 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
12219 function _inherits(subClass, superClass) {
12220 if (typeof superClass !== "function" && superClass !== null) {
12221 throw new TypeError("Super expression must either be null or a function");
12222 }
12223 subClass.prototype = Object.create(superClass && superClass.prototype, {
12224 constructor: {
12225 value: subClass,
12226 writable: true,
12227 configurable: true
12228 }
12229 });
12230 Object.defineProperty(subClass, "prototype", {
12231 writable: false
12232 });
12233 if (superClass) setPrototypeOf(subClass, superClass);
12234 }
12235 module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
12236
12237 /***/ }),
12238
12239 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
12240 /*!***********************************************************************!*\
12241 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
12242 \***********************************************************************/
12243 /***/ ((module) => {
12244
12245 function _interopRequireDefault(obj) {
12246 return obj && obj.__esModule ? obj : {
12247 "default": obj
12248 };
12249 }
12250 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
12251
12252 /***/ }),
12253
12254 /***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
12255 /*!*****************************************************************!*\
12256 !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
12257 \*****************************************************************/
12258 /***/ ((module) => {
12259
12260 function _iterableToArray(iter) {
12261 if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
12262 }
12263 module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12264
12265 /***/ }),
12266
12267 /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
12268 /*!**********************************************************************!*\
12269 !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
12270 \**********************************************************************/
12271 /***/ ((module) => {
12272
12273 function _iterableToArrayLimit(r, l) {
12274 var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
12275 if (null != t) {
12276 var e,
12277 n,
12278 i,
12279 u,
12280 a = [],
12281 f = !0,
12282 o = !1;
12283 try {
12284 if (i = (t = t.call(r)).next, 0 === l) {
12285 if (Object(t) !== t) return;
12286 f = !1;
12287 } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
12288 } catch (r) {
12289 o = !0, n = r;
12290 } finally {
12291 try {
12292 if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
12293 } finally {
12294 if (o) throw n;
12295 }
12296 }
12297 return a;
12298 }
12299 }
12300 module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
12301
12302 /***/ }),
12303
12304 /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
12305 /*!*****************************************************************!*\
12306 !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
12307 \*****************************************************************/
12308 /***/ ((module) => {
12309
12310 function _nonIterableRest() {
12311 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12312 }
12313 module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
12314
12315 /***/ }),
12316
12317 /***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
12318 /*!*******************************************************************!*\
12319 !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
12320 \*******************************************************************/
12321 /***/ ((module) => {
12322
12323 function _nonIterableSpread() {
12324 throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12325 }
12326 module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
12327
12328 /***/ }),
12329
12330 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
12331 /*!*************************************************************************!*\
12332 !*** ../node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
12333 \*************************************************************************/
12334 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12335
12336 var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose.js */ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");
12337 function _objectWithoutProperties(source, excluded) {
12338 if (source == null) return {};
12339 var target = objectWithoutPropertiesLoose(source, excluded);
12340 var key, i;
12341 if (Object.getOwnPropertySymbols) {
12342 var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
12343 for (i = 0; i < sourceSymbolKeys.length; i++) {
12344 key = sourceSymbolKeys[i];
12345 if (excluded.indexOf(key) >= 0) continue;
12346 if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
12347 target[key] = source[key];
12348 }
12349 }
12350 return target;
12351 }
12352 module.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports["default"] = module.exports;
12353
12354 /***/ }),
12355
12356 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
12357 /*!******************************************************************************!*\
12358 !*** ../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
12359 \******************************************************************************/
12360 /***/ ((module) => {
12361
12362 function _objectWithoutPropertiesLoose(source, excluded) {
12363 if (source == null) return {};
12364 var target = {};
12365 var sourceKeys = Object.keys(source);
12366 var key, i;
12367 for (i = 0; i < sourceKeys.length; i++) {
12368 key = sourceKeys[i];
12369 if (excluded.indexOf(key) >= 0) continue;
12370 target[key] = source[key];
12371 }
12372 return target;
12373 }
12374 module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports["default"] = module.exports;
12375
12376 /***/ }),
12377
12378 /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
12379 /*!***************************************************************************!*\
12380 !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
12381 \***************************************************************************/
12382 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12383
12384 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12385 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
12386 function _possibleConstructorReturn(self, call) {
12387 if (call && (_typeof(call) === "object" || typeof call === "function")) {
12388 return call;
12389 } else if (call !== void 0) {
12390 throw new TypeError("Derived constructors may only return object or undefined");
12391 }
12392 return assertThisInitialized(self);
12393 }
12394 module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
12395
12396 /***/ }),
12397
12398 /***/ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js":
12399 /*!********************************************************************!*\
12400 !*** ../node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
12401 \********************************************************************/
12402 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12403
12404 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12405 function _regeneratorRuntime() {
12406 "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
12407 module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
12408 return e;
12409 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12410 var t,
12411 e = {},
12412 r = Object.prototype,
12413 n = r.hasOwnProperty,
12414 o = Object.defineProperty || function (t, e, r) {
12415 t[e] = r.value;
12416 },
12417 i = "function" == typeof Symbol ? Symbol : {},
12418 a = i.iterator || "@@iterator",
12419 c = i.asyncIterator || "@@asyncIterator",
12420 u = i.toStringTag || "@@toStringTag";
12421 function define(t, e, r) {
12422 return Object.defineProperty(t, e, {
12423 value: r,
12424 enumerable: !0,
12425 configurable: !0,
12426 writable: !0
12427 }), t[e];
12428 }
12429 try {
12430 define({}, "");
12431 } catch (t) {
12432 define = function define(t, e, r) {
12433 return t[e] = r;
12434 };
12435 }
12436 function wrap(t, e, r, n) {
12437 var i = e && e.prototype instanceof Generator ? e : Generator,
12438 a = Object.create(i.prototype),
12439 c = new Context(n || []);
12440 return o(a, "_invoke", {
12441 value: makeInvokeMethod(t, r, c)
12442 }), a;
12443 }
12444 function tryCatch(t, e, r) {
12445 try {
12446 return {
12447 type: "normal",
12448 arg: t.call(e, r)
12449 };
12450 } catch (t) {
12451 return {
12452 type: "throw",
12453 arg: t
12454 };
12455 }
12456 }
12457 e.wrap = wrap;
12458 var h = "suspendedStart",
12459 l = "suspendedYield",
12460 f = "executing",
12461 s = "completed",
12462 y = {};
12463 function Generator() {}
12464 function GeneratorFunction() {}
12465 function GeneratorFunctionPrototype() {}
12466 var p = {};
12467 define(p, a, function () {
12468 return this;
12469 });
12470 var d = Object.getPrototypeOf,
12471 v = d && d(d(values([])));
12472 v && v !== r && n.call(v, a) && (p = v);
12473 var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
12474 function defineIteratorMethods(t) {
12475 ["next", "throw", "return"].forEach(function (e) {
12476 define(t, e, function (t) {
12477 return this._invoke(e, t);
12478 });
12479 });
12480 }
12481 function AsyncIterator(t, e) {
12482 function invoke(r, o, i, a) {
12483 var c = tryCatch(t[r], t, o);
12484 if ("throw" !== c.type) {
12485 var u = c.arg,
12486 h = u.value;
12487 return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
12488 invoke("next", t, i, a);
12489 }, function (t) {
12490 invoke("throw", t, i, a);
12491 }) : e.resolve(h).then(function (t) {
12492 u.value = t, i(u);
12493 }, function (t) {
12494 return invoke("throw", t, i, a);
12495 });
12496 }
12497 a(c.arg);
12498 }
12499 var r;
12500 o(this, "_invoke", {
12501 value: function value(t, n) {
12502 function callInvokeWithMethodAndArg() {
12503 return new e(function (e, r) {
12504 invoke(t, n, e, r);
12505 });
12506 }
12507 return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
12508 }
12509 });
12510 }
12511 function makeInvokeMethod(e, r, n) {
12512 var o = h;
12513 return function (i, a) {
12514 if (o === f) throw new Error("Generator is already running");
12515 if (o === s) {
12516 if ("throw" === i) throw a;
12517 return {
12518 value: t,
12519 done: !0
12520 };
12521 }
12522 for (n.method = i, n.arg = a;;) {
12523 var c = n.delegate;
12524 if (c) {
12525 var u = maybeInvokeDelegate(c, n);
12526 if (u) {
12527 if (u === y) continue;
12528 return u;
12529 }
12530 }
12531 if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
12532 if (o === h) throw o = s, n.arg;
12533 n.dispatchException(n.arg);
12534 } else "return" === n.method && n.abrupt("return", n.arg);
12535 o = f;
12536 var p = tryCatch(e, r, n);
12537 if ("normal" === p.type) {
12538 if (o = n.done ? s : l, p.arg === y) continue;
12539 return {
12540 value: p.arg,
12541 done: n.done
12542 };
12543 }
12544 "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
12545 }
12546 };
12547 }
12548 function maybeInvokeDelegate(e, r) {
12549 var n = r.method,
12550 o = e.iterator[n];
12551 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;
12552 var i = tryCatch(o, e.iterator, r.arg);
12553 if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
12554 var a = i.arg;
12555 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);
12556 }
12557 function pushTryEntry(t) {
12558 var e = {
12559 tryLoc: t[0]
12560 };
12561 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
12562 }
12563 function resetTryEntry(t) {
12564 var e = t.completion || {};
12565 e.type = "normal", delete e.arg, t.completion = e;
12566 }
12567 function Context(t) {
12568 this.tryEntries = [{
12569 tryLoc: "root"
12570 }], t.forEach(pushTryEntry, this), this.reset(!0);
12571 }
12572 function values(e) {
12573 if (e || "" === e) {
12574 var r = e[a];
12575 if (r) return r.call(e);
12576 if ("function" == typeof e.next) return e;
12577 if (!isNaN(e.length)) {
12578 var o = -1,
12579 i = function next() {
12580 for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
12581 return next.value = t, next.done = !0, next;
12582 };
12583 return i.next = i;
12584 }
12585 }
12586 throw new TypeError(_typeof(e) + " is not iterable");
12587 }
12588 return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
12589 value: GeneratorFunctionPrototype,
12590 configurable: !0
12591 }), o(GeneratorFunctionPrototype, "constructor", {
12592 value: GeneratorFunction,
12593 configurable: !0
12594 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
12595 var e = "function" == typeof t && t.constructor;
12596 return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
12597 }, e.mark = function (t) {
12598 return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
12599 }, e.awrap = function (t) {
12600 return {
12601 __await: t
12602 };
12603 }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
12604 return this;
12605 }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
12606 void 0 === i && (i = Promise);
12607 var a = new AsyncIterator(wrap(t, r, n, o), i);
12608 return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
12609 return t.done ? t.value : a.next();
12610 });
12611 }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
12612 return this;
12613 }), define(g, "toString", function () {
12614 return "[object Generator]";
12615 }), e.keys = function (t) {
12616 var e = Object(t),
12617 r = [];
12618 for (var n in e) r.push(n);
12619 return r.reverse(), function next() {
12620 for (; r.length;) {
12621 var t = r.pop();
12622 if (t in e) return next.value = t, next.done = !1, next;
12623 }
12624 return next.done = !0, next;
12625 };
12626 }, e.values = values, Context.prototype = {
12627 constructor: Context,
12628 reset: function reset(e) {
12629 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);
12630 },
12631 stop: function stop() {
12632 this.done = !0;
12633 var t = this.tryEntries[0].completion;
12634 if ("throw" === t.type) throw t.arg;
12635 return this.rval;
12636 },
12637 dispatchException: function dispatchException(e) {
12638 if (this.done) throw e;
12639 var r = this;
12640 function handle(n, o) {
12641 return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
12642 }
12643 for (var o = this.tryEntries.length - 1; o >= 0; --o) {
12644 var i = this.tryEntries[o],
12645 a = i.completion;
12646 if ("root" === i.tryLoc) return handle("end");
12647 if (i.tryLoc <= this.prev) {
12648 var c = n.call(i, "catchLoc"),
12649 u = n.call(i, "finallyLoc");
12650 if (c && u) {
12651 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12652 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12653 } else if (c) {
12654 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12655 } else {
12656 if (!u) throw new Error("try statement without catch or finally");
12657 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12658 }
12659 }
12660 }
12661 },
12662 abrupt: function abrupt(t, e) {
12663 for (var r = this.tryEntries.length - 1; r >= 0; --r) {
12664 var o = this.tryEntries[r];
12665 if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
12666 var i = o;
12667 break;
12668 }
12669 }
12670 i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
12671 var a = i ? i.completion : {};
12672 return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
12673 },
12674 complete: function complete(t, e) {
12675 if ("throw" === t.type) throw t.arg;
12676 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;
12677 },
12678 finish: function finish(t) {
12679 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12680 var r = this.tryEntries[e];
12681 if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
12682 }
12683 },
12684 "catch": function _catch(t) {
12685 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12686 var r = this.tryEntries[e];
12687 if (r.tryLoc === t) {
12688 var n = r.completion;
12689 if ("throw" === n.type) {
12690 var o = n.arg;
12691 resetTryEntry(r);
12692 }
12693 return o;
12694 }
12695 }
12696 throw new Error("illegal catch attempt");
12697 },
12698 delegateYield: function delegateYield(e, r, n) {
12699 return this.delegate = {
12700 iterator: values(e),
12701 resultName: r,
12702 nextLoc: n
12703 }, "next" === this.method && (this.arg = t), y;
12704 }
12705 }, e;
12706 }
12707 module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
12708
12709 /***/ }),
12710
12711 /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
12712 /*!****************************************************************!*\
12713 !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
12714 \****************************************************************/
12715 /***/ ((module) => {
12716
12717 function _setPrototypeOf(o, p) {
12718 module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
12719 o.__proto__ = p;
12720 return o;
12721 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12722 return _setPrototypeOf(o, p);
12723 }
12724 module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12725
12726 /***/ }),
12727
12728 /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
12729 /*!***************************************************************!*\
12730 !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
12731 \***************************************************************/
12732 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12733
12734 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
12735 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
12736 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12737 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
12738 function _slicedToArray(arr, i) {
12739 return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
12740 }
12741 module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12742
12743 /***/ }),
12744
12745 /***/ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js":
12746 /*!***********************************************************************!*\
12747 !*** ../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js ***!
12748 \***********************************************************************/
12749 /***/ ((module) => {
12750
12751 function _taggedTemplateLiteral(strings, raw) {
12752 if (!raw) {
12753 raw = strings.slice(0);
12754 }
12755 return Object.freeze(Object.defineProperties(strings, {
12756 raw: {
12757 value: Object.freeze(raw)
12758 }
12759 }));
12760 }
12761 module.exports = _taggedTemplateLiteral, module.exports.__esModule = true, module.exports["default"] = module.exports;
12762
12763 /***/ }),
12764
12765 /***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
12766 /*!*******************************************************************!*\
12767 !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
12768 \*******************************************************************/
12769 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12770
12771 var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
12772 var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
12773 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12774 var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
12775 function _toConsumableArray(arr) {
12776 return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
12777 }
12778 module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12779
12780 /***/ }),
12781
12782 /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
12783 /*!*************************************************************!*\
12784 !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
12785 \*************************************************************/
12786 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12787
12788 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12789 function toPrimitive(t, r) {
12790 if ("object" != _typeof(t) || !t) return t;
12791 var e = t[Symbol.toPrimitive];
12792 if (void 0 !== e) {
12793 var i = e.call(t, r || "default");
12794 if ("object" != _typeof(i)) return i;
12795 throw new TypeError("@@toPrimitive must return a primitive value.");
12796 }
12797 return ("string" === r ? String : Number)(t);
12798 }
12799 module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
12800
12801 /***/ }),
12802
12803 /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
12804 /*!***************************************************************!*\
12805 !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
12806 \***************************************************************/
12807 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12808
12809 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12810 var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
12811 function toPropertyKey(t) {
12812 var i = toPrimitive(t, "string");
12813 return "symbol" == _typeof(i) ? i : String(i);
12814 }
12815 module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
12816
12817 /***/ }),
12818
12819 /***/ "../node_modules/@babel/runtime/helpers/typeof.js":
12820 /*!********************************************************!*\
12821 !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
12822 \********************************************************/
12823 /***/ ((module) => {
12824
12825 function _typeof(o) {
12826 "@babel/helpers - typeof";
12827
12828 return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
12829 return typeof o;
12830 } : function (o) {
12831 return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
12832 }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
12833 }
12834 module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
12835
12836 /***/ }),
12837
12838 /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
12839 /*!****************************************************************************!*\
12840 !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
12841 \****************************************************************************/
12842 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12843
12844 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12845 function _unsupportedIterableToArray(o, minLen) {
12846 if (!o) return;
12847 if (typeof o === "string") return arrayLikeToArray(o, minLen);
12848 var n = Object.prototype.toString.call(o).slice(8, -1);
12849 if (n === "Object" && o.constructor) n = o.constructor.name;
12850 if (n === "Map" || n === "Set") return Array.from(o);
12851 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
12852 }
12853 module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12854
12855 /***/ }),
12856
12857 /***/ "../node_modules/@babel/runtime/regenerator/index.js":
12858 /*!***********************************************************!*\
12859 !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
12860 \***********************************************************/
12861 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12862
12863 // TODO(Babel 8): Remove this file.
12864
12865 var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js")();
12866 module.exports = runtime;
12867
12868 // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
12869 try {
12870 regeneratorRuntime = runtime;
12871 } catch (accidentalStrictMode) {
12872 if (typeof globalThis === "object") {
12873 globalThis.regeneratorRuntime = runtime;
12874 } else {
12875 Function("r", "regeneratorRuntime = r")(runtime);
12876 }
12877 }
12878
12879
12880 /***/ })
12881
12882 /******/ });
12883 /************************************************************************/
12884 /******/ // The module cache
12885 /******/ var __webpack_module_cache__ = {};
12886 /******/
12887 /******/ // The require function
12888 /******/ function __webpack_require__(moduleId) {
12889 /******/ // Check if module is in cache
12890 /******/ var cachedModule = __webpack_module_cache__[moduleId];
12891 /******/ if (cachedModule !== undefined) {
12892 /******/ return cachedModule.exports;
12893 /******/ }
12894 /******/ // Create a new module (and put it into the cache)
12895 /******/ var module = __webpack_module_cache__[moduleId] = {
12896 /******/ // no module.id needed
12897 /******/ // no module.loaded needed
12898 /******/ exports: {}
12899 /******/ };
12900 /******/
12901 /******/ // Execute the module function
12902 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
12903 /******/
12904 /******/ // Return the exports of the module
12905 /******/ return module.exports;
12906 /******/ }
12907 /******/
12908 /************************************************************************/
12909 /******/ /* webpack/runtime/compat get default export */
12910 /******/ (() => {
12911 /******/ // getDefaultExport function for compatibility with non-harmony modules
12912 /******/ __webpack_require__.n = (module) => {
12913 /******/ var getter = module && module.__esModule ?
12914 /******/ () => (module['default']) :
12915 /******/ () => (module);
12916 /******/ __webpack_require__.d(getter, { a: getter });
12917 /******/ return getter;
12918 /******/ };
12919 /******/ })();
12920 /******/
12921 /******/ /* webpack/runtime/define property getters */
12922 /******/ (() => {
12923 /******/ // define getter functions for harmony exports
12924 /******/ __webpack_require__.d = (exports, definition) => {
12925 /******/ for(var key in definition) {
12926 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
12927 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
12928 /******/ }
12929 /******/ }
12930 /******/ };
12931 /******/ })();
12932 /******/
12933 /******/ /* webpack/runtime/hasOwnProperty shorthand */
12934 /******/ (() => {
12935 /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
12936 /******/ })();
12937 /******/
12938 /******/ /* webpack/runtime/make namespace object */
12939 /******/ (() => {
12940 /******/ // define __esModule on exports
12941 /******/ __webpack_require__.r = (exports) => {
12942 /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
12943 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
12944 /******/ }
12945 /******/ Object.defineProperty(exports, '__esModule', { value: true });
12946 /******/ };
12947 /******/ })();
12948 /******/
12949 /******/ /* webpack/runtime/nonce */
12950 /******/ (() => {
12951 /******/ __webpack_require__.nc = undefined;
12952 /******/ })();
12953 /******/
12954 /************************************************************************/
12955 var __webpack_exports__ = {};
12956 // This entry need to be wrapped in an IIFE because it need to be in strict mode.
12957 (() => {
12958 "use strict";
12959 var exports = __webpack_exports__;
12960 /*!*******************************************************!*\
12961 !*** ../modules/ai/assets/js/editor/layout-module.js ***!
12962 \*******************************************************/
12963
12964
12965 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
12966 Object.defineProperty(exports, "__esModule", ({
12967 value: true
12968 }));
12969 exports["default"] = exports.AI_ATTACHMENT = void 0;
12970 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
12971 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
12972 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
12973 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
12974 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
12975 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
12976 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
12977 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
12978 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
12979 var _aiLayoutBehavior = _interopRequireDefault(__webpack_require__(/*! ./ai-layout-behavior */ "../modules/ai/assets/js/editor/ai-layout-behavior.js"));
12980 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
12981 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
12982 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
12983 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"));
12984 var _attachments = __webpack_require__(/*! ./pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
12985 function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
12986 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
12987 var AI_ATTACHMENT = 'ai-attachment';
12988 exports.AI_ATTACHMENT = AI_ATTACHMENT;
12989 var Module = /*#__PURE__*/function (_elementorModules$edi) {
12990 (0, _inherits2.default)(Module, _elementorModules$edi);
12991 var _super = _createSuper(Module);
12992 function Module() {
12993 var _this;
12994 (0, _classCallCheck2.default)(this, Module);
12995 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12996 args[_key] = arguments[_key];
12997 }
12998 _this = _super.call.apply(_super, [this].concat(args));
12999 (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "registerVariationsContextMenu", function (groups, currentElement) {
13000 var _ElementorAiConfig, _ElementorAiConfig$us;
13001 var saveGroup = groups.find(function (group) {
13002 return 'save' === group.name;
13003 });
13004 if (!saveGroup) {
13005 return groups;
13006 }
13007 var contextMenu = {
13008 name: 'ai',
13009 icon: 'eicon-ai',
13010 isEnabled: function isEnabled() {
13011 return 0 !== currentElement.getContainer().children.length;
13012 },
13013 title: (0, _i18n.__)('Generate variations with AI', 'elementor'),
13014 callback: function () {
13015 var _callback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
13016 var container, json, attachments;
13017 return _regenerator.default.wrap(function _callee$(_context) {
13018 while (1) switch (_context.prev = _context.next) {
13019 case 0:
13020 container = currentElement.getContainer();
13021 json = container.model.toJSON({
13022 remove: ['default']
13023 });
13024 attachments = [{
13025 type: 'json',
13026 previewHTML: '',
13027 content: json,
13028 label: container.model.get('title'),
13029 source: _attachments.USER_VARIATION_SOURCE
13030 }];
13031 (0, _editorIntegration.renderLayoutApp)({
13032 parentContainer: container.parent,
13033 mode: _config.MODE_VARIATION,
13034 at: container.view._index,
13035 attachments: attachments,
13036 onSelect: function onSelect() {
13037 container.view.$el.hide();
13038 },
13039 onClose: function onClose() {
13040 container.view.$el.show();
13041 },
13042 onInsert: function onInsert(template) {
13043 (0, _editorIntegration.importToEditor)({
13044 parentContainer: container.parent,
13045 at: container.view._index,
13046 template: template,
13047 historyTitle: (0, _i18n.__)('AI Variation', 'elementor'),
13048 replace: true
13049 });
13050 }
13051 });
13052 case 4:
13053 case "end":
13054 return _context.stop();
13055 }
13056 }, _callee);
13057 }));
13058 function callback() {
13059 return _callback.apply(this, arguments);
13060 }
13061 return callback;
13062 }()
13063 };
13064 if (!((_ElementorAiConfig = ElementorAiConfig) !== null && _ElementorAiConfig !== void 0 && (_ElementorAiConfig$us = _ElementorAiConfig.usage) !== null && _ElementorAiConfig$us !== void 0 && _ElementorAiConfig$us.hasAiSubscription)) {
13065 var svg = "\n\t\t\t<svg viewBox=\"0 0 24 24\">\n\t\t\t\t<path d=\"M12 5.25C12.2508 5.25 12.485 5.37533 12.6241 5.58397L16.1703 10.9033L20.5315 7.41435C20.7777\n\t\t\t\t7.21743 21.1207 7.19544 21.39 7.35933C21.6592 7.52321 21.7973 7.83798 21.7355 8.14709L19.7355\n\t\t\t\t18.1471C19.6654 18.4977 19.3576 18.75 19 18.75H5.00004C4.64253 18.75 4.33472 18.4977 4.26461\n\t\t\t\t18.1471L2.2646 8.14709C2.20278 7.83798 2.34084 7.52321 2.61012 7.35933C2.8794 7.19544 3.22241\n\t\t\t\t7.21743 3.46856 7.41435L7.82977 10.9033L11.376 5.58397C11.5151 5.37533 11.7493 5.25 12 5.25ZM12\n\t\t\t\t7.35208L8.62408 12.416C8.50748 12.5909 8.32282 12.7089 8.1151 12.7411C7.90738 12.7734 7.69566\n\t\t\t\t12.717 7.53152 12.5857L4.13926 9.87185L5.61489 17.25H18.3852L19.8608 9.87185L16.4686 12.5857C16.3044\n\t\t\t\t12.717 16.0927 12.7734 15.885 12.7411C15.6773 12.7089 15.4926 12.5909 15.376 12.416L12 7.35208Z\">\n\t\t\t\t</path>\n \t\t</svg>";
13066 contextMenu.shortcut = "<div class=\"elementor-context-menu-list__item__ai-badge\">".concat(svg, "</div>");
13067 }
13068
13069 // Add on top of save group actions
13070 saveGroup.actions.unshift(contextMenu);
13071 return groups;
13072 });
13073 return _this;
13074 }
13075 (0, _createClass2.default)(Module, [{
13076 key: "onElementorInit",
13077 value: function onElementorInit() {
13078 var _this2 = this;
13079 elementor.hooks.addFilter('views/add-section/behaviors', this.registerAiLayoutBehavior);
13080 elementor.hooks.addFilter('elements/container/contextMenuGroups', this.registerVariationsContextMenu);
13081 elementor.hooks.addFilter('elementor/editor/template-library/template/behaviors', this.registerLibraryActionButtonBehavior);
13082 elementor.hooks.addFilter('elementor/editor/template-library/template/action-button', this.filterLibraryActionButtonTemplate, 11);
13083 $e.commands.register('library', 'generate-ai-variation', function (args) {
13084 return _this2.applyTemplate(args);
13085 });
13086 }
13087 }, {
13088 key: "applyTemplate",
13089 value: function applyTemplate(args) {
13090 window.postMessage({
13091 type: 'library/attach:start'
13092 });
13093 $e.components.get('library').downloadTemplate(args, function (data) {
13094 var model = args.model;
13095 window.postMessage({
13096 type: 'library/attach',
13097 json: data.content[0],
13098 html: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
13099 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
13100 source: _attachments.ELEMENTOR_LIBRARY_SOURCE
13101 }, window.location.origin);
13102 });
13103 }
13104 }, {
13105 key: "registerLibraryActionButtonBehavior",
13106 value: function registerLibraryActionButtonBehavior(behaviors) {
13107 behaviors.applyAiTemplate = {
13108 behaviorClass: _applyTemplateForAiBehavior.default
13109 };
13110 return behaviors;
13111 }
13112 }, {
13113 key: "registerAiLayoutBehavior",
13114 value: function registerAiLayoutBehavior(behaviors) {
13115 behaviors.ai = {
13116 behaviorClass: _aiLayoutBehavior.default,
13117 context: {
13118 documentType: window.elementor.documents.getCurrent().config.type
13119 }
13120 };
13121 return behaviors;
13122 }
13123 }, {
13124 key: "filterLibraryActionButtonTemplate",
13125 value: function filterLibraryActionButtonTemplate(viewId) {
13126 var modalConfig = $e.components.get('library').manager.modalConfig;
13127 var originalCoreViewId = '#tmpl-elementor-template-library-insert-button';
13128 if (originalCoreViewId !== viewId) {
13129 return viewId;
13130 }
13131 if ($e.routes.current.library !== 'library/templates/blocks') {
13132 return viewId;
13133 }
13134 if (AI_ATTACHMENT === modalConfig.mode) {
13135 viewId = '#tmpl-elementor-template-library-apply-ai-button';
13136 } else {
13137 viewId = '#tmpl-elementor-template-library-insert-and-ai-variations-buttons';
13138 }
13139 return viewId;
13140 }
13141 }]);
13142 return Module;
13143 }(elementorModules.editor.utils.Module);
13144 exports["default"] = Module;
13145 new Module();
13146 })();
13147
13148 /******/ })()
13149 ;
13150 //# sourceMappingURL=ai-layout.js.map