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

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

13,130 lines 583.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*! elementor - v3.21.0 - 22-05-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 (0, _editorIntegration.renderLayoutApp)({
804 parentContainer: elementor.getPreviewContainer(),
805 mode: _config.MODE_LAYOUT,
806 at: this.view.getOption('at'),
807 onInsert: this.onInsert.bind(this),
808 onRenderApp: function onRenderApp(args) {
809 args.previewContainer.init();
810 },
811 onGenerate: function onGenerate(args) {
812 args.previewContainer.reset();
813 }
814 });
815 }
816 }, {
817 key: "hideDropArea",
818 value: function hideDropArea() {
819 this.view.onCloseButtonClick();
820 }
821 }, {
822 key: "onInsert",
823 value: function onInsert(template) {
824 this.hideDropArea();
825 (0, _editorIntegration.importToEditor)({
826 parentContainer: elementor.getPreviewContainer(),
827 at: this.view.getOption('at'),
828 template: template,
829 historyTitle: (0, _i18n.__)('AI Layout', 'elementor')
830 });
831 }
832 }, {
833 key: "onRender",
834 value: function onRender() {
835 var $button = jQuery('<div>', {
836 class: 'e-ai-layout-button elementor-add-section-area-button e-button-primary',
837 title: (0, _i18n.__)('Build with AI', 'elementor'),
838 role: 'button'
839 });
840 $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");
841 this.ui.addTemplateButton.after($button);
842 }
843 }]);
844 return AiLayoutBehavior;
845 }(Marionette.Behavior);
846 exports["default"] = AiLayoutBehavior;
847
848 /***/ }),
849
850 /***/ "../modules/ai/assets/js/editor/api/index.js":
851 /*!***************************************************!*\
852 !*** ../modules/ai/assets/js/editor/api/index.js ***!
853 \***************************************************/
854 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
855
856 "use strict";
857
858
859 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
860 Object.defineProperty(exports, "__esModule", ({
861 value: true
862 }));
863 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.getEditText = exports.getCustomCode = exports.getCustomCSS = exports.getCompletionText = exports.generateLayout = exports.deleteHistoryItem = void 0;
864 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
865 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; }
866 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; }
867 var request = function request(endpoint) {
868 var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
869 var immediately = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
870 var signal = arguments.length > 3 ? arguments[3] : undefined;
871 if (Object.keys(data).length) {
872 data.context = window.elementorAiCurrentContext;
873 }
874 return new Promise(function (resolve, reject) {
875 var ajaxData = elementorCommon.ajax.addRequest(endpoint, {
876 success: resolve,
877 error: reject,
878 data: data
879 }, immediately);
880 if (signal && ajaxData.jqXhr) {
881 signal.addEventListener('abort', ajaxData.jqXhr.abort);
882 }
883 });
884 };
885 var getUserInformation = function getUserInformation() {
886 return request('ai_get_user_information');
887 };
888 exports.getUserInformation = getUserInformation;
889 var getRemoteConfig = function getRemoteConfig() {
890 return request('ai_get_remote_config');
891 };
892 exports.getRemoteConfig = getRemoteConfig;
893 var getCompletionText = function getCompletionText(payload) {
894 return request('ai_get_completion_text', {
895 payload: payload
896 });
897 };
898 exports.getCompletionText = getCompletionText;
899 var getEditText = function getEditText(payload) {
900 return request('ai_get_edit_text', {
901 payload: payload
902 });
903 };
904 exports.getEditText = getEditText;
905 var getCustomCode = function getCustomCode(payload) {
906 return request('ai_get_custom_code', {
907 payload: payload
908 });
909 };
910 exports.getCustomCode = getCustomCode;
911 var getCustomCSS = function getCustomCSS(payload) {
912 return request('ai_get_custom_css', {
913 payload: payload
914 });
915 };
916 exports.getCustomCSS = getCustomCSS;
917 var setGetStarted = function setGetStarted() {
918 return request('ai_set_get_started');
919 };
920 exports.setGetStarted = setGetStarted;
921 var setStatusFeedback = function setStatusFeedback(responseId) {
922 return request('ai_set_status_feedback', {
923 response_id: responseId
924 });
925 };
926 exports.setStatusFeedback = setStatusFeedback;
927 var getTextToImageGeneration = function getTextToImageGeneration(payload) {
928 return request('ai_get_text_to_image', {
929 payload: payload
930 });
931 };
932 exports.getTextToImageGeneration = getTextToImageGeneration;
933 var getImageToImageGeneration = function getImageToImageGeneration(payload) {
934 return request('ai_get_image_to_image', {
935 payload: payload
936 });
937 };
938 exports.getImageToImageGeneration = getImageToImageGeneration;
939 var getImageToImageMaskGeneration = function getImageToImageMaskGeneration(payload) {
940 return request('ai_get_image_to_image_mask', {
941 payload: payload
942 });
943 };
944 exports.getImageToImageMaskGeneration = getImageToImageMaskGeneration;
945 var getImageToImageOutPainting = function getImageToImageOutPainting(payload) {
946 return request('ai_get_image_to_image_outpainting', {
947 payload: payload
948 });
949 };
950 exports.getImageToImageOutPainting = getImageToImageOutPainting;
951 var getImageToImageUpscale = function getImageToImageUpscale(payload) {
952 return request('ai_get_image_to_image_upscale', {
953 payload: payload
954 });
955 };
956 exports.getImageToImageUpscale = getImageToImageUpscale;
957 var getImageToImageRemoveBackground = function getImageToImageRemoveBackground(payload) {
958 return request('ai_get_image_to_image_remove_background', {
959 payload: payload
960 });
961 };
962 exports.getImageToImageRemoveBackground = getImageToImageRemoveBackground;
963 var getImageToImageReplaceBackground = function getImageToImageReplaceBackground(payload) {
964 return request('ai_get_image_to_image_replace_background', {
965 payload: payload
966 });
967 };
968 exports.getImageToImageReplaceBackground = getImageToImageReplaceBackground;
969 var getImageToImageRemoveText = function getImageToImageRemoveText(image) {
970 return request('ai_get_image_to_image_remove_text', {
971 image: image
972 });
973 };
974 exports.getImageToImageRemoveText = getImageToImageRemoveText;
975 var getImagePromptEnhanced = function getImagePromptEnhanced(prompt) {
976 return request('ai_get_image_prompt_enhancer', {
977 prompt: prompt
978 });
979 };
980 exports.getImagePromptEnhanced = getImagePromptEnhanced;
981 var uploadImage = function uploadImage(image) {
982 return request('ai_upload_image', _objectSpread({}, image));
983 };
984
985 /**
986 * @typedef {Object} AttachmentPropType - See ./types/attachment.js
987 * @typedef {Object} requestBody
988 * @property {string} prompt - Prompt to generate the layout from.
989 * @property {0|1|2} [variationType] - Type of the layout to generate (actually it's a position).
990 * @property {string[]} [prevGeneratedIds] - Previously generated ids for exclusion on regeneration.
991 * @property {AttachmentPropType[]} [attachments] - Attachments to use for the generation. currently only `json` type is supported - a container JSON to generate variations from.
992 */
993
994 /**
995 * @param {requestBody} requestBody
996 * @param {AbortSignal} [signal]
997 */
998 exports.uploadImage = uploadImage;
999 var generateLayout = function generateLayout(requestBody, signal) {
1000 return request('ai_generate_layout', requestBody, true, signal);
1001 };
1002 exports.generateLayout = generateLayout;
1003 var getLayoutPromptEnhanced = function getLayoutPromptEnhanced(prompt, enhanceType) {
1004 return request('ai_get_layout_prompt_enhancer', {
1005 prompt: prompt,
1006 enhance_type: enhanceType
1007 });
1008 };
1009 exports.getLayoutPromptEnhanced = getLayoutPromptEnhanced;
1010 var getHistory = function getHistory(type, page, limit) {
1011 return request('ai_get_history', {
1012 type: type,
1013 page: page,
1014 limit: limit
1015 });
1016 };
1017 exports.getHistory = getHistory;
1018 var deleteHistoryItem = function deleteHistoryItem(id) {
1019 return request('ai_delete_history_item', {
1020 id: id
1021 });
1022 };
1023 exports.deleteHistoryItem = deleteHistoryItem;
1024 var toggleFavoriteHistoryItem = function toggleFavoriteHistoryItem(id) {
1025 return request('ai_toggle_favorite_history_item', {
1026 id: id
1027 });
1028 };
1029 exports.toggleFavoriteHistoryItem = toggleFavoriteHistoryItem;
1030
1031 /***/ }),
1032
1033 /***/ "../modules/ai/assets/js/editor/components/alert-dialog.js":
1034 /*!*****************************************************************!*\
1035 !*** ../modules/ai/assets/js/editor/components/alert-dialog.js ***!
1036 \*****************************************************************/
1037 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1038
1039 "use strict";
1040
1041
1042 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1043 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1044 Object.defineProperty(exports, "__esModule", ({
1045 value: true
1046 }));
1047 exports.AlertDialog = void 0;
1048 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1049 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1050 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1051 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1052 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1053 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); }
1054 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; }
1055 var AlertDialog = function AlertDialog(props) {
1056 var _useState = (0, _react.useState)(true),
1057 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1058 isShown = _useState2[0],
1059 setIsShown = _useState2[1];
1060 if (!isShown) {
1061 return null;
1062 }
1063 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1064 open: true,
1065 maxWidth: "lg"
1066 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
1067 sx: {
1068 padding: 0
1069 }
1070 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1071 sx: {
1072 textAlign: 'center',
1073 padding: 3
1074 }
1075 }, props.message), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1076 alignItems: "center",
1077 spacing: 2,
1078 marginBottom: 2
1079 }, /*#__PURE__*/_react.default.createElement(_ui.Button, {
1080 variant: "contained",
1081 type: "button",
1082 color: "primary",
1083 onClick: function onClick() {
1084 var _props$onClose;
1085 setIsShown(false);
1086 (_props$onClose = props.onClose) === null || _props$onClose === void 0 ? void 0 : _props$onClose.call(props);
1087 }
1088 }, (0, _i18n.__)('Close', 'elementor')))));
1089 };
1090 exports.AlertDialog = AlertDialog;
1091 AlertDialog.propTypes = {
1092 message: _propTypes.default.string.isRequired,
1093 onClose: _propTypes.default.func
1094 };
1095
1096 /***/ }),
1097
1098 /***/ "../modules/ai/assets/js/editor/components/dialog-header.js":
1099 /*!******************************************************************!*\
1100 !*** ../modules/ai/assets/js/editor/components/dialog-header.js ***!
1101 \******************************************************************/
1102 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1103
1104 "use strict";
1105
1106
1107 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1108 Object.defineProperty(exports, "__esModule", ({
1109 value: true
1110 }));
1111 exports["default"] = void 0;
1112 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1113 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1114 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1115 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1116 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1117 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1118 var ElementorLogo = function ElementorLogo(props) {
1119 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1120 viewBox: "0 0 32 32"
1121 }, props), /*#__PURE__*/_react.default.createElement("path", {
1122 fillRule: "evenodd",
1123 clipRule: "evenodd",
1124 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"
1125 }));
1126 };
1127 var StyledElementorLogo = (0, _ui.styled)(ElementorLogo)(function (_ref) {
1128 var theme = _ref.theme;
1129 return {
1130 width: theme.spacing(3),
1131 height: theme.spacing(3),
1132 '& path': {
1133 fill: theme.palette.text.primary
1134 }
1135 };
1136 });
1137 var DialogHeader = function DialogHeader(props) {
1138 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
1139 sx: {
1140 fontWeight: 'normal'
1141 },
1142 color: "transparent",
1143 position: "relative"
1144 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
1145 variant: "dense"
1146 }, /*#__PURE__*/_react.default.createElement(StyledElementorLogo, {
1147 sx: {
1148 mr: 1
1149 }
1150 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1151 component: "span",
1152 variant: "subtitle2",
1153 sx: {
1154 fontWeight: 'bold',
1155 textTransform: 'uppercase'
1156 }
1157 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
1158 label: (0, _i18n.__)('Beta', 'elementor'),
1159 color: "default",
1160 size: "small",
1161 sx: {
1162 ml: 1
1163 }
1164 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1165 direction: "row",
1166 spacing: 1,
1167 alignItems: "center",
1168 sx: {
1169 ml: 'auto'
1170 }
1171 }, props.children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
1172 size: "small",
1173 "aria-label": "close",
1174 onClick: props.onClose,
1175 sx: {
1176 '&.MuiButtonBase-root': {
1177 mr: -1
1178 }
1179 }
1180 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
1181 };
1182 DialogHeader.propTypes = {
1183 onClose: _propTypes.default.func.isRequired,
1184 children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node])
1185 };
1186 var _default = DialogHeader;
1187 exports["default"] = _default;
1188
1189 /***/ }),
1190
1191 /***/ "../modules/ai/assets/js/editor/components/loader.js":
1192 /*!***********************************************************!*\
1193 !*** ../modules/ai/assets/js/editor/components/loader.js ***!
1194 \***********************************************************/
1195 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1196
1197 "use strict";
1198
1199
1200 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1201 Object.defineProperty(exports, "__esModule", ({
1202 value: true
1203 }));
1204 exports["default"] = void 0;
1205 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1206 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1207 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1208 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1209 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1210 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1211 var _excluded = ["sx", "BoxProps"];
1212 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; }
1213 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; }
1214 var Loader = function Loader(_ref) {
1215 var _ref$sx = _ref.sx,
1216 sx = _ref$sx === void 0 ? {} : _ref$sx,
1217 _ref$BoxProps = _ref.BoxProps,
1218 BoxProps = _ref$BoxProps === void 0 ? {} : _ref$BoxProps,
1219 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1220 return /*#__PURE__*/_react.default.createElement(_ui.Box, (0, _extends2.default)({
1221 width: "100%",
1222 display: "flex",
1223 alignItems: "center"
1224 }, BoxProps, {
1225 sx: _objectSpread({
1226 px: 1.5,
1227 minHeight: function minHeight(theme) {
1228 return theme.spacing(5);
1229 }
1230 }, BoxProps.sx || {})
1231 }), /*#__PURE__*/_react.default.createElement(_ui.LinearProgress, (0, _extends2.default)({
1232 color: "secondary"
1233 }, props, {
1234 sx: _objectSpread({
1235 width: '100%'
1236 }, sx)
1237 })));
1238 };
1239 Loader.propTypes = {
1240 sx: _propTypes.default.object,
1241 BoxProps: _propTypes.default.object
1242 };
1243 var _default = Loader;
1244 exports["default"] = _default;
1245
1246 /***/ }),
1247
1248 /***/ "../modules/ai/assets/js/editor/components/prompt-dialog.js":
1249 /*!******************************************************************!*\
1250 !*** ../modules/ai/assets/js/editor/components/prompt-dialog.js ***!
1251 \******************************************************************/
1252 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1253
1254 "use strict";
1255
1256
1257 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1258 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1259 Object.defineProperty(exports, "__esModule", ({
1260 value: true
1261 }));
1262 exports["default"] = void 0;
1263 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1264 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1265 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1266 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1267 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1268 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1269 var _reactDraggable = _interopRequireDefault(__webpack_require__(/*! react-draggable */ "../node_modules/react-draggable/build/cjs/cjs.js"));
1270 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1271 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); }
1272 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; }
1273 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; }
1274 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; }
1275 var DraggablePaper = function DraggablePaper(props) {
1276 var _useState = (0, _react.useState)({
1277 x: 0,
1278 y: 0
1279 }),
1280 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1281 position = _useState2[0],
1282 setPosition = _useState2[1];
1283 var paperRef = (0, _react.useRef)(null);
1284 var timeout = (0, _react.useRef)(null);
1285 var onDrag = function onDrag(_e, _ref) {
1286 var x = _ref.x,
1287 y = _ref.y;
1288 return setPosition({
1289 x: x,
1290 y: y
1291 });
1292 };
1293 var handlePositionBoundaries = function handlePositionBoundaries() {
1294 clearTimeout(timeout.current);
1295
1296 // Ensuring the dialog header, which is used as the dialog dragging handle, does not exceed the screen.
1297 timeout.current = setTimeout(function () {
1298 var _paperRef$current;
1299 var dialogTop = (_paperRef$current = paperRef.current) === null || _paperRef$current === void 0 ? void 0 : _paperRef$current.getBoundingClientRect().top;
1300 if (dialogTop < 0) {
1301 setPosition(function (prev) {
1302 return _objectSpread(_objectSpread({}, prev), {}, {
1303 y: prev.y - dialogTop
1304 });
1305 });
1306 }
1307 }, 50);
1308 };
1309 (0, _react.useEffect)(function () {
1310 var resizeObserver = new ResizeObserver(handlePositionBoundaries);
1311 resizeObserver.observe(paperRef.current);
1312 return function () {
1313 resizeObserver.disconnect();
1314 };
1315 }, []);
1316 return /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
1317 position: position,
1318 onDrag: onDrag,
1319 handle: ".MuiAppBar-root",
1320 cancel: '[class*="MuiDialogContent-root"]',
1321 bounds: "parent"
1322 }, /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
1323 ref: paperRef
1324 })));
1325 };
1326 var PromptDialog = function PromptDialog(props) {
1327 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
1328 scroll: "paper",
1329 open: true,
1330 fullWidth: true,
1331 hideBackdrop: true,
1332 PaperComponent: DraggablePaper,
1333 disableScrollLock: true,
1334 sx: {
1335 '& .MuiDialog-container': {
1336 alignItems: 'flex-start',
1337 mt: '18vh'
1338 }
1339 },
1340 PaperProps: {
1341 sx: {
1342 m: 0,
1343 maxHeight: '76vh'
1344 }
1345 }
1346 }, props), props.children);
1347 };
1348 PromptDialog.propTypes = {
1349 onClose: _propTypes.default.func.isRequired,
1350 children: _propTypes.default.node,
1351 maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false])
1352 };
1353 PromptDialog.Header = _dialogHeader.default;
1354 PromptDialog.Content = _ui.DialogContent;
1355 var _default = PromptDialog;
1356 exports["default"] = _default;
1357
1358 /***/ }),
1359
1360 /***/ "../modules/ai/assets/js/editor/components/prompt-error-message.js":
1361 /*!*************************************************************************!*\
1362 !*** ../modules/ai/assets/js/editor/components/prompt-error-message.js ***!
1363 \*************************************************************************/
1364 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1365
1366 "use strict";
1367 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
1368
1369
1370 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1371 Object.defineProperty(exports, "__esModule", ({
1372 value: true
1373 }));
1374 exports["default"] = void 0;
1375 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1376 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1377 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1378 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1379 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1380 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1381 var _excluded = ["error", "onRetry", "actionPosition"];
1382 var PromptErrorMessage = function PromptErrorMessage(_ref) {
1383 var error = _ref.error,
1384 _ref$onRetry = _ref.onRetry,
1385 onRetry = _ref$onRetry === void 0 ? function () {} : _ref$onRetry,
1386 _ref$actionPosition = _ref.actionPosition,
1387 actionPosition = _ref$actionPosition === void 0 ? 'default' : _ref$actionPosition,
1388 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1389 function getQuotaReachedTrailMessage(featureName) {
1390 if (!featureName) {
1391 return {
1392 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('It\'s time to upgrade.', 'elementor')),
1393 description: (0, _i18n.__)('Enjoy the free trial? Upgrade now for unlimited access to built-in image, text and custom code generators.', 'elementor'),
1394 buttonText: (0, _i18n.__)('Upgrade', 'elementor'),
1395 buttonAction: function buttonAction() {
1396 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1397 }
1398 };
1399 }
1400 return {
1401 // Translators: %s is the feature name.
1402 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, sprintf((0, _i18n.__)('You\'ve used all AI credits for %s.', 'elementor'), featureName.toLowerCase())),
1403 description: (0, _i18n.__)('Upgrade now to keep using this feature. You still have credits for other AI features (Text, Code, Images, Containers, etc.)', 'elementor'),
1404 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1405 buttonAction: function buttonAction() {
1406 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1407 }
1408 };
1409 }
1410 function getErrorMessage() {
1411 var _error$extra_data;
1412 var errMsg = error.message || error;
1413 var featureName = (_error$extra_data = error.extra_data) === null || _error$extra_data === void 0 ? void 0 : _error$extra_data.featureName;
1414 var messages = {
1415 default: {
1416 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1417 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1418 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1419 buttonAction: onRetry
1420 },
1421 service_outage_internal: {
1422 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1423 description: (0, _i18n.__)('Wait a moment and give it another go.', 'elementor'),
1424 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1425 buttonAction: onRetry
1426 },
1427 invalid_connect_data: {
1428 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1429 description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'), ' ', /*#__PURE__*/_react.default.createElement("a", {
1430 href: "https://elementor.com/help/disconnecting-reconnecting-your-elementor-account/",
1431 target: "_blank",
1432 rel: "noreferrer"
1433 }, (0, _i18n.__)('Show me how', 'elementor'))),
1434 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1435 buttonAction: function buttonAction() {
1436 return window.open(window.ElementorAiConfig.connect_url);
1437 }
1438 },
1439 not_connected: {
1440 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('You aren\'t connected to Elementor AI.', 'elementor')),
1441 description: (0, _i18n.__)('Elementor AI is just a few clicks away. Connect your account to instantly create texts and custom code.', 'elementor'),
1442 buttonText: (0, _i18n.__)('Connect', 'elementor'),
1443 buttonAction: function buttonAction() {
1444 return window.open(window.ElementorAiConfig.connect_url);
1445 }
1446 },
1447 quota_reached_trail: getQuotaReachedTrailMessage(featureName),
1448 quota_reached_subscription: {
1449 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Looks like you\'re out of credits.', 'elementor')),
1450 description: (0, _i18n.__)('Ready to take it to the next level?', 'elementor'),
1451 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1452 buttonAction: function buttonAction() {
1453 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1454 }
1455 },
1456 rate_limit_network: {
1457 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Whoa! Slow down there.', 'elementor')),
1458 description: (0, _i18n.__)('We can’t process that many requests so fast. Try again in 15 minutes.', 'elementor')
1459 },
1460 invalid_prompts: {
1461 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('We were unable to generate that prompt.', 'elementor')),
1462 description: (0, _i18n.__)('Seems like the prompt contains words that could generate harmful content. Write a different prompt to continue.', 'elementor')
1463 },
1464 service_unavailable: {
1465 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1466 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1467 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1468 buttonAction: onRetry
1469 },
1470 request_timeout_error: {
1471 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1472 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1473 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1474 buttonAction: onRetry
1475 },
1476 invalid_token: {
1477 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Try again', 'elementor')),
1478 description: (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'),
1479 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1480 buttonAction: onRetry
1481 },
1482 file_too_large: {
1483 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('The file is too large.', 'elementor')),
1484 description: (0, _i18n.__)('Please upload a file that is less than 4MB.', 'elementor')
1485 }
1486 };
1487 return messages[errMsg] || messages.default;
1488 }
1489 var message = getErrorMessage();
1490 var action = (message === null || message === void 0 ? void 0 : message.buttonText) && /*#__PURE__*/_react.default.createElement(_ui.Button, {
1491 color: "inherit",
1492 size: "small",
1493 variant: "outlined",
1494 onClick: message.buttonAction
1495 }, message.buttonText);
1496 return /*#__PURE__*/_react.default.createElement(_ui.Alert, (0, _extends2.default)({
1497 severity: message.severity || 'error',
1498 action: 'default' === actionPosition && action
1499 }, props), message.text, message.description, 'bottom' === actionPosition && /*#__PURE__*/_react.default.createElement(_ui.Box, {
1500 sx: {
1501 mt: 1
1502 }
1503 }, action));
1504 };
1505 PromptErrorMessage.propTypes = {
1506 error: _propTypes.default.string,
1507 onRetry: _propTypes.default.func,
1508 actionPosition: _propTypes.default.oneOf(['default', 'bottom'])
1509 };
1510 var _default = PromptErrorMessage;
1511 exports["default"] = _default;
1512
1513 /***/ }),
1514
1515 /***/ "../modules/ai/assets/js/editor/components/prompt-library-link.js":
1516 /*!************************************************************************!*\
1517 !*** ../modules/ai/assets/js/editor/components/prompt-library-link.js ***!
1518 \************************************************************************/
1519 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1520
1521 "use strict";
1522
1523
1524 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1525 Object.defineProperty(exports, "__esModule", ({
1526 value: true
1527 }));
1528 exports["default"] = void 0;
1529 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1530 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1531 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1532 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1533 var PromptLibraryLink = function PromptLibraryLink(props) {
1534 return /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1535 variant: "body2",
1536 color: "text.secondary"
1537 }, (0, _i18n.__)('For more suggestions, explore our'), ' ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
1538 href: props.libraryLink,
1539 className: "elementor-clickable",
1540 target: "_blank"
1541 }, (0, _i18n.__)('prompt library')));
1542 };
1543 PromptLibraryLink.propTypes = {
1544 libraryLink: _propTypes.default.string
1545 };
1546 var _default = PromptLibraryLink;
1547 exports["default"] = _default;
1548
1549 /***/ }),
1550
1551 /***/ "../modules/ai/assets/js/editor/components/upgrade-chip.js":
1552 /*!*****************************************************************!*\
1553 !*** ../modules/ai/assets/js/editor/components/upgrade-chip.js ***!
1554 \*****************************************************************/
1555 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1556
1557 "use strict";
1558
1559
1560 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1561 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1562 Object.defineProperty(exports, "__esModule", ({
1563 value: true
1564 }));
1565 exports["default"] = void 0;
1566 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1567 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1568 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1569 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1570 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1571 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1572 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); }
1573 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; }
1574 var popoverId = 'e-ai-upgrade-popover';
1575 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
1576 var theme = _ref.theme;
1577 return {
1578 position: 'relative',
1579 '[data-popper-placement="top"] &': {
1580 marginBottom: theme.spacing(2.5)
1581 },
1582 '[data-popper-placement="bottom"] &': {
1583 marginTop: theme.spacing(2.5)
1584 },
1585 padding: theme.spacing(3),
1586 boxShadow: theme.shadows[4],
1587 zIndex: '9999'
1588 };
1589 });
1590 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
1591 var theme = _ref2.theme;
1592 return {
1593 width: theme.spacing(5),
1594 height: theme.spacing(2.5),
1595 position: 'absolute',
1596 overflow: 'hidden',
1597 // Override Popper inline styles.
1598 left: '50% !important',
1599 transform: 'translateX(-50%) rotate(var(--rotate, 0deg)) !important',
1600 '[data-popper-placement="top"] &': {
1601 top: '100%'
1602 },
1603 '[data-popper-placement="bottom"] &': {
1604 '--rotate': '180deg',
1605 top: "calc(".concat(theme.spacing(2.5), " * -1)")
1606 },
1607 '&::after': {
1608 backgroundColor: theme.palette.background.paper,
1609 content: '""',
1610 display: 'block',
1611 position: 'absolute',
1612 width: theme.spacing(2.5),
1613 height: theme.spacing(2.5),
1614 top: 0,
1615 left: '50%',
1616 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
1617 boxShadow: '1px 1px 5px 0px rgba(0, 0, 0, 0.2)',
1618 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
1619 }
1620 };
1621 });
1622 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')];
1623 var Chip = (0, _ui.styled)(_ui.Chip)(function () {
1624 return {
1625 '& .MuiChip-label': {
1626 lineHeight: 1.5
1627 },
1628 '& .MuiSvgIcon-root.MuiChip-icon': {
1629 fontSize: '1.25rem'
1630 }
1631 };
1632 });
1633 var UpgradeChip = function UpgradeChip(_ref3) {
1634 var _ref3$hasSubscription = _ref3.hasSubscription,
1635 hasSubscription = _ref3$hasSubscription === void 0 ? false : _ref3$hasSubscription,
1636 _ref3$usagePercentage = _ref3.usagePercentage,
1637 usagePercentage = _ref3$usagePercentage === void 0 ? 0 : _ref3$usagePercentage;
1638 var _useState = (0, _react.useState)(false),
1639 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1640 isPopoverOpen = _useState2[0],
1641 setIsPopoverOpen = _useState2[1];
1642 var anchorEl = (0, _react.useRef)(null);
1643 var arrowEl = (0, _react.useRef)(null);
1644 var showPopover = function showPopover() {
1645 return setIsPopoverOpen(true);
1646 };
1647 var hidePopover = function hidePopover() {
1648 return setIsPopoverOpen(false);
1649 };
1650 var actionUrl = 'https://go.elementor.com/ai-popup-purchase-dropdown/';
1651 if (hasSubscription) {
1652 actionUrl = usagePercentage >= 100 ? 'https://go.elementor.com/ai-popup-upgrade-limit-reached/' : 'https://go.elementor.com/ai-popup-upgrade-limit-reached-80-percent/';
1653 }
1654 var actionLabel = hasSubscription ? (0, _i18n.__)('Upgrade Elementor AI', 'elementor') : (0, _i18n.__)('Get Elementor AI', 'elementor');
1655 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1656 component: "span",
1657 "aria-owns": isPopoverOpen ? popoverId : undefined,
1658 "aria-haspopup": "true",
1659 onMouseEnter: showPopover,
1660 onMouseLeave: hidePopover,
1661 ref: anchorEl,
1662 display: "flex",
1663 alignItems: "center"
1664 }, /*#__PURE__*/_react.default.createElement(Chip, {
1665 color: "promotion",
1666 label: (0, _i18n.__)('Upgrade', 'elementor'),
1667 icon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1668 size: "small"
1669 }), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
1670 open: isPopoverOpen,
1671 anchorEl: anchorEl.current,
1672 sx: {
1673 zIndex: '9999',
1674 maxWidth: 300
1675 },
1676 modifiers: [{
1677 name: 'arrow',
1678 enabled: true,
1679 options: {
1680 element: arrowEl.current
1681 }
1682 }]
1683 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
1684 ref: arrowEl
1685 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1686 variant: "h5",
1687 color: "text.primary"
1688 }, (0, _i18n.__)('Unlimited access to Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.List, {
1689 sx: {
1690 mb: 1
1691 }
1692 }, upgradeBullets.map(function (bullet, index) {
1693 return /*#__PURE__*/_react.default.createElement(_ui.ListItem, {
1694 key: index,
1695 disableGutters: true,
1696 sx: {
1697 alignItems: 'flex-start'
1698 }
1699 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(_icons.CheckedCircleIcon, null)), /*#__PURE__*/_react.default.createElement(_ui.ListItemText, {
1700 sx: {
1701 m: 0
1702 }
1703 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1704 variant: "body2"
1705 }, bullet)));
1706 })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
1707 variant: "contained",
1708 color: "promotion",
1709 size: "small",
1710 href: actionUrl,
1711 target: "_blank",
1712 startIcon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1713 sx: {
1714 '&:hover': {
1715 color: 'promotion.contrastText'
1716 }
1717 }
1718 }, actionLabel))));
1719 };
1720 var _default = UpgradeChip;
1721 exports["default"] = _default;
1722 UpgradeChip.propTypes = {
1723 hasSubscription: _propTypes.default.bool,
1724 usagePercentage: _propTypes.default.number
1725 };
1726
1727 /***/ }),
1728
1729 /***/ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js":
1730 /*!**************************************************************************!*\
1731 !*** ../modules/ai/assets/js/editor/components/voice-promotion-alert.js ***!
1732 \**************************************************************************/
1733 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1734
1735 "use strict";
1736 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
1737 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
1738
1739
1740 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1741 Object.defineProperty(exports, "__esModule", ({
1742 value: true
1743 }));
1744 exports["default"] = exports.VoicePromotionAlert = void 0;
1745 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1746 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1747 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1748 var _bulbIcon = _interopRequireDefault(__webpack_require__(/*! ../icons/bulb-icon */ "../modules/ai/assets/js/editor/icons/bulb-icon.js"));
1749 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
1750 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; }
1751 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; }
1752 var VoicePromotionAlert = function VoicePromotionAlert(props) {
1753 var _useIntroduction = (0, _useIntroduction2.default)(props.introductionKey),
1754 isViewed = _useIntroduction.isViewed,
1755 markAsViewed = _useIntroduction.markAsViewed;
1756 if (isViewed) {
1757 return null;
1758 }
1759 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1760 sx: _objectSpread({
1761 mt: 2
1762 }, props.sx),
1763 alignItems: "top"
1764 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
1765 severity: "info",
1766 variant: "standard",
1767 icon: /*#__PURE__*/_react.default.createElement(_bulbIcon.default, {
1768 sx: {
1769 alignSelf: 'flex-start'
1770 }
1771 }),
1772 onClose: markAsViewed
1773 }, __('Get improved results from AI by adding personal context.', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
1774 onClick: function onClick() {
1775 return $e.route('panel/global/menu');
1776 },
1777 className: "elementor-clickable",
1778 style: {
1779 textDecoration: 'none'
1780 },
1781 color: "info.main",
1782 href: "#"
1783 }, __('Let’s do it', 'elementor'))));
1784 };
1785 exports.VoicePromotionAlert = VoicePromotionAlert;
1786 VoicePromotionAlert.propTypes = {
1787 sx: PropTypes.object,
1788 introductionKey: PropTypes.string
1789 };
1790 var _default = VoicePromotionAlert;
1791 exports["default"] = _default;
1792
1793 /***/ }),
1794
1795 /***/ "../modules/ai/assets/js/editor/components/wizard-dialog.js":
1796 /*!******************************************************************!*\
1797 !*** ../modules/ai/assets/js/editor/components/wizard-dialog.js ***!
1798 \******************************************************************/
1799 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1800
1801 "use strict";
1802
1803
1804 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1805 Object.defineProperty(exports, "__esModule", ({
1806 value: true
1807 }));
1808 exports["default"] = void 0;
1809 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1810 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1811 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1812 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1813 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1814 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1815 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1816 var _excluded = ["sx"];
1817 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; }
1818 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; }
1819 var WizardDialog = function WizardDialog(props) {
1820 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1821 open: true,
1822 onClose: props.onClose,
1823 fullWidth: true,
1824 hideBackdrop: true,
1825 maxWidth: "lg",
1826 PaperProps: {
1827 sx: {
1828 height: '88vh'
1829 }
1830 },
1831 sx: {
1832 zIndex: 9999
1833 }
1834 }, props.children);
1835 };
1836 WizardDialog.propTypes = {
1837 onClose: _propTypes.default.func.isRequired,
1838 children: _propTypes.default.node.isRequired
1839 };
1840 var WizardDialogContent = function WizardDialogContent(_ref) {
1841 var _ref$sx = _ref.sx,
1842 sx = _ref$sx === void 0 ? {} : _ref$sx,
1843 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1844 return /*#__PURE__*/_react.default.createElement(_ui.DialogContent, (0, _extends2.default)({}, props, {
1845 sx: _objectSpread({
1846 display: 'flex',
1847 flexDirection: 'column',
1848 justifyContent: 'center'
1849 }, sx)
1850 }));
1851 };
1852 WizardDialogContent.propTypes = {
1853 sx: _propTypes.default.object
1854 };
1855 WizardDialog.Header = _dialogHeader.default;
1856 WizardDialog.Content = WizardDialogContent;
1857 var _default = WizardDialog;
1858 exports["default"] = _default;
1859
1860 /***/ }),
1861
1862 /***/ "../modules/ai/assets/js/editor/context/requests-ids.js":
1863 /*!**************************************************************!*\
1864 !*** ../modules/ai/assets/js/editor/context/requests-ids.js ***!
1865 \**************************************************************/
1866 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1867
1868 "use strict";
1869
1870
1871 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1872 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1873 Object.defineProperty(exports, "__esModule", ({
1874 value: true
1875 }));
1876 exports["default"] = exports.RequestIdsProvider = void 0;
1877 exports.generateIds = generateIds;
1878 exports.useRequestIds = exports.getUniqueId = void 0;
1879 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1880 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1881 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); }
1882 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; }
1883 var Context = (0, _react.createContext)({});
1884 var useRequestIds = function useRequestIds() {
1885 var context = (0, _react.useContext)(Context);
1886 if (!context) {
1887 throw new Error('useRequestIds must be used within a RequestIdsProvider');
1888 }
1889 return context;
1890 };
1891 exports.useRequestIds = useRequestIds;
1892 var getUniqueId = function getUniqueId(prefix) {
1893 return prefix + '-' + Math.random().toString(16).substr(2, 7);
1894 };
1895 exports.getUniqueId = getUniqueId;
1896 window.EDITOR_SESSION_ID = window.EDITOR_SESSION_ID || getUniqueId('editor-session');
1897 function generateIds(template) {
1898 var _template$elements;
1899 template.id = getUniqueId().toString();
1900 if ((_template$elements = template.elements) !== null && _template$elements !== void 0 && _template$elements.length) {
1901 template.elements.map(function (child) {
1902 return generateIds(child);
1903 });
1904 }
1905 return template;
1906 }
1907 var RequestIdsProvider = function RequestIdsProvider(props) {
1908 var editorSessionId = (0, _react.useRef)(window.EDITOR_SESSION_ID);
1909 var sessionId = (0, _react.useRef)('');
1910 var generateId = (0, _react.useRef)('');
1911 var batchId = (0, _react.useRef)('');
1912 var requestId = (0, _react.useRef)('');
1913 sessionId.current = getUniqueId('session');
1914 var setGenerate = function setGenerate() {
1915 generateId.current = getUniqueId('generate');
1916 return generateId;
1917 };
1918 var setBatch = function setBatch() {
1919 batchId.current = getUniqueId('batch');
1920 return batchId;
1921 };
1922 var setRequest = function setRequest() {
1923 requestId.current = getUniqueId('request');
1924 return requestId;
1925 };
1926 return /*#__PURE__*/_react.default.createElement(Context.Provider, {
1927 value: {
1928 editorSessionId: editorSessionId,
1929 sessionId: sessionId,
1930 generateId: generateId,
1931 batchId: batchId,
1932 requestId: requestId,
1933 setGenerate: setGenerate,
1934 setBatch: setBatch,
1935 setRequest: setRequest
1936 }
1937 }, props.children);
1938 };
1939 exports.RequestIdsProvider = RequestIdsProvider;
1940 RequestIdsProvider.propTypes = {
1941 children: _propTypes.default.node.isRequired
1942 };
1943 var _default = Context;
1944 exports["default"] = _default;
1945
1946 /***/ }),
1947
1948 /***/ "../modules/ai/assets/js/editor/hooks/use-introduction.js":
1949 /*!****************************************************************!*\
1950 !*** ../modules/ai/assets/js/editor/hooks/use-introduction.js ***!
1951 \****************************************************************/
1952 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1953
1954 "use strict";
1955
1956
1957 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1958 Object.defineProperty(exports, "__esModule", ({
1959 value: true
1960 }));
1961 exports["default"] = useIntroduction;
1962 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1963 var _react = __webpack_require__(/*! react */ "react");
1964 function useIntroduction(key) {
1965 var _window$elementor$con, _window$elementorAdmi, _window$elementorAdmi2, _globalConfig$introdu;
1966 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;
1967 var _useState = (0, _react.useState)(!!(globalConfig !== null && globalConfig !== void 0 && (_globalConfig$introdu = globalConfig.introduction) !== null && _globalConfig$introdu !== void 0 && _globalConfig$introdu[key])),
1968 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1969 isViewed = _useState2[0],
1970 setIsViewed = _useState2[1];
1971 function markAsViewed() {
1972 if (!key) {
1973 return Promise.reject();
1974 }
1975 return new Promise(function (resolve, reject) {
1976 if (isViewed) {
1977 reject();
1978 }
1979 setIsViewed(true);
1980 elementorCommon.ajax.addRequest('introduction_viewed', {
1981 data: {
1982 introductionKey: key
1983 },
1984 error: function error() {
1985 setIsViewed(false);
1986 reject();
1987 },
1988 success: function success() {
1989 setIsViewed(true);
1990 if (globalConfig !== null && globalConfig !== void 0 && globalConfig.introduction) {
1991 globalConfig.introduction[key] = true;
1992 }
1993 resolve();
1994 }
1995 });
1996 });
1997 }
1998 return {
1999 isViewed: isViewed,
2000 markAsViewed: markAsViewed
2001 };
2002 }
2003
2004 /***/ }),
2005
2006 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js":
2007 /*!*******************************************************************!*\
2008 !*** ../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js ***!
2009 \*******************************************************************/
2010 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2011
2012 "use strict";
2013
2014
2015 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2016 Object.defineProperty(exports, "__esModule", ({
2017 value: true
2018 }));
2019 exports["default"] = void 0;
2020 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2021 var _usePrompt2 = _interopRequireDefault(__webpack_require__(/*! ./use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
2022 var _config = __webpack_require__(/*! ../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2023 var enhancePromptMap = new Map([['media', _api.getImagePromptEnhanced], ['layout', _api.getLayoutPromptEnhanced]]);
2024 var getResult = function getResult(prompt, type, enhanceType) {
2025 if (!enhancePromptMap.has(type)) {
2026 throw new Error("Invalid prompt type: ".concat(type));
2027 }
2028 return enhancePromptMap.get(type)(prompt, enhanceType);
2029 };
2030
2031 /**
2032 * Hook to enhance a prompt.
2033 *
2034 * @param {string} prompt
2035 * @param {'media' | 'layout'} type
2036 * @return {{enhancedPrompt: string | undefined, isEnhancing: boolean, enhance: (function(...[*]): Promise)}}
2037 */
2038 var usePromptEnhancer = function usePromptEnhancer(prompt, type) {
2039 var _useConfig = (0, _config.useConfig)(),
2040 mode = _useConfig.mode;
2041 var _usePrompt = (0, _usePrompt2.default)(function () {
2042 return getResult(prompt, type, mode);
2043 }, prompt),
2044 enhancedData = _usePrompt.data,
2045 isEnhancing = _usePrompt.isLoading,
2046 enhance = _usePrompt.send;
2047 return {
2048 enhance: enhance,
2049 isEnhancing: isEnhancing,
2050 enhancedPrompt: enhancedData === null || enhancedData === void 0 ? void 0 : enhancedData.result
2051 };
2052 };
2053 var _default = usePromptEnhancer;
2054 exports["default"] = _default;
2055
2056 /***/ }),
2057
2058 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt.js":
2059 /*!**********************************************************!*\
2060 !*** ../modules/ai/assets/js/editor/hooks/use-prompt.js ***!
2061 \**********************************************************/
2062 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2063
2064 "use strict";
2065
2066
2067 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2068 Object.defineProperty(exports, "__esModule", ({
2069 value: true
2070 }));
2071 exports["default"] = void 0;
2072 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2073 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2074 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2075 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2076 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
2077 var _react = __webpack_require__(/*! react */ "react");
2078 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2079 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2080 var _excluded = ["text", "response_id", "usage", "images"];
2081 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; }
2082 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; }
2083 var normalizeResponse = function normalizeResponse(_ref) {
2084 var text = _ref.text,
2085 responseId = _ref.response_id,
2086 usage = _ref.usage,
2087 images = _ref.images,
2088 optional = (0, _objectWithoutProperties2.default)(_ref, _excluded);
2089 var creditsData = usage ? usage.quota - usage.usedQuota : 0;
2090 var credits = Math.max(creditsData, 0);
2091 var result = text || images;
2092 var normalized = {
2093 result: result,
2094 responseId: responseId,
2095 credits: credits
2096 };
2097 if (optional.base_template_id) {
2098 normalized.baseTemplateId = optional.base_template_id;
2099 }
2100 normalized.type = optional.template_type;
2101 return normalized;
2102 };
2103 var usePrompt = function usePrompt(fetchData, initialState) {
2104 var _useState = (0, _react.useState)(false),
2105 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2106 isLoading = _useState2[0],
2107 setIsLoading = _useState2[1];
2108 var _useState3 = (0, _react.useState)(''),
2109 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2110 error = _useState4[0],
2111 setError = _useState4[1];
2112 var _useState5 = (0, _react.useState)(initialState),
2113 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2114 data = _useState6[0],
2115 setData = _useState6[1];
2116 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
2117 setRequest = _useRequestIds.setRequest,
2118 editorSessionId = _useRequestIds.editorSessionId,
2119 sessionId = _useRequestIds.sessionId,
2120 generateId = _useRequestIds.generateId,
2121 batchId = _useRequestIds.batchId;
2122 var send = /*#__PURE__*/function () {
2123 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(payload) {
2124 return _regenerator.default.wrap(function _callee$(_context) {
2125 while (1) switch (_context.prev = _context.next) {
2126 case 0:
2127 return _context.abrupt("return", new Promise(function (resolve, reject) {
2128 setError('');
2129 setIsLoading(true);
2130 var requestId = setRequest();
2131 var requestIds = {
2132 editorSessionId: editorSessionId.current,
2133 sessionId: sessionId.current,
2134 generateId: generateId.current,
2135 batchId: batchId.current,
2136 requestId: requestId.current
2137 };
2138 payload = _objectSpread(_objectSpread({}, payload), {}, {
2139 requestIds: requestIds
2140 });
2141 fetchData(payload).then(function (result) {
2142 var normalizedData = normalizeResponse(result);
2143 setData(normalizedData);
2144 resolve(normalizedData);
2145 }).catch(function (err) {
2146 var finalError = (err === null || err === void 0 ? void 0 : err.responseText) || err;
2147 setError(finalError);
2148 reject(finalError);
2149 }).finally(function () {
2150 return setIsLoading(false);
2151 });
2152 }));
2153 case 1:
2154 case "end":
2155 return _context.stop();
2156 }
2157 }, _callee);
2158 }));
2159 return function send(_x) {
2160 return _ref2.apply(this, arguments);
2161 };
2162 }();
2163 var sendUsageData = function sendUsageData() {
2164 var usageData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : data;
2165 return usageData.responseId && (0, _api.setStatusFeedback)(usageData.responseId);
2166 };
2167 var reset = function reset() {
2168 setData(function (_ref3) {
2169 var credits = _ref3.credits;
2170 return {
2171 credits: credits,
2172 result: '',
2173 responseId: ''
2174 };
2175 });
2176 setError('');
2177 setIsLoading(false);
2178 };
2179 var setResult = function setResult(result) {
2180 var responseId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
2181 var updatedResult = _objectSpread({}, data);
2182 updatedResult.result = result;
2183 if (responseId) {
2184 updatedResult.responseId = responseId;
2185 }
2186 setData(updatedResult);
2187 };
2188 return {
2189 isLoading: isLoading,
2190 error: error,
2191 data: data,
2192 setResult: setResult,
2193 reset: reset,
2194 send: send,
2195 sendUsageData: sendUsageData
2196 };
2197 };
2198 var _default = usePrompt;
2199 exports["default"] = _default;
2200
2201 /***/ }),
2202
2203 /***/ "../modules/ai/assets/js/editor/hooks/use-timeout.js":
2204 /*!***********************************************************!*\
2205 !*** ../modules/ai/assets/js/editor/hooks/use-timeout.js ***!
2206 \***********************************************************/
2207 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2208
2209 "use strict";
2210
2211
2212 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2213 Object.defineProperty(exports, "__esModule", ({
2214 value: true
2215 }));
2216 exports.useTimeout = void 0;
2217 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2218 var _react = __webpack_require__(/*! react */ "react");
2219 var useTimeout = function useTimeout(delay) {
2220 var _useState = (0, _react.useState)(false),
2221 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2222 isTimeout = _useState2[0],
2223 setIsTimeout = _useState2[1];
2224 var timeoutIdRef = (0, _react.useRef)(null);
2225 var turnOffTimeout = function turnOffTimeout() {
2226 clearTimeout(timeoutIdRef.current);
2227 setIsTimeout(false);
2228 };
2229 (0, _react.useEffect)(function () {
2230 timeoutIdRef.current = setTimeout(function () {
2231 setIsTimeout(true);
2232 }, delay);
2233 return function () {
2234 clearTimeout(timeoutIdRef.current);
2235 };
2236 }, [delay]);
2237 return [isTimeout, turnOffTimeout];
2238 };
2239 exports.useTimeout = useTimeout;
2240
2241 /***/ }),
2242
2243 /***/ "../modules/ai/assets/js/editor/hooks/use-user-info.js":
2244 /*!*************************************************************!*\
2245 !*** ../modules/ai/assets/js/editor/hooks/use-user-info.js ***!
2246 \*************************************************************/
2247 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2248
2249 "use strict";
2250
2251
2252 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2253 Object.defineProperty(exports, "__esModule", ({
2254 value: true
2255 }));
2256 exports["default"] = void 0;
2257 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2258 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2259 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2260 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2261 var _react = __webpack_require__(/*! react */ "react");
2262 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2263 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; }
2264 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; }
2265 var useUserInfo = function useUserInfo() {
2266 var _useState = (0, _react.useState)(false),
2267 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2268 isLoaded = _useState2[0],
2269 setIsLoaded = _useState2[1];
2270 var _useState3 = (0, _react.useState)(false),
2271 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2272 isLoading = _useState4[0],
2273 setIsLoading = _useState4[1];
2274 var _useState5 = (0, _react.useState)({
2275 is_connected: false,
2276 is_get_started: false,
2277 connect_url: '',
2278 usage: {
2279 hasAiSubscription: false,
2280 quota: 0,
2281 usedQuota: 0
2282 }
2283 }),
2284 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2285 userInfo = _useState6[0],
2286 setUserInfo = _useState6[1];
2287 var credits = userInfo.usage.quota - userInfo.usage.usedQuota;
2288 var usagePercentage = userInfo.usage.usedQuota / userInfo.usage.quota * 100;
2289 var fetchData = /*#__PURE__*/function () {
2290 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
2291 var userInfoResult;
2292 return _regenerator.default.wrap(function _callee$(_context) {
2293 while (1) switch (_context.prev = _context.next) {
2294 case 0:
2295 setIsLoading(true);
2296 _context.next = 3;
2297 return (0, _api.getUserInformation)();
2298 case 3:
2299 userInfoResult = _context.sent;
2300 setUserInfo(function (prevState) {
2301 return _objectSpread(_objectSpread({}, prevState), userInfoResult);
2302 });
2303 setIsLoaded(true);
2304 setIsLoading(false);
2305 case 7:
2306 case "end":
2307 return _context.stop();
2308 }
2309 }, _callee);
2310 }));
2311 return function fetchData() {
2312 return _ref.apply(this, arguments);
2313 };
2314 }();
2315 if (!isLoaded && !isLoading) {
2316 fetchData();
2317 }
2318 return {
2319 isLoading: isLoading,
2320 isLoaded: isLoaded,
2321 isConnected: userInfo.is_connected,
2322 isGetStarted: userInfo.is_get_started,
2323 connectUrl: userInfo.connect_url,
2324 builderUrl: userInfo.usage.builderUrl,
2325 hasSubscription: userInfo.usage.hasAiSubscription,
2326 credits: credits < 0 ? 0 : credits,
2327 usagePercentage: Math.round(usagePercentage),
2328 fetchData: fetchData
2329 };
2330 };
2331 var _default = useUserInfo;
2332 exports["default"] = _default;
2333
2334 /***/ }),
2335
2336 /***/ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js":
2337 /*!***************************************************************!*\
2338 !*** ../modules/ai/assets/js/editor/icons/arrow-left-icon.js ***!
2339 \***************************************************************/
2340 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2341
2342 "use strict";
2343
2344
2345 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2346 Object.defineProperty(exports, "__esModule", ({
2347 value: true
2348 }));
2349 exports["default"] = void 0;
2350 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2351 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2352 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2353 var ArrowLeftIcon = _react.default.forwardRef(function (props, ref) {
2354 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2355 viewBox: "0 0 24 24"
2356 }, props, {
2357 ref: ref
2358 }), /*#__PURE__*/_react.default.createElement("path", {
2359 fillRule: "evenodd",
2360 clipRule: "evenodd",
2361 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"
2362 }));
2363 });
2364 var _default = ArrowLeftIcon;
2365 exports["default"] = _default;
2366
2367 /***/ }),
2368
2369 /***/ "../modules/ai/assets/js/editor/icons/bulb-icon.js":
2370 /*!*********************************************************!*\
2371 !*** ../modules/ai/assets/js/editor/icons/bulb-icon.js ***!
2372 \*********************************************************/
2373 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2374
2375 "use strict";
2376
2377
2378 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2379 Object.defineProperty(exports, "__esModule", ({
2380 value: true
2381 }));
2382 exports["default"] = void 0;
2383 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2384 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2385 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2386 var BulbIcon = _react.default.forwardRef(function (props, ref) {
2387 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({}, props, {
2388 ref: ref
2389 }), /*#__PURE__*/_react.default.createElement("svg", {
2390 width: "22",
2391 height: "22",
2392 viewBox: "0 0 22 22",
2393 fill: "none",
2394 xmlns: "http://www.w3.org/2000/svg"
2395 }, /*#__PURE__*/_react.default.createElement("g", {
2396 clipPath: "url(#clip0_10743_8902)"
2397 }, /*#__PURE__*/_react.default.createElement("path", {
2398 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",
2399 stroke: "#2563EB",
2400 strokeWidth: "1.5",
2401 strokeLinecap: "round",
2402 strokeLinejoin: "round"
2403 }), /*#__PURE__*/_react.default.createElement("path", {
2404 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",
2405 stroke: "#2563EB",
2406 strokeWidth: "1.5",
2407 strokeLinecap: "round",
2408 strokeLinejoin: "round"
2409 }), /*#__PURE__*/_react.default.createElement("path", {
2410 d: "M10.0833 16.5H11.9166",
2411 stroke: "#2563EB",
2412 strokeWidth: "1.5",
2413 strokeLinecap: "round",
2414 strokeLinejoin: "round"
2415 })), /*#__PURE__*/_react.default.createElement("defs", null, /*#__PURE__*/_react.default.createElement("clipPath", {
2416 id: "clip0_10743_8902"
2417 }, /*#__PURE__*/_react.default.createElement("rect", {
2418 width: "22",
2419 height: "22",
2420 fill: "white"
2421 })))));
2422 });
2423 var _default = BulbIcon;
2424 exports["default"] = _default;
2425
2426 /***/ }),
2427
2428 /***/ "../modules/ai/assets/js/editor/icons/copy-page-icon.js":
2429 /*!**************************************************************!*\
2430 !*** ../modules/ai/assets/js/editor/icons/copy-page-icon.js ***!
2431 \**************************************************************/
2432 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2433
2434 "use strict";
2435
2436
2437 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2438 Object.defineProperty(exports, "__esModule", ({
2439 value: true
2440 }));
2441 exports["default"] = void 0;
2442 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2443 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2444 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2445 var CopyPageIcon = _react.default.forwardRef(function (props, ref) {
2446 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2447 viewBox: "0 0 24 24"
2448 }, props, {
2449 ref: ref
2450 }), /*#__PURE__*/_react.default.createElement("path", {
2451 fillRule: "evenodd",
2452 clipRule: "evenodd",
2453 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"
2454 }));
2455 });
2456 var _default = CopyPageIcon;
2457 exports["default"] = _default;
2458
2459 /***/ }),
2460
2461 /***/ "../modules/ai/assets/js/editor/icons/edit-icon.js":
2462 /*!*********************************************************!*\
2463 !*** ../modules/ai/assets/js/editor/icons/edit-icon.js ***!
2464 \*********************************************************/
2465 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2466
2467 "use strict";
2468
2469
2470 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2471 Object.defineProperty(exports, "__esModule", ({
2472 value: true
2473 }));
2474 exports["default"] = void 0;
2475 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2476 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2477 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2478 var EditIcon = _react.default.forwardRef(function (props, ref) {
2479 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2480 viewBox: "0 0 24 24"
2481 }, props, {
2482 ref: ref
2483 }), /*#__PURE__*/_react.default.createElement("path", {
2484 fillRule: "evenodd",
2485 clipRule: "evenodd",
2486 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"
2487 }), /*#__PURE__*/_react.default.createElement("path", {
2488 fillRule: "evenodd",
2489 clipRule: "evenodd",
2490 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"
2491 }));
2492 });
2493 var _default = EditIcon;
2494 exports["default"] = _default;
2495
2496 /***/ }),
2497
2498 /***/ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js":
2499 /*!********************************************************************!*\
2500 !*** ../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js ***!
2501 \********************************************************************/
2502 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2503
2504 "use strict";
2505
2506
2507 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2508 Object.defineProperty(exports, "__esModule", ({
2509 value: true
2510 }));
2511 exports["default"] = void 0;
2512 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2513 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2514 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2515 var ExpandDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2516 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2517 viewBox: "0 0 24 24"
2518 }, props, {
2519 ref: ref
2520 }), /*#__PURE__*/_react.default.createElement("path", {
2521 fillRule: "evenodd",
2522 clipRule: "evenodd",
2523 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"
2524 }));
2525 });
2526 var _default = ExpandDiagonalIcon;
2527 exports["default"] = _default;
2528
2529 /***/ }),
2530
2531 /***/ "../modules/ai/assets/js/editor/icons/lock-icon.js":
2532 /*!*********************************************************!*\
2533 !*** ../modules/ai/assets/js/editor/icons/lock-icon.js ***!
2534 \*********************************************************/
2535 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2536
2537 "use strict";
2538
2539
2540 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2541 Object.defineProperty(exports, "__esModule", ({
2542 value: true
2543 }));
2544 exports["default"] = void 0;
2545 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2546 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2547 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2548 var LockIcon = _react.default.forwardRef(function (props, ref) {
2549 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2550 viewBox: "0 0 24 24"
2551 }, props, {
2552 ref: ref
2553 }), /*#__PURE__*/_react.default.createElement("path", {
2554 fillRule: "evenodd",
2555 clipRule: "evenodd",
2556 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"
2557 }), /*#__PURE__*/_react.default.createElement("path", {
2558 fillRule: "evenodd",
2559 clipRule: "evenodd",
2560 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"
2561 }), /*#__PURE__*/_react.default.createElement("path", {
2562 d: "M6 12H19V20H6V12Z"
2563 }));
2564 });
2565 var _default = LockIcon;
2566 exports["default"] = _default;
2567
2568 /***/ }),
2569
2570 /***/ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js":
2571 /*!**********************************************************************!*\
2572 !*** ../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js ***!
2573 \**********************************************************************/
2574 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2575
2576 "use strict";
2577
2578
2579 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2580 Object.defineProperty(exports, "__esModule", ({
2581 value: true
2582 }));
2583 exports["default"] = void 0;
2584 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2585 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2586 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2587 var MinimizeDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2588 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2589 viewBox: "0 0 24 24"
2590 }, props, {
2591 ref: ref
2592 }), /*#__PURE__*/_react.default.createElement("path", {
2593 fillRule: "evenodd",
2594 clipRule: "evenodd",
2595 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"
2596 }));
2597 });
2598 var _default = MinimizeDiagonalIcon;
2599 exports["default"] = _default;
2600
2601 /***/ }),
2602
2603 /***/ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js":
2604 /*!****************************************************************!*\
2605 !*** ../modules/ai/assets/js/editor/icons/plus-circle-icon.js ***!
2606 \****************************************************************/
2607 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2608
2609 "use strict";
2610
2611
2612 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2613 Object.defineProperty(exports, "__esModule", ({
2614 value: true
2615 }));
2616 exports["default"] = void 0;
2617 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2618 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2619 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2620 var PlusCircleIcon = _react.default.forwardRef(function (props, ref) {
2621 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2622 viewBox: "0 0 24 24"
2623 }, props, {
2624 ref: ref
2625 }), /*#__PURE__*/_react.default.createElement("path", {
2626 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"
2627 }));
2628 });
2629 var _default = PlusCircleIcon;
2630 exports["default"] = _default;
2631
2632 /***/ }),
2633
2634 /***/ "../modules/ai/assets/js/editor/icons/refresh-icon.js":
2635 /*!************************************************************!*\
2636 !*** ../modules/ai/assets/js/editor/icons/refresh-icon.js ***!
2637 \************************************************************/
2638 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2639
2640 "use strict";
2641
2642
2643 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2644 Object.defineProperty(exports, "__esModule", ({
2645 value: true
2646 }));
2647 exports["default"] = void 0;
2648 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2649 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2650 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2651 var RefreshIcon = _react.default.forwardRef(function (props, ref) {
2652 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2653 viewBox: "0 0 24 24"
2654 }, props, {
2655 ref: ref
2656 }), /*#__PURE__*/_react.default.createElement("path", {
2657 fillRule: "evenodd",
2658 clipRule: "evenodd",
2659 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"
2660 }), /*#__PURE__*/_react.default.createElement("path", {
2661 fillRule: "evenodd",
2662 clipRule: "evenodd",
2663 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"
2664 }));
2665 });
2666 var _default = RefreshIcon;
2667 exports["default"] = _default;
2668
2669 /***/ }),
2670
2671 /***/ "../modules/ai/assets/js/editor/icons/wand-icon.js":
2672 /*!*********************************************************!*\
2673 !*** ../modules/ai/assets/js/editor/icons/wand-icon.js ***!
2674 \*********************************************************/
2675 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2676
2677 "use strict";
2678
2679
2680 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2681 Object.defineProperty(exports, "__esModule", ({
2682 value: true
2683 }));
2684 exports["default"] = void 0;
2685 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2686 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2687 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2688 var WandIcon = _react.default.forwardRef(function (props, ref) {
2689 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2690 viewBox: "0 0 24 24"
2691 }, props, {
2692 ref: ref
2693 }), /*#__PURE__*/_react.default.createElement("path", {
2694 fillRule: "evenodd",
2695 clipRule: "evenodd",
2696 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"
2697 }), /*#__PURE__*/_react.default.createElement("path", {
2698 fillRule: "evenodd",
2699 clipRule: "evenodd",
2700 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"
2701 }), /*#__PURE__*/_react.default.createElement("path", {
2702 fillRule: "evenodd",
2703 clipRule: "evenodd",
2704 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"
2705 }));
2706 });
2707 var _default = WandIcon;
2708 exports["default"] = _default;
2709
2710 /***/ }),
2711
2712 /***/ "../modules/ai/assets/js/editor/icons/website-icon.js":
2713 /*!************************************************************!*\
2714 !*** ../modules/ai/assets/js/editor/icons/website-icon.js ***!
2715 \************************************************************/
2716 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2717
2718 "use strict";
2719
2720
2721 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2722 Object.defineProperty(exports, "__esModule", ({
2723 value: true
2724 }));
2725 exports["default"] = void 0;
2726 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2727 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2728 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2729 var WebsiteIcon = _react.default.forwardRef(function (props, ref) {
2730 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2731 viewBox: "0 0 24 24"
2732 }, props, {
2733 ref: ref
2734 }), /*#__PURE__*/_react.default.createElement("path", {
2735 fillRule: "evenodd",
2736 clipRule: "evenodd",
2737 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"
2738 }));
2739 });
2740 var _default = WebsiteIcon;
2741 exports["default"] = _default;
2742
2743 /***/ }),
2744
2745 /***/ "../modules/ai/assets/js/editor/icons/x-circle-icon.js":
2746 /*!*************************************************************!*\
2747 !*** ../modules/ai/assets/js/editor/icons/x-circle-icon.js ***!
2748 \*************************************************************/
2749 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2750
2751 "use strict";
2752
2753
2754 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2755 Object.defineProperty(exports, "__esModule", ({
2756 value: true
2757 }));
2758 exports["default"] = void 0;
2759 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2760 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2761 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2762 var XCircleIcon = _react.default.forwardRef(function (props, ref) {
2763 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2764 viewBox: "0 0 24 24"
2765 }, props, {
2766 ref: ref
2767 }), /*#__PURE__*/_react.default.createElement("path", {
2768 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"
2769 }));
2770 });
2771 var _default = XCircleIcon;
2772 exports["default"] = _default;
2773
2774 /***/ }),
2775
2776 /***/ "../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js":
2777 /*!********************************************************************************************!*\
2778 !*** ../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js ***!
2779 \********************************************************************************************/
2780 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2781
2782 "use strict";
2783
2784
2785 var _require = __webpack_require__(/*! ../../utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js"),
2786 renderLayoutApp = _require.renderLayoutApp,
2787 importToEditor = _require.importToEditor;
2788 var _require2 = __webpack_require__(/*! ../../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js"),
2789 MODE_VARIATION = _require2.MODE_VARIATION;
2790 var _require3 = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"),
2791 __ = _require3.__;
2792 var _require4 = __webpack_require__(/*! ../../pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"),
2793 ATTACHMENT_TYPE_JSON = _require4.ATTACHMENT_TYPE_JSON,
2794 ELEMENTOR_LIBRARY_SOURCE = _require4.ELEMENTOR_LIBRARY_SOURCE;
2795 var ApplyTemplateForAiBehavior;
2796 ApplyTemplateForAiBehavior = Marionette.Behavior.extend({
2797 ui: {
2798 applyButton: '.elementor-template-library-template-apply-ai',
2799 generateVariation: '.elementor-template-library-template-generate-variation'
2800 },
2801 events: {
2802 'click @ui.applyButton': 'onApplyButtonClick',
2803 'click @ui.generateVariation': 'onGenerateVariationClick'
2804 },
2805 onGenerateVariationClick: function onGenerateVariationClick() {
2806 var _libraryComponent$man, _libraryComponent$man2;
2807 var args = {
2808 model: this.view.model
2809 };
2810 var libraryComponent = $e.components.get('library');
2811 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;
2812 libraryComponent.downloadTemplate(args, function (data) {
2813 var model = args.model;
2814 var attachment = {
2815 type: ATTACHMENT_TYPE_JSON,
2816 previewHTML: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
2817 content: data.content[0],
2818 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
2819 source: ELEMENTOR_LIBRARY_SOURCE
2820 };
2821 renderLayoutApp({
2822 parentContainer: elementor.getPreviewContainer(),
2823 mode: MODE_VARIATION,
2824 at: at,
2825 attachments: [attachment],
2826 onInsert: function onInsert(template) {
2827 importToEditor({
2828 parentContainer: elementor.getPreviewContainer(),
2829 at: at,
2830 template: template,
2831 historyTitle: __('AI Variation from library', 'elementor')
2832 });
2833 }
2834 });
2835 $e.run('library/close');
2836 });
2837 },
2838 onApplyButtonClick: function onApplyButtonClick() {
2839 var args = {
2840 model: this.view.model
2841 };
2842 this.ui.applyButton.addClass('elementor-disabled');
2843 if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
2844 $e.route('library/connect', args);
2845 return;
2846 }
2847 $e.run('library/generate-ai-variation', args);
2848 }
2849 });
2850 module.exports = ApplyTemplateForAiBehavior;
2851
2852 /***/ }),
2853
2854 /***/ "../modules/ai/assets/js/editor/layout-app-wrapper.js":
2855 /*!************************************************************!*\
2856 !*** ../modules/ai/assets/js/editor/layout-app-wrapper.js ***!
2857 \************************************************************/
2858 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2859
2860 "use strict";
2861
2862
2863 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2864 Object.defineProperty(exports, "__esModule", ({
2865 value: true
2866 }));
2867 exports["default"] = void 0;
2868 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2869 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2870 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2871 var LayoutAppWrapper = function LayoutAppWrapper(props) {
2872 return /*#__PURE__*/_react.default.createElement(_ui.DirectionProvider, {
2873 rtl: props.isRTL
2874 }, /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, {
2875 colorScheme: props.colorScheme
2876 }, props.children));
2877 };
2878 LayoutAppWrapper.propTypes = {
2879 children: _propTypes.default.node,
2880 isRTL: _propTypes.default.bool,
2881 colorScheme: _propTypes.default.oneOf(['auto', 'light', 'dark'])
2882 };
2883 var _default = LayoutAppWrapper;
2884 exports["default"] = _default;
2885
2886 /***/ }),
2887
2888 /***/ "../modules/ai/assets/js/editor/layout-app.js":
2889 /*!****************************************************!*\
2890 !*** ../modules/ai/assets/js/editor/layout-app.js ***!
2891 \****************************************************/
2892 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2893
2894 "use strict";
2895
2896
2897 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2898 Object.defineProperty(exports, "__esModule", ({
2899 value: true
2900 }));
2901 exports["default"] = void 0;
2902 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2903 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2904 var _layoutContent = _interopRequireDefault(__webpack_require__(/*! ./layout-content */ "../modules/ai/assets/js/editor/layout-content.js"));
2905 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2906 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2907 var _remoteConfig = __webpack_require__(/*! ./pages/form-layout/context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
2908 var _requestsIds = __webpack_require__(/*! ./context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2909 var LayoutApp = function LayoutApp(props) {
2910 return /*#__PURE__*/_react.default.createElement(_remoteConfig.RemoteConfigProvider, {
2911 onError: props.onClose
2912 }, /*#__PURE__*/_react.default.createElement(_requestsIds.RequestIdsProvider, null, /*#__PURE__*/_react.default.createElement(_config.ConfigProvider, {
2913 mode: props.mode,
2914 attachmentsTypes: props.attachmentsTypes,
2915 onClose: props.onClose,
2916 onConnect: props.onConnect,
2917 onData: props.onData,
2918 onInsert: props.onInsert,
2919 onSelect: props.onSelect,
2920 onGenerate: props.onGenerate,
2921 currentContext: props.currentContext,
2922 hasPro: props.hasPro
2923 }, /*#__PURE__*/_react.default.createElement(_layoutContent.default, {
2924 attachments: props.attachments
2925 }))));
2926 };
2927 LayoutApp.propTypes = {
2928 mode: _propTypes.default.oneOf(_config.LAYOUT_APP_MODES).isRequired,
2929 attachmentsTypes: _attachment.AttachmentsTypesPropType,
2930 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
2931 onClose: _propTypes.default.func.isRequired,
2932 onConnect: _propTypes.default.func.isRequired,
2933 onData: _propTypes.default.func.isRequired,
2934 onInsert: _propTypes.default.func.isRequired,
2935 onSelect: _propTypes.default.func.isRequired,
2936 onGenerate: _propTypes.default.func.isRequired,
2937 currentContext: _propTypes.default.object,
2938 hasPro: _propTypes.default.bool
2939 };
2940 var _default = LayoutApp;
2941 exports["default"] = _default;
2942
2943 /***/ }),
2944
2945 /***/ "../modules/ai/assets/js/editor/layout-content.js":
2946 /*!********************************************************!*\
2947 !*** ../modules/ai/assets/js/editor/layout-content.js ***!
2948 \********************************************************/
2949 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2950
2951 "use strict";
2952
2953
2954 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2955 Object.defineProperty(exports, "__esModule", ({
2956 value: true
2957 }));
2958 exports["default"] = void 0;
2959 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2960 var _connect = _interopRequireDefault(__webpack_require__(/*! ./pages/connect */ "../modules/ai/assets/js/editor/pages/connect/index.js"));
2961 var _formLayout = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout */ "../modules/ai/assets/js/editor/pages/form-layout/index.js"));
2962 var _getStarted = _interopRequireDefault(__webpack_require__(/*! ./pages/get-started */ "../modules/ai/assets/js/editor/pages/get-started/index.js"));
2963 var _loader = _interopRequireDefault(__webpack_require__(/*! ./components/loader */ "../modules/ai/assets/js/editor/components/loader.js"));
2964 var _upgradeChip = _interopRequireDefault(__webpack_require__(/*! ./components/upgrade-chip */ "../modules/ai/assets/js/editor/components/upgrade-chip.js"));
2965 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
2966 var _wizardDialog = _interopRequireDefault(__webpack_require__(/*! ./components/wizard-dialog */ "../modules/ai/assets/js/editor/components/wizard-dialog.js"));
2967 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout/components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
2968 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2969 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2970 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2971 var LayoutContent = function LayoutContent(props) {
2972 var _useUserInfo = (0, _useUserInfo2.default)(),
2973 isLoading = _useUserInfo.isLoading,
2974 isConnected = _useUserInfo.isConnected,
2975 isGetStarted = _useUserInfo.isGetStarted,
2976 connectUrl = _useUserInfo.connectUrl,
2977 fetchData = _useUserInfo.fetchData,
2978 hasSubscription = _useUserInfo.hasSubscription,
2979 usagePercentage = _useUserInfo.usagePercentage;
2980 var _useConfig = (0, _config.useConfig)(),
2981 onClose = _useConfig.onClose,
2982 onConnect = _useConfig.onConnect;
2983 if (isLoading) {
2984 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2985 onClose: onClose
2986 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, {
2987 onClose: onClose
2988 }), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, {
2989 dividers: true
2990 }, /*#__PURE__*/_react.default.createElement(_loader.default, {
2991 BoxProps: {
2992 sx: {
2993 px: 3
2994 }
2995 }
2996 })));
2997 }
2998 if (!isConnected) {
2999 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3000 onClose: onClose
3001 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3002 onClose: onClose
3003 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3004 dividers: true
3005 }, /*#__PURE__*/_react.default.createElement(_connect.default, {
3006 connectUrl: connectUrl,
3007 onSuccess: function onSuccess(data) {
3008 onConnect(data);
3009 fetchData();
3010 }
3011 })));
3012 }
3013 if (!isGetStarted) {
3014 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3015 onClose: onClose
3016 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3017 onClose: onClose
3018 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3019 dividers: true
3020 }, /*#__PURE__*/_react.default.createElement(_getStarted.default, {
3021 onSuccess: fetchData
3022 })));
3023 }
3024 var showUpgradeChip = !hasSubscription || 80 <= usagePercentage;
3025 return /*#__PURE__*/_react.default.createElement(_formLayout.default, {
3026 attachments: props.attachments,
3027 DialogHeaderProps: {
3028 children: showUpgradeChip && /*#__PURE__*/_react.default.createElement(_upgradeChip.default, {
3029 hasSubscription: hasSubscription,
3030 usagePercentage: usagePercentage
3031 })
3032 }
3033 });
3034 };
3035 LayoutContent.propTypes = {
3036 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
3037 };
3038 var _default = LayoutContent;
3039 exports["default"] = _default;
3040
3041 /***/ }),
3042
3043 /***/ "../modules/ai/assets/js/editor/pages/connect/index.js":
3044 /*!*************************************************************!*\
3045 !*** ../modules/ai/assets/js/editor/pages/connect/index.js ***!
3046 \*************************************************************/
3047 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3048
3049 "use strict";
3050
3051
3052 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3053 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3054 Object.defineProperty(exports, "__esModule", ({
3055 value: true
3056 }));
3057 exports["default"] = void 0;
3058 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3059 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3060 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3061 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3062 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3063 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); }
3064 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; }
3065 var Connect = function Connect(_ref) {
3066 var connectUrl = _ref.connectUrl,
3067 onSuccess = _ref.onSuccess;
3068 var approveButtonRef = (0, _react.useRef)();
3069 (0, _react.useEffect)(function () {
3070 // On local dev (as a standalone app), the connect lib is not loaded.
3071 if (!jQuery.fn.elementorConnect) {
3072 return;
3073 }
3074 jQuery(approveButtonRef.current).elementorConnect({
3075 success: function success(_, data) {
3076 return onSuccess(data);
3077 },
3078 error: function error() {
3079 throw new Error('Elementor AI: Failed to connect.');
3080 }
3081 });
3082 }, []);
3083 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3084 alignItems: "center",
3085 gap: 2
3086 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3087 sx: {
3088 color: 'text.primary',
3089 fontSize: '60px',
3090 mb: 1
3091 }
3092 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3093 variant: "h4",
3094 sx: {
3095 color: 'text.primary'
3096 }
3097 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3098 variant: "body2"
3099 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3100 variant: "caption",
3101 sx: {
3102 maxWidth: 520,
3103 textAlign: 'center'
3104 }
3105 }, (0, _i18n.__)('By clicking "Connect", I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
3106 href: "https://go.elementor.com/ai-terms/",
3107 target: "_blank",
3108 color: "info.main"
3109 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
3110 href: "https://go.elementor.com/ai-privacy-policy/",
3111 target: "_blank",
3112 color: "info.main"
3113 }, (0, _i18n.__)('Privacy Policy', 'elementor')), (0, _i18n.__)(' of the Elementor AI service.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
3114 ref: approveButtonRef,
3115 href: connectUrl,
3116 variant: "contained",
3117 sx: {
3118 mt: 1,
3119 '&:hover': {
3120 color: 'primary.contrastText'
3121 }
3122 }
3123 }, (0, _i18n.__)('Connect', 'elementor')));
3124 };
3125 Connect.propTypes = {
3126 connectUrl: _propTypes.default.string.isRequired,
3127 onSuccess: _propTypes.default.func.isRequired
3128 };
3129 var _default = Connect;
3130 exports["default"] = _default;
3131
3132 /***/ }),
3133
3134 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js":
3135 /*!**********************************************************************************!*\
3136 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js ***!
3137 \**********************************************************************************/
3138 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3139
3140 "use strict";
3141
3142
3143 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3144 Object.defineProperty(exports, "__esModule", ({
3145 value: true
3146 }));
3147 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;
3148 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3149 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3150 var _menu = __webpack_require__(/*! ./attachments/menu */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js");
3151 var _thumbnailJson = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-json */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js"));
3152 var _thumbnailUrl = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-url */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js"));
3153 var _websiteIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/website-icon */ "../modules/ai/assets/js/editor/icons/website-icon.js"));
3154 var _copyPageIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/copy-page-icon */ "../modules/ai/assets/js/editor/icons/copy-page-icon.js"));
3155 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3156 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3157 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3158 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3159 var ATTACHMENT_TYPE_JSON = 'json';
3160 exports.ATTACHMENT_TYPE_JSON = ATTACHMENT_TYPE_JSON;
3161 var ATTACHMENT_TYPE_URL = 'url';
3162 exports.ATTACHMENT_TYPE_URL = ATTACHMENT_TYPE_URL;
3163 var MENU_TYPE_LIBRARY = 'library';
3164 exports.MENU_TYPE_LIBRARY = MENU_TYPE_LIBRARY;
3165 var USER_VARIATION_SOURCE = 'user-variation';
3166 exports.USER_VARIATION_SOURCE = USER_VARIATION_SOURCE;
3167 var ELEMENTOR_LIBRARY_SOURCE = 'elementor-library';
3168 exports.ELEMENTOR_LIBRARY_SOURCE = ELEMENTOR_LIBRARY_SOURCE;
3169 var USER_URL_SOURCE = 'user-url';
3170 exports.USER_URL_SOURCE = USER_URL_SOURCE;
3171 var Attachments = function Attachments(props) {
3172 if (!props.attachments.length) {
3173 return /*#__PURE__*/_react.default.createElement(_menu.Menu, {
3174 disabled: props.disabled,
3175 onAttach: props.onAttach,
3176 items: [{
3177 title: (0, _i18n.__)('Reference a website', 'elementor'),
3178 icon: _websiteIcon.default,
3179 type: ATTACHMENT_TYPE_URL
3180 }, {
3181 title: (0, _i18n.__)('Create variations from Template Library', 'elementor'),
3182 icon: _copyPageIcon.default,
3183 type: MENU_TYPE_LIBRARY
3184 }]
3185 });
3186 }
3187 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3188 direction: "row",
3189 spacing: 1
3190 }, props.attachments.map(function (attachment, index) {
3191 switch (attachment.type) {
3192 case ATTACHMENT_TYPE_JSON:
3193 return /*#__PURE__*/_react.default.createElement(_thumbnailJson.default, (0, _extends2.default)({
3194 key: index
3195 }, props));
3196 case ATTACHMENT_TYPE_URL:
3197 return /*#__PURE__*/_react.default.createElement(_thumbnailUrl.default, (0, _extends2.default)({
3198 key: index
3199 }, props));
3200 default:
3201 return null;
3202 }
3203 }));
3204 };
3205 Attachments.propTypes = {
3206 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3207 onAttach: _propTypes.default.func.isRequired,
3208 onDetach: _propTypes.default.func,
3209 disabled: _propTypes.default.bool
3210 };
3211 var _default = Attachments;
3212 exports["default"] = _default;
3213
3214 /***/ }),
3215
3216 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js":
3217 /*!************************************************************************************************!*\
3218 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js ***!
3219 \************************************************************************************************/
3220 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3221
3222 "use strict";
3223
3224
3225 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3226 Object.defineProperty(exports, "__esModule", ({
3227 value: true
3228 }));
3229 exports["default"] = exports.AttachDialog = void 0;
3230 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3231 var _urlDialog = __webpack_require__(/*! ./url-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js");
3232 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3233 var _libraryDialog = __webpack_require__(/*! ./library-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js");
3234 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3235 var AttachDialog = function AttachDialog(props) {
3236 var type = props.type;
3237 var url = props.url;
3238 switch (type) {
3239 case _attachments.ATTACHMENT_TYPE_URL:
3240 return /*#__PURE__*/_react.default.createElement(_urlDialog.UrlDialog, {
3241 url: url,
3242 onAttach: props.onAttach,
3243 onClose: props.onClose
3244 });
3245 case _attachments.MENU_TYPE_LIBRARY:
3246 return /*#__PURE__*/_react.default.createElement(_libraryDialog.LibraryDialog, {
3247 onAttach: props.onAttach,
3248 onClose: props.onClose
3249 });
3250 }
3251 return null;
3252 };
3253 exports.AttachDialog = AttachDialog;
3254 AttachDialog.propTypes = {
3255 type: _propTypes.default.string,
3256 onAttach: _propTypes.default.func,
3257 onClose: _propTypes.default.func,
3258 url: _propTypes.default.string
3259 };
3260 var _default = AttachDialog;
3261 exports["default"] = _default;
3262
3263 /***/ }),
3264
3265 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js":
3266 /*!*************************************************************************************************!*\
3267 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js ***!
3268 \*************************************************************************************************/
3269 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3270
3271 "use strict";
3272
3273
3274 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3275 Object.defineProperty(exports, "__esModule", ({
3276 value: true
3277 }));
3278 exports.LibraryDialog = void 0;
3279 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3280 var _react = __webpack_require__(/*! react */ "react");
3281 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3282 var LibraryDialog = function LibraryDialog(props) {
3283 var isApplyingTemplate = (0, _react.useRef)(false);
3284 (0, _react.useEffect)(function () {
3285 var onLibraryHide = function onLibraryHide() {
3286 if (isApplyingTemplate.current) {
3287 return;
3288 }
3289 props.onClose();
3290 };
3291 $e.components.get('library').layout.getModal().on('hide', onLibraryHide);
3292 return function () {
3293 $e.components.get('library').layout.getModal().off('hide', onLibraryHide);
3294 };
3295 }, [props]);
3296 (0, _react.useEffect)(function () {
3297 var onMessage = function onMessage(event) {
3298 var _event$data = event.data,
3299 type = _event$data.type,
3300 json = _event$data.json,
3301 html = _event$data.html,
3302 label = _event$data.label,
3303 source = _event$data.source;
3304 switch (type) {
3305 case 'library/attach:start':
3306 isApplyingTemplate.current = true;
3307 break;
3308 case 'library/attach':
3309 props.onAttach([{
3310 type: _attachments.ATTACHMENT_TYPE_JSON,
3311 previewHTML: html,
3312 content: json,
3313 label: label,
3314 source: source
3315 }]);
3316 isApplyingTemplate.current = false;
3317 props.onClose();
3318 break;
3319 }
3320 };
3321 window.addEventListener('message', onMessage);
3322 return function () {
3323 window.removeEventListener('message', onMessage);
3324 };
3325 });
3326 $e.run('library/open', {
3327 toDefault: true,
3328 mode: 'ai-attachment'
3329 });
3330 isApplyingTemplate.current = false;
3331 return null;
3332 };
3333 exports.LibraryDialog = LibraryDialog;
3334 LibraryDialog.propTypes = {
3335 onAttach: _propTypes.default.func.isRequired,
3336 onClose: _propTypes.default.func.isRequired
3337 };
3338
3339 /***/ }),
3340
3341 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js":
3342 /*!***************************************************************************************!*\
3343 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js ***!
3344 \***************************************************************************************/
3345 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3346
3347 "use strict";
3348
3349
3350 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3351 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3352 Object.defineProperty(exports, "__esModule", ({
3353 value: true
3354 }));
3355 exports.Menu = void 0;
3356 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3357 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3358 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3359 var _xCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/x-circle-icon */ "../modules/ai/assets/js/editor/icons/x-circle-icon.js"));
3360 var _plusCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/plus-circle-icon */ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js"));
3361 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3362 var _attachDialog = __webpack_require__(/*! ./attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js");
3363 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3364 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); }
3365 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; }
3366 var Menu = function Menu(props) {
3367 var _useState = (0, _react.useState)(false),
3368 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3369 isOpen = _useState2[0],
3370 setIsOpen = _useState2[1];
3371 var _useState3 = (0, _react.useState)(null),
3372 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
3373 selectedType = _useState4[0],
3374 setSelectedType = _useState4[1];
3375 var _useTheme = (0, _ui.useTheme)(),
3376 direction = _useTheme.direction;
3377 var anchorRef = (0, _react.useRef)(null);
3378 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-attachment-badge'),
3379 isViewed = _useIntroduction.isViewed,
3380 markAsViewed = _useIntroduction.markAsViewed;
3381 return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3382 size: "small",
3383 ref: anchorRef,
3384 disabled: props.disabled,
3385 onClick: function onClick() {
3386 setIsOpen(true);
3387 if (!isViewed) {
3388 markAsViewed();
3389 }
3390 },
3391 color: "secondary"
3392 }, function () {
3393 if (isOpen) {
3394 return /*#__PURE__*/_react.default.createElement(_xCircleIcon.default, {
3395 fontSize: "small"
3396 });
3397 } else if (isViewed) {
3398 return /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3399 fontSize: "small"
3400 });
3401 }
3402 return /*#__PURE__*/_react.default.createElement(_ui.Badge, {
3403 color: "primary",
3404 badgeContent: " ",
3405 variant: "dot"
3406 }, /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3407 fontSize: "small"
3408 }));
3409 }()), /*#__PURE__*/_react.default.createElement(_ui.Popover, {
3410 open: isOpen,
3411 anchorEl: anchorRef.current,
3412 onClose: function onClose() {
3413 return setIsOpen(false);
3414 },
3415 anchorOrigin: {
3416 vertical: 'bottom',
3417 horizontal: 'rtl' === direction ? 'right' : 'left'
3418 },
3419 transformOrigin: {
3420 vertical: 'top',
3421 horizontal: 'rtl' === direction ? 'right' : 'left'
3422 }
3423 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3424 sx: {
3425 width: 440
3426 }
3427 }, props.items.map(function (item) {
3428 var IconComponent = item.icon;
3429 return /*#__PURE__*/_react.default.createElement(_ui.MenuItem, {
3430 key: item.type,
3431 onClick: function onClick() {
3432 setSelectedType(item.type);
3433 setIsOpen(false);
3434 }
3435 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(IconComponent, null)), item.title);
3436 }))), /*#__PURE__*/_react.default.createElement(_attachDialog.AttachDialog, {
3437 type: selectedType,
3438 onAttach: props.onAttach,
3439 onClose: function onClose() {
3440 setIsOpen(false);
3441 setSelectedType(null);
3442 }
3443 }));
3444 };
3445 exports.Menu = Menu;
3446 Menu.propTypes = {
3447 items: _propTypes.default.arrayOf(_propTypes.default.shape({
3448 title: _propTypes.default.string.isRequired,
3449 type: _propTypes.default.string.isRequired,
3450 icon: _propTypes.default.elementType
3451 })).isRequired,
3452 onAttach: _propTypes.default.func.isRequired,
3453 disabled: _propTypes.default.bool
3454 };
3455
3456 /***/ }),
3457
3458 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js":
3459 /*!******************************************************************************************************!*\
3460 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js ***!
3461 \******************************************************************************************************/
3462 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3463
3464 "use strict";
3465
3466
3467 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3468 Object.defineProperty(exports, "__esModule", ({
3469 value: true
3470 }));
3471 exports.PromptPowerNotice = void 0;
3472 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3473 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3474 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3475 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3476 var PromptPowerNotice = function PromptPowerNotice() {
3477 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-attachments-power'),
3478 isViewed = _useIntroduction.isViewed,
3479 markAsViewed = _useIntroduction.markAsViewed;
3480 if (isViewed) {
3481 return null;
3482 }
3483 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3484 sx: {
3485 pt: 2,
3486 px: 2,
3487 pb: 0
3488 }
3489 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
3490 severity: "info",
3491 onClose: function onClose() {
3492 return markAsViewed();
3493 }
3494 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3495 variant: "body2",
3496 display: "inline-block",
3497 sx: {
3498 paddingInlineEnd: 1
3499 }
3500 }, (0, _i18n.__)('You’ve got the power.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3501 variant: "body2",
3502 display: "inline-block"
3503 }, (0, _i18n.__)('Craft your prompt to affect content, images and/or colors - whichever you decide.', 'elementor'))));
3504 };
3505 exports.PromptPowerNotice = PromptPowerNotice;
3506
3507 /***/ }),
3508
3509 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js":
3510 /*!*************************************************************************************************!*\
3511 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js ***!
3512 \*************************************************************************************************/
3513 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3514
3515 "use strict";
3516
3517
3518 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3519 Object.defineProperty(exports, "__esModule", ({
3520 value: true
3521 }));
3522 exports["default"] = exports.ThumbnailJson = void 0;
3523 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3524 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3525 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3526 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3527 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3528 var ThumbnailJson = function ThumbnailJson(props) {
3529 var _props$attachments;
3530 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3531 return 'json' === item.type;
3532 });
3533 if (!attachment) {
3534 return null;
3535 }
3536 if (!attachment.previewHTML) {
3537 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
3538 animation: "wave",
3539 variant: "rounded",
3540 width: 60,
3541 height: 60
3542 });
3543 }
3544 return /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3545 html: attachment.previewHTML,
3546 disabled: props.disabled
3547 });
3548 };
3549 exports.ThumbnailJson = ThumbnailJson;
3550 ThumbnailJson.propTypes = {
3551 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3552 disabled: _propTypes.default.bool
3553 };
3554 var _default = ThumbnailJson;
3555 exports["default"] = _default;
3556
3557 /***/ }),
3558
3559 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js":
3560 /*!************************************************************************************************!*\
3561 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js ***!
3562 \************************************************************************************************/
3563 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3564
3565 "use strict";
3566
3567
3568 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3569 Object.defineProperty(exports, "__esModule", ({
3570 value: true
3571 }));
3572 exports["default"] = exports.ThumbnailUrl = void 0;
3573 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3574 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3575 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3576 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3577 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3578 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3579 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3580 var ThumbnailUrl = function ThumbnailUrl(props) {
3581 var _props$attachments;
3582 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3583 return 'url' === item.type;
3584 });
3585 if (!attachment) {
3586 return null;
3587 }
3588 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3589 sx: {
3590 position: 'relative',
3591 '&:hover::before': {
3592 content: '""',
3593 position: 'absolute',
3594 userSelect: 'none',
3595 inset: 0,
3596 backgroundColor: 'rgba(0,0,0,0.6)',
3597 borderRadius: 1,
3598 zIndex: 1
3599 },
3600 '&:hover .remove-attachment': {
3601 display: 'flex'
3602 }
3603 }
3604 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3605 className: "remove-attachment",
3606 size: "small",
3607 "aria-label": (0, _i18n.__)('Remove', 'elementor'),
3608 disabled: props.disabled,
3609 onClick: function onClick(event) {
3610 event.stopPropagation();
3611 props.onDetach();
3612 },
3613 sx: {
3614 display: 'none',
3615 position: 'absolute',
3616 insetInlineEnd: 4,
3617 insetBlockStart: 4,
3618 backgroundColor: 'secondary.main',
3619 zIndex: 1,
3620 borderRadius: 1,
3621 p: '3px',
3622 '&:hover': {
3623 backgroundColor: 'secondary.dark'
3624 }
3625 }
3626 }, /*#__PURE__*/_react.default.createElement(_icons.TrashIcon, {
3627 sx: {
3628 fontSize: '1.125rem',
3629 color: 'common.white'
3630 }
3631 })), /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3632 disabled: props.disabled,
3633 html: attachment.previewHTML
3634 }));
3635 };
3636 exports.ThumbnailUrl = ThumbnailUrl;
3637 ThumbnailUrl.propTypes = {
3638 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3639 disabled: _propTypes.default.bool,
3640 onDetach: _propTypes.default.func
3641 };
3642 var _default = ThumbnailUrl;
3643 exports["default"] = _default;
3644
3645 /***/ }),
3646
3647 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js":
3648 /*!********************************************************************************************!*\
3649 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js ***!
3650 \********************************************************************************************/
3651 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3652
3653 "use strict";
3654
3655
3656 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3657 Object.defineProperty(exports, "__esModule", ({
3658 value: true
3659 }));
3660 exports.Thumbnail = exports.THUMBNAIL_SIZE = void 0;
3661 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3662 var _taggedTemplateLiteral2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js"));
3663 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3664 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3665 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3666 var _styledComponents = _interopRequireDefault(__webpack_require__(/*! styled-components */ "../node_modules/styled-components/dist/styled-components.browser.esm.js"));
3667 var _templateObject;
3668 var THUMBNAIL_SIZE = 64;
3669 exports.THUMBNAIL_SIZE = THUMBNAIL_SIZE;
3670 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);
3671 var Thumbnail = function Thumbnail(props) {
3672 var _props$html$match, _props$html$match$gro, _props$html$match2, _props$html$match2$gr;
3673 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;
3674 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;
3675 var width = dataWidth ? parseInt(dataWidth) : THUMBNAIL_SIZE;
3676 var height = dataHeight ? parseInt(dataHeight) : THUMBNAIL_SIZE;
3677 var scaleFactor = Math.min(height, width);
3678 var scale = THUMBNAIL_SIZE / scaleFactor;
3679
3680 // Center the preview
3681 var top = height > width ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (height / width)) / 2 : 0;
3682 var left = width > height ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (width / height)) / 2 : 0;
3683 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3684 dir: "ltr",
3685 sx: {
3686 position: 'relative',
3687 cursor: 'default',
3688 overflow: 'hidden',
3689 border: '1px solid',
3690 borderColor: 'grey.300',
3691 borderRadius: 1,
3692 boxSizing: 'border-box',
3693 width: THUMBNAIL_SIZE,
3694 height: THUMBNAIL_SIZE,
3695 opacity: props.disabled ? 0.5 : 1
3696 }
3697 }, /*#__PURE__*/_react.default.createElement("iframe", {
3698 title: (0, _i18n.__)('Preview', 'elementor'),
3699 sandbox: "",
3700 srcDoc: "<style>" + StyledBody.componentStyle.rules.join('') + "</style>" + props.html,
3701 style: {
3702 border: 'none',
3703 overflow: 'hidden',
3704 width: width,
3705 height: height,
3706 transform: "scale(".concat(scale, ")"),
3707 transformOrigin: "".concat(left, "px ").concat(top, "px")
3708 }
3709 }));
3710 };
3711 exports.Thumbnail = Thumbnail;
3712 Thumbnail.propTypes = {
3713 html: _propTypes.default.string.isRequired,
3714 disabled: _propTypes.default.bool
3715 };
3716
3717 /***/ }),
3718
3719 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js":
3720 /*!*********************************************************************************************!*\
3721 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js ***!
3722 \*********************************************************************************************/
3723 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3724
3725 "use strict";
3726
3727
3728 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3729 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3730 Object.defineProperty(exports, "__esModule", ({
3731 value: true
3732 }));
3733 exports.UrlDialog = void 0;
3734 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3735 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3736 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3737 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3738 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3739 var _useAttachUrlService2 = __webpack_require__(/*! ../../hooks/use-attach-url-service */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js");
3740 var _alertDialog = __webpack_require__(/*! ../../../../components/alert-dialog */ "../modules/ai/assets/js/editor/components/alert-dialog.js");
3741 var _useTimeout3 = __webpack_require__(/*! ../../../../hooks/use-timeout */ "../modules/ai/assets/js/editor/hooks/use-timeout.js");
3742 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3743 var _remoteConfig = __webpack_require__(/*! ../../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
3744 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
3745 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); }
3746 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; }
3747 var UrlDialog = function UrlDialog(props) {
3748 var iframeRef = (0, _react.useRef)(null);
3749 var _useAttachUrlService = (0, _useAttachUrlService2.useAttachUrlService)({
3750 targetUrl: props.url
3751 }),
3752 iframeSource = _useAttachUrlService.iframeSource;
3753 var iframeOrigin = iframeSource ? new URL(iframeSource).origin : '';
3754 var _useTimeout = (0, _useTimeout3.useTimeout)(10000),
3755 _useTimeout2 = (0, _slicedToArray2.default)(_useTimeout, 2),
3756 isTimeout = _useTimeout2[0],
3757 turnOffTimeout = _useTimeout2[1];
3758 var _useUserInfo = (0, _useUserInfo2.default)(),
3759 isConnected = _useUserInfo.isConnected,
3760 hasSubscription = _useUserInfo.hasSubscription,
3761 credits = _useUserInfo.credits,
3762 usagePercentage = _useUserInfo.usagePercentage;
3763 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
3764 isLoaded = _useRemoteConfig.isLoaded,
3765 isError = _useRemoteConfig.isError,
3766 remoteConfig = _useRemoteConfig.remoteConfig;
3767 (0, _react.useEffect)(function () {
3768 var onMessage = function onMessage(event) {
3769 if (event.origin !== iframeOrigin) {
3770 return;
3771 }
3772 var _event$data = event.data,
3773 type = _event$data.type,
3774 html = _event$data.html,
3775 url = _event$data.url;
3776 switch (type) {
3777 case 'element-selector/close':
3778 props.onClose();
3779 break;
3780 case 'element-selector/loaded':
3781 turnOffTimeout();
3782 break;
3783 case 'element-selector/attach':
3784 props.onAttach([{
3785 type: 'url',
3786 previewHTML: html,
3787 content: html,
3788 label: url ? new URL(url).host : '',
3789 source: _attachments.USER_URL_SOURCE
3790 }]);
3791 break;
3792 }
3793 };
3794 window.addEventListener('message', onMessage);
3795 return function () {
3796 window.removeEventListener('message', onMessage);
3797 };
3798 }, [iframeOrigin, iframeSource, props, turnOffTimeout]);
3799 if (!iframeSource) {
3800 return /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3801 message: (0, _i18n.__)('The app is not available. Please try again later.', 'elementor'),
3802 onClose: props.onClose
3803 });
3804 }
3805 if (!isLoaded || isError) {
3806 return null;
3807 }
3808 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
3809 open: true,
3810 fullScreen: true,
3811 hideBackdrop: true,
3812 maxWidth: "md",
3813 sx: {
3814 '& .MuiPaper-root': {
3815 backgroundColor: 'transparent'
3816 }
3817 }
3818 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
3819 sx: {
3820 padding: 0
3821 }
3822 }, isTimeout && /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3823 message: (0, _i18n.__)('The app is not responding. Please try again later.', 'elementor'),
3824 onClose: props.onClose
3825 }), !isTimeout && /*#__PURE__*/_react.default.createElement("iframe", {
3826 ref: iframeRef,
3827 title: (0, _i18n.__)('URL as a reference', 'elementor'),
3828 src: iframeSource,
3829 onLoad: function onLoad() {
3830 var _window$elementorAppC = window.elementorAppConfig['kit-library'],
3831 accessLevel = _window$elementorAppC.access_level,
3832 accessTier = _window$elementorAppC.access_tier,
3833 isPro = _window$elementorAppC.is_pro;
3834 iframeRef.current.contentWindow.postMessage({
3835 type: 'referrer/info',
3836 info: {
3837 page: {
3838 url: window.location.href
3839 },
3840 authToken: remoteConfig[_remoteConfig.CONFIG_KEYS.AUTH_TOKEN] || '',
3841 products: {
3842 core: {
3843 version: window.elementor.config.version
3844 },
3845 pro: {
3846 isPro: isPro,
3847 accessLevel: accessLevel,
3848 accessTier: accessTier
3849 },
3850 ai: {
3851 isConnected: isConnected,
3852 hasSubscription: hasSubscription,
3853 credits: credits,
3854 usagePercentage: usagePercentage
3855 }
3856 },
3857 user: {
3858 isAdmin: window.elementor.config.user.is_administrator
3859 }
3860 }
3861 }, iframeOrigin);
3862 },
3863 style: {
3864 border: 'none',
3865 overflow: 'scroll',
3866 width: '100%',
3867 height: '100%',
3868 backgroundColor: 'rgba(255,255,255,0.6)'
3869 }
3870 })));
3871 };
3872 exports.UrlDialog = UrlDialog;
3873 UrlDialog.propTypes = {
3874 onAttach: _propTypes.default.func.isRequired,
3875 onClose: _propTypes.default.func.isRequired,
3876 url: _propTypes.default.string
3877 };
3878
3879 /***/ }),
3880
3881 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js":
3882 /*!************************************************************************************!*\
3883 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js ***!
3884 \************************************************************************************/
3885 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3886
3887 "use strict";
3888
3889
3890 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3891 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3892 Object.defineProperty(exports, "__esModule", ({
3893 value: true
3894 }));
3895 exports["default"] = void 0;
3896 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3897 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3898 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3899 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3900 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3901 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3902 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3903 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3904 var _promptDialog = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-dialog */ "../modules/ai/assets/js/editor/components/prompt-dialog.js"));
3905 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3906 var _excluded = ["sx", "PaperProps"];
3907 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); }
3908 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; }
3909 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; }
3910 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; }
3911 var StyledDialog = (0, _ui.styled)(_promptDialog.default)(function () {
3912 return {
3913 '& .MuiDialog-container': {
3914 marginTop: 0,
3915 alignItems: 'flex-end',
3916 paddingBottom: '16vh'
3917 },
3918 '& .MuiPaper-root': {
3919 margin: 0,
3920 maxHeight: '55vh'
3921 }
3922 };
3923 });
3924 var DialogHeader = function DialogHeader(_ref) {
3925 var onClose = _ref.onClose,
3926 children = _ref.children;
3927 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
3928 sx: {
3929 fontWeight: 'normal'
3930 },
3931 color: "transparent",
3932 position: "relative"
3933 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
3934 variant: "dense"
3935 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3936 sx: {
3937 mr: 1
3938 }
3939 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3940 component: "span",
3941 variant: "subtitle2",
3942 sx: {
3943 fontWeight: 'bold',
3944 textTransform: 'uppercase'
3945 }
3946 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
3947 label: (0, _i18n.__)('Beta', 'elementor'),
3948 color: "default",
3949 size: "small",
3950 sx: {
3951 ml: 1
3952 }
3953 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3954 direction: "row",
3955 spacing: 1,
3956 alignItems: "center",
3957 sx: {
3958 ml: 'auto'
3959 }
3960 }, children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3961 size: "small",
3962 "aria-label": "close",
3963 onClick: onClose,
3964 sx: {
3965 '&.MuiButtonBase-root': {
3966 mr: -1
3967 }
3968 }
3969 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
3970 };
3971 DialogHeader.propTypes = {
3972 children: _propTypes.default.node,
3973 onClose: _propTypes.default.func.isRequired
3974 };
3975 var StyledDialogContent = (0, _ui.styled)(_promptDialog.default.Content)(function () {
3976 return {
3977 '&.MuiDialogContent-root': {
3978 padding: 0
3979 }
3980 };
3981 });
3982 var LayoutDialog = function LayoutDialog(_ref2) {
3983 var _ref2$sx = _ref2.sx,
3984 sx = _ref2$sx === void 0 ? {} : _ref2$sx,
3985 _ref2$PaperProps = _ref2.PaperProps,
3986 PaperProps = _ref2$PaperProps === void 0 ? {} : _ref2$PaperProps,
3987 props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
3988 var _useState = (0, _react.useState)({
3989 pointerEvents: 'none'
3990 }),
3991 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3992 sxStyle = _useState2[0],
3993 setSxStyle = _useState2[1];
3994 var timeoutRef = (0, _react.useRef)(null);
3995
3996 /**
3997 * The PromptDialog is using disableScrollLock in order to allow scrolling the page when the Dialog is opened.
3998 * When using the react-draggable library inside the editor, the background page scroll is not working smoothly.
3999 * Therefore, we need to delay the pointerEvents: none, which allowing to scroll the page content.
4000 */
4001 return /*#__PURE__*/_react.default.createElement(StyledDialog, (0, _extends2.default)({
4002 maxWidth: "md",
4003 PaperProps: _objectSpread({
4004 sx: {
4005 pointerEvents: 'auto'
4006 },
4007 onMouseEnter: function onMouseEnter() {
4008 clearTimeout(timeoutRef.current);
4009 setSxStyle({
4010 pointerEvents: 'all'
4011 });
4012 },
4013 onMouseLeave: function onMouseLeave() {
4014 clearTimeout(timeoutRef.current);
4015 timeoutRef.current = setTimeout(function () {
4016 setSxStyle({
4017 pointerEvents: 'none'
4018 });
4019 }, 200);
4020 }
4021 }, PaperProps)
4022 }, props, {
4023 sx: _objectSpread(_objectSpread({}, sxStyle), sx)
4024 }));
4025 };
4026 LayoutDialog.propTypes = {
4027 sx: _propTypes.default.object,
4028 PaperProps: _propTypes.default.object
4029 };
4030 LayoutDialog.Header = DialogHeader;
4031 LayoutDialog.Content = StyledDialogContent;
4032 var _default = LayoutDialog;
4033 exports["default"] = _default;
4034
4035 /***/ }),
4036
4037 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js":
4038 /*!*********************************************************************************************!*\
4039 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js ***!
4040 \*********************************************************************************************/
4041 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4042
4043 "use strict";
4044
4045
4046 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4047 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4048 Object.defineProperty(exports, "__esModule", ({
4049 value: true
4050 }));
4051 exports.ProTemplateIndicator = void 0;
4052 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4053 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4054 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4055 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4056 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4057 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); }
4058 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; }
4059 var popoverId = 'e-pro-upgrade-popover';
4060 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
4061 var theme = _ref.theme;
4062 return {
4063 position: 'relative',
4064 padding: theme.spacing(3),
4065 boxShadow: theme.shadows[4],
4066 zIndex: '9999'
4067 };
4068 });
4069 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
4070 var theme = _ref2.theme;
4071 return {
4072 position: 'absolute',
4073 width: theme.spacing(5),
4074 height: theme.spacing(5),
4075 overflow: 'hidden',
4076 // Override Popper inline styles.
4077 left: '100% !important',
4078 transform: 'translateX(-50%) translateY(-50%) rotate(var(--rotate, 0deg)) !important',
4079 '&::after': {
4080 backgroundColor: theme.palette.background.paper,
4081 content: '""',
4082 display: 'block',
4083 position: 'absolute',
4084 width: theme.spacing(2.5),
4085 height: theme.spacing(2.5),
4086 top: '50%',
4087 left: '50%',
4088 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
4089 boxShadow: '5px -5px 5px 0px rgba(0, 0, 0, 0.2)',
4090 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
4091 }
4092 };
4093 });
4094 var ProTemplateIndicator = function ProTemplateIndicator() {
4095 var actionUrl = 'https://go.elementor.com/go-pro-ai/';
4096 var actionLabel = (0, _i18n.__)('Go Pro', 'elementor');
4097 var _useState = (0, _react.useState)(false),
4098 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4099 isPopoverOpen = _useState2[0],
4100 setIsPopoverOpen = _useState2[1];
4101 var anchorEl = (0, _react.useRef)(null);
4102 var arrowEl = (0, _react.useRef)(null);
4103 var showPopover = function showPopover() {
4104 return setIsPopoverOpen(true);
4105 };
4106 var hidePopover = function hidePopover() {
4107 return setIsPopoverOpen(false);
4108 };
4109 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4110 flexDirection: "row-reverse",
4111 component: "span",
4112 display: "flex",
4113 onMouseLeave: hidePopover,
4114 alignItems: "center"
4115 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
4116 ref: anchorEl,
4117 onMouseEnter: showPopover,
4118 onClick: function onClick(e) {
4119 return e.stopPropagation();
4120 } /* Do nothing */,
4121 "aria-owns": isPopoverOpen ? popoverId : undefined,
4122 "aria-haspopup": "true",
4123 sx: {
4124 m: 1,
4125 '&:hover': {
4126 backgroundColor: 'action.selected'
4127 }
4128 }
4129 }, /*#__PURE__*/_react.default.createElement(_lockIcon.default, {
4130 sx: {
4131 color: 'text.primary'
4132 }
4133 })), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
4134 open: isPopoverOpen,
4135 popperOptions: {
4136 placement: 'left-start',
4137 modifiers: [{
4138 name: 'arrow',
4139 enabled: true,
4140 options: {
4141 element: arrowEl.current,
4142 padding: 5
4143 }
4144 }, {
4145 name: 'offset',
4146 options: {
4147 offset: [0, 10]
4148 }
4149 }]
4150 },
4151 anchorEl: anchorEl.current,
4152 sx: {
4153 zIndex: '9999',
4154 maxWidth: 300
4155 }
4156 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
4157 ref: arrowEl
4158 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4159 alignItems: "start",
4160 spacing: 2
4161 }, /*#__PURE__*/_react.default.createElement(_ui.Chip, {
4162 color: "promotion",
4163 variant: "outlined",
4164 size: "small",
4165 label: (0, _i18n.__)('Pro', 'elementor'),
4166 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null)
4167 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4168 variant: "body2"
4169 }, (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, {
4170 variant: "contained",
4171 color: "promotion",
4172 size: "small",
4173 href: actionUrl,
4174 target: "_blank",
4175 sx: {
4176 alignSelf: 'flex-end'
4177 }
4178 }, actionLabel)))));
4179 };
4180 exports.ProTemplateIndicator = ProTemplateIndicator;
4181
4182 /***/ }),
4183
4184 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js":
4185 /*!*****************************************************************************************!*\
4186 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js ***!
4187 \*****************************************************************************************/
4188 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4189
4190 "use strict";
4191
4192
4193 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4194 Object.defineProperty(exports, "__esModule", ({
4195 value: true
4196 }));
4197 exports.ProWidgetsNotice = void 0;
4198 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4199 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4200 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4201 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4202 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
4203 var ProWidgetsNotice = function ProWidgetsNotice() {
4204 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-pro-widget'),
4205 isViewed = _useIntroduction.isViewed,
4206 markAsViewed = _useIntroduction.markAsViewed;
4207 if (isViewed) {
4208 return null;
4209 }
4210 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4211 sx: {
4212 pt: 2,
4213 px: 2,
4214 pb: 0
4215 }
4216 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
4217 severity: "info",
4218 variant: "filled",
4219 color: "promotion",
4220 onClose: function onClose() {
4221 return markAsViewed();
4222 },
4223 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null),
4224 sx: {
4225 '& .MuiAlert-message': {
4226 width: '100%'
4227 }
4228 }
4229 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4230 flexDirection: "row",
4231 alignItems: "baseline",
4232 justifyContent: "space-between"
4233 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4234 variant: "body2",
4235 component: "span",
4236 sx: {
4237 paddingInlineEnd: 0.5
4238 }
4239 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4240 variant: "subtitle2",
4241 component: "span",
4242 sx: {
4243 paddingInlineEnd: 1
4244 }
4245 }, (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, {
4246 variant: "outlined",
4247 size: "small",
4248 onClick: function onClick() {
4249 return window.open('https://go.elementor.com/upgrade-pro/', '_blank');
4250 },
4251 color: "inherit"
4252 }, (0, _i18n.__)('Go Pro', 'elementor')))));
4253 };
4254 exports.ProWidgetsNotice = ProWidgetsNotice;
4255
4256 /***/ }),
4257
4258 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js":
4259 /*!******************************************************************************************!*\
4260 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js ***!
4261 \******************************************************************************************/
4262 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4263
4264 "use strict";
4265
4266
4267 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4268 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4269 Object.defineProperty(exports, "__esModule", ({
4270 value: true
4271 }));
4272 exports["default"] = void 0;
4273 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4274 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4275 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4276 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4277 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4278 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4279 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4280 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4281 var _promptLibraryLink = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-library-link */ "../modules/ai/assets/js/editor/components/prompt-library-link.js"));
4282 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4283 var _excluded = ["onSubmit"];
4284 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); }
4285 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; }
4286 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; }
4287 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; }
4288 var TextInput = (0, _react.forwardRef)(function (props, ref) {
4289 return /*#__PURE__*/_react.default.createElement(_ui.TextField
4290 // eslint-disable-next-line jsx-a11y/no-autofocus
4291 , (0, _extends2.default)({
4292 autoFocus: true,
4293 multiline: true,
4294 size: "small",
4295 maxRows: 3,
4296 color: "secondary",
4297 variant: "standard"
4298 }, props, {
4299 inputRef: ref,
4300 InputProps: _objectSpread(_objectSpread({}, props.InputProps), {}, {
4301 type: 'search',
4302 sx: {
4303 pt: 0
4304 }
4305 })
4306 }));
4307 });
4308 TextInput.propTypes = {
4309 InputProps: _propTypes.default.object
4310 };
4311 var PaperComponent = function PaperComponent(props) {
4312 var _useConfig = (0, _config.useConfig)(),
4313 mode = _useConfig.mode;
4314 var libraryLink = _config.MODE_VARIATION === mode ? 'https://go.elementor.com/ai-prompt-library-variations/' : 'https://go.elementor.com/ai-prompt-library-containers/';
4315 return /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
4316 elevation: 8,
4317 sx: {
4318 borderRadius: 2
4319 }
4320 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4321 component: _ui.Box,
4322 color: function color(theme) {
4323 return theme.palette.text.tertiary;
4324 },
4325 variant: "caption",
4326 paddingX: 2,
4327 paddingY: 1
4328 }, (0, _i18n.__)('Suggested Prompts', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Divider, null), props.children, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4329 sx: {
4330 m: 2
4331 }
4332 }, /*#__PURE__*/_react.default.createElement(_promptLibraryLink.default, {
4333 libraryLink: libraryLink
4334 })));
4335 };
4336 PaperComponent.propTypes = {
4337 children: _propTypes.default.node
4338 };
4339 var PromptAutocomplete = function PromptAutocomplete(_ref) {
4340 var onSubmit = _ref.onSubmit,
4341 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4342 var _useState = (0, _react.useState)(false),
4343 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4344 showSuggestions = _useState2[0],
4345 setShowSuggestions = _useState2[1];
4346 var theme = (0, _ui.useTheme)();
4347 var itemHeight = parseInt(theme.spacing(4));
4348 var maxItems = 5;
4349 return /*#__PURE__*/_react.default.createElement(_ui.Autocomplete, (0, _extends2.default)({
4350 PaperComponent: PaperComponent,
4351 ListboxProps: {
4352 sx: {
4353 maxHeight: maxItems * itemHeight
4354 }
4355 },
4356 renderOption: function renderOption(optionProps, option) {
4357 return /*#__PURE__*/_react.default.createElement(_ui.Typography, (0, _extends2.default)({}, optionProps, {
4358 title: option.text,
4359 noWrap: true,
4360 variant: "body2",
4361 component: _ui.Box,
4362 sx: {
4363 '&.MuiAutocomplete-option': {
4364 display: 'block',
4365 minHeight: itemHeight
4366 }
4367 }
4368 }), option.text);
4369 },
4370 freeSolo: true,
4371 fullWidth: true,
4372 disableClearable: true,
4373 open: showSuggestions,
4374 onClose: function onClose(e) {
4375 var _e$relatedTarget;
4376 return setShowSuggestions('A' === ((_e$relatedTarget = e.relatedTarget) === null || _e$relatedTarget === void 0 ? void 0 : _e$relatedTarget.tagName));
4377 },
4378 onKeyDown: function onKeyDown(e) {
4379 if ('Enter' === e.key && !e.shiftKey && !showSuggestions) {
4380 onSubmit(e);
4381 } else if ('/' === e.key && '' === e.target.value) {
4382 e.preventDefault();
4383 setShowSuggestions(true);
4384 }
4385 }
4386 }, props));
4387 };
4388 PromptAutocomplete.propTypes = {
4389 onSubmit: _propTypes.default.func.isRequired
4390 };
4391 PromptAutocomplete.TextInput = TextInput;
4392 var _default = PromptAutocomplete;
4393 exports["default"] = _default;
4394
4395 /***/ }),
4396
4397 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js":
4398 /*!**********************************************************************************!*\
4399 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js ***!
4400 \**********************************************************************************/
4401 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4402
4403 "use strict";
4404
4405
4406 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4407 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4408 Object.defineProperty(exports, "__esModule", ({
4409 value: true
4410 }));
4411 exports["default"] = void 0;
4412 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4413 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4414 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4415 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4416 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4417 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4418 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4419 var _promptAutocomplete = _interopRequireDefault(__webpack_require__(/*! ./prompt-autocomplete */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js"));
4420 var _enhanceButton = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/enhance-button */ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js"));
4421 var _generateSubmit = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/generate-submit */ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js"));
4422 var _arrowLeftIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/arrow-left-icon */ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js"));
4423 var _editIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/edit-icon */ "../modules/ai/assets/js/editor/icons/edit-icon.js"));
4424 var _usePromptEnhancer2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt-enhancer */ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js"));
4425 var _attachments = _interopRequireDefault(__webpack_require__(/*! ./attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"));
4426 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4427 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
4428 var _excluded = ["tooltip"];
4429 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); }
4430 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; }
4431 var PROMPT_SUGGESTIONS = Object.freeze([{
4432 text: (0, _i18n.__)('Services section with list layout, icons, and service descriptions for [topic]', 'elementor')
4433 }, {
4434 text: (0, _i18n.__)('Accordion-style FAQ block with clickable questions about [topic]', 'elementor')
4435 }, {
4436 text: (0, _i18n.__)('Hero section with image, heading, subheading, and CTA button about [topic]', 'elementor')
4437 }, {
4438 text: (0, _i18n.__)('Full-width call-to-action with background image and overlay text about [topic]', 'elementor')
4439 }, {
4440 text: (0, _i18n.__)('Carousel testimonial block with user images, names, and feedback about [topic]', 'elementor')
4441 }, {
4442 text: (0, _i18n.__)('Features block showcasing feature title and brief description about [topic]', 'elementor')
4443 }, {
4444 text: (0, _i18n.__)('Multi-column minimalistic About Us section with icons for [topic]', 'elementor')
4445 }, {
4446 text: (0, _i18n.__)('Section with contact form and social media icons for [topic]', 'elementor')
4447 }, {
4448 text: (0, _i18n.__)('Statistics display in a 3-column layout with numbers and icons for [topic]', 'elementor')
4449 }, {
4450 text: (0, _i18n.__)('Pricing table section with highlighted option for [topic]', 'elementor')
4451 }, {
4452 text: (0, _i18n.__)('About Us section combining company history and values for [topic]', 'elementor')
4453 }]);
4454 var IconButtonWithTooltip = function IconButtonWithTooltip(_ref) {
4455 var tooltip = _ref.tooltip,
4456 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4457 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
4458 title: tooltip
4459 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
4460 component: "span",
4461 sx: {
4462 cursor: props.disabled ? 'default' : 'pointer'
4463 }
4464 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, props)));
4465 };
4466 IconButtonWithTooltip.propTypes = {
4467 tooltip: _propTypes.default.string,
4468 disabled: _propTypes.default.bool
4469 };
4470 var BackButton = function BackButton(props) {
4471 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4472 size: "small",
4473 color: "secondary",
4474 tooltip: (0, _i18n.__)('Back to results', 'elementor')
4475 }, props), /*#__PURE__*/_react.default.createElement(_arrowLeftIcon.default, null));
4476 };
4477 var EditButton = function EditButton(props) {
4478 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4479 size: "small",
4480 color: "primary",
4481 tooltip: (0, _i18n.__)('Edit prompt', 'elementor')
4482 }, props), /*#__PURE__*/_react.default.createElement(_editIcon.default, null));
4483 };
4484 var GenerateButton = function GenerateButton(props) {
4485 return /*#__PURE__*/_react.default.createElement(_generateSubmit.default, (0, _extends2.default)({
4486 size: "small",
4487 fullWidth: false
4488 }, props), (0, _i18n.__)('Generate', 'elementor'));
4489 };
4490 var PromptForm = (0, _react.forwardRef)(function (_ref2, ref) {
4491 var _attachments$;
4492 var attachments = _ref2.attachments,
4493 isActive = _ref2.isActive,
4494 isLoading = _ref2.isLoading,
4495 _ref2$showActions = _ref2.showActions,
4496 showActions = _ref2$showActions === void 0 ? false : _ref2$showActions,
4497 onAttach = _ref2.onAttach,
4498 onDetach = _ref2.onDetach,
4499 _onSubmit = _ref2.onSubmit,
4500 onBack = _ref2.onBack,
4501 onEdit = _ref2.onEdit,
4502 _ref2$shouldResetProm = _ref2.shouldResetPrompt,
4503 shouldResetPrompt = _ref2$shouldResetProm === void 0 ? false : _ref2$shouldResetProm;
4504 var _useState = (0, _react.useState)(''),
4505 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4506 prompt = _useState2[0],
4507 setPrompt = _useState2[1];
4508 (0, _react.useEffect)(function () {
4509 if (shouldResetPrompt) {
4510 setPrompt('');
4511 }
4512 }, [shouldResetPrompt]);
4513 var _usePromptEnhancer = (0, _usePromptEnhancer2.default)(prompt, 'layout'),
4514 isEnhancing = _usePromptEnhancer.isEnhancing,
4515 enhance = _usePromptEnhancer.enhance;
4516 var previousPrompt = (0, _react.useRef)('');
4517 var _useConfig = (0, _config.useConfig)(),
4518 attachmentsTypes = _useConfig.attachmentsTypes;
4519 var isInputDisabled = isLoading || isEnhancing || !isActive;
4520 var isInputEmpty = '' === prompt && !attachments.length;
4521 var isGenerateDisabled = isInputDisabled || isInputEmpty;
4522 var attachmentsType = ((_attachments$ = attachments[0]) === null || _attachments$ === void 0 ? void 0 : _attachments$.type) || '';
4523 var attachmentsConfig = attachmentsTypes[attachmentsType];
4524 var promptSuggestions = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptSuggestions) || PROMPT_SUGGESTIONS;
4525 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');
4526 var handleBack = function handleBack() {
4527 setPrompt(previousPrompt.current);
4528 onBack();
4529 };
4530 var handleEdit = function handleEdit() {
4531 previousPrompt.current = prompt;
4532 onEdit();
4533 };
4534 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4535 component: "form",
4536 onSubmit: function onSubmit(e) {
4537 return _onSubmit(e, prompt);
4538 },
4539 direction: "row",
4540 sx: {
4541 p: 3
4542 },
4543 alignItems: "start",
4544 gap: 1
4545 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4546 direction: "row",
4547 alignItems: "start",
4548 flexGrow: 1,
4549 spacing: 2
4550 }, showActions && (isActive ? /*#__PURE__*/_react.default.createElement(BackButton, {
4551 disabled: isLoading || isEnhancing,
4552 onClick: handleBack
4553 }) : /*#__PURE__*/_react.default.createElement(EditButton, {
4554 disabled: isLoading,
4555 onClick: handleEdit
4556 })), /*#__PURE__*/_react.default.createElement(_attachments.default, {
4557 attachments: attachments,
4558 onAttach: onAttach,
4559 onDetach: onDetach,
4560 disabled: isInputDisabled
4561 }), /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default, {
4562 value: prompt,
4563 disabled: isInputDisabled,
4564 onSubmit: function onSubmit(e) {
4565 return _onSubmit(e, prompt);
4566 },
4567 options: promptSuggestions,
4568 onChange: function onChange(_, selectedValue) {
4569 return setPrompt(selectedValue.text + ' ');
4570 },
4571 renderInput: function renderInput(params) {
4572 return /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default.TextInput, (0, _extends2.default)({}, params, {
4573 ref: ref,
4574 onChange: function onChange(e) {
4575 return setPrompt(e.target.value);
4576 },
4577 placeholder: promptPlaceholder
4578 }));
4579 }
4580 })), /*#__PURE__*/_react.default.createElement(_enhanceButton.default, {
4581 size: "small",
4582 disabled: isGenerateDisabled || '' === prompt,
4583 isLoading: isEnhancing,
4584 onClick: function onClick() {
4585 return enhance().then(function (_ref3) {
4586 var result = _ref3.result;
4587 return setPrompt(result);
4588 });
4589 }
4590 }), /*#__PURE__*/_react.default.createElement(GenerateButton, {
4591 disabled: isGenerateDisabled
4592 }));
4593 });
4594 PromptForm.propTypes = {
4595 isActive: _propTypes.default.bool,
4596 onAttach: _propTypes.default.func,
4597 onDetach: _propTypes.default.func,
4598 isLoading: _propTypes.default.bool,
4599 showActions: _propTypes.default.bool,
4600 onSubmit: _propTypes.default.func.isRequired,
4601 onBack: _propTypes.default.func.isRequired,
4602 onEdit: _propTypes.default.func.isRequired,
4603 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
4604 shouldResetPrompt: _propTypes.default.bool
4605 };
4606 var _default = PromptForm;
4607 exports["default"] = _default;
4608
4609 /***/ }),
4610
4611 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js":
4612 /*!*******************************************************************************************!*\
4613 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js ***!
4614 \*******************************************************************************************/
4615 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4616
4617 "use strict";
4618
4619
4620 Object.defineProperty(exports, "__esModule", ({
4621 value: true
4622 }));
4623 exports["default"] = void 0;
4624 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4625 var ScreenshotContainer = (0, _ui.styled)(_ui.Box, {
4626 shouldForwardProp: function shouldForwardProp(prop) {
4627 return prop !== 'outlineOffset';
4628 }
4629 })(function (_ref) {
4630 var theme = _ref.theme,
4631 selected = _ref.selected,
4632 height = _ref.height,
4633 disabled = _ref.disabled,
4634 _ref$outlineOffset = _ref.outlineOffset,
4635 outlineOffset = _ref$outlineOffset === void 0 ? '0px' : _ref$outlineOffset;
4636 var outlineColor = selected ? theme.palette.text.primary : theme.palette.text.disabled;
4637 var outline = "2px solid ".concat(outlineColor);
4638 return {
4639 height: height,
4640 cursor: disabled ? 'default' : 'pointer',
4641 overflow: 'hidden',
4642 boxSizing: 'border-box',
4643 backgroundPosition: 'top center',
4644 backgroundSize: '100% auto',
4645 backgroundRepeat: 'no-repeat',
4646 backgroundColor: theme.palette.common.white,
4647 borderRadius: theme.shape.borderRadius * 0.5,
4648 outlineOffset: outlineOffset,
4649 outline: outline,
4650 opacity: disabled ? '0.4' : '1',
4651 transition: "all 50ms linear",
4652 '&:hover': disabled ? {} : {
4653 outlineColor: theme.palette.text.primary
4654 }
4655 };
4656 });
4657 var _default = ScreenshotContainer;
4658 exports["default"] = _default;
4659
4660 /***/ }),
4661
4662 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js":
4663 /*!*********************************************************************************************!*\
4664 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js ***!
4665 \*********************************************************************************************/
4666 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4667
4668 "use strict";
4669
4670
4671 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4672 Object.defineProperty(exports, "__esModule", ({
4673 value: true
4674 }));
4675 exports["default"] = ScreenshotUnavailable;
4676 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4677 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4678 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4679 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4680 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4681 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4682 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; }
4683 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; }
4684 function ScreenshotUnavailable(props) {
4685 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, (0, _extends2.default)({}, props, {
4686 sx: _objectSpread(_objectSpread({}, props.sx || {}), {}, {
4687 display: 'flex',
4688 alignItems: 'center',
4689 justifyContent: 'center',
4690 backgroundColor: 'background.paper',
4691 color: 'text.tertiary',
4692 fontStyle: 'italic',
4693 fontSize: '12px',
4694 paddingInline: 12,
4695 textAlign: 'center',
4696 lineHeight: 1.5
4697 })
4698 }), (0, _i18n.__)('Preview unavailable', 'elementor'));
4699 }
4700 ScreenshotUnavailable.propTypes = {
4701 sx: _propTypes.default.object
4702 };
4703
4704 /***/ }),
4705
4706 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js":
4707 /*!*********************************************************************************!*\
4708 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js ***!
4709 \*********************************************************************************/
4710 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4711
4712 "use strict";
4713
4714
4715 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4716 Object.defineProperty(exports, "__esModule", ({
4717 value: true
4718 }));
4719 exports["default"] = void 0;
4720 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4721 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4722 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4723 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4724 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4725 var _screenshotUnavailable = _interopRequireDefault(__webpack_require__(/*! ./screenshot-unavailable */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js"));
4726 var _templateBadge = _interopRequireDefault(__webpack_require__(/*! ./template-badge */ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js"));
4727 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; }
4728 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; }
4729 var SCREENSHOT_HEIGHT = '138px';
4730 var Screenshot = function Screenshot(_ref) {
4731 var url = _ref.url,
4732 type = _ref.type,
4733 _ref$isLoading = _ref.isLoading,
4734 isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
4735 _ref$isSelected = _ref.isSelected,
4736 isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
4737 isPlaceholder = _ref.isPlaceholder,
4738 disabled = _ref.disabled,
4739 onClick = _ref.onClick,
4740 _ref$sx = _ref.sx,
4741 sx = _ref$sx === void 0 ? {} : _ref$sx,
4742 outlineOffset = _ref.outlineOffset;
4743 if (isPlaceholder) {
4744 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4745 sx: _objectSpread({
4746 height: SCREENSHOT_HEIGHT
4747 }, sx)
4748 });
4749 }
4750 if (isLoading) {
4751 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
4752 width: "100%",
4753 animation: "wave",
4754 variant: "rounded",
4755 height: SCREENSHOT_HEIGHT,
4756 sx: sx
4757 });
4758 }
4759 if (!url) {
4760 return /*#__PURE__*/_react.default.createElement(_screenshotUnavailable.default, {
4761 selected: isSelected,
4762 disabled: disabled,
4763 sx: sx,
4764 onClick: onClick,
4765 height: SCREENSHOT_HEIGHT,
4766 outlineOffset: outlineOffset
4767 });
4768 }
4769 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, {
4770 selected: isSelected,
4771 disabled: disabled,
4772 sx: _objectSpread({
4773 backgroundImage: "url('".concat(url, "')")
4774 }, sx),
4775 onClick: onClick,
4776 height: SCREENSHOT_HEIGHT,
4777 outlineOffset: outlineOffset
4778 }, /*#__PURE__*/_react.default.createElement(_templateBadge.default, {
4779 type: type
4780 }));
4781 };
4782 Screenshot.propTypes = {
4783 isSelected: _propTypes.default.bool,
4784 isLoading: _propTypes.default.bool,
4785 isPlaceholder: _propTypes.default.bool,
4786 disabled: _propTypes.default.bool,
4787 onClick: _propTypes.default.func.isRequired,
4788 url: _propTypes.default.string,
4789 type: _propTypes.default.string,
4790 sx: _propTypes.default.object,
4791 outlineOffset: _propTypes.default.string
4792 };
4793 var _default = Screenshot;
4794 exports["default"] = _default;
4795
4796 /***/ }),
4797
4798 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js":
4799 /*!*************************************************************************************!*\
4800 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js ***!
4801 \*************************************************************************************/
4802 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4803
4804 "use strict";
4805
4806
4807 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4808 Object.defineProperty(exports, "__esModule", ({
4809 value: true
4810 }));
4811 exports["default"] = void 0;
4812 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4813 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4814 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4815 var _proTemplateIndicator = __webpack_require__(/*! ./pro-template-indicator */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js");
4816 var TemplateBadge = function TemplateBadge(props) {
4817 var _useConfig = (0, _config.useConfig)(),
4818 hasPro = _useConfig.hasPro;
4819 if ('Pro' === props.type && !hasPro) {
4820 return /*#__PURE__*/_react.default.createElement(_proTemplateIndicator.ProTemplateIndicator, null);
4821 }
4822 return null;
4823 };
4824 var _default = TemplateBadge;
4825 exports["default"] = _default;
4826 TemplateBadge.propTypes = {
4827 type: _propTypes.default.string
4828 };
4829
4830 /***/ }),
4831
4832 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js":
4833 /*!********************************************************************************************!*\
4834 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js ***!
4835 \********************************************************************************************/
4836 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4837
4838 "use strict";
4839
4840
4841 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4842 Object.defineProperty(exports, "__esModule", ({
4843 value: true
4844 }));
4845 exports["default"] = void 0;
4846 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4847 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4848 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4849 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4850 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4851 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4852 var _excluded = ["onClose", "onCancel", "title", "text"];
4853 var UnsavedChangesAlert = function UnsavedChangesAlert(_ref) {
4854 var onClose = _ref.onClose,
4855 onCancel = _ref.onCancel,
4856 title = _ref.title,
4857 text = _ref.text,
4858 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4859 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
4860 "aria-labelledby": "unsaved-changes-alert-title",
4861 "aria-describedby": "unsaved-changes-alert-description"
4862 }, props), /*#__PURE__*/_react.default.createElement(_ui.DialogTitle, {
4863 id: "unsaved-changes-alert-title"
4864 }, title), /*#__PURE__*/_react.default.createElement(_ui.DialogContent, null, /*#__PURE__*/_react.default.createElement(_ui.DialogContentText, {
4865 id: "unsaved-changes-alert-description"
4866 }, text)), /*#__PURE__*/_react.default.createElement(_ui.DialogActions, null, /*#__PURE__*/_react.default.createElement(_ui.Button, {
4867 onClick: onCancel,
4868 color: "secondary"
4869 }, (0, _i18n.__)('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
4870 onClick: onClose,
4871 color: "error",
4872 variant: "contained"
4873 }, (0, _i18n.__)('Yes, leave', 'elementor'))));
4874 };
4875 UnsavedChangesAlert.propTypes = {
4876 title: _propTypes.default.string,
4877 text: _propTypes.default.string,
4878 onCancel: _propTypes.default.func,
4879 onClose: _propTypes.default.func
4880 };
4881 var _default = UnsavedChangesAlert;
4882 exports["default"] = _default;
4883
4884 /***/ }),
4885
4886 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js":
4887 /*!**************************************************************************!*\
4888 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/config.js ***!
4889 \**************************************************************************/
4890 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4891
4892 "use strict";
4893
4894
4895 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4896 Object.defineProperty(exports, "__esModule", ({
4897 value: true
4898 }));
4899 exports.useConfig = exports["default"] = exports.MODE_VARIATION = exports.MODE_LAYOUT = exports.LAYOUT_APP_MODES = exports.ConfigProvider = void 0;
4900 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4901 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4902 var MODE_LAYOUT = 'layout';
4903 exports.MODE_LAYOUT = MODE_LAYOUT;
4904 var MODE_VARIATION = 'variation';
4905 exports.MODE_VARIATION = MODE_VARIATION;
4906 var LAYOUT_APP_MODES = [MODE_LAYOUT, MODE_VARIATION];
4907 exports.LAYOUT_APP_MODES = LAYOUT_APP_MODES;
4908 var ConfigContext = _react.default.createContext({});
4909 var useConfig = function useConfig() {
4910 return _react.default.useContext(ConfigContext);
4911 };
4912 exports.useConfig = useConfig;
4913 var ConfigProvider = function ConfigProvider(props) {
4914 return /*#__PURE__*/_react.default.createElement(ConfigContext.Provider, {
4915 value: {
4916 mode: props.mode,
4917 attachmentsTypes: props.attachmentsTypes,
4918 onClose: props.onClose,
4919 onConnect: props.onConnect,
4920 onData: props.onData,
4921 onInsert: props.onInsert,
4922 onSelect: props.onSelect,
4923 onGenerate: props.onGenerate,
4924 currentContext: props.currentContext,
4925 hasPro: props.hasPro
4926 }
4927 }, props.children);
4928 };
4929 exports.ConfigProvider = ConfigProvider;
4930 ConfigProvider.propTypes = {
4931 mode: _propTypes.default.oneOf(LAYOUT_APP_MODES).isRequired,
4932 children: _propTypes.default.node.isRequired,
4933 attachmentsTypes: _propTypes.default.object.isRequired,
4934 onClose: _propTypes.default.func.isRequired,
4935 onConnect: _propTypes.default.func.isRequired,
4936 onData: _propTypes.default.func.isRequired,
4937 onInsert: _propTypes.default.func.isRequired,
4938 onSelect: _propTypes.default.func.isRequired,
4939 onGenerate: _propTypes.default.func.isRequired,
4940 currentContext: _propTypes.default.object,
4941 hasPro: _propTypes.default.bool
4942 };
4943 var _default = ConfigContext;
4944 exports["default"] = _default;
4945
4946 /***/ }),
4947
4948 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js":
4949 /*!*********************************************************************************!*\
4950 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js ***!
4951 \*********************************************************************************/
4952 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4953
4954 "use strict";
4955
4956
4957 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4958 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4959 Object.defineProperty(exports, "__esModule", ({
4960 value: true
4961 }));
4962 exports.useRemoteConfig = exports.RemoteConfigProvider = exports.CONFIG_KEYS = void 0;
4963 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4964 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4965 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4966 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4967 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4968 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
4969 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); }
4970 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; }
4971 var RemoteConfigContext = _react.default.createContext({});
4972 var useRemoteConfig = function useRemoteConfig() {
4973 return _react.default.useContext(RemoteConfigContext);
4974 };
4975 exports.useRemoteConfig = useRemoteConfig;
4976 var CONFIG_KEYS = {
4977 WEB_BASED_BUILDER_URL: 'webBasedBuilderUrl',
4978 AUTH_TOKEN: 'jwt'
4979 };
4980 exports.CONFIG_KEYS = CONFIG_KEYS;
4981 var RemoteConfigProvider = function RemoteConfigProvider(props) {
4982 var _useState = (0, _react.useState)(false),
4983 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4984 isLoading = _useState2[0],
4985 setIsLoading = _useState2[1];
4986 var _useState3 = (0, _react.useState)(false),
4987 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
4988 isLoaded = _useState4[0],
4989 setIsLoaded = _useState4[1];
4990 var _useState5 = (0, _react.useState)(false),
4991 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
4992 isError = _useState6[0],
4993 setIsError = _useState6[1];
4994 var _useState7 = (0, _react.useState)({}),
4995 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
4996 remoteConfig = _useState8[0],
4997 setRemoteConfig = _useState8[1];
4998 var fetchData = /*#__PURE__*/function () {
4999 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5000 var result;
5001 return _regenerator.default.wrap(function _callee$(_context) {
5002 while (1) switch (_context.prev = _context.next) {
5003 case 0:
5004 setIsLoading(true);
5005 _context.prev = 1;
5006 _context.next = 4;
5007 return (0, _api.getRemoteConfig)().finally(function () {
5008 setIsLoaded(true);
5009 setIsLoading(false);
5010 });
5011 case 4:
5012 result = _context.sent;
5013 if (result.config) {
5014 _context.next = 7;
5015 break;
5016 }
5017 throw new Error('Invalid remote config');
5018 case 7:
5019 setRemoteConfig(result.config);
5020 _context.next = 15;
5021 break;
5022 case 10:
5023 _context.prev = 10;
5024 _context.t0 = _context["catch"](1);
5025 setIsError(true);
5026 setIsLoaded(true);
5027 setIsLoading(false);
5028 case 15:
5029 case "end":
5030 return _context.stop();
5031 }
5032 }, _callee, null, [[1, 10]]);
5033 }));
5034 return function fetchData() {
5035 return _ref.apply(this, arguments);
5036 };
5037 }();
5038 if (!isLoaded && !isLoading) {
5039 fetchData();
5040 }
5041 return /*#__PURE__*/_react.default.createElement(RemoteConfigContext.Provider, {
5042 value: {
5043 isLoading: isLoading,
5044 isLoaded: isLoaded,
5045 isError: isError,
5046 remoteConfig: remoteConfig
5047 }
5048 }, props.children);
5049 };
5050 exports.RemoteConfigProvider = RemoteConfigProvider;
5051 RemoteConfigProvider.propTypes = {
5052 children: _propTypes.default.node.isRequired,
5053 onError: _propTypes.default.func.isRequired
5054 };
5055
5056 /***/ }),
5057
5058 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js":
5059 /*!****************************************************************************************!*\
5060 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js ***!
5061 \****************************************************************************************/
5062 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5063
5064 "use strict";
5065
5066
5067 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5068 Object.defineProperty(exports, "__esModule", ({
5069 value: true
5070 }));
5071 exports.useAttachUrlService = void 0;
5072 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5073 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5074 var _react = __webpack_require__(/*! react */ "react");
5075 var _remoteConfig = __webpack_require__(/*! ../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
5076 var useAttachUrlService = function useAttachUrlService(args) {
5077 var _window$elementorComm, _window$elementorComm2;
5078 var _useState = (0, _react.useState)(args.targetUrl),
5079 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5080 currentUrl = _useState2[0],
5081 setCurrentUrl = _useState2[1];
5082 var theme = (0, _ui.useTheme)();
5083 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
5084 isLoaded = _useRemoteConfig.isLoaded,
5085 isError = _useRemoteConfig.isError,
5086 remoteConfig = _useRemoteConfig.remoteConfig;
5087 if (!isLoaded || isError || !remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]) {
5088 return {
5089 iframeSource: '',
5090 currentUrl: currentUrl,
5091 setCurrentUrl: setCurrentUrl
5092 };
5093 }
5094 var urlObject = new URL(remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]);
5095 urlObject.searchParams.append('colorScheme', theme.palette.mode);
5096 urlObject.searchParams.append('isRTL', 'rtl' === theme.direction ? 'true' : 'false');
5097 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);
5098 if (currentUrl) {
5099 urlObject.searchParams.append('url', currentUrl);
5100 }
5101 return {
5102 iframeSource: urlObject.toString(),
5103 currentUrl: currentUrl,
5104 setCurrentUrl: setCurrentUrl
5105 };
5106 };
5107 exports.useAttachUrlService = useAttachUrlService;
5108
5109 /***/ }),
5110
5111 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js":
5112 /*!***********************************************************************************!*\
5113 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js ***!
5114 \***********************************************************************************/
5115 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5116
5117 "use strict";
5118
5119
5120 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5121 Object.defineProperty(exports, "__esModule", ({
5122 value: true
5123 }));
5124 exports["default"] = void 0;
5125 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
5126 var _usePrompt = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
5127 var useLayoutPrompt = function useLayoutPrompt(type, initialValue) {
5128 return (0, _usePrompt.default)(function (requestBody, signal) {
5129 requestBody.variationType = type;
5130 return (0, _api.generateLayout)(requestBody, signal);
5131 }, initialValue);
5132 };
5133 var _default = useLayoutPrompt;
5134 exports["default"] = _default;
5135
5136 /***/ }),
5137
5138 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js":
5139 /*!********************************************************************************!*\
5140 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js ***!
5141 \********************************************************************************/
5142 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5143
5144 "use strict";
5145
5146
5147 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5148 Object.defineProperty(exports, "__esModule", ({
5149 value: true
5150 }));
5151 exports["default"] = void 0;
5152 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5153 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5154 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5155 var _react = __webpack_require__(/*! react */ "react");
5156 var _useLayoutPrompt = _interopRequireDefault(__webpack_require__(/*! ./use-layout-prompt */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js"));
5157 var ERROR_INITIAL_VALUE = '';
5158 var useScreenshot = function useScreenshot(type, onData) {
5159 var _useState = (0, _react.useState)(ERROR_INITIAL_VALUE),
5160 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5161 error = _useState2[0],
5162 setError = _useState2[1];
5163 var _useState3 = (0, _react.useState)(false),
5164 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5165 isLoading = _useState4[0],
5166 setIsLoading = _useState4[1];
5167 var layoutData = (0, _useLayoutPrompt.default)(type, null);
5168 var generate = function generate(requestBody, signal) {
5169 setIsLoading(true);
5170 setError(ERROR_INITIAL_VALUE);
5171 return layoutData.send(requestBody, signal).then( /*#__PURE__*/function () {
5172 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(data) {
5173 var createdScreenshot;
5174 return _regenerator.default.wrap(function _callee$(_context) {
5175 while (1) switch (_context.prev = _context.next) {
5176 case 0:
5177 _context.next = 2;
5178 return onData(data.result);
5179 case 2:
5180 createdScreenshot = _context.sent;
5181 createdScreenshot.sendUsageData = function () {
5182 return layoutData.sendUsageData(data);
5183 };
5184 createdScreenshot.baseTemplateId = data.baseTemplateId;
5185 createdScreenshot.type = data.type;
5186 return _context.abrupt("return", createdScreenshot);
5187 case 7:
5188 case "end":
5189 return _context.stop();
5190 }
5191 }, _callee);
5192 }));
5193 return function (_x) {
5194 return _ref.apply(this, arguments);
5195 };
5196 }()).catch(function (err) {
5197 setError(err.extra_data ? err : err.message || err);
5198 throw err;
5199 }).finally(function () {
5200 return setIsLoading(false);
5201 });
5202 };
5203 return {
5204 generate: generate,
5205 error: error,
5206 isLoading: isLoading
5207 };
5208 };
5209 var _default = useScreenshot;
5210 exports["default"] = _default;
5211
5212 /***/ }),
5213
5214 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js":
5215 /*!*********************************************************************************!*\
5216 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js ***!
5217 \*********************************************************************************/
5218 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5219
5220 "use strict";
5221
5222
5223 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5224 Object.defineProperty(exports, "__esModule", ({
5225 value: true
5226 }));
5227 exports["default"] = void 0;
5228 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5229 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5230 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5231 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5232 var _react = __webpack_require__(/*! react */ "react");
5233 var _useScreenshot = _interopRequireDefault(__webpack_require__(/*! ./use-screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js"));
5234 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5235 var _requestsIds = __webpack_require__(/*! ../../../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5236 var PENDING_VALUE = {
5237 isPending: true
5238 };
5239 var useScreenshots = function useScreenshots(_ref) {
5240 var onData = _ref.onData;
5241 var _useState = (0, _react.useState)([]),
5242 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5243 screenshots = _useState2[0],
5244 setScreenshots = _useState2[1];
5245
5246 /**
5247 * The ids for each request are:
5248 * - editorSessionId: a unique id for each editor opening
5249 * - sessionId: a unique id for each session. (open the AI builder)
5250 * - generateId: a unique id for each generate request. (prompt change)
5251 * - batchId: a unique id for each batch of generate requests. (generate, regenerate)
5252 * - requestId: a unique id for each generate request.
5253 */
5254
5255 var _useConfig = (0, _config.useConfig)(),
5256 currentContext = _useConfig.currentContext;
5257 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
5258 editorSessionId = _useRequestIds.editorSessionId,
5259 sessionId = _useRequestIds.sessionId,
5260 setRequest = _useRequestIds.setRequest,
5261 setBatch = _useRequestIds.setBatch,
5262 setGenerate = _useRequestIds.setGenerate;
5263 var generateIdRef = (0, _react.useRef)('');
5264 var batchId = setBatch();
5265 var screenshotsData = [(0, _useScreenshot.default)(0, onData), (0, _useScreenshot.default)(1, onData), (0, _useScreenshot.default)(2, onData)];
5266 var screenshotsGroupCount = screenshotsData.length;
5267 var error = screenshotsData.every(function (s) {
5268 return s === null || s === void 0 ? void 0 : s.error;
5269 }) ? screenshotsData[0].error : '';
5270 var isLoading = screenshotsData.some(function (s) {
5271 return s === null || s === void 0 ? void 0 : s.isLoading;
5272 });
5273 var abortController = (0, _react.useRef)(null);
5274 var abort = function abort() {
5275 var _abortController$curr;
5276 return (_abortController$curr = abortController.current) === null || _abortController$curr === void 0 ? void 0 : _abortController$curr.abort();
5277 };
5278 var createScreenshots = /*#__PURE__*/function () {
5279 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(prompt, attachments) {
5280 var onGenerate, onError, promises, results, isAllFailed;
5281 return _regenerator.default.wrap(function _callee$(_context) {
5282 while (1) switch (_context.prev = _context.next) {
5283 case 0:
5284 abortController.current = new AbortController();
5285 onGenerate = function onGenerate(screenshot) {
5286 setScreenshots(function (prev) {
5287 var updatedData = (0, _toConsumableArray2.default)(prev);
5288 var pendingIndex = updatedData.indexOf(PENDING_VALUE);
5289 updatedData[pendingIndex] = screenshot;
5290 return updatedData;
5291 });
5292 return true;
5293 };
5294 onError = function onError() {
5295 setScreenshots(function (prev) {
5296 var updatedData = (0, _toConsumableArray2.default)(prev);
5297 var pendingIndex = updatedData.lastIndexOf(PENDING_VALUE);
5298 updatedData[pendingIndex] = {
5299 isError: true
5300 };
5301 return updatedData;
5302 });
5303 return false;
5304 };
5305 promises = screenshotsData.map(function (_ref3) {
5306 var generate = _ref3.generate;
5307 var prevGeneratedIds = screenshots.map(function (screenshot) {
5308 return screenshot.baseTemplateId || '';
5309 });
5310 var requestBody = {
5311 prompt: prompt,
5312 prevGeneratedIds: prevGeneratedIds,
5313 currentContext: currentContext,
5314 ids: {
5315 editorSessionId: editorSessionId.current,
5316 sessionId: sessionId.current,
5317 generateId: generateIdRef.current,
5318 batchId: batchId.current,
5319 requestId: setRequest().current
5320 },
5321 attachments: attachments.map(function (_ref4) {
5322 var type = _ref4.type,
5323 content = _ref4.content,
5324 label = _ref4.label,
5325 source = _ref4.source;
5326 // Send only the data that is needed for the generation.
5327 return {
5328 type: type,
5329 content: content,
5330 label: label,
5331 source: source
5332 };
5333 })
5334 };
5335 return generate(requestBody, abortController.current.signal).then(onGenerate).catch(onError);
5336 });
5337 _context.next = 6;
5338 return Promise.all(promises);
5339 case 6:
5340 results = _context.sent;
5341 isAllFailed = results.every(function (value) {
5342 return false === value;
5343 });
5344 if (isAllFailed) {
5345 setScreenshots(function (prev) {
5346 var updatedData = (0, _toConsumableArray2.default)(prev);
5347 updatedData.splice(screenshotsGroupCount * -1);
5348 return updatedData;
5349 });
5350 }
5351 case 9:
5352 case "end":
5353 return _context.stop();
5354 }
5355 }, _callee);
5356 }));
5357 return function createScreenshots(_x, _x2) {
5358 return _ref2.apply(this, arguments);
5359 };
5360 }();
5361 var generate = function generate(prompt, attachments) {
5362 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5363 generateIdRef.current = setGenerate().current;
5364 setScreenshots(placeholders);
5365 createScreenshots(prompt, attachments);
5366 };
5367 var regenerate = function regenerate(prompt, attachments) {
5368 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5369 setScreenshots(function (prev) {
5370 return [].concat((0, _toConsumableArray2.default)(prev), (0, _toConsumableArray2.default)(placeholders));
5371 });
5372 createScreenshots(prompt, attachments);
5373 };
5374 return {
5375 generate: generate,
5376 regenerate: regenerate,
5377 screenshots: screenshots,
5378 isLoading: isLoading,
5379 error: error,
5380 abort: abort
5381 };
5382 };
5383 var _default = useScreenshots;
5384 exports["default"] = _default;
5385
5386 /***/ }),
5387
5388 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js":
5389 /*!****************************************************************************!*\
5390 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js ***!
5391 \****************************************************************************/
5392 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5393
5394 "use strict";
5395
5396
5397 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5398 Object.defineProperty(exports, "__esModule", ({
5399 value: true
5400 }));
5401 exports["default"] = exports.SCREENSHOTS_PER_PAGE = exports.MAX_PAGES = void 0;
5402 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5403 var _react = __webpack_require__(/*! react */ "react");
5404 var SCREENSHOTS_PER_PAGE = 3;
5405 exports.SCREENSHOTS_PER_PAGE = SCREENSHOTS_PER_PAGE;
5406 var MAX_PAGES = 5;
5407 exports.MAX_PAGES = MAX_PAGES;
5408 var useSlider = function useSlider() {
5409 var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
5410 _ref$slidesCount = _ref.slidesCount,
5411 slidesCount = _ref$slidesCount === void 0 ? 0 : _ref$slidesCount,
5412 _ref$slidesPerPage = _ref.slidesPerPage,
5413 slidesPerPage = _ref$slidesPerPage === void 0 ? SCREENSHOTS_PER_PAGE : _ref$slidesPerPage,
5414 _ref$gapPercentage = _ref.gapPercentage,
5415 gapPercentage = _ref$gapPercentage === void 0 ? 2 : _ref$gapPercentage;
5416 var _useState = (0, _react.useState)(1),
5417 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5418 currentPage = _useState2[0],
5419 setCurrentPage = _useState2[1];
5420 var gapsCount = slidesPerPage - 1;
5421 var slideWidthPercentage = (100 - gapPercentage * gapsCount) / slidesPerPage;
5422 var offsetXPercentage = (slideWidthPercentage + gapPercentage) * slidesPerPage * (currentPage - 1) * -1;
5423 var pagesCount = Math.ceil(slidesCount / slidesPerPage);
5424 (0, _react.useEffect)(function () {
5425 // In cases when the slidesCount value was reduced, we need to navigate to the last page.
5426 if (currentPage > 1 && currentPage > pagesCount) {
5427 setCurrentPage(pagesCount);
5428 }
5429 }, [pagesCount]);
5430 return {
5431 currentPage: currentPage,
5432 setCurrentPage: setCurrentPage,
5433 pagesCount: pagesCount,
5434 slidesPerPage: slidesPerPage,
5435 gapPercentage: gapPercentage,
5436 offsetXPercentage: offsetXPercentage,
5437 slideWidthPercentage: slideWidthPercentage
5438 };
5439 };
5440 var _default = useSlider;
5441 exports["default"] = _default;
5442
5443 /***/ }),
5444
5445 /***/ "../modules/ai/assets/js/editor/pages/form-layout/index.js":
5446 /*!*****************************************************************!*\
5447 !*** ../modules/ai/assets/js/editor/pages/form-layout/index.js ***!
5448 \*****************************************************************/
5449 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5450
5451 "use strict";
5452
5453
5454 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5455 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5456 Object.defineProperty(exports, "__esModule", ({
5457 value: true
5458 }));
5459 exports["default"] = void 0;
5460 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5461 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5462 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5463 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5464 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5465 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5466 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5467 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5468 var _promptErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../../components/prompt-error-message */ "../modules/ai/assets/js/editor/components/prompt-error-message.js"));
5469 var _unsavedChangesAlert = _interopRequireDefault(__webpack_require__(/*! ./components/unsaved-changes-alert */ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js"));
5470 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
5471 var _promptForm = _interopRequireDefault(__webpack_require__(/*! ./components/prompt-form */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js"));
5472 var _refreshIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/refresh-icon */ "../modules/ai/assets/js/editor/icons/refresh-icon.js"));
5473 var _screenshot = _interopRequireDefault(__webpack_require__(/*! ./components/screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js"));
5474 var _useScreenshots2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-screenshots */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js"));
5475 var _useSlider2 = _interopRequireWildcard(__webpack_require__(/*! ./hooks/use-slider */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js"));
5476 var _minimizeDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/minimize-diagonal-icon */ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js"));
5477 var _expandDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/expand-diagonal-icon */ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js"));
5478 var _config = __webpack_require__(/*! ./context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5479 var _attachment = __webpack_require__(/*! ../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
5480 var _promptPowerNotice = __webpack_require__(/*! ./components/attachments/prompt-power-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js");
5481 var _proWidgetsNotice = __webpack_require__(/*! ./components/pro-widgets-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js");
5482 var _attachments = __webpack_require__(/*! ./components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
5483 var _attachDialog = _interopRequireDefault(__webpack_require__(/*! ./components/attachments/attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js"));
5484 var _isURL = _interopRequireDefault(__webpack_require__(/*! validator/lib/isURL */ "../node_modules/validator/lib/isURL.js"));
5485 var _voicePromotionAlert = __webpack_require__(/*! ../../components/voice-promotion-alert */ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js");
5486 var _excluded = ["children"];
5487 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); }
5488 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; }
5489 var DirectionalMinimizeDiagonalIcon = (0, _ui.withDirection)(_minimizeDiagonalIcon.default);
5490 var DirectionalExpandDiagonalIcon = (0, _ui.withDirection)(_expandDiagonalIcon.default);
5491
5492 /**
5493 * @typedef {Object} Attachment
5494 * @property {('json')} type - The type of the attachment, currently only `json` is supported.
5495 * @property {string} previewHTML - HTML content as a string, representing a preview.
5496 * @property {string} content - Actual content of the attachment as a string.
5497 * @property {string} label - Label for the attachment.
5498 */
5499
5500 var RegenerateButton = function RegenerateButton(props) {
5501 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5502 size: "small",
5503 color: "secondary",
5504 startIcon: /*#__PURE__*/_react.default.createElement(_refreshIcon.default, null)
5505 }, props), (0, _i18n.__)('Regenerate', 'elementor'));
5506 };
5507 var UseLayoutButton = function UseLayoutButton(props) {
5508 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5509 size: "small",
5510 variant: "contained"
5511 }, props), (0, _i18n.__)('Use Layout', 'elementor'));
5512 };
5513 UseLayoutButton.propTypes = {
5514 sx: _propTypes.default.object
5515 };
5516 var isRegenerateButtonDisabled = function isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive) {
5517 if (isLoading || isPromptFormActive) {
5518 return true;
5519 }
5520 return screenshots.length >= _useSlider2.SCREENSHOTS_PER_PAGE * _useSlider2.MAX_PAGES;
5521 };
5522 var FormLayout = function FormLayout(_ref) {
5523 var _screenshots$selected, _screenshots$2;
5524 var _ref$DialogHeaderProp = _ref.DialogHeaderProps,
5525 DialogHeaderProps = _ref$DialogHeaderProp === void 0 ? {} : _ref$DialogHeaderProp,
5526 _ref$DialogContentPro = _ref.DialogContentProps,
5527 DialogContentProps = _ref$DialogContentPro === void 0 ? {} : _ref$DialogContentPro,
5528 initialAttachments = _ref.attachments;
5529 var _useConfig = (0, _config.useConfig)(),
5530 attachmentsTypes = _useConfig.attachmentsTypes,
5531 onData = _useConfig.onData,
5532 onInsert = _useConfig.onInsert,
5533 onSelect = _useConfig.onSelect,
5534 onClose = _useConfig.onClose,
5535 onGenerate = _useConfig.onGenerate,
5536 hasPro = _useConfig.hasPro;
5537 var _useScreenshots = (0, _useScreenshots2.default)({
5538 onData: onData
5539 }),
5540 screenshots = _useScreenshots.screenshots,
5541 generate = _useScreenshots.generate,
5542 regenerate = _useScreenshots.regenerate,
5543 isLoading = _useScreenshots.isLoading,
5544 error = _useScreenshots.error,
5545 abort = _useScreenshots.abort;
5546 var screenshotOutlineOffset = '2px';
5547 var _useSlider = (0, _useSlider2.default)({
5548 slidesCount: screenshots.length
5549 }),
5550 currentPage = _useSlider.currentPage,
5551 setCurrentPage = _useSlider.setCurrentPage,
5552 pagesCount = _useSlider.pagesCount,
5553 gapPercentage = _useSlider.gapPercentage,
5554 slidesPerPage = _useSlider.slidesPerPage,
5555 offsetXPercentage = _useSlider.offsetXPercentage,
5556 slideWidthPercentage = _useSlider.slideWidthPercentage;
5557 var _useState = (0, _react.useState)(-1),
5558 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5559 selectedScreenshotIndex = _useState2[0],
5560 setSelectedScreenshotIndex = _useState2[1];
5561 var _useState3 = (0, _react.useState)(false),
5562 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5563 showUnsavedChangesAlert = _useState4[0],
5564 setShowUnsavedChangesAlert = _useState4[1];
5565 var _useState5 = (0, _react.useState)(true),
5566 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
5567 isPromptEditable = _useState6[0],
5568 setIsPromptEditable = _useState6[1];
5569 var _useState7 = (0, _react.useState)([]),
5570 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
5571 attachments = _useState8[0],
5572 setAttachments = _useState8[1];
5573 var _useState9 = (0, _react.useState)(false),
5574 _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
5575 shouldRenderWebApp = _useState10[0],
5576 setShouldRenderWebApp = _useState10[1];
5577 var _useState11 = (0, _react.useState)(false),
5578 _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
5579 isMinimized = _useState12[0],
5580 setIsMinimized = _useState12[1];
5581 var lastRun = (0, _react.useRef)(function () {});
5582 var promptInputRef = (0, _react.useRef)(null);
5583 var selectedTemplate = (_screenshots$selected = screenshots[selectedScreenshotIndex]) === null || _screenshots$selected === void 0 ? void 0 : _screenshots$selected.template;
5584 var dialogContentChildren = DialogContentProps.children,
5585 dialogContentProps = (0, _objectWithoutProperties2.default)(DialogContentProps, _excluded);
5586
5587 // When there are no screenshots the prompt field should be editable.
5588 var shouldFallbackToEditPrompt = !!(error && 0 === screenshots.length);
5589 var isPromptFormActive = isPromptEditable || shouldFallbackToEditPrompt;
5590 var mayContainProWidgets = 0 === attachments.length || attachments.some(function (attachment) {
5591 return _attachments.ATTACHMENT_TYPE_URL === attachment.type;
5592 });
5593 var abortAndClose = function abortAndClose() {
5594 abort();
5595 onClose();
5596 };
5597 var onCloseIntent = function onCloseIntent() {
5598 var hasUnsavedChanges = promptInputRef.current.value.trim() !== '' || screenshots.length > 0;
5599 if (hasUnsavedChanges) {
5600 return setShowUnsavedChangesAlert(true);
5601 }
5602 abortAndClose();
5603 };
5604 var handleGenerate = function handleGenerate(event, prompt) {
5605 event.preventDefault();
5606 if ('' === prompt.trim() && 0 === attachments.length) {
5607 return;
5608 }
5609 if ((0, _isURL.default)(prompt)) {
5610 setShouldRenderWebApp(true);
5611 return;
5612 }
5613 onGenerate();
5614 lastRun.current = function () {
5615 setSelectedScreenshotIndex(-1);
5616 generate(prompt, attachments);
5617 };
5618 lastRun.current();
5619 setIsPromptEditable(false);
5620 setCurrentPage(1);
5621 };
5622 var handleRegenerate = function handleRegenerate() {
5623 lastRun.current = function () {
5624 regenerate(promptInputRef.current.value, attachments);
5625 // Changing the current page to the next page number.
5626 setCurrentPage(pagesCount + 1);
5627 };
5628 lastRun.current();
5629 };
5630 var applyTemplate = function applyTemplate() {
5631 onInsert(selectedTemplate);
5632 screenshots[selectedScreenshotIndex].sendUsageData();
5633 abortAndClose();
5634 };
5635 var handleScreenshotClick = function handleScreenshotClick(index, template) {
5636 return function () {
5637 if (isPromptFormActive) {
5638 return;
5639 }
5640 setSelectedScreenshotIndex(index);
5641 onSelect(template);
5642 };
5643 };
5644
5645 /**
5646 * @param {Attachment[]} items
5647 */
5648 var onAttach = function onAttach(items) {
5649 items.forEach(function (item) {
5650 if (!attachmentsTypes[item.type]) {
5651 throw new Error("Invalid attachment type: ".concat(item.type));
5652 }
5653 var typeConfig = attachmentsTypes[item.type];
5654 if (!item.previewHTML && typeConfig.previewGenerator) {
5655 typeConfig.previewGenerator(item.content).then(function (html) {
5656 item.previewHTML = html;
5657 setAttachments(function (prev) {
5658 // Replace the attachment with the updated one.
5659 return prev.map(function (attachment) {
5660 if (attachment.content === item.content) {
5661 return item;
5662 }
5663 return attachment;
5664 });
5665 });
5666 });
5667 }
5668 });
5669 setAttachments(items);
5670 setShouldRenderWebApp(false);
5671 setIsPromptEditable(true);
5672 };
5673 (0, _react.useEffect)(function () {
5674 var _screenshots$;
5675 var isFirstTemplateExist = (_screenshots$ = screenshots[0]) === null || _screenshots$ === void 0 ? void 0 : _screenshots$.template;
5676 if (isFirstTemplateExist) {
5677 onSelect(screenshots[0].template);
5678 setSelectedScreenshotIndex(0);
5679 }
5680 }, [(_screenshots$2 = screenshots[0]) === null || _screenshots$2 === void 0 ? void 0 : _screenshots$2.template]);
5681 (0, _react.useEffect)(function () {
5682 if (initialAttachments !== null && initialAttachments !== void 0 && initialAttachments.length) {
5683 onAttach(initialAttachments);
5684 }
5685 }, []);
5686 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
5687 onClose: onCloseIntent
5688 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, (0, _extends2.default)({
5689 onClose: onCloseIntent
5690 }, DialogHeaderProps), DialogHeaderProps.children, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5691 title: isMinimized ? (0, _i18n.__)('Expand', 'elementor') : (0, _i18n.__)('Minimize', 'elementor')
5692 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
5693 size: "small",
5694 "aria-label": "minimize",
5695 onClick: function onClick() {
5696 return setIsMinimized(function (prev) {
5697 return !prev;
5698 });
5699 }
5700 }, isMinimized ? /*#__PURE__*/_react.default.createElement(DirectionalExpandDiagonalIcon, null) : /*#__PURE__*/_react.default.createElement(DirectionalMinimizeDiagonalIcon, null)))), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, (0, _extends2.default)({
5701 dividers: true
5702 }, dialogContentProps), /*#__PURE__*/_react.default.createElement(_ui.Collapse, {
5703 in: !isMinimized
5704 }, dialogContentChildren && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5705 sx: {
5706 pt: 2,
5707 px: 2,
5708 pb: 0
5709 }
5710 }, 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, {
5711 sx: {
5712 pt: 2,
5713 px: 2,
5714 pb: 0
5715 }
5716 }, /*#__PURE__*/_react.default.createElement(_promptErrorMessage.default, {
5717 error: error,
5718 onRetry: lastRun.current
5719 })), showUnsavedChangesAlert && /*#__PURE__*/_react.default.createElement(_unsavedChangesAlert.default, {
5720 open: showUnsavedChangesAlert,
5721 title: (0, _i18n.__)('Leave Elementor AI?', 'elementor'),
5722 text: (0, _i18n.__)("Your progress will be deleted, and can't be recovered.", 'elementor'),
5723 onClose: abortAndClose,
5724 onCancel: function onCancel() {
5725 return setShowUnsavedChangesAlert(false);
5726 }
5727 }), shouldRenderWebApp && /*#__PURE__*/_react.default.createElement(_attachDialog.default, {
5728 type: _attachments.ATTACHMENT_TYPE_URL,
5729 url: promptInputRef.current.value,
5730 onAttach: onAttach,
5731 onClose: function onClose() {
5732 setShouldRenderWebApp(false);
5733 }
5734 }), /*#__PURE__*/_react.default.createElement(_promptForm.default, {
5735 shouldResetPrompt: shouldRenderWebApp,
5736 ref: promptInputRef,
5737 isActive: isPromptFormActive,
5738 isLoading: isLoading,
5739 showActions: screenshots.length > 0 || isLoading,
5740 attachmentsTypes: attachmentsTypes,
5741 attachments: attachments,
5742 onAttach: onAttach,
5743 onDetach: function onDetach(index) {
5744 setAttachments(function (prev) {
5745 var newAttachments = (0, _toConsumableArray2.default)(prev);
5746 newAttachments.splice(index, 1);
5747 return newAttachments;
5748 });
5749 setIsPromptEditable(true);
5750 },
5751 onSubmit: handleGenerate,
5752 onBack: function onBack() {
5753 return setIsPromptEditable(false);
5754 },
5755 onEdit: function onEdit() {
5756 return setIsPromptEditable(true);
5757 }
5758 }), (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, {
5759 sx: {
5760 p: 1.5
5761 }
5762 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5763 sx: {
5764 overflow: 'hidden',
5765 p: 0.5
5766 }
5767 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5768 sx: {
5769 display: 'flex',
5770 transition: 'all 0.4s ease',
5771 gap: "".concat(gapPercentage, "%"),
5772 transform: "translateX(".concat(offsetXPercentage, "%)")
5773 }
5774 }, screenshots.map(function (_ref2, index) {
5775 var screenshot = _ref2.screenshot,
5776 type = _ref2.type,
5777 template = _ref2.template,
5778 isError = _ref2.isError,
5779 isPending = _ref2.isPending;
5780 return /*#__PURE__*/_react.default.createElement(_screenshot.default, {
5781 key: index,
5782 url: screenshot,
5783 type: type,
5784 disabled: isPromptFormActive,
5785 isPlaceholder: isError,
5786 isLoading: isPending,
5787 isSelected: selectedScreenshotIndex === index,
5788 onClick: handleScreenshotClick(index, template),
5789 outlineOffset: screenshotOutlineOffset,
5790 sx: {
5791 flex: "0 0 ".concat(slideWidthPercentage, "%")
5792 }
5793 });
5794 }))), /*#__PURE__*/_react.default.createElement(_voicePromotionAlert.VoicePromotionAlert, {
5795 introductionKey: "ai-context-layout-promotion"
5796 })), screenshots.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5797 sx: {
5798 pt: 0,
5799 px: 2,
5800 pb: 2
5801 },
5802 display: "grid",
5803 gridTemplateColumns: "repeat(3, 1fr)",
5804 justifyItems: "center"
5805 }, /*#__PURE__*/_react.default.createElement(RegenerateButton, {
5806 onClick: handleRegenerate,
5807 disabled: isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive),
5808 sx: {
5809 justifySelf: 'start'
5810 }
5811 }), screenshots.length > slidesPerPage && /*#__PURE__*/_react.default.createElement(_ui.Pagination, {
5812 page: currentPage,
5813 count: pagesCount,
5814 disabled: isPromptFormActive,
5815 onChange: function onChange(_, page) {
5816 return setCurrentPage(page);
5817 }
5818 }), /*#__PURE__*/_react.default.createElement(UseLayoutButton, {
5819 onClick: applyTemplate,
5820 disabled: isPromptFormActive || -1 === selectedScreenshotIndex,
5821 sx: {
5822 justifySelf: 'end',
5823 gridColumn: 3
5824 }
5825 }))))));
5826 };
5827 FormLayout.propTypes = {
5828 DialogHeaderProps: _propTypes.default.object,
5829 DialogContentProps: _propTypes.default.object,
5830 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
5831 };
5832 var _default = FormLayout;
5833 exports["default"] = _default;
5834
5835 /***/ }),
5836
5837 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js":
5838 /*!************************************************************************************!*\
5839 !*** ../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js ***!
5840 \************************************************************************************/
5841 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5842
5843 "use strict";
5844
5845
5846 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5847 Object.defineProperty(exports, "__esModule", ({
5848 value: true
5849 }));
5850 exports["default"] = void 0;
5851 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5852 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5853 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5854 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5855 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5856 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5857 var _wandIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/wand-icon */ "../modules/ai/assets/js/editor/icons/wand-icon.js"));
5858 var _excluded = ["isLoading"];
5859 var StyledWandIcon = (0, _ui.withDirection)(_wandIcon.default);
5860 var EnhanceButton = function EnhanceButton(_ref) {
5861 var isLoading = _ref.isLoading,
5862 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
5863 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5864 title: (0, _i18n.__)('Enhance prompt', 'elementor')
5865 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5866 component: "span",
5867 sx: {
5868 cursor: props.disabled ? 'default' : 'pointer'
5869 }
5870 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, (0, _extends2.default)({
5871 size: "small",
5872 color: "secondary"
5873 }, props), isLoading ? /*#__PURE__*/_react.default.createElement(_ui.CircularProgress, {
5874 color: "secondary",
5875 size: 20
5876 }) : /*#__PURE__*/_react.default.createElement(StyledWandIcon, {
5877 fontSize: "small"
5878 }))));
5879 };
5880 EnhanceButton.propTypes = {
5881 disabled: _propTypes.default.bool,
5882 isLoading: _propTypes.default.bool
5883 };
5884 var _default = EnhanceButton;
5885 exports["default"] = _default;
5886
5887 /***/ }),
5888
5889 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js":
5890 /*!*************************************************************************************!*\
5891 !*** ../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js ***!
5892 \*************************************************************************************/
5893 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5894
5895 "use strict";
5896
5897
5898 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5899 Object.defineProperty(exports, "__esModule", ({
5900 value: true
5901 }));
5902 exports["default"] = void 0;
5903 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5904 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5905 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5906 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5907 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5908 var GenerateSubmit = function GenerateSubmit(props) {
5909 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5910 fullWidth: true,
5911 size: "medium",
5912 type: "submit",
5913 variant: "contained"
5914 }, props), props.children || (0, _i18n.__)('Generate', 'elementor'));
5915 };
5916 GenerateSubmit.propTypes = {
5917 children: _propTypes.default.node
5918 };
5919 var _default = GenerateSubmit;
5920 exports["default"] = _default;
5921
5922 /***/ }),
5923
5924 /***/ "../modules/ai/assets/js/editor/pages/get-started/index.js":
5925 /*!*****************************************************************!*\
5926 !*** ../modules/ai/assets/js/editor/pages/get-started/index.js ***!
5927 \*****************************************************************/
5928 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5929
5930 "use strict";
5931
5932
5933 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5934 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5935 Object.defineProperty(exports, "__esModule", ({
5936 value: true
5937 }));
5938 exports["default"] = void 0;
5939 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5940 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5941 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5942 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5943 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5944 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5945 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5946 var _api = __webpack_require__(/*! ../../api */ "../modules/ai/assets/js/editor/api/index.js");
5947 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
5948 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); }
5949 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; }
5950 var GetStarted = function GetStarted(_ref) {
5951 var onSuccess = _ref.onSuccess;
5952 var _useState = (0, _react.useState)(false),
5953 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5954 isTermsChecked = _useState2[0],
5955 setIsTermsChecked = _useState2[1];
5956 var onGetStartedClick = /*#__PURE__*/function () {
5957 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5958 return _regenerator.default.wrap(function _callee$(_context) {
5959 while (1) switch (_context.prev = _context.next) {
5960 case 0:
5961 _context.next = 2;
5962 return (0, _api.setGetStarted)();
5963 case 2:
5964 onSuccess();
5965 case 3:
5966 case "end":
5967 return _context.stop();
5968 }
5969 }, _callee);
5970 }));
5971 return function onGetStartedClick() {
5972 return _ref2.apply(this, arguments);
5973 };
5974 }();
5975 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5976 alignItems: "center",
5977 gap: 1.5
5978 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
5979 sx: {
5980 color: 'text.primary',
5981 fontSize: '60px',
5982 mb: 1
5983 }
5984 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5985 variant: "h4",
5986 sx: {
5987 color: 'text.primary'
5988 }
5989 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5990 variant: "body2"
5991 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5992 direction: "row",
5993 gap: 1.5,
5994 alignItems: "flex-start"
5995 }, /*#__PURE__*/_react.default.createElement(_ui.InputLabel, {
5996 onClick: function onClick() {
5997 return setIsTermsChecked(function (prevState) {
5998 return !prevState;
5999 });
6000 }
6001 }, /*#__PURE__*/_react.default.createElement(_ui.Checkbox, {
6002 id: "e-ai-terms-approval",
6003 color: "secondary",
6004 checked: isTermsChecked
6005 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6006 variant: "caption",
6007 sx: {
6008 maxWidth: 520
6009 },
6010 component: "label",
6011 htmlFor: "e-ai-terms-approval"
6012 }, (0, _i18n.__)('I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
6013 href: "https://go.elementor.com/ai-terms/",
6014 target: "_blank",
6015 color: "info.main"
6016 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
6017 href: "https://go.elementor.com/ai-privacy-policy/",
6018 target: "_blank",
6019 color: "info.main"
6020 }, (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, {
6021 disabled: !isTermsChecked,
6022 variant: "contained",
6023 onClick: onGetStartedClick,
6024 sx: {
6025 mt: 1,
6026 '&:hover': {
6027 color: 'primary.contrastText'
6028 }
6029 }
6030 }, (0, _i18n.__)('Get Started', 'elementor')));
6031 };
6032 GetStarted.propTypes = {
6033 onSuccess: _propTypes.default.func.isRequired
6034 };
6035 var _default = GetStarted;
6036 exports["default"] = _default;
6037
6038 /***/ }),
6039
6040 /***/ "../modules/ai/assets/js/editor/types/attachment.js":
6041 /*!**********************************************************!*\
6042 !*** ../modules/ai/assets/js/editor/types/attachment.js ***!
6043 \**********************************************************/
6044 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6045
6046 "use strict";
6047
6048
6049 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6050 Object.defineProperty(exports, "__esModule", ({
6051 value: true
6052 }));
6053 exports.AttachmentsTypesPropType = exports.AttachmentPropType = void 0;
6054 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
6055 var AttachmentPropType = _propTypes.default.shape({
6056 type: _propTypes.default.string,
6057 previewHTML: _propTypes.default.string,
6058 content: _propTypes.default.string,
6059 label: _propTypes.default.string,
6060 source: _propTypes.default.string
6061 });
6062 exports.AttachmentPropType = AttachmentPropType;
6063 var AttachmentsTypesPropType = _propTypes.default.shape({
6064 type: _propTypes.default.shape({
6065 promptPlaceholder: _propTypes.default.string,
6066 promptSuggestions: _propTypes.default.arrayOf(_propTypes.default.shape({
6067 text: _propTypes.default.string.isRequired
6068 })),
6069 previewGenerator: _propTypes.default.func
6070 })
6071 });
6072 exports.AttachmentsTypesPropType = AttachmentsTypesPropType;
6073
6074 /***/ }),
6075
6076 /***/ "../modules/ai/assets/js/editor/utils/editor-integration.js":
6077 /*!******************************************************************!*\
6078 !*** ../modules/ai/assets/js/editor/utils/editor-integration.js ***!
6079 \******************************************************************/
6080 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6081
6082 "use strict";
6083
6084
6085 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6086 Object.defineProperty(exports, "__esModule", ({
6087 value: true
6088 }));
6089 exports.renderLayoutApp = exports.openPanel = exports.onConnect = exports.importToEditor = exports.getUiConfig = exports.closePanel = void 0;
6090 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
6091 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6092 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6093 var _react2 = _interopRequireDefault(__webpack_require__(/*! elementor-utils/react */ "../assets/dev/js/utils/react.js"));
6094 var _previewContainer = __webpack_require__(/*! ./preview-container */ "../modules/ai/assets/js/editor/utils/preview-container.js");
6095 var _layoutApp = _interopRequireDefault(__webpack_require__(/*! ../layout-app */ "../modules/ai/assets/js/editor/layout-app.js"));
6096 var _screenshot = __webpack_require__(/*! ./screenshot */ "../modules/ai/assets/js/editor/utils/screenshot.js");
6097 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6098 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
6099 var _layoutAppWrapper = _interopRequireDefault(__webpack_require__(/*! ../layout-app-wrapper */ "../modules/ai/assets/js/editor/layout-app-wrapper.js"));
6100 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6101 var closePanel = function closePanel() {
6102 $e.run('panel/close');
6103 $e.components.get('panel').blockUserInteractions();
6104 };
6105 exports.closePanel = closePanel;
6106 var openPanel = function openPanel() {
6107 $e.run('panel/open');
6108 $e.components.get('panel').unblockUserInteractions();
6109 };
6110 exports.openPanel = openPanel;
6111 var onConnect = function onConnect(data) {
6112 elementorCommon.config.library_connect.is_connected = true;
6113 elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0;
6114 elementorCommon.config.library_connect.current_access_tier = data.access_tier;
6115 };
6116 exports.onConnect = onConnect;
6117 var getUiConfig = function getUiConfig() {
6118 var _elementor, _elementor$getPrefere;
6119 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';
6120 var isRTL = elementorCommon.config.isRTL;
6121 return {
6122 colorScheme: colorScheme,
6123 isRTL: isRTL
6124 };
6125 };
6126 exports.getUiConfig = getUiConfig;
6127 var VARIATIONS_PROMPTS = [{
6128 text: (0, _i18n.__)('Minimalist design with bold typography about', 'elementor')
6129 }, {
6130 text: (0, _i18n.__)('Elegant style with serif fonts discussing', 'elementor')
6131 }, {
6132 text: (0, _i18n.__)('Retro vibe with muted colors and classic fonts about', 'elementor')
6133 }, {
6134 text: (0, _i18n.__)('Futuristic design with neon accents about', 'elementor')
6135 }, {
6136 text: (0, _i18n.__)('Professional look with clean lines for', 'elementor')
6137 }, {
6138 text: (0, _i18n.__)('Earthy tones and organic shapes featuring', 'elementor')
6139 }, {
6140 text: (0, _i18n.__)('Luxurious theme with rich colors discussing', 'elementor')
6141 }, {
6142 text: (0, _i18n.__)('Tech-inspired style with modern fonts about', 'elementor')
6143 }, {
6144 text: (0, _i18n.__)('Warm hues with comforting visuals about', 'elementor')
6145 }];
6146 var PROMPT_PLACEHOLDER = (0, _i18n.__)("Press '/' for suggestions or describe the changes you want to apply (optional)...", 'elementor');
6147 var renderLayoutApp = function renderLayoutApp() {
6148 var _options$onRenderApp;
6149 var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
6150 parentContainer: null,
6151 mode: '',
6152 at: null,
6153 onClose: null,
6154 onGenerate: null,
6155 onInsert: null,
6156 onRenderApp: null,
6157 onSelect: null,
6158 attachments: []
6159 };
6160 closePanel();
6161 var previewContainer = (0, _previewContainer.createPreviewContainer)(options.parentContainer, {
6162 // Create the container at the "drag widget here" area position.
6163 at: options.at
6164 });
6165 var _getUiConfig = getUiConfig(),
6166 colorScheme = _getUiConfig.colorScheme,
6167 isRTL = _getUiConfig.isRTL;
6168 var rootElement = document.createElement('div');
6169 document.body.append(rootElement);
6170 var bodyStyle = window.elementorFrontend.elements.$window[0].getComputedStyle(window.elementorFrontend.elements.$body[0]);
6171 var _ReactUtils$render = _react2.default.render( /*#__PURE__*/_react.default.createElement(_layoutAppWrapper.default, {
6172 isRTL: isRTL,
6173 colorScheme: colorScheme
6174 }, /*#__PURE__*/_react.default.createElement(_layoutApp.default, {
6175 mode: options.mode,
6176 currentContext: {
6177 body: {
6178 backgroundColor: bodyStyle.backgroundColor,
6179 backgroundImage: bodyStyle.backgroundImage
6180 }
6181 },
6182 attachmentsTypes: {
6183 json: {
6184 promptSuggestions: VARIATIONS_PROMPTS,
6185 promptPlaceholder: PROMPT_PLACEHOLDER,
6186 previewGenerator: function () {
6187 var _previewGenerator = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(json) {
6188 var screenshot;
6189 return _regenerator.default.wrap(function _callee$(_context) {
6190 while (1) switch (_context.prev = _context.next) {
6191 case 0:
6192 _context.next = 2;
6193 return (0, _screenshot.takeScreenshot)(json);
6194 case 2:
6195 screenshot = _context.sent;
6196 return _context.abrupt("return", "<img src=\"".concat(screenshot, "\" />"));
6197 case 4:
6198 case "end":
6199 return _context.stop();
6200 }
6201 }, _callee);
6202 }));
6203 function previewGenerator(_x) {
6204 return _previewGenerator.apply(this, arguments);
6205 }
6206 return previewGenerator;
6207 }()
6208 },
6209 url: {
6210 promptPlaceholder: PROMPT_PLACEHOLDER,
6211 promptSuggestions: VARIATIONS_PROMPTS
6212 }
6213 },
6214 attachments: options.attachments || [],
6215 onClose: function onClose() {
6216 var _options$onClose;
6217 previewContainer.destroy();
6218 (_options$onClose = options.onClose) === null || _options$onClose === void 0 ? void 0 : _options$onClose.call(options);
6219 unmount();
6220 rootElement.remove();
6221 openPanel();
6222 },
6223 onConnect: onConnect,
6224 onGenerate: function onGenerate() {
6225 var _options$onGenerate;
6226 (_options$onGenerate = options.onGenerate) === null || _options$onGenerate === void 0 ? void 0 : _options$onGenerate.call(options, {
6227 previewContainer: previewContainer
6228 });
6229 },
6230 onData: /*#__PURE__*/function () {
6231 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(template) {
6232 var screenshot;
6233 return _regenerator.default.wrap(function _callee2$(_context2) {
6234 while (1) switch (_context2.prev = _context2.next) {
6235 case 0:
6236 _context2.next = 2;
6237 return (0, _screenshot.takeScreenshot)(template);
6238 case 2:
6239 screenshot = _context2.sent;
6240 return _context2.abrupt("return", {
6241 screenshot: screenshot,
6242 template: template
6243 });
6244 case 4:
6245 case "end":
6246 return _context2.stop();
6247 }
6248 }, _callee2);
6249 }));
6250 return function (_x2) {
6251 return _ref.apply(this, arguments);
6252 };
6253 }(),
6254 onSelect: function onSelect(template) {
6255 var _options$onSelect;
6256 (_options$onSelect = options.onSelect) === null || _options$onSelect === void 0 ? void 0 : _options$onSelect.call(options);
6257 previewContainer.setContent(template);
6258 },
6259 onInsert: options.onInsert,
6260 hasPro: elementor.helpers.hasPro()
6261 })), rootElement),
6262 unmount = _ReactUtils$render.unmount;
6263 (_options$onRenderApp = options.onRenderApp) === null || _options$onRenderApp === void 0 ? void 0 : _options$onRenderApp.call(options, {
6264 previewContainer: previewContainer
6265 });
6266 };
6267 exports.renderLayoutApp = renderLayoutApp;
6268 var importToEditor = function importToEditor(_ref2) {
6269 var parentContainer = _ref2.parentContainer,
6270 at = _ref2.at,
6271 template = _ref2.template,
6272 historyTitle = _ref2.historyTitle,
6273 _ref2$replace = _ref2.replace,
6274 replace = _ref2$replace === void 0 ? false : _ref2$replace;
6275 var endHistoryLog = (0, _history.startHistoryLog)({
6276 type: 'import',
6277 title: historyTitle
6278 });
6279 if (replace) {
6280 $e.run('document/elements/delete', {
6281 container: parentContainer.children.at(at)
6282 });
6283 }
6284 $e.run('document/elements/create', {
6285 container: parentContainer,
6286 model: (0, _requestsIds.generateIds)(template),
6287 options: {
6288 at: at,
6289 edit: true
6290 }
6291 });
6292 endHistoryLog();
6293 };
6294 exports.importToEditor = importToEditor;
6295
6296 /***/ }),
6297
6298 /***/ "../modules/ai/assets/js/editor/utils/history.js":
6299 /*!*******************************************************!*\
6300 !*** ../modules/ai/assets/js/editor/utils/history.js ***!
6301 \*******************************************************/
6302 /***/ ((__unused_webpack_module, exports) => {
6303
6304 "use strict";
6305
6306
6307 Object.defineProperty(exports, "__esModule", ({
6308 value: true
6309 }));
6310 exports.startHistoryLog = startHistoryLog;
6311 exports.toggleHistory = toggleHistory;
6312 function toggleHistory(isActive) {
6313 elementor.documents.getCurrent().history.setActive(isActive);
6314 }
6315
6316 /**
6317 * @param {Object} options
6318 * @param { 'add' | 'change' | 'disable' | 'duplicate' | 'enable' | 'import' | 'move' | 'paste' | 'paste_style' | 'remove' | 'reset_settings' | 'reset_style' | 'selected' } options.type
6319 * @param { string } options.title
6320 *
6321 * @return {*}
6322 */
6323 function startHistoryLog(_ref) {
6324 var type = _ref.type,
6325 title = _ref.title;
6326 var id = $e.internal('document/history/start-log', {
6327 type: type,
6328 title: title
6329 });
6330 return function () {
6331 return $e.internal('document/history/end-log', {
6332 id: id
6333 });
6334 };
6335 }
6336
6337 /***/ }),
6338
6339 /***/ "../modules/ai/assets/js/editor/utils/preview-container.js":
6340 /*!*****************************************************************!*\
6341 !*** ../modules/ai/assets/js/editor/utils/preview-container.js ***!
6342 \*****************************************************************/
6343 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6344
6345 "use strict";
6346
6347
6348 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6349 Object.defineProperty(exports, "__esModule", ({
6350 value: true
6351 }));
6352 exports.createPreviewContainer = createPreviewContainer;
6353 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
6354 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6355 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6356 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; }
6357 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; }
6358 /**
6359 * @typedef {import('elementor/assets/dev/js/editor/container/container')} Container
6360 */
6361
6362 var PREFIX = 'e-ai-preview-container';
6363 var CLASS_HIDDEN = PREFIX + '--hidden';
6364 var CLASS_IDLE = PREFIX + '--idle';
6365
6366 /**
6367 * @param {Container} parentContainer
6368 * @param {{}} containerOptions
6369 * @return {{init, setContent, reset, destroy}}
6370 */
6371
6372 function createPreviewContainer(parentContainer) {
6373 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6374 var createdContainers = new Map();
6375 var idleContainer = createIdleContainer(parentContainer, containerOptions);
6376 function init() {
6377 showContainer(idleContainer);
6378 }
6379 function getAllContainers() {
6380 return [].concat((0, _toConsumableArray2.default)(createdContainers.values()), [idleContainer]);
6381 }
6382 function reset() {
6383 deleteContainers((0, _toConsumableArray2.default)(createdContainers.values()));
6384 createdContainers.clear();
6385 showContainer(idleContainer);
6386 }
6387 function setContent(template) {
6388 if (!template) {
6389 return;
6390 }
6391 hideContainers(getAllContainers());
6392 if (!createdContainers.has(template)) {
6393 var newContainer = createContainer(parentContainer, template, containerOptions);
6394 createdContainers.set(template, newContainer);
6395 }
6396 showContainer(createdContainers.get(template));
6397 }
6398 function destroy() {
6399 deleteContainers(getAllContainers());
6400 createdContainers.clear();
6401 }
6402 return {
6403 init: init,
6404 reset: reset,
6405 setContent: setContent,
6406 destroy: destroy
6407 };
6408 }
6409
6410 /**
6411 * @param {Container} parentContainer
6412 * @param {{}} model
6413 * @param {{}} options
6414 * @return {*}
6415 */
6416 function createContainer(parentContainer, model) {
6417 var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6418 (0, _history.toggleHistory)(false);
6419 var container = $e.run('document/elements/create', {
6420 container: parentContainer,
6421 model: _objectSpread(_objectSpread({}, model), {}, {
6422 id: "".concat(PREFIX, "-").concat(elementorCommon.helpers.getUniqueId().toString())
6423 }),
6424 options: _objectSpread(_objectSpread({}, options), {}, {
6425 edit: false
6426 })
6427 });
6428 (0, _history.toggleHistory)(true);
6429 container.view.$el.addClass(CLASS_HIDDEN);
6430 return container;
6431 }
6432
6433 /**
6434 * @param {Container} parentContainer
6435 * @param {{}} containerOptions
6436 * @return {*}
6437 */
6438 function createIdleContainer(parentContainer) {
6439 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6440 // Create an empty container that'll be used of UI purposes.
6441 var container = createContainer(parentContainer, {
6442 elType: 'container'
6443 }, containerOptions);
6444 container.view.$el.addClass(CLASS_IDLE);
6445 return container;
6446 }
6447 function hideContainers(containers) {
6448 containers.forEach(function (container) {
6449 container.view.$el.addClass(CLASS_HIDDEN);
6450 });
6451 }
6452 function showContainer(container) {
6453 container.view.$el.removeClass(CLASS_HIDDEN);
6454
6455 // Delay the scroll to avoid UI jumps when toggling between containers.
6456 setTimeout(function () {
6457 container.view.$el[0].scrollIntoView({
6458 behavior: 'smooth',
6459 block: 'start'
6460 });
6461 });
6462 }
6463 function deleteContainers(containers) {
6464 (0, _history.toggleHistory)(false);
6465 $e.run('document/elements/delete', {
6466 containers: containers
6467 });
6468 (0, _history.toggleHistory)(true);
6469 }
6470
6471 /***/ }),
6472
6473 /***/ "../modules/ai/assets/js/editor/utils/screenshot.js":
6474 /*!**********************************************************!*\
6475 !*** ../modules/ai/assets/js/editor/utils/screenshot.js ***!
6476 \**********************************************************/
6477 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6478
6479 "use strict";
6480
6481
6482 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6483 Object.defineProperty(exports, "__esModule", ({
6484 value: true
6485 }));
6486 exports.takeScreenshot = void 0;
6487 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6488 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6489 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6490 var _htmlToImage = __webpack_require__(/*! html-to-image */ "../node_modules/html-to-image/es/index.js");
6491 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6492 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6493 var takeScreenshot = /*#__PURE__*/function () {
6494 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(template) {
6495 var hiddenWrapper, container, screenshot;
6496 return _regenerator.default.wrap(function _callee$(_context) {
6497 while (1) switch (_context.prev = _context.next) {
6498 case 0:
6499 if (template) {
6500 _context.next = 2;
6501 break;
6502 }
6503 return _context.abrupt("return", '');
6504 case 2:
6505 // Disable history so the Editor won't show our hidden container as a user action.
6506 (0, _history.toggleHistory)(false);
6507 hiddenWrapper = createHiddenWrapper();
6508 container = createContainer(template);
6509 wrapContainer(container, hiddenWrapper);
6510 elementor.getPreviewView().$childViewContainer[0].appendChild(hiddenWrapper);
6511
6512 // Wait for the container to render.
6513 _context.next = 9;
6514 return waitForContainer(container.id);
6515 case 9:
6516 if (!template.elements.length) {
6517 _context.next = 12;
6518 break;
6519 }
6520 _context.next = 12;
6521 return Promise.all(template.elements.map(function (child) {
6522 return waitForContainer(child.id);
6523 }));
6524 case 12:
6525 _context.prev = 12;
6526 _context.next = 15;
6527 return screenshotNode(container.view.$el[0]);
6528 case 15:
6529 screenshot = _context.sent;
6530 _context.next = 21;
6531 break;
6532 case 18:
6533 _context.prev = 18;
6534 _context.t0 = _context["catch"](12);
6535 // Return an empty image url if the screenshot failed.
6536 screenshot = '';
6537 case 21:
6538 deleteContainer(container);
6539 hiddenWrapper.remove();
6540 (0, _history.toggleHistory)(true);
6541 return _context.abrupt("return", screenshot);
6542 case 25:
6543 case "end":
6544 return _context.stop();
6545 }
6546 }, _callee, null, [[12, 18]]);
6547 }));
6548 return function takeScreenshot(_x) {
6549 return _ref.apply(this, arguments);
6550 };
6551 }();
6552 exports.takeScreenshot = takeScreenshot;
6553 function screenshotNode(node) {
6554 return toWebp(node, {
6555 quality: 0.01,
6556 // Transparent 1x1 pixel.
6557 imagePlaceholder: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII='
6558 });
6559 }
6560 function toWebp(_x2) {
6561 return _toWebp.apply(this, arguments);
6562 }
6563 function _toWebp() {
6564 _toWebp = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(node) {
6565 var _options$quality;
6566 var options,
6567 canvas,
6568 _args3 = arguments;
6569 return _regenerator.default.wrap(function _callee3$(_context3) {
6570 while (1) switch (_context3.prev = _context3.next) {
6571 case 0:
6572 options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
6573 _context3.next = 3;
6574 return (0, _htmlToImage.toCanvas)(node, options);
6575 case 3:
6576 canvas = _context3.sent;
6577 return _context3.abrupt("return", canvas.toDataURL('image/webp', (_options$quality = options.quality) !== null && _options$quality !== void 0 ? _options$quality : 1));
6578 case 5:
6579 case "end":
6580 return _context3.stop();
6581 }
6582 }, _callee3);
6583 }));
6584 return _toWebp.apply(this, arguments);
6585 }
6586 function createHiddenWrapper() {
6587 var wrapper = document.createElement('div');
6588 wrapper.style.position = 'fixed';
6589 wrapper.style.opacity = '0';
6590 wrapper.style.inset = '0';
6591 return wrapper;
6592 }
6593 function createContainer(template) {
6594 var model = (0, _requestsIds.generateIds)(template);
6595
6596 // Set a custom ID, so it can be used later on in the backend.
6597 model.id = "e-ai-screenshot-container-".concat(model.id);
6598 return $e.run('document/elements/create', {
6599 container: elementor.getPreviewContainer(),
6600 model: model,
6601 options: {
6602 edit: false
6603 }
6604 });
6605 }
6606 function deleteContainer(container) {
6607 return $e.run('document/elements/delete', {
6608 container: container
6609 });
6610 }
6611 function waitForContainer(id) {
6612 var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
6613 var timeoutPromise = sleep(timeout);
6614 var waitPromise = new Promise(function (resolve) {
6615 elementorFrontend.hooks.addAction('frontend/element_ready/global', /*#__PURE__*/function () {
6616 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2($element) {
6617 var images;
6618 return _regenerator.default.wrap(function _callee2$(_context2) {
6619 while (1) switch (_context2.prev = _context2.next) {
6620 case 0:
6621 if (!($element.data('id') === id)) {
6622 _context2.next = 5;
6623 break;
6624 }
6625 images = (0, _toConsumableArray2.default)($element[0].querySelectorAll('img')); // Wait for all images to load.
6626 _context2.next = 4;
6627 return Promise.all(images.map(waitForImage));
6628 case 4:
6629 resolve();
6630 case 5:
6631 case "end":
6632 return _context2.stop();
6633 }
6634 }, _callee2);
6635 }));
6636 return function (_x3) {
6637 return _ref2.apply(this, arguments);
6638 };
6639 }());
6640 });
6641 return Promise.any([timeoutPromise, waitPromise]);
6642 }
6643 function waitForImage(image) {
6644 if (image.complete) {
6645 return Promise.resolve();
6646 }
6647 return new Promise(function (resolve) {
6648 image.addEventListener('load', resolve);
6649 image.addEventListener('error', function () {
6650 // Remove the image to make sure it won't break the screenshot.
6651 image.remove();
6652 resolve();
6653 });
6654 });
6655 }
6656 function sleep(ms) {
6657 return new Promise(function (resolve) {
6658 return setTimeout(resolve, ms);
6659 });
6660 }
6661 function wrapContainer(container, wrapper) {
6662 var el = container.view.$el[0];
6663 el.parentNode.insertBefore(wrapper, el);
6664 wrapper.appendChild(el);
6665 }
6666
6667 /***/ }),
6668
6669 /***/ "../node_modules/clsx/dist/clsx.m.js":
6670 /*!*******************************************!*\
6671 !*** ../node_modules/clsx/dist/clsx.m.js ***!
6672 \*******************************************/
6673 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6674
6675 "use strict";
6676 __webpack_require__.r(__webpack_exports__);
6677 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6678 /* harmony export */ clsx: () => (/* binding */ clsx),
6679 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
6680 /* harmony export */ });
6681 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);
6682
6683 /***/ }),
6684
6685 /***/ "../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js":
6686 /*!***********************************************************************************!*\
6687 !*** ../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js ***!
6688 \***********************************************************************************/
6689 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6690
6691 "use strict";
6692
6693
6694 var reactIs = __webpack_require__(/*! react-is */ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js");
6695
6696 /**
6697 * Copyright 2015, Yahoo! Inc.
6698 * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
6699 */
6700 var REACT_STATICS = {
6701 childContextTypes: true,
6702 contextType: true,
6703 contextTypes: true,
6704 defaultProps: true,
6705 displayName: true,
6706 getDefaultProps: true,
6707 getDerivedStateFromError: true,
6708 getDerivedStateFromProps: true,
6709 mixins: true,
6710 propTypes: true,
6711 type: true
6712 };
6713 var KNOWN_STATICS = {
6714 name: true,
6715 length: true,
6716 prototype: true,
6717 caller: true,
6718 callee: true,
6719 arguments: true,
6720 arity: true
6721 };
6722 var FORWARD_REF_STATICS = {
6723 '$$typeof': true,
6724 render: true,
6725 defaultProps: true,
6726 displayName: true,
6727 propTypes: true
6728 };
6729 var MEMO_STATICS = {
6730 '$$typeof': true,
6731 compare: true,
6732 defaultProps: true,
6733 displayName: true,
6734 propTypes: true,
6735 type: true
6736 };
6737 var TYPE_STATICS = {};
6738 TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
6739 TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
6740
6741 function getStatics(component) {
6742 // React v16.11 and below
6743 if (reactIs.isMemo(component)) {
6744 return MEMO_STATICS;
6745 } // React v16.12 and above
6746
6747
6748 return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
6749 }
6750
6751 var defineProperty = Object.defineProperty;
6752 var getOwnPropertyNames = Object.getOwnPropertyNames;
6753 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
6754 var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
6755 var getPrototypeOf = Object.getPrototypeOf;
6756 var objectPrototype = Object.prototype;
6757 function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
6758 if (typeof sourceComponent !== 'string') {
6759 // don't hoist over string (html) components
6760 if (objectPrototype) {
6761 var inheritedComponent = getPrototypeOf(sourceComponent);
6762
6763 if (inheritedComponent && inheritedComponent !== objectPrototype) {
6764 hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
6765 }
6766 }
6767
6768 var keys = getOwnPropertyNames(sourceComponent);
6769
6770 if (getOwnPropertySymbols) {
6771 keys = keys.concat(getOwnPropertySymbols(sourceComponent));
6772 }
6773
6774 var targetStatics = getStatics(targetComponent);
6775 var sourceStatics = getStatics(sourceComponent);
6776
6777 for (var i = 0; i < keys.length; ++i) {
6778 var key = keys[i];
6779
6780 if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
6781 var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
6782
6783 try {
6784 // Avoid failures from read-only properties
6785 defineProperty(targetComponent, key, descriptor);
6786 } catch (e) {}
6787 }
6788 }
6789 }
6790
6791 return targetComponent;
6792 }
6793
6794 module.exports = hoistNonReactStatics;
6795
6796
6797 /***/ }),
6798
6799 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js":
6800 /*!*************************************************************************************************!*\
6801 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js ***!
6802 \*************************************************************************************************/
6803 /***/ ((__unused_webpack_module, exports) => {
6804
6805 "use strict";
6806 /** @license React v16.13.1
6807 * react-is.development.js
6808 *
6809 * Copyright (c) Facebook, Inc. and its affiliates.
6810 *
6811 * This source code is licensed under the MIT license found in the
6812 * LICENSE file in the root directory of this source tree.
6813 */
6814
6815
6816
6817
6818
6819 if (true) {
6820 (function() {
6821 'use strict';
6822
6823 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
6824 // nor polyfill, then a plain number is used for performance.
6825 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
6826 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
6827 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
6828 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
6829 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
6830 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
6831 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
6832 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
6833 // (unstable) APIs that have been removed. Can we remove the symbols?
6834
6835 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
6836 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
6837 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
6838 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
6839 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
6840 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
6841 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
6842 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
6843 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
6844 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
6845 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
6846
6847 function isValidElementType(type) {
6848 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
6849 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);
6850 }
6851
6852 function typeOf(object) {
6853 if (typeof object === 'object' && object !== null) {
6854 var $$typeof = object.$$typeof;
6855
6856 switch ($$typeof) {
6857 case REACT_ELEMENT_TYPE:
6858 var type = object.type;
6859
6860 switch (type) {
6861 case REACT_ASYNC_MODE_TYPE:
6862 case REACT_CONCURRENT_MODE_TYPE:
6863 case REACT_FRAGMENT_TYPE:
6864 case REACT_PROFILER_TYPE:
6865 case REACT_STRICT_MODE_TYPE:
6866 case REACT_SUSPENSE_TYPE:
6867 return type;
6868
6869 default:
6870 var $$typeofType = type && type.$$typeof;
6871
6872 switch ($$typeofType) {
6873 case REACT_CONTEXT_TYPE:
6874 case REACT_FORWARD_REF_TYPE:
6875 case REACT_LAZY_TYPE:
6876 case REACT_MEMO_TYPE:
6877 case REACT_PROVIDER_TYPE:
6878 return $$typeofType;
6879
6880 default:
6881 return $$typeof;
6882 }
6883
6884 }
6885
6886 case REACT_PORTAL_TYPE:
6887 return $$typeof;
6888 }
6889 }
6890
6891 return undefined;
6892 } // AsyncMode is deprecated along with isAsyncMode
6893
6894 var AsyncMode = REACT_ASYNC_MODE_TYPE;
6895 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
6896 var ContextConsumer = REACT_CONTEXT_TYPE;
6897 var ContextProvider = REACT_PROVIDER_TYPE;
6898 var Element = REACT_ELEMENT_TYPE;
6899 var ForwardRef = REACT_FORWARD_REF_TYPE;
6900 var Fragment = REACT_FRAGMENT_TYPE;
6901 var Lazy = REACT_LAZY_TYPE;
6902 var Memo = REACT_MEMO_TYPE;
6903 var Portal = REACT_PORTAL_TYPE;
6904 var Profiler = REACT_PROFILER_TYPE;
6905 var StrictMode = REACT_STRICT_MODE_TYPE;
6906 var Suspense = REACT_SUSPENSE_TYPE;
6907 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
6908
6909 function isAsyncMode(object) {
6910 {
6911 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
6912 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
6913
6914 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.');
6915 }
6916 }
6917
6918 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
6919 }
6920 function isConcurrentMode(object) {
6921 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
6922 }
6923 function isContextConsumer(object) {
6924 return typeOf(object) === REACT_CONTEXT_TYPE;
6925 }
6926 function isContextProvider(object) {
6927 return typeOf(object) === REACT_PROVIDER_TYPE;
6928 }
6929 function isElement(object) {
6930 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
6931 }
6932 function isForwardRef(object) {
6933 return typeOf(object) === REACT_FORWARD_REF_TYPE;
6934 }
6935 function isFragment(object) {
6936 return typeOf(object) === REACT_FRAGMENT_TYPE;
6937 }
6938 function isLazy(object) {
6939 return typeOf(object) === REACT_LAZY_TYPE;
6940 }
6941 function isMemo(object) {
6942 return typeOf(object) === REACT_MEMO_TYPE;
6943 }
6944 function isPortal(object) {
6945 return typeOf(object) === REACT_PORTAL_TYPE;
6946 }
6947 function isProfiler(object) {
6948 return typeOf(object) === REACT_PROFILER_TYPE;
6949 }
6950 function isStrictMode(object) {
6951 return typeOf(object) === REACT_STRICT_MODE_TYPE;
6952 }
6953 function isSuspense(object) {
6954 return typeOf(object) === REACT_SUSPENSE_TYPE;
6955 }
6956
6957 exports.AsyncMode = AsyncMode;
6958 exports.ConcurrentMode = ConcurrentMode;
6959 exports.ContextConsumer = ContextConsumer;
6960 exports.ContextProvider = ContextProvider;
6961 exports.Element = Element;
6962 exports.ForwardRef = ForwardRef;
6963 exports.Fragment = Fragment;
6964 exports.Lazy = Lazy;
6965 exports.Memo = Memo;
6966 exports.Portal = Portal;
6967 exports.Profiler = Profiler;
6968 exports.StrictMode = StrictMode;
6969 exports.Suspense = Suspense;
6970 exports.isAsyncMode = isAsyncMode;
6971 exports.isConcurrentMode = isConcurrentMode;
6972 exports.isContextConsumer = isContextConsumer;
6973 exports.isContextProvider = isContextProvider;
6974 exports.isElement = isElement;
6975 exports.isForwardRef = isForwardRef;
6976 exports.isFragment = isFragment;
6977 exports.isLazy = isLazy;
6978 exports.isMemo = isMemo;
6979 exports.isPortal = isPortal;
6980 exports.isProfiler = isProfiler;
6981 exports.isStrictMode = isStrictMode;
6982 exports.isSuspense = isSuspense;
6983 exports.isValidElementType = isValidElementType;
6984 exports.typeOf = typeOf;
6985 })();
6986 }
6987
6988
6989 /***/ }),
6990
6991 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js":
6992 /*!******************************************************************************!*\
6993 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/index.js ***!
6994 \******************************************************************************/
6995 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6996
6997 "use strict";
6998
6999
7000 if (false) {} else {
7001 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js");
7002 }
7003
7004
7005 /***/ }),
7006
7007 /***/ "../node_modules/html-to-image/es/apply-style.js":
7008 /*!*******************************************************!*\
7009 !*** ../node_modules/html-to-image/es/apply-style.js ***!
7010 \*******************************************************/
7011 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7012
7013 "use strict";
7014 __webpack_require__.r(__webpack_exports__);
7015 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7016 /* harmony export */ applyStyle: () => (/* binding */ applyStyle)
7017 /* harmony export */ });
7018 function applyStyle(node, options) {
7019 const { style } = node;
7020 if (options.backgroundColor) {
7021 style.backgroundColor = options.backgroundColor;
7022 }
7023 if (options.width) {
7024 style.width = `${options.width}px`;
7025 }
7026 if (options.height) {
7027 style.height = `${options.height}px`;
7028 }
7029 const manual = options.style;
7030 if (manual != null) {
7031 Object.keys(manual).forEach((key) => {
7032 style[key] = manual[key];
7033 });
7034 }
7035 return node;
7036 }
7037 //# sourceMappingURL=apply-style.js.map
7038
7039 /***/ }),
7040
7041 /***/ "../node_modules/html-to-image/es/clone-node.js":
7042 /*!******************************************************!*\
7043 !*** ../node_modules/html-to-image/es/clone-node.js ***!
7044 \******************************************************/
7045 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7046
7047 "use strict";
7048 __webpack_require__.r(__webpack_exports__);
7049 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7050 /* harmony export */ cloneNode: () => (/* binding */ cloneNode)
7051 /* harmony export */ });
7052 /* harmony import */ var _clone_pseudos__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-pseudos */ "../node_modules/html-to-image/es/clone-pseudos.js");
7053 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7054 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7055 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7056
7057
7058
7059
7060 async function cloneCanvasElement(canvas) {
7061 const dataURL = canvas.toDataURL();
7062 if (dataURL === 'data:,') {
7063 return canvas.cloneNode(false);
7064 }
7065 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7066 }
7067 async function cloneVideoElement(video, options) {
7068 if (video.currentSrc) {
7069 const canvas = document.createElement('canvas');
7070 const ctx = canvas.getContext('2d');
7071 canvas.width = video.clientWidth;
7072 canvas.height = video.clientHeight;
7073 ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
7074 const dataURL = canvas.toDataURL();
7075 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7076 }
7077 const poster = video.poster;
7078 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_2__.getMimeType)(poster);
7079 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_3__.resourceToDataURL)(poster, contentType, options);
7080 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7081 }
7082 async function cloneIFrameElement(iframe) {
7083 var _a;
7084 try {
7085 if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) {
7086 return (await cloneNode(iframe.contentDocument.body, {}, true));
7087 }
7088 }
7089 catch (_b) {
7090 // Failed to clone iframe
7091 }
7092 return iframe.cloneNode(false);
7093 }
7094 async function cloneSingleNode(node, options) {
7095 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLCanvasElement)) {
7096 return cloneCanvasElement(node);
7097 }
7098 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLVideoElement)) {
7099 return cloneVideoElement(node, options);
7100 }
7101 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLIFrameElement)) {
7102 return cloneIFrameElement(node);
7103 }
7104 return node.cloneNode(false);
7105 }
7106 const isSlotElement = (node) => node.tagName != null && node.tagName.toUpperCase() === 'SLOT';
7107 async function cloneChildren(nativeNode, clonedNode, options) {
7108 var _a, _b;
7109 let children = [];
7110 if (isSlotElement(nativeNode) && nativeNode.assignedNodes) {
7111 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.assignedNodes());
7112 }
7113 else if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7114 ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {
7115 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.contentDocument.body.childNodes);
7116 }
7117 else {
7118 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);
7119 }
7120 if (children.length === 0 ||
7121 (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLVideoElement)) {
7122 return clonedNode;
7123 }
7124 await children.reduce((deferred, child) => deferred
7125 .then(() => cloneNode(child, options))
7126 .then((clonedChild) => {
7127 if (clonedChild) {
7128 clonedNode.appendChild(clonedChild);
7129 }
7130 }), Promise.resolve());
7131 return clonedNode;
7132 }
7133 function cloneCSSStyle(nativeNode, clonedNode) {
7134 const targetStyle = clonedNode.style;
7135 if (!targetStyle) {
7136 return;
7137 }
7138 const sourceStyle = window.getComputedStyle(nativeNode);
7139 if (sourceStyle.cssText) {
7140 targetStyle.cssText = sourceStyle.cssText;
7141 targetStyle.transformOrigin = sourceStyle.transformOrigin;
7142 }
7143 else {
7144 (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(sourceStyle).forEach((name) => {
7145 let value = sourceStyle.getPropertyValue(name);
7146 if (name === 'font-size' && value.endsWith('px')) {
7147 const reducedFont = Math.floor(parseFloat(value.substring(0, value.length - 2))) - 0.1;
7148 value = `${reducedFont}px`;
7149 }
7150 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7151 name === 'display' &&
7152 value === 'inline') {
7153 value = 'block';
7154 }
7155 if (name === 'd' && clonedNode.getAttribute('d')) {
7156 value = `path(${clonedNode.getAttribute('d')})`;
7157 }
7158 targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));
7159 });
7160 }
7161 }
7162 function cloneInputValue(nativeNode, clonedNode) {
7163 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLTextAreaElement)) {
7164 clonedNode.innerHTML = nativeNode.value;
7165 }
7166 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLInputElement)) {
7167 clonedNode.setAttribute('value', nativeNode.value);
7168 }
7169 }
7170 function cloneSelectValue(nativeNode, clonedNode) {
7171 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLSelectElement)) {
7172 const clonedSelect = clonedNode;
7173 const selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute('value'));
7174 if (selectedOption) {
7175 selectedOption.setAttribute('selected', '');
7176 }
7177 }
7178 }
7179 function decorate(nativeNode, clonedNode) {
7180 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7181 cloneCSSStyle(nativeNode, clonedNode);
7182 (0,_clone_pseudos__WEBPACK_IMPORTED_MODULE_0__.clonePseudoElements)(nativeNode, clonedNode);
7183 cloneInputValue(nativeNode, clonedNode);
7184 cloneSelectValue(nativeNode, clonedNode);
7185 }
7186 return clonedNode;
7187 }
7188 async function ensureSVGSymbols(clone, options) {
7189 const uses = clone.querySelectorAll ? clone.querySelectorAll('use') : [];
7190 if (uses.length === 0) {
7191 return clone;
7192 }
7193 const processedDefs = {};
7194 for (let i = 0; i < uses.length; i++) {
7195 const use = uses[i];
7196 const id = use.getAttribute('xlink:href');
7197 if (id) {
7198 const exist = clone.querySelector(id);
7199 const definition = document.querySelector(id);
7200 if (!exist && definition && !processedDefs[id]) {
7201 // eslint-disable-next-line no-await-in-loop
7202 processedDefs[id] = (await cloneNode(definition, options, true));
7203 }
7204 }
7205 }
7206 const nodes = Object.values(processedDefs);
7207 if (nodes.length) {
7208 const ns = 'http://www.w3.org/1999/xhtml';
7209 const svg = document.createElementNS(ns, 'svg');
7210 svg.setAttribute('xmlns', ns);
7211 svg.style.position = 'absolute';
7212 svg.style.width = '0';
7213 svg.style.height = '0';
7214 svg.style.overflow = 'hidden';
7215 svg.style.display = 'none';
7216 const defs = document.createElementNS(ns, 'defs');
7217 svg.appendChild(defs);
7218 for (let i = 0; i < nodes.length; i++) {
7219 defs.appendChild(nodes[i]);
7220 }
7221 clone.appendChild(svg);
7222 }
7223 return clone;
7224 }
7225 async function cloneNode(node, options, isRoot) {
7226 if (!isRoot && options.filter && !options.filter(node)) {
7227 return null;
7228 }
7229 return Promise.resolve(node)
7230 .then((clonedNode) => cloneSingleNode(clonedNode, options))
7231 .then((clonedNode) => cloneChildren(node, clonedNode, options))
7232 .then((clonedNode) => decorate(node, clonedNode))
7233 .then((clonedNode) => ensureSVGSymbols(clonedNode, options));
7234 }
7235 //# sourceMappingURL=clone-node.js.map
7236
7237 /***/ }),
7238
7239 /***/ "../node_modules/html-to-image/es/clone-pseudos.js":
7240 /*!*********************************************************!*\
7241 !*** ../node_modules/html-to-image/es/clone-pseudos.js ***!
7242 \*********************************************************/
7243 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7244
7245 "use strict";
7246 __webpack_require__.r(__webpack_exports__);
7247 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7248 /* harmony export */ clonePseudoElements: () => (/* binding */ clonePseudoElements)
7249 /* harmony export */ });
7250 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7251
7252 function formatCSSText(style) {
7253 const content = style.getPropertyValue('content');
7254 return `${style.cssText} content: '${content.replace(/'|"/g, '')}';`;
7255 }
7256 function formatCSSProperties(style) {
7257 return (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(style)
7258 .map((name) => {
7259 const value = style.getPropertyValue(name);
7260 const priority = style.getPropertyPriority(name);
7261 return `${name}: ${value}${priority ? ' !important' : ''};`;
7262 })
7263 .join(' ');
7264 }
7265 function getPseudoElementStyle(className, pseudo, style) {
7266 const selector = `.${className}:${pseudo}`;
7267 const cssText = style.cssText
7268 ? formatCSSText(style)
7269 : formatCSSProperties(style);
7270 return document.createTextNode(`${selector}{${cssText}}`);
7271 }
7272 function clonePseudoElement(nativeNode, clonedNode, pseudo) {
7273 const style = window.getComputedStyle(nativeNode, pseudo);
7274 const content = style.getPropertyValue('content');
7275 if (content === '' || content === 'none') {
7276 return;
7277 }
7278 const className = (0,_util__WEBPACK_IMPORTED_MODULE_0__.uuid)();
7279 try {
7280 clonedNode.className = `${clonedNode.className} ${className}`;
7281 }
7282 catch (err) {
7283 return;
7284 }
7285 const styleElement = document.createElement('style');
7286 styleElement.appendChild(getPseudoElementStyle(className, pseudo, style));
7287 clonedNode.appendChild(styleElement);
7288 }
7289 function clonePseudoElements(nativeNode, clonedNode) {
7290 clonePseudoElement(nativeNode, clonedNode, ':before');
7291 clonePseudoElement(nativeNode, clonedNode, ':after');
7292 }
7293 //# sourceMappingURL=clone-pseudos.js.map
7294
7295 /***/ }),
7296
7297 /***/ "../node_modules/html-to-image/es/dataurl.js":
7298 /*!***************************************************!*\
7299 !*** ../node_modules/html-to-image/es/dataurl.js ***!
7300 \***************************************************/
7301 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7302
7303 "use strict";
7304 __webpack_require__.r(__webpack_exports__);
7305 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7306 /* harmony export */ fetchAsDataURL: () => (/* binding */ fetchAsDataURL),
7307 /* harmony export */ isDataUrl: () => (/* binding */ isDataUrl),
7308 /* harmony export */ makeDataUrl: () => (/* binding */ makeDataUrl),
7309 /* harmony export */ resourceToDataURL: () => (/* binding */ resourceToDataURL)
7310 /* harmony export */ });
7311 function getContentFromDataUrl(dataURL) {
7312 return dataURL.split(/,/)[1];
7313 }
7314 function isDataUrl(url) {
7315 return url.search(/^(data:)/) !== -1;
7316 }
7317 function makeDataUrl(content, mimeType) {
7318 return `data:${mimeType};base64,${content}`;
7319 }
7320 async function fetchAsDataURL(url, init, process) {
7321 const res = await fetch(url, init);
7322 if (res.status === 404) {
7323 throw new Error(`Resource "${res.url}" not found`);
7324 }
7325 const blob = await res.blob();
7326 return new Promise((resolve, reject) => {
7327 const reader = new FileReader();
7328 reader.onerror = reject;
7329 reader.onloadend = () => {
7330 try {
7331 resolve(process({ res, result: reader.result }));
7332 }
7333 catch (error) {
7334 reject(error);
7335 }
7336 };
7337 reader.readAsDataURL(blob);
7338 });
7339 }
7340 const cache = {};
7341 function getCacheKey(url, contentType, includeQueryParams) {
7342 let key = url.replace(/\?.*/, '');
7343 if (includeQueryParams) {
7344 key = url;
7345 }
7346 // font resource
7347 if (/ttf|otf|eot|woff2?/i.test(key)) {
7348 key = key.replace(/.*\//, '');
7349 }
7350 return contentType ? `[${contentType}]${key}` : key;
7351 }
7352 async function resourceToDataURL(resourceUrl, contentType, options) {
7353 const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);
7354 if (cache[cacheKey] != null) {
7355 return cache[cacheKey];
7356 }
7357 // ref: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache
7358 if (options.cacheBust) {
7359 // eslint-disable-next-line no-param-reassign
7360 resourceUrl += (/\?/.test(resourceUrl) ? '&' : '?') + new Date().getTime();
7361 }
7362 let dataURL;
7363 try {
7364 const content = await fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result }) => {
7365 if (!contentType) {
7366 // eslint-disable-next-line no-param-reassign
7367 contentType = res.headers.get('Content-Type') || '';
7368 }
7369 return getContentFromDataUrl(result);
7370 });
7371 dataURL = makeDataUrl(content, contentType);
7372 }
7373 catch (error) {
7374 dataURL = options.imagePlaceholder || '';
7375 let msg = `Failed to fetch resource: ${resourceUrl}`;
7376 if (error) {
7377 msg = typeof error === 'string' ? error : error.message;
7378 }
7379 if (msg) {
7380 console.warn(msg);
7381 }
7382 }
7383 cache[cacheKey] = dataURL;
7384 return dataURL;
7385 }
7386 //# sourceMappingURL=dataurl.js.map
7387
7388 /***/ }),
7389
7390 /***/ "../node_modules/html-to-image/es/embed-images.js":
7391 /*!********************************************************!*\
7392 !*** ../node_modules/html-to-image/es/embed-images.js ***!
7393 \********************************************************/
7394 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7395
7396 "use strict";
7397 __webpack_require__.r(__webpack_exports__);
7398 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7399 /* harmony export */ embedImages: () => (/* binding */ embedImages)
7400 /* harmony export */ });
7401 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7402 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7403 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7404 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7405
7406
7407
7408
7409 async function embedProp(propName, node, options) {
7410 var _a;
7411 const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);
7412 if (propValue) {
7413 const cssString = await (0,_embed_resources__WEBPACK_IMPORTED_MODULE_0__.embedResources)(propValue, null, options);
7414 node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));
7415 return true;
7416 }
7417 return false;
7418 }
7419 async function embedBackground(clonedNode, options) {
7420 if (!(await embedProp('background', clonedNode, options))) {
7421 await embedProp('background-image', clonedNode, options);
7422 }
7423 if (!(await embedProp('mask', clonedNode, options))) {
7424 await embedProp('mask-image', clonedNode, options);
7425 }
7426 }
7427 async function embedImageNode(clonedNode, options) {
7428 const isImageElement = (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, HTMLImageElement);
7429 if (!(isImageElement && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.src)) &&
7430 !((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, SVGImageElement) &&
7431 !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.href.baseVal))) {
7432 return;
7433 }
7434 const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;
7435 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(url, (0,_mimes__WEBPACK_IMPORTED_MODULE_3__.getMimeType)(url), options);
7436 await new Promise((resolve, reject) => {
7437 clonedNode.onload = resolve;
7438 clonedNode.onerror = reject;
7439 const image = clonedNode;
7440 if (image.decode) {
7441 image.decode = resolve;
7442 }
7443 if (image.loading === 'lazy') {
7444 image.loading = 'eager';
7445 }
7446 if (isImageElement) {
7447 clonedNode.srcset = '';
7448 clonedNode.src = dataURL;
7449 }
7450 else {
7451 clonedNode.href.baseVal = dataURL;
7452 }
7453 });
7454 }
7455 async function embedChildren(clonedNode, options) {
7456 const children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(clonedNode.childNodes);
7457 const deferreds = children.map((child) => embedImages(child, options));
7458 await Promise.all(deferreds).then(() => clonedNode);
7459 }
7460 async function embedImages(clonedNode, options) {
7461 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7462 await embedBackground(clonedNode, options);
7463 await embedImageNode(clonedNode, options);
7464 await embedChildren(clonedNode, options);
7465 }
7466 }
7467 //# sourceMappingURL=embed-images.js.map
7468
7469 /***/ }),
7470
7471 /***/ "../node_modules/html-to-image/es/embed-resources.js":
7472 /*!***********************************************************!*\
7473 !*** ../node_modules/html-to-image/es/embed-resources.js ***!
7474 \***********************************************************/
7475 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7476
7477 "use strict";
7478 __webpack_require__.r(__webpack_exports__);
7479 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7480 /* harmony export */ embed: () => (/* binding */ embed),
7481 /* harmony export */ embedResources: () => (/* binding */ embedResources),
7482 /* harmony export */ parseURLs: () => (/* binding */ parseURLs),
7483 /* harmony export */ shouldEmbed: () => (/* binding */ shouldEmbed)
7484 /* harmony export */ });
7485 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7486 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7487 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7488
7489
7490
7491 const URL_REGEX = /url\((['"]?)([^'"]+?)\1\)/g;
7492 const URL_WITH_FORMAT_REGEX = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
7493 const FONT_SRC_REGEX = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
7494 function toRegex(url) {
7495 // eslint-disable-next-line no-useless-escape
7496 const escaped = url.replace(/([.*+?^${}()|\[\]\/\\])/g, '\\$1');
7497 return new RegExp(`(url\\(['"]?)(${escaped})(['"]?\\))`, 'g');
7498 }
7499 function parseURLs(cssText) {
7500 const urls = [];
7501 cssText.replace(URL_REGEX, (raw, quotation, url) => {
7502 urls.push(url);
7503 return raw;
7504 });
7505 return urls.filter((url) => !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(url));
7506 }
7507 async function embed(cssText, resourceURL, baseURL, options, getContentFromUrl) {
7508 try {
7509 const resolvedURL = baseURL ? (0,_util__WEBPACK_IMPORTED_MODULE_0__.resolveUrl)(resourceURL, baseURL) : resourceURL;
7510 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_1__.getMimeType)(resourceURL);
7511 let dataURL;
7512 if (getContentFromUrl) {
7513 const content = await getContentFromUrl(resolvedURL);
7514 dataURL = (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.makeDataUrl)(content, contentType);
7515 }
7516 else {
7517 dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(resolvedURL, contentType, options);
7518 }
7519 return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);
7520 }
7521 catch (error) {
7522 // pass
7523 }
7524 return cssText;
7525 }
7526 function filterPreferredFontFormat(str, { preferredFontFormat }) {
7527 return !preferredFontFormat
7528 ? str
7529 : str.replace(FONT_SRC_REGEX, (match) => {
7530 // eslint-disable-next-line no-constant-condition
7531 while (true) {
7532 const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];
7533 if (!format) {
7534 return '';
7535 }
7536 if (format === preferredFontFormat) {
7537 return `src: ${src};`;
7538 }
7539 }
7540 });
7541 }
7542 function shouldEmbed(url) {
7543 return url.search(URL_REGEX) !== -1;
7544 }
7545 async function embedResources(cssText, baseUrl, options) {
7546 if (!shouldEmbed(cssText)) {
7547 return cssText;
7548 }
7549 const filteredCSSText = filterPreferredFontFormat(cssText, options);
7550 const urls = parseURLs(filteredCSSText);
7551 return urls.reduce((deferred, url) => deferred.then((css) => embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));
7552 }
7553 //# sourceMappingURL=embed-resources.js.map
7554
7555 /***/ }),
7556
7557 /***/ "../node_modules/html-to-image/es/embed-webfonts.js":
7558 /*!**********************************************************!*\
7559 !*** ../node_modules/html-to-image/es/embed-webfonts.js ***!
7560 \**********************************************************/
7561 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7562
7563 "use strict";
7564 __webpack_require__.r(__webpack_exports__);
7565 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7566 /* harmony export */ embedWebFonts: () => (/* binding */ embedWebFonts),
7567 /* harmony export */ getWebFontCSS: () => (/* binding */ getWebFontCSS)
7568 /* harmony export */ });
7569 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7570 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7571 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7572
7573
7574
7575 const cssFetchCache = {};
7576 async function fetchCSS(url) {
7577 let cache = cssFetchCache[url];
7578 if (cache != null) {
7579 return cache;
7580 }
7581 const res = await fetch(url);
7582 const cssText = await res.text();
7583 cache = { url, cssText };
7584 cssFetchCache[url] = cache;
7585 return cache;
7586 }
7587 async function embedFonts(data, options) {
7588 let cssText = data.cssText;
7589 const regexUrl = /url\(["']?([^"')]+)["']?\)/g;
7590 const fontLocs = cssText.match(/url\([^)]+\)/g) || [];
7591 const loadFonts = fontLocs.map(async (loc) => {
7592 let url = loc.replace(regexUrl, '$1');
7593 if (!url.startsWith('https://')) {
7594 url = new URL(url, data.url).href;
7595 }
7596 return (0,_dataurl__WEBPACK_IMPORTED_MODULE_1__.fetchAsDataURL)(url, options.fetchRequestInit, ({ result }) => {
7597 cssText = cssText.replace(loc, `url(${result})`);
7598 return [loc, result];
7599 });
7600 });
7601 return Promise.all(loadFonts).then(() => cssText);
7602 }
7603 function parseCSS(source) {
7604 if (source == null) {
7605 return [];
7606 }
7607 const result = [];
7608 const commentsRegex = /(\/\*[\s\S]*?\*\/)/gi;
7609 // strip out comments
7610 let cssText = source.replace(commentsRegex, '');
7611 // eslint-disable-next-line prefer-regex-literals
7612 const keyframesRegex = new RegExp('((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})', 'gi');
7613 // eslint-disable-next-line no-constant-condition
7614 while (true) {
7615 const matches = keyframesRegex.exec(cssText);
7616 if (matches === null) {
7617 break;
7618 }
7619 result.push(matches[0]);
7620 }
7621 cssText = cssText.replace(keyframesRegex, '');
7622 const importRegex = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi;
7623 // to match css & media queries together
7624 const combinedCSSRegex = '((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]' +
7625 '*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})';
7626 // unified regex
7627 const unifiedRegex = new RegExp(combinedCSSRegex, 'gi');
7628 // eslint-disable-next-line no-constant-condition
7629 while (true) {
7630 let matches = importRegex.exec(cssText);
7631 if (matches === null) {
7632 matches = unifiedRegex.exec(cssText);
7633 if (matches === null) {
7634 break;
7635 }
7636 else {
7637 importRegex.lastIndex = unifiedRegex.lastIndex;
7638 }
7639 }
7640 else {
7641 unifiedRegex.lastIndex = importRegex.lastIndex;
7642 }
7643 result.push(matches[0]);
7644 }
7645 return result;
7646 }
7647 async function getCSSRules(styleSheets, options) {
7648 const ret = [];
7649 const deferreds = [];
7650 // First loop inlines imports
7651 styleSheets.forEach((sheet) => {
7652 if ('cssRules' in sheet) {
7653 try {
7654 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item, index) => {
7655 if (item.type === CSSRule.IMPORT_RULE) {
7656 let importIndex = index + 1;
7657 const url = item.href;
7658 const deferred = fetchCSS(url)
7659 .then((metadata) => embedFonts(metadata, options))
7660 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7661 try {
7662 sheet.insertRule(rule, rule.startsWith('@import')
7663 ? (importIndex += 1)
7664 : sheet.cssRules.length);
7665 }
7666 catch (error) {
7667 console.error('Error inserting rule from remote css', {
7668 rule,
7669 error,
7670 });
7671 }
7672 }))
7673 .catch((e) => {
7674 console.error('Error loading remote css', e.toString());
7675 });
7676 deferreds.push(deferred);
7677 }
7678 });
7679 }
7680 catch (e) {
7681 const inline = styleSheets.find((a) => a.href == null) || document.styleSheets[0];
7682 if (sheet.href != null) {
7683 deferreds.push(fetchCSS(sheet.href)
7684 .then((metadata) => embedFonts(metadata, options))
7685 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7686 inline.insertRule(rule, sheet.cssRules.length);
7687 }))
7688 .catch((err) => {
7689 console.error('Error loading remote stylesheet', err);
7690 }));
7691 }
7692 console.error('Error inlining remote css file', e);
7693 }
7694 }
7695 });
7696 return Promise.all(deferreds).then(() => {
7697 // Second loop parses rules
7698 styleSheets.forEach((sheet) => {
7699 if ('cssRules' in sheet) {
7700 try {
7701 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item) => {
7702 ret.push(item);
7703 });
7704 }
7705 catch (e) {
7706 console.error(`Error while reading CSS rules from ${sheet.href}`, e);
7707 }
7708 }
7709 });
7710 return ret;
7711 });
7712 }
7713 function getWebFontRules(cssRules) {
7714 return cssRules
7715 .filter((rule) => rule.type === CSSRule.FONT_FACE_RULE)
7716 .filter((rule) => (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.shouldEmbed)(rule.style.getPropertyValue('src')));
7717 }
7718 async function parseWebFontRules(node, options) {
7719 if (node.ownerDocument == null) {
7720 throw new Error('Provided element is not within a Document');
7721 }
7722 const styleSheets = (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(node.ownerDocument.styleSheets);
7723 const cssRules = await getCSSRules(styleSheets, options);
7724 return getWebFontRules(cssRules);
7725 }
7726 async function getWebFontCSS(node, options) {
7727 const rules = await parseWebFontRules(node, options);
7728 const cssTexts = await Promise.all(rules.map((rule) => {
7729 const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;
7730 return (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.embedResources)(rule.cssText, baseUrl, options);
7731 }));
7732 return cssTexts.join('\n');
7733 }
7734 async function embedWebFonts(clonedNode, options) {
7735 const cssText = options.fontEmbedCSS != null
7736 ? options.fontEmbedCSS
7737 : options.skipFonts
7738 ? null
7739 : await getWebFontCSS(clonedNode, options);
7740 if (cssText) {
7741 const styleNode = document.createElement('style');
7742 const sytleContent = document.createTextNode(cssText);
7743 styleNode.appendChild(sytleContent);
7744 if (clonedNode.firstChild) {
7745 clonedNode.insertBefore(styleNode, clonedNode.firstChild);
7746 }
7747 else {
7748 clonedNode.appendChild(styleNode);
7749 }
7750 }
7751 }
7752 //# sourceMappingURL=embed-webfonts.js.map
7753
7754 /***/ }),
7755
7756 /***/ "../node_modules/html-to-image/es/index.js":
7757 /*!*************************************************!*\
7758 !*** ../node_modules/html-to-image/es/index.js ***!
7759 \*************************************************/
7760 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7761
7762 "use strict";
7763 __webpack_require__.r(__webpack_exports__);
7764 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7765 /* harmony export */ getFontEmbedCSS: () => (/* binding */ getFontEmbedCSS),
7766 /* harmony export */ toBlob: () => (/* binding */ toBlob),
7767 /* harmony export */ toCanvas: () => (/* binding */ toCanvas),
7768 /* harmony export */ toJpeg: () => (/* binding */ toJpeg),
7769 /* harmony export */ toPixelData: () => (/* binding */ toPixelData),
7770 /* harmony export */ toPng: () => (/* binding */ toPng),
7771 /* harmony export */ toSvg: () => (/* binding */ toSvg)
7772 /* harmony export */ });
7773 /* harmony import */ var _clone_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-node */ "../node_modules/html-to-image/es/clone-node.js");
7774 /* harmony import */ var _embed_images__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./embed-images */ "../node_modules/html-to-image/es/embed-images.js");
7775 /* harmony import */ var _apply_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apply-style */ "../node_modules/html-to-image/es/apply-style.js");
7776 /* harmony import */ var _embed_webfonts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./embed-webfonts */ "../node_modules/html-to-image/es/embed-webfonts.js");
7777 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7778
7779
7780
7781
7782
7783 async function toSvg(node, options = {}) {
7784 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7785 const clonedNode = (await (0,_clone_node__WEBPACK_IMPORTED_MODULE_0__.cloneNode)(node, options, true));
7786 await (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.embedWebFonts)(clonedNode, options);
7787 await (0,_embed_images__WEBPACK_IMPORTED_MODULE_1__.embedImages)(clonedNode, options);
7788 (0,_apply_style__WEBPACK_IMPORTED_MODULE_2__.applyStyle)(clonedNode, options);
7789 const datauri = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.nodeToDataURL)(clonedNode, width, height);
7790 return datauri;
7791 }
7792 async function toCanvas(node, options = {}) {
7793 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7794 const svg = await toSvg(node, options);
7795 const img = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.createImage)(svg);
7796 const canvas = document.createElement('canvas');
7797 const context = canvas.getContext('2d');
7798 const ratio = options.pixelRatio || (0,_util__WEBPACK_IMPORTED_MODULE_4__.getPixelRatio)();
7799 const canvasWidth = options.canvasWidth || width;
7800 const canvasHeight = options.canvasHeight || height;
7801 canvas.width = canvasWidth * ratio;
7802 canvas.height = canvasHeight * ratio;
7803 if (!options.skipAutoScale) {
7804 (0,_util__WEBPACK_IMPORTED_MODULE_4__.checkCanvasDimensions)(canvas);
7805 }
7806 canvas.style.width = `${canvasWidth}`;
7807 canvas.style.height = `${canvasHeight}`;
7808 if (options.backgroundColor) {
7809 context.fillStyle = options.backgroundColor;
7810 context.fillRect(0, 0, canvas.width, canvas.height);
7811 }
7812 context.drawImage(img, 0, 0, canvas.width, canvas.height);
7813 return canvas;
7814 }
7815 async function toPixelData(node, options = {}) {
7816 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7817 const canvas = await toCanvas(node, options);
7818 const ctx = canvas.getContext('2d');
7819 return ctx.getImageData(0, 0, width, height).data;
7820 }
7821 async function toPng(node, options = {}) {
7822 const canvas = await toCanvas(node, options);
7823 return canvas.toDataURL();
7824 }
7825 async function toJpeg(node, options = {}) {
7826 const canvas = await toCanvas(node, options);
7827 return canvas.toDataURL('image/jpeg', options.quality || 1);
7828 }
7829 async function toBlob(node, options = {}) {
7830 const canvas = await toCanvas(node, options);
7831 const blob = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.canvasToBlob)(canvas);
7832 return blob;
7833 }
7834 async function getFontEmbedCSS(node, options = {}) {
7835 return (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.getWebFontCSS)(node, options);
7836 }
7837 //# sourceMappingURL=index.js.map
7838
7839 /***/ }),
7840
7841 /***/ "../node_modules/html-to-image/es/mimes.js":
7842 /*!*************************************************!*\
7843 !*** ../node_modules/html-to-image/es/mimes.js ***!
7844 \*************************************************/
7845 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7846
7847 "use strict";
7848 __webpack_require__.r(__webpack_exports__);
7849 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7850 /* harmony export */ getMimeType: () => (/* binding */ getMimeType)
7851 /* harmony export */ });
7852 const WOFF = 'application/font-woff';
7853 const JPEG = 'image/jpeg';
7854 const mimes = {
7855 woff: WOFF,
7856 woff2: WOFF,
7857 ttf: 'application/font-truetype',
7858 eot: 'application/vnd.ms-fontobject',
7859 png: 'image/png',
7860 jpg: JPEG,
7861 jpeg: JPEG,
7862 gif: 'image/gif',
7863 tiff: 'image/tiff',
7864 svg: 'image/svg+xml',
7865 webp: 'image/webp',
7866 };
7867 function getExtension(url) {
7868 const match = /\.([^./]*?)$/g.exec(url);
7869 return match ? match[1] : '';
7870 }
7871 function getMimeType(url) {
7872 const extension = getExtension(url).toLowerCase();
7873 return mimes[extension] || '';
7874 }
7875 //# sourceMappingURL=mimes.js.map
7876
7877 /***/ }),
7878
7879 /***/ "../node_modules/html-to-image/es/util.js":
7880 /*!************************************************!*\
7881 !*** ../node_modules/html-to-image/es/util.js ***!
7882 \************************************************/
7883 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7884
7885 "use strict";
7886 __webpack_require__.r(__webpack_exports__);
7887 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7888 /* harmony export */ canvasToBlob: () => (/* binding */ canvasToBlob),
7889 /* harmony export */ checkCanvasDimensions: () => (/* binding */ checkCanvasDimensions),
7890 /* harmony export */ createImage: () => (/* binding */ createImage),
7891 /* harmony export */ delay: () => (/* binding */ delay),
7892 /* harmony export */ getImageSize: () => (/* binding */ getImageSize),
7893 /* harmony export */ getPixelRatio: () => (/* binding */ getPixelRatio),
7894 /* harmony export */ isInstanceOfElement: () => (/* binding */ isInstanceOfElement),
7895 /* harmony export */ nodeToDataURL: () => (/* binding */ nodeToDataURL),
7896 /* harmony export */ resolveUrl: () => (/* binding */ resolveUrl),
7897 /* harmony export */ svgToDataURL: () => (/* binding */ svgToDataURL),
7898 /* harmony export */ toArray: () => (/* binding */ toArray),
7899 /* harmony export */ uuid: () => (/* binding */ uuid)
7900 /* harmony export */ });
7901 function resolveUrl(url, baseUrl) {
7902 // url is absolute already
7903 if (url.match(/^[a-z]+:\/\//i)) {
7904 return url;
7905 }
7906 // url is absolute already, without protocol
7907 if (url.match(/^\/\//)) {
7908 return window.location.protocol + url;
7909 }
7910 // dataURI, mailto:, tel:, etc.
7911 if (url.match(/^[a-z]+:/i)) {
7912 return url;
7913 }
7914 const doc = document.implementation.createHTMLDocument();
7915 const base = doc.createElement('base');
7916 const a = doc.createElement('a');
7917 doc.head.appendChild(base);
7918 doc.body.appendChild(a);
7919 if (baseUrl) {
7920 base.href = baseUrl;
7921 }
7922 a.href = url;
7923 return a.href;
7924 }
7925 const uuid = (() => {
7926 // generate uuid for className of pseudo elements.
7927 // We should not use GUIDs, otherwise pseudo elements sometimes cannot be captured.
7928 let counter = 0;
7929 // ref: http://stackoverflow.com/a/6248722/2519373
7930 const random = () =>
7931 // eslint-disable-next-line no-bitwise
7932 `0000${((Math.random() * 36 ** 4) << 0).toString(36)}`.slice(-4);
7933 return () => {
7934 counter += 1;
7935 return `u${random()}${counter}`;
7936 };
7937 })();
7938 function delay(ms) {
7939 return (args) => new Promise((resolve) => {
7940 setTimeout(() => resolve(args), ms);
7941 });
7942 }
7943 function toArray(arrayLike) {
7944 const arr = [];
7945 for (let i = 0, l = arrayLike.length; i < l; i++) {
7946 arr.push(arrayLike[i]);
7947 }
7948 return arr;
7949 }
7950 function px(node, styleProperty) {
7951 const win = node.ownerDocument.defaultView || window;
7952 const val = win.getComputedStyle(node).getPropertyValue(styleProperty);
7953 return val ? parseFloat(val.replace('px', '')) : 0;
7954 }
7955 function getNodeWidth(node) {
7956 const leftBorder = px(node, 'border-left-width');
7957 const rightBorder = px(node, 'border-right-width');
7958 return node.clientWidth + leftBorder + rightBorder;
7959 }
7960 function getNodeHeight(node) {
7961 const topBorder = px(node, 'border-top-width');
7962 const bottomBorder = px(node, 'border-bottom-width');
7963 return node.clientHeight + topBorder + bottomBorder;
7964 }
7965 function getImageSize(targetNode, options = {}) {
7966 const width = options.width || getNodeWidth(targetNode);
7967 const height = options.height || getNodeHeight(targetNode);
7968 return { width, height };
7969 }
7970 function getPixelRatio() {
7971 let ratio;
7972 let FINAL_PROCESS;
7973 try {
7974 FINAL_PROCESS = process;
7975 }
7976 catch (e) {
7977 // pass
7978 }
7979 const val = FINAL_PROCESS && FINAL_PROCESS.env
7980 ? FINAL_PROCESS.env.devicePixelRatio
7981 : null;
7982 if (val) {
7983 ratio = parseInt(val, 10);
7984 if (Number.isNaN(ratio)) {
7985 ratio = 1;
7986 }
7987 }
7988 return ratio || window.devicePixelRatio || 1;
7989 }
7990 // @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas#maximum_canvas_size
7991 const canvasDimensionLimit = 16384;
7992 function checkCanvasDimensions(canvas) {
7993 if (canvas.width > canvasDimensionLimit ||
7994 canvas.height > canvasDimensionLimit) {
7995 if (canvas.width > canvasDimensionLimit &&
7996 canvas.height > canvasDimensionLimit) {
7997 if (canvas.width > canvas.height) {
7998 canvas.height *= canvasDimensionLimit / canvas.width;
7999 canvas.width = canvasDimensionLimit;
8000 }
8001 else {
8002 canvas.width *= canvasDimensionLimit / canvas.height;
8003 canvas.height = canvasDimensionLimit;
8004 }
8005 }
8006 else if (canvas.width > canvasDimensionLimit) {
8007 canvas.height *= canvasDimensionLimit / canvas.width;
8008 canvas.width = canvasDimensionLimit;
8009 }
8010 else {
8011 canvas.width *= canvasDimensionLimit / canvas.height;
8012 canvas.height = canvasDimensionLimit;
8013 }
8014 }
8015 }
8016 function canvasToBlob(canvas, options = {}) {
8017 if (canvas.toBlob) {
8018 return new Promise((resolve) => {
8019 canvas.toBlob(resolve, options.type ? options.type : 'image/png', options.quality ? options.quality : 1);
8020 });
8021 }
8022 return new Promise((resolve) => {
8023 const binaryString = window.atob(canvas
8024 .toDataURL(options.type ? options.type : undefined, options.quality ? options.quality : undefined)
8025 .split(',')[1]);
8026 const len = binaryString.length;
8027 const binaryArray = new Uint8Array(len);
8028 for (let i = 0; i < len; i += 1) {
8029 binaryArray[i] = binaryString.charCodeAt(i);
8030 }
8031 resolve(new Blob([binaryArray], {
8032 type: options.type ? options.type : 'image/png',
8033 }));
8034 });
8035 }
8036 function createImage(url) {
8037 return new Promise((resolve, reject) => {
8038 const img = new Image();
8039 img.decode = () => resolve(img);
8040 img.onload = () => resolve(img);
8041 img.onerror = reject;
8042 img.crossOrigin = 'anonymous';
8043 img.decoding = 'async';
8044 img.src = url;
8045 });
8046 }
8047 async function svgToDataURL(svg) {
8048 return Promise.resolve()
8049 .then(() => new XMLSerializer().serializeToString(svg))
8050 .then(encodeURIComponent)
8051 .then((html) => `data:image/svg+xml;charset=utf-8,${html}`);
8052 }
8053 async function nodeToDataURL(node, width, height) {
8054 const xmlns = 'http://www.w3.org/2000/svg';
8055 const svg = document.createElementNS(xmlns, 'svg');
8056 const foreignObject = document.createElementNS(xmlns, 'foreignObject');
8057 svg.setAttribute('width', `${width}`);
8058 svg.setAttribute('height', `${height}`);
8059 svg.setAttribute('viewBox', `0 0 ${width} ${height}`);
8060 foreignObject.setAttribute('width', '100%');
8061 foreignObject.setAttribute('height', '100%');
8062 foreignObject.setAttribute('x', '0');
8063 foreignObject.setAttribute('y', '0');
8064 foreignObject.setAttribute('externalResourcesRequired', 'true');
8065 svg.appendChild(foreignObject);
8066 foreignObject.appendChild(node);
8067 return svgToDataURL(svg);
8068 }
8069 const isInstanceOfElement = (node, instance) => {
8070 if (node instanceof instance)
8071 return true;
8072 const nodePrototype = Object.getPrototypeOf(node);
8073 if (nodePrototype === null)
8074 return false;
8075 return (nodePrototype.constructor.name === instance.name ||
8076 isInstanceOfElement(nodePrototype, instance));
8077 };
8078 //# sourceMappingURL=util.js.map
8079
8080 /***/ }),
8081
8082 /***/ "../node_modules/object-assign/index.js":
8083 /*!**********************************************!*\
8084 !*** ../node_modules/object-assign/index.js ***!
8085 \**********************************************/
8086 /***/ ((module) => {
8087
8088 "use strict";
8089 /*
8090 object-assign
8091 (c) Sindre Sorhus
8092 @license MIT
8093 */
8094
8095
8096 /* eslint-disable no-unused-vars */
8097 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
8098 var hasOwnProperty = Object.prototype.hasOwnProperty;
8099 var propIsEnumerable = Object.prototype.propertyIsEnumerable;
8100
8101 function toObject(val) {
8102 if (val === null || val === undefined) {
8103 throw new TypeError('Object.assign cannot be called with null or undefined');
8104 }
8105
8106 return Object(val);
8107 }
8108
8109 function shouldUseNative() {
8110 try {
8111 if (!Object.assign) {
8112 return false;
8113 }
8114
8115 // Detect buggy property enumeration order in older V8 versions.
8116
8117 // https://bugs.chromium.org/p/v8/issues/detail?id=4118
8118 var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
8119 test1[5] = 'de';
8120 if (Object.getOwnPropertyNames(test1)[0] === '5') {
8121 return false;
8122 }
8123
8124 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8125 var test2 = {};
8126 for (var i = 0; i < 10; i++) {
8127 test2['_' + String.fromCharCode(i)] = i;
8128 }
8129 var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
8130 return test2[n];
8131 });
8132 if (order2.join('') !== '0123456789') {
8133 return false;
8134 }
8135
8136 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8137 var test3 = {};
8138 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
8139 test3[letter] = letter;
8140 });
8141 if (Object.keys(Object.assign({}, test3)).join('') !==
8142 'abcdefghijklmnopqrst') {
8143 return false;
8144 }
8145
8146 return true;
8147 } catch (err) {
8148 // We don't expect any of the above to throw, but better to be safe.
8149 return false;
8150 }
8151 }
8152
8153 module.exports = shouldUseNative() ? Object.assign : function (target, source) {
8154 var from;
8155 var to = toObject(target);
8156 var symbols;
8157
8158 for (var s = 1; s < arguments.length; s++) {
8159 from = Object(arguments[s]);
8160
8161 for (var key in from) {
8162 if (hasOwnProperty.call(from, key)) {
8163 to[key] = from[key];
8164 }
8165 }
8166
8167 if (getOwnPropertySymbols) {
8168 symbols = getOwnPropertySymbols(from);
8169 for (var i = 0; i < symbols.length; i++) {
8170 if (propIsEnumerable.call(from, symbols[i])) {
8171 to[symbols[i]] = from[symbols[i]];
8172 }
8173 }
8174 }
8175 }
8176
8177 return to;
8178 };
8179
8180
8181 /***/ }),
8182
8183 /***/ "../node_modules/prop-types/checkPropTypes.js":
8184 /*!****************************************************!*\
8185 !*** ../node_modules/prop-types/checkPropTypes.js ***!
8186 \****************************************************/
8187 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8188
8189 "use strict";
8190 /**
8191 * Copyright (c) 2013-present, Facebook, Inc.
8192 *
8193 * This source code is licensed under the MIT license found in the
8194 * LICENSE file in the root directory of this source tree.
8195 */
8196
8197
8198
8199 var printWarning = function() {};
8200
8201 if (true) {
8202 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8203 var loggedTypeFailures = {};
8204 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8205
8206 printWarning = function(text) {
8207 var message = 'Warning: ' + text;
8208 if (typeof console !== 'undefined') {
8209 console.error(message);
8210 }
8211 try {
8212 // --- Welcome to debugging React ---
8213 // This error was thrown as a convenience so that you can use this stack
8214 // to find the callsite that caused this warning to fire.
8215 throw new Error(message);
8216 } catch (x) { /**/ }
8217 };
8218 }
8219
8220 /**
8221 * Assert that the values match with the type specs.
8222 * Error messages are memorized and will only be shown once.
8223 *
8224 * @param {object} typeSpecs Map of name to a ReactPropType
8225 * @param {object} values Runtime values that need to be type-checked
8226 * @param {string} location e.g. "prop", "context", "child context"
8227 * @param {string} componentName Name of the component for error messages.
8228 * @param {?Function} getStack Returns the component stack.
8229 * @private
8230 */
8231 function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
8232 if (true) {
8233 for (var typeSpecName in typeSpecs) {
8234 if (has(typeSpecs, typeSpecName)) {
8235 var error;
8236 // Prop type validation may throw. In case they do, we don't want to
8237 // fail the render phase where it didn't fail before. So we log it.
8238 // After these have been cleaned up, we'll let them throw.
8239 try {
8240 // This is intentionally an invariant that gets caught. It's the same
8241 // behavior as without this statement except with a better message.
8242 if (typeof typeSpecs[typeSpecName] !== 'function') {
8243 var err = Error(
8244 (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
8245 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
8246 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
8247 );
8248 err.name = 'Invariant Violation';
8249 throw err;
8250 }
8251 error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
8252 } catch (ex) {
8253 error = ex;
8254 }
8255 if (error && !(error instanceof Error)) {
8256 printWarning(
8257 (componentName || 'React class') + ': type specification of ' +
8258 location + ' `' + typeSpecName + '` is invalid; the type checker ' +
8259 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
8260 'You may have forgotten to pass an argument to the type checker ' +
8261 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
8262 'shape all require an argument).'
8263 );
8264 }
8265 if (error instanceof Error && !(error.message in loggedTypeFailures)) {
8266 // Only monitor this failure once because there tends to be a lot of the
8267 // same error.
8268 loggedTypeFailures[error.message] = true;
8269
8270 var stack = getStack ? getStack() : '';
8271
8272 printWarning(
8273 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
8274 );
8275 }
8276 }
8277 }
8278 }
8279 }
8280
8281 /**
8282 * Resets warning cache when testing.
8283 *
8284 * @private
8285 */
8286 checkPropTypes.resetWarningCache = function() {
8287 if (true) {
8288 loggedTypeFailures = {};
8289 }
8290 }
8291
8292 module.exports = checkPropTypes;
8293
8294
8295 /***/ }),
8296
8297 /***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
8298 /*!*************************************************************!*\
8299 !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
8300 \*************************************************************/
8301 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8302
8303 "use strict";
8304 /**
8305 * Copyright (c) 2013-present, Facebook, Inc.
8306 *
8307 * This source code is licensed under the MIT license found in the
8308 * LICENSE file in the root directory of this source tree.
8309 */
8310
8311
8312
8313 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8314 var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
8315
8316 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8317 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8318 var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
8319
8320 var printWarning = function() {};
8321
8322 if (true) {
8323 printWarning = function(text) {
8324 var message = 'Warning: ' + text;
8325 if (typeof console !== 'undefined') {
8326 console.error(message);
8327 }
8328 try {
8329 // --- Welcome to debugging React ---
8330 // This error was thrown as a convenience so that you can use this stack
8331 // to find the callsite that caused this warning to fire.
8332 throw new Error(message);
8333 } catch (x) {}
8334 };
8335 }
8336
8337 function emptyFunctionThatReturnsNull() {
8338 return null;
8339 }
8340
8341 module.exports = function(isValidElement, throwOnDirectAccess) {
8342 /* global Symbol */
8343 var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
8344 var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
8345
8346 /**
8347 * Returns the iterator method function contained on the iterable object.
8348 *
8349 * Be sure to invoke the function with the iterable as context:
8350 *
8351 * var iteratorFn = getIteratorFn(myIterable);
8352 * if (iteratorFn) {
8353 * var iterator = iteratorFn.call(myIterable);
8354 * ...
8355 * }
8356 *
8357 * @param {?object} maybeIterable
8358 * @return {?function}
8359 */
8360 function getIteratorFn(maybeIterable) {
8361 var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
8362 if (typeof iteratorFn === 'function') {
8363 return iteratorFn;
8364 }
8365 }
8366
8367 /**
8368 * Collection of methods that allow declaration and validation of props that are
8369 * supplied to React components. Example usage:
8370 *
8371 * var Props = require('ReactPropTypes');
8372 * var MyArticle = React.createClass({
8373 * propTypes: {
8374 * // An optional string prop named "description".
8375 * description: Props.string,
8376 *
8377 * // A required enum prop named "category".
8378 * category: Props.oneOf(['News','Photos']).isRequired,
8379 *
8380 * // A prop named "dialog" that requires an instance of Dialog.
8381 * dialog: Props.instanceOf(Dialog).isRequired
8382 * },
8383 * render: function() { ... }
8384 * });
8385 *
8386 * A more formal specification of how these methods are used:
8387 *
8388 * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
8389 * decl := ReactPropTypes.{type}(.isRequired)?
8390 *
8391 * Each and every declaration produces a function with the same signature. This
8392 * allows the creation of custom validation functions. For example:
8393 *
8394 * var MyLink = React.createClass({
8395 * propTypes: {
8396 * // An optional string or URI prop named "href".
8397 * href: function(props, propName, componentName) {
8398 * var propValue = props[propName];
8399 * if (propValue != null && typeof propValue !== 'string' &&
8400 * !(propValue instanceof URI)) {
8401 * return new Error(
8402 * 'Expected a string or an URI for ' + propName + ' in ' +
8403 * componentName
8404 * );
8405 * }
8406 * }
8407 * },
8408 * render: function() {...}
8409 * });
8410 *
8411 * @internal
8412 */
8413
8414 var ANONYMOUS = '<<anonymous>>';
8415
8416 // Important!
8417 // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
8418 var ReactPropTypes = {
8419 array: createPrimitiveTypeChecker('array'),
8420 bigint: createPrimitiveTypeChecker('bigint'),
8421 bool: createPrimitiveTypeChecker('boolean'),
8422 func: createPrimitiveTypeChecker('function'),
8423 number: createPrimitiveTypeChecker('number'),
8424 object: createPrimitiveTypeChecker('object'),
8425 string: createPrimitiveTypeChecker('string'),
8426 symbol: createPrimitiveTypeChecker('symbol'),
8427
8428 any: createAnyTypeChecker(),
8429 arrayOf: createArrayOfTypeChecker,
8430 element: createElementTypeChecker(),
8431 elementType: createElementTypeTypeChecker(),
8432 instanceOf: createInstanceTypeChecker,
8433 node: createNodeChecker(),
8434 objectOf: createObjectOfTypeChecker,
8435 oneOf: createEnumTypeChecker,
8436 oneOfType: createUnionTypeChecker,
8437 shape: createShapeTypeChecker,
8438 exact: createStrictShapeTypeChecker,
8439 };
8440
8441 /**
8442 * inlined Object.is polyfill to avoid requiring consumers ship their own
8443 * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
8444 */
8445 /*eslint-disable no-self-compare*/
8446 function is(x, y) {
8447 // SameValue algorithm
8448 if (x === y) {
8449 // Steps 1-5, 7-10
8450 // Steps 6.b-6.e: +0 != -0
8451 return x !== 0 || 1 / x === 1 / y;
8452 } else {
8453 // Step 6.a: NaN == NaN
8454 return x !== x && y !== y;
8455 }
8456 }
8457 /*eslint-enable no-self-compare*/
8458
8459 /**
8460 * We use an Error-like object for backward compatibility as people may call
8461 * PropTypes directly and inspect their output. However, we don't use real
8462 * Errors anymore. We don't inspect their stack anyway, and creating them
8463 * is prohibitively expensive if they are created too often, such as what
8464 * happens in oneOfType() for any type before the one that matched.
8465 */
8466 function PropTypeError(message, data) {
8467 this.message = message;
8468 this.data = data && typeof data === 'object' ? data: {};
8469 this.stack = '';
8470 }
8471 // Make `instanceof Error` still work for returned errors.
8472 PropTypeError.prototype = Error.prototype;
8473
8474 function createChainableTypeChecker(validate) {
8475 if (true) {
8476 var manualPropTypeCallCache = {};
8477 var manualPropTypeWarningCount = 0;
8478 }
8479 function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
8480 componentName = componentName || ANONYMOUS;
8481 propFullName = propFullName || propName;
8482
8483 if (secret !== ReactPropTypesSecret) {
8484 if (throwOnDirectAccess) {
8485 // New behavior only for users of `prop-types` package
8486 var err = new Error(
8487 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
8488 'Use `PropTypes.checkPropTypes()` to call them. ' +
8489 'Read more at http://fb.me/use-check-prop-types'
8490 );
8491 err.name = 'Invariant Violation';
8492 throw err;
8493 } else if ( true && typeof console !== 'undefined') {
8494 // Old behavior for people using React.PropTypes
8495 var cacheKey = componentName + ':' + propName;
8496 if (
8497 !manualPropTypeCallCache[cacheKey] &&
8498 // Avoid spamming the console because they are often not actionable except for lib authors
8499 manualPropTypeWarningCount < 3
8500 ) {
8501 printWarning(
8502 'You are manually calling a React.PropTypes validation ' +
8503 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
8504 'and will throw in the standalone `prop-types` package. ' +
8505 'You may be seeing this warning due to a third-party PropTypes ' +
8506 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
8507 );
8508 manualPropTypeCallCache[cacheKey] = true;
8509 manualPropTypeWarningCount++;
8510 }
8511 }
8512 }
8513 if (props[propName] == null) {
8514 if (isRequired) {
8515 if (props[propName] === null) {
8516 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
8517 }
8518 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
8519 }
8520 return null;
8521 } else {
8522 return validate(props, propName, componentName, location, propFullName);
8523 }
8524 }
8525
8526 var chainedCheckType = checkType.bind(null, false);
8527 chainedCheckType.isRequired = checkType.bind(null, true);
8528
8529 return chainedCheckType;
8530 }
8531
8532 function createPrimitiveTypeChecker(expectedType) {
8533 function validate(props, propName, componentName, location, propFullName, secret) {
8534 var propValue = props[propName];
8535 var propType = getPropType(propValue);
8536 if (propType !== expectedType) {
8537 // `propValue` being instance of, say, date/regexp, pass the 'object'
8538 // check, but we can offer a more precise error message here rather than
8539 // 'of type `object`'.
8540 var preciseType = getPreciseType(propValue);
8541
8542 return new PropTypeError(
8543 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),
8544 {expectedType: expectedType}
8545 );
8546 }
8547 return null;
8548 }
8549 return createChainableTypeChecker(validate);
8550 }
8551
8552 function createAnyTypeChecker() {
8553 return createChainableTypeChecker(emptyFunctionThatReturnsNull);
8554 }
8555
8556 function createArrayOfTypeChecker(typeChecker) {
8557 function validate(props, propName, componentName, location, propFullName) {
8558 if (typeof typeChecker !== 'function') {
8559 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
8560 }
8561 var propValue = props[propName];
8562 if (!Array.isArray(propValue)) {
8563 var propType = getPropType(propValue);
8564 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
8565 }
8566 for (var i = 0; i < propValue.length; i++) {
8567 var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
8568 if (error instanceof Error) {
8569 return error;
8570 }
8571 }
8572 return null;
8573 }
8574 return createChainableTypeChecker(validate);
8575 }
8576
8577 function createElementTypeChecker() {
8578 function validate(props, propName, componentName, location, propFullName) {
8579 var propValue = props[propName];
8580 if (!isValidElement(propValue)) {
8581 var propType = getPropType(propValue);
8582 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
8583 }
8584 return null;
8585 }
8586 return createChainableTypeChecker(validate);
8587 }
8588
8589 function createElementTypeTypeChecker() {
8590 function validate(props, propName, componentName, location, propFullName) {
8591 var propValue = props[propName];
8592 if (!ReactIs.isValidElementType(propValue)) {
8593 var propType = getPropType(propValue);
8594 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
8595 }
8596 return null;
8597 }
8598 return createChainableTypeChecker(validate);
8599 }
8600
8601 function createInstanceTypeChecker(expectedClass) {
8602 function validate(props, propName, componentName, location, propFullName) {
8603 if (!(props[propName] instanceof expectedClass)) {
8604 var expectedClassName = expectedClass.name || ANONYMOUS;
8605 var actualClassName = getClassName(props[propName]);
8606 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
8607 }
8608 return null;
8609 }
8610 return createChainableTypeChecker(validate);
8611 }
8612
8613 function createEnumTypeChecker(expectedValues) {
8614 if (!Array.isArray(expectedValues)) {
8615 if (true) {
8616 if (arguments.length > 1) {
8617 printWarning(
8618 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
8619 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
8620 );
8621 } else {
8622 printWarning('Invalid argument supplied to oneOf, expected an array.');
8623 }
8624 }
8625 return emptyFunctionThatReturnsNull;
8626 }
8627
8628 function validate(props, propName, componentName, location, propFullName) {
8629 var propValue = props[propName];
8630 for (var i = 0; i < expectedValues.length; i++) {
8631 if (is(propValue, expectedValues[i])) {
8632 return null;
8633 }
8634 }
8635
8636 var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
8637 var type = getPreciseType(value);
8638 if (type === 'symbol') {
8639 return String(value);
8640 }
8641 return value;
8642 });
8643 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
8644 }
8645 return createChainableTypeChecker(validate);
8646 }
8647
8648 function createObjectOfTypeChecker(typeChecker) {
8649 function validate(props, propName, componentName, location, propFullName) {
8650 if (typeof typeChecker !== 'function') {
8651 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
8652 }
8653 var propValue = props[propName];
8654 var propType = getPropType(propValue);
8655 if (propType !== 'object') {
8656 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
8657 }
8658 for (var key in propValue) {
8659 if (has(propValue, key)) {
8660 var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8661 if (error instanceof Error) {
8662 return error;
8663 }
8664 }
8665 }
8666 return null;
8667 }
8668 return createChainableTypeChecker(validate);
8669 }
8670
8671 function createUnionTypeChecker(arrayOfTypeCheckers) {
8672 if (!Array.isArray(arrayOfTypeCheckers)) {
8673 true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
8674 return emptyFunctionThatReturnsNull;
8675 }
8676
8677 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8678 var checker = arrayOfTypeCheckers[i];
8679 if (typeof checker !== 'function') {
8680 printWarning(
8681 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
8682 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
8683 );
8684 return emptyFunctionThatReturnsNull;
8685 }
8686 }
8687
8688 function validate(props, propName, componentName, location, propFullName) {
8689 var expectedTypes = [];
8690 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8691 var checker = arrayOfTypeCheckers[i];
8692 var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
8693 if (checkerResult == null) {
8694 return null;
8695 }
8696 if (checkerResult.data && has(checkerResult.data, 'expectedType')) {
8697 expectedTypes.push(checkerResult.data.expectedType);
8698 }
8699 }
8700 var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';
8701 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));
8702 }
8703 return createChainableTypeChecker(validate);
8704 }
8705
8706 function createNodeChecker() {
8707 function validate(props, propName, componentName, location, propFullName) {
8708 if (!isNode(props[propName])) {
8709 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
8710 }
8711 return null;
8712 }
8713 return createChainableTypeChecker(validate);
8714 }
8715
8716 function invalidValidatorError(componentName, location, propFullName, key, type) {
8717 return new PropTypeError(
8718 (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +
8719 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'
8720 );
8721 }
8722
8723 function createShapeTypeChecker(shapeTypes) {
8724 function validate(props, propName, componentName, location, propFullName) {
8725 var propValue = props[propName];
8726 var propType = getPropType(propValue);
8727 if (propType !== 'object') {
8728 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8729 }
8730 for (var key in shapeTypes) {
8731 var checker = shapeTypes[key];
8732 if (typeof checker !== 'function') {
8733 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8734 }
8735 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8736 if (error) {
8737 return error;
8738 }
8739 }
8740 return null;
8741 }
8742 return createChainableTypeChecker(validate);
8743 }
8744
8745 function createStrictShapeTypeChecker(shapeTypes) {
8746 function validate(props, propName, componentName, location, propFullName) {
8747 var propValue = props[propName];
8748 var propType = getPropType(propValue);
8749 if (propType !== 'object') {
8750 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8751 }
8752 // We need to check all keys in case some are required but missing from props.
8753 var allKeys = assign({}, props[propName], shapeTypes);
8754 for (var key in allKeys) {
8755 var checker = shapeTypes[key];
8756 if (has(shapeTypes, key) && typeof checker !== 'function') {
8757 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8758 }
8759 if (!checker) {
8760 return new PropTypeError(
8761 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
8762 '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
8763 '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
8764 );
8765 }
8766 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8767 if (error) {
8768 return error;
8769 }
8770 }
8771 return null;
8772 }
8773
8774 return createChainableTypeChecker(validate);
8775 }
8776
8777 function isNode(propValue) {
8778 switch (typeof propValue) {
8779 case 'number':
8780 case 'string':
8781 case 'undefined':
8782 return true;
8783 case 'boolean':
8784 return !propValue;
8785 case 'object':
8786 if (Array.isArray(propValue)) {
8787 return propValue.every(isNode);
8788 }
8789 if (propValue === null || isValidElement(propValue)) {
8790 return true;
8791 }
8792
8793 var iteratorFn = getIteratorFn(propValue);
8794 if (iteratorFn) {
8795 var iterator = iteratorFn.call(propValue);
8796 var step;
8797 if (iteratorFn !== propValue.entries) {
8798 while (!(step = iterator.next()).done) {
8799 if (!isNode(step.value)) {
8800 return false;
8801 }
8802 }
8803 } else {
8804 // Iterator will provide entry [k,v] tuples rather than values.
8805 while (!(step = iterator.next()).done) {
8806 var entry = step.value;
8807 if (entry) {
8808 if (!isNode(entry[1])) {
8809 return false;
8810 }
8811 }
8812 }
8813 }
8814 } else {
8815 return false;
8816 }
8817
8818 return true;
8819 default:
8820 return false;
8821 }
8822 }
8823
8824 function isSymbol(propType, propValue) {
8825 // Native Symbol.
8826 if (propType === 'symbol') {
8827 return true;
8828 }
8829
8830 // falsy value can't be a Symbol
8831 if (!propValue) {
8832 return false;
8833 }
8834
8835 // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
8836 if (propValue['@@toStringTag'] === 'Symbol') {
8837 return true;
8838 }
8839
8840 // Fallback for non-spec compliant Symbols which are polyfilled.
8841 if (typeof Symbol === 'function' && propValue instanceof Symbol) {
8842 return true;
8843 }
8844
8845 return false;
8846 }
8847
8848 // Equivalent of `typeof` but with special handling for array and regexp.
8849 function getPropType(propValue) {
8850 var propType = typeof propValue;
8851 if (Array.isArray(propValue)) {
8852 return 'array';
8853 }
8854 if (propValue instanceof RegExp) {
8855 // Old webkits (at least until Android 4.0) return 'function' rather than
8856 // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
8857 // passes PropTypes.object.
8858 return 'object';
8859 }
8860 if (isSymbol(propType, propValue)) {
8861 return 'symbol';
8862 }
8863 return propType;
8864 }
8865
8866 // This handles more types than `getPropType`. Only used for error messages.
8867 // See `createPrimitiveTypeChecker`.
8868 function getPreciseType(propValue) {
8869 if (typeof propValue === 'undefined' || propValue === null) {
8870 return '' + propValue;
8871 }
8872 var propType = getPropType(propValue);
8873 if (propType === 'object') {
8874 if (propValue instanceof Date) {
8875 return 'date';
8876 } else if (propValue instanceof RegExp) {
8877 return 'regexp';
8878 }
8879 }
8880 return propType;
8881 }
8882
8883 // Returns a string that is postfixed to a warning about an invalid type.
8884 // For example, "undefined" or "of type array"
8885 function getPostfixForTypeWarning(value) {
8886 var type = getPreciseType(value);
8887 switch (type) {
8888 case 'array':
8889 case 'object':
8890 return 'an ' + type;
8891 case 'boolean':
8892 case 'date':
8893 case 'regexp':
8894 return 'a ' + type;
8895 default:
8896 return type;
8897 }
8898 }
8899
8900 // Returns class name of the object, if any.
8901 function getClassName(propValue) {
8902 if (!propValue.constructor || !propValue.constructor.name) {
8903 return ANONYMOUS;
8904 }
8905 return propValue.constructor.name;
8906 }
8907
8908 ReactPropTypes.checkPropTypes = checkPropTypes;
8909 ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
8910 ReactPropTypes.PropTypes = ReactPropTypes;
8911
8912 return ReactPropTypes;
8913 };
8914
8915
8916 /***/ }),
8917
8918 /***/ "../node_modules/prop-types/index.js":
8919 /*!*******************************************!*\
8920 !*** ../node_modules/prop-types/index.js ***!
8921 \*******************************************/
8922 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8923
8924 /**
8925 * Copyright (c) 2013-present, Facebook, Inc.
8926 *
8927 * This source code is licensed under the MIT license found in the
8928 * LICENSE file in the root directory of this source tree.
8929 */
8930
8931 if (true) {
8932 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8933
8934 // By explicitly using `prop-types` you are opting into new development behavior.
8935 // http://fb.me/prop-types-in-prod
8936 var throwOnDirectAccess = true;
8937 module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
8938 } else {}
8939
8940
8941 /***/ }),
8942
8943 /***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
8944 /*!**************************************************************!*\
8945 !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
8946 \**************************************************************/
8947 /***/ ((module) => {
8948
8949 "use strict";
8950 /**
8951 * Copyright (c) 2013-present, Facebook, Inc.
8952 *
8953 * This source code is licensed under the MIT license found in the
8954 * LICENSE file in the root directory of this source tree.
8955 */
8956
8957
8958
8959 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
8960
8961 module.exports = ReactPropTypesSecret;
8962
8963
8964 /***/ }),
8965
8966 /***/ "../node_modules/prop-types/lib/has.js":
8967 /*!*********************************************!*\
8968 !*** ../node_modules/prop-types/lib/has.js ***!
8969 \*********************************************/
8970 /***/ ((module) => {
8971
8972 module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
8973
8974
8975 /***/ }),
8976
8977 /***/ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js":
8978 /*!************************************************************************************!*\
8979 !*** ../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
8980 \************************************************************************************/
8981 /***/ ((__unused_webpack_module, exports) => {
8982
8983 "use strict";
8984 /** @license React v16.13.1
8985 * react-is.development.js
8986 *
8987 * Copyright (c) Facebook, Inc. and its affiliates.
8988 *
8989 * This source code is licensed under the MIT license found in the
8990 * LICENSE file in the root directory of this source tree.
8991 */
8992
8993
8994
8995
8996
8997 if (true) {
8998 (function() {
8999 'use strict';
9000
9001 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
9002 // nor polyfill, then a plain number is used for performance.
9003 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
9004 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
9005 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
9006 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
9007 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
9008 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
9009 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
9010 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
9011 // (unstable) APIs that have been removed. Can we remove the symbols?
9012
9013 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
9014 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
9015 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
9016 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
9017 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
9018 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
9019 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
9020 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
9021 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
9022 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
9023 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
9024
9025 function isValidElementType(type) {
9026 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
9027 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);
9028 }
9029
9030 function typeOf(object) {
9031 if (typeof object === 'object' && object !== null) {
9032 var $$typeof = object.$$typeof;
9033
9034 switch ($$typeof) {
9035 case REACT_ELEMENT_TYPE:
9036 var type = object.type;
9037
9038 switch (type) {
9039 case REACT_ASYNC_MODE_TYPE:
9040 case REACT_CONCURRENT_MODE_TYPE:
9041 case REACT_FRAGMENT_TYPE:
9042 case REACT_PROFILER_TYPE:
9043 case REACT_STRICT_MODE_TYPE:
9044 case REACT_SUSPENSE_TYPE:
9045 return type;
9046
9047 default:
9048 var $$typeofType = type && type.$$typeof;
9049
9050 switch ($$typeofType) {
9051 case REACT_CONTEXT_TYPE:
9052 case REACT_FORWARD_REF_TYPE:
9053 case REACT_LAZY_TYPE:
9054 case REACT_MEMO_TYPE:
9055 case REACT_PROVIDER_TYPE:
9056 return $$typeofType;
9057
9058 default:
9059 return $$typeof;
9060 }
9061
9062 }
9063
9064 case REACT_PORTAL_TYPE:
9065 return $$typeof;
9066 }
9067 }
9068
9069 return undefined;
9070 } // AsyncMode is deprecated along with isAsyncMode
9071
9072 var AsyncMode = REACT_ASYNC_MODE_TYPE;
9073 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
9074 var ContextConsumer = REACT_CONTEXT_TYPE;
9075 var ContextProvider = REACT_PROVIDER_TYPE;
9076 var Element = REACT_ELEMENT_TYPE;
9077 var ForwardRef = REACT_FORWARD_REF_TYPE;
9078 var Fragment = REACT_FRAGMENT_TYPE;
9079 var Lazy = REACT_LAZY_TYPE;
9080 var Memo = REACT_MEMO_TYPE;
9081 var Portal = REACT_PORTAL_TYPE;
9082 var Profiler = REACT_PROFILER_TYPE;
9083 var StrictMode = REACT_STRICT_MODE_TYPE;
9084 var Suspense = REACT_SUSPENSE_TYPE;
9085 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
9086
9087 function isAsyncMode(object) {
9088 {
9089 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
9090 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
9091
9092 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.');
9093 }
9094 }
9095
9096 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
9097 }
9098 function isConcurrentMode(object) {
9099 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
9100 }
9101 function isContextConsumer(object) {
9102 return typeOf(object) === REACT_CONTEXT_TYPE;
9103 }
9104 function isContextProvider(object) {
9105 return typeOf(object) === REACT_PROVIDER_TYPE;
9106 }
9107 function isElement(object) {
9108 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
9109 }
9110 function isForwardRef(object) {
9111 return typeOf(object) === REACT_FORWARD_REF_TYPE;
9112 }
9113 function isFragment(object) {
9114 return typeOf(object) === REACT_FRAGMENT_TYPE;
9115 }
9116 function isLazy(object) {
9117 return typeOf(object) === REACT_LAZY_TYPE;
9118 }
9119 function isMemo(object) {
9120 return typeOf(object) === REACT_MEMO_TYPE;
9121 }
9122 function isPortal(object) {
9123 return typeOf(object) === REACT_PORTAL_TYPE;
9124 }
9125 function isProfiler(object) {
9126 return typeOf(object) === REACT_PROFILER_TYPE;
9127 }
9128 function isStrictMode(object) {
9129 return typeOf(object) === REACT_STRICT_MODE_TYPE;
9130 }
9131 function isSuspense(object) {
9132 return typeOf(object) === REACT_SUSPENSE_TYPE;
9133 }
9134
9135 exports.AsyncMode = AsyncMode;
9136 exports.ConcurrentMode = ConcurrentMode;
9137 exports.ContextConsumer = ContextConsumer;
9138 exports.ContextProvider = ContextProvider;
9139 exports.Element = Element;
9140 exports.ForwardRef = ForwardRef;
9141 exports.Fragment = Fragment;
9142 exports.Lazy = Lazy;
9143 exports.Memo = Memo;
9144 exports.Portal = Portal;
9145 exports.Profiler = Profiler;
9146 exports.StrictMode = StrictMode;
9147 exports.Suspense = Suspense;
9148 exports.isAsyncMode = isAsyncMode;
9149 exports.isConcurrentMode = isConcurrentMode;
9150 exports.isContextConsumer = isContextConsumer;
9151 exports.isContextProvider = isContextProvider;
9152 exports.isElement = isElement;
9153 exports.isForwardRef = isForwardRef;
9154 exports.isFragment = isFragment;
9155 exports.isLazy = isLazy;
9156 exports.isMemo = isMemo;
9157 exports.isPortal = isPortal;
9158 exports.isProfiler = isProfiler;
9159 exports.isStrictMode = isStrictMode;
9160 exports.isSuspense = isSuspense;
9161 exports.isValidElementType = isValidElementType;
9162 exports.typeOf = typeOf;
9163 })();
9164 }
9165
9166
9167 /***/ }),
9168
9169 /***/ "../node_modules/prop-types/node_modules/react-is/index.js":
9170 /*!*****************************************************************!*\
9171 !*** ../node_modules/prop-types/node_modules/react-is/index.js ***!
9172 \*****************************************************************/
9173 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9174
9175 "use strict";
9176
9177
9178 if (false) {} else {
9179 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js");
9180 }
9181
9182
9183 /***/ }),
9184
9185 /***/ "../node_modules/react-dom/client.js":
9186 /*!*******************************************!*\
9187 !*** ../node_modules/react-dom/client.js ***!
9188 \*******************************************/
9189 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9190
9191 "use strict";
9192
9193
9194 var m = __webpack_require__(/*! react-dom */ "react-dom");
9195 if (false) {} else {
9196 var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
9197 exports.createRoot = function(c, o) {
9198 i.usingClientEntryPoint = true;
9199 try {
9200 return m.createRoot(c, o);
9201 } finally {
9202 i.usingClientEntryPoint = false;
9203 }
9204 };
9205 exports.hydrateRoot = function(c, h, o) {
9206 i.usingClientEntryPoint = true;
9207 try {
9208 return m.hydrateRoot(c, h, o);
9209 } finally {
9210 i.usingClientEntryPoint = false;
9211 }
9212 };
9213 }
9214
9215
9216 /***/ }),
9217
9218 /***/ "../node_modules/react-draggable/build/cjs/Draggable.js":
9219 /*!**************************************************************!*\
9220 !*** ../node_modules/react-draggable/build/cjs/Draggable.js ***!
9221 \**************************************************************/
9222 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9223
9224 "use strict";
9225
9226
9227 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); }
9228
9229 Object.defineProperty(exports, "__esModule", ({
9230 value: true
9231 }));
9232 Object.defineProperty(exports, "DraggableCore", ({
9233 enumerable: true,
9234 get: function get() {
9235 return _DraggableCore.default;
9236 }
9237 }));
9238 exports["default"] = void 0;
9239
9240 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9241
9242 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9243
9244 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9245
9246 var _clsx2 = _interopRequireDefault(__webpack_require__(/*! clsx */ "../node_modules/clsx/dist/clsx.m.js"));
9247
9248 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9249
9250 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9251
9252 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9253
9254 var _DraggableCore = _interopRequireDefault(__webpack_require__(/*! ./DraggableCore */ "../node_modules/react-draggable/build/cjs/DraggableCore.js"));
9255
9256 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9257
9258 var _excluded = ["axis", "bounds", "children", "defaultPosition", "defaultClassName", "defaultClassNameDragging", "defaultClassNameDragged", "position", "positionOffset", "scale"];
9259
9260 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9261
9262 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); }
9263
9264 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; }
9265
9266 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); }
9267
9268 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; }
9269
9270 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; }
9271
9272 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; }
9273
9274 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; }
9275
9276 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9277
9278 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."); }
9279
9280 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); }
9281
9282 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; }
9283
9284 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; }
9285
9286 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9287
9288 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9289
9290 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); } }
9291
9292 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9293
9294 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); }
9295
9296 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9297
9298 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); }; }
9299
9300 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); }
9301
9302 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9303
9304 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; } }
9305
9306 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9307
9308 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; }
9309
9310 //
9311 // Define <Draggable>
9312 //
9313 var Draggable = /*#__PURE__*/function (_React$Component) {
9314 _inherits(Draggable, _React$Component);
9315
9316 var _super = _createSuper(Draggable);
9317
9318 function Draggable(props
9319 /*: DraggableProps*/
9320 ) {
9321 var _this;
9322
9323 _classCallCheck(this, Draggable);
9324
9325 _this = _super.call(this, props);
9326
9327 _defineProperty(_assertThisInitialized(_this), "onDragStart", function (e, coreData) {
9328 (0, _log.default)('Draggable: onDragStart: %j', coreData); // Short-circuit if user's callback killed it.
9329
9330 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.
9331
9332
9333 if (shouldStart === false) return false;
9334
9335 _this.setState({
9336 dragging: true,
9337 dragged: true
9338 });
9339 });
9340
9341 _defineProperty(_assertThisInitialized(_this), "onDrag", function (e, coreData) {
9342 if (!_this.state.dragging) return false;
9343 (0, _log.default)('Draggable: onDrag: %j', coreData);
9344 var uiData = (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData);
9345 var newState
9346 /*: $Shape<DraggableState>*/
9347 = {
9348 x: uiData.x,
9349 y: uiData.y
9350 }; // Keep within bounds.
9351
9352 if (_this.props.bounds) {
9353 // Save original x and y.
9354 var x = newState.x,
9355 y = newState.y; // Add slack to the values used to calculate bound position. This will ensure that if
9356 // we start removing slack, the element won't react to it right away until it's been
9357 // completely removed.
9358
9359 newState.x += _this.state.slackX;
9360 newState.y += _this.state.slackY; // Get bound position. This will ceil/floor the x and y within the boundaries.
9361
9362 var _getBoundPosition = (0, _positionFns.getBoundPosition)(_assertThisInitialized(_this), newState.x, newState.y),
9363 _getBoundPosition2 = _slicedToArray(_getBoundPosition, 2),
9364 newStateX = _getBoundPosition2[0],
9365 newStateY = _getBoundPosition2[1];
9366
9367 newState.x = newStateX;
9368 newState.y = newStateY; // Recalculate slack by noting how much was shaved by the boundPosition handler.
9369
9370 newState.slackX = _this.state.slackX + (x - newState.x);
9371 newState.slackY = _this.state.slackY + (y - newState.y); // Update the event we fire to reflect what really happened after bounds took effect.
9372
9373 uiData.x = newState.x;
9374 uiData.y = newState.y;
9375 uiData.deltaX = newState.x - _this.state.x;
9376 uiData.deltaY = newState.y - _this.state.y;
9377 } // Short-circuit if user's callback killed it.
9378
9379
9380 var shouldUpdate = _this.props.onDrag(e, uiData);
9381
9382 if (shouldUpdate === false) return false;
9383
9384 _this.setState(newState);
9385 });
9386
9387 _defineProperty(_assertThisInitialized(_this), "onDragStop", function (e, coreData) {
9388 if (!_this.state.dragging) return false; // Short-circuit if user's callback killed it.
9389
9390 var shouldContinue = _this.props.onStop(e, (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData));
9391
9392 if (shouldContinue === false) return false;
9393 (0, _log.default)('Draggable: onDragStop: %j', coreData);
9394 var newState
9395 /*: $Shape<DraggableState>*/
9396 = {
9397 dragging: false,
9398 slackX: 0,
9399 slackY: 0
9400 }; // If this is a controlled component, the result of this operation will be to
9401 // revert back to the old position. We expect a handler on `onDragStop`, at the least.
9402
9403 var controlled = Boolean(_this.props.position);
9404
9405 if (controlled) {
9406 var _this$props$position = _this.props.position,
9407 x = _this$props$position.x,
9408 y = _this$props$position.y;
9409 newState.x = x;
9410 newState.y = y;
9411 }
9412
9413 _this.setState(newState);
9414 });
9415
9416 _this.state = {
9417 // Whether or not we are currently dragging.
9418 dragging: false,
9419 // Whether or not we have been dragged before.
9420 dragged: false,
9421 // Current transform x and y.
9422 x: props.position ? props.position.x : props.defaultPosition.x,
9423 y: props.position ? props.position.y : props.defaultPosition.y,
9424 prevPropsPosition: _objectSpread({}, props.position),
9425 // Used for compensating for out-of-bounds drags
9426 slackX: 0,
9427 slackY: 0,
9428 // Can only determine if SVG after mounting
9429 isElementSVG: false
9430 };
9431
9432 if (props.position && !(props.onDrag || props.onStop)) {
9433 // eslint-disable-next-line no-console
9434 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.');
9435 }
9436
9437 return _this;
9438 }
9439
9440 _createClass(Draggable, [{
9441 key: "componentDidMount",
9442 value: function componentDidMount() {
9443 // Check to see if the element passed is an instanceof SVGElement
9444 if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {
9445 this.setState({
9446 isElementSVG: true
9447 });
9448 }
9449 }
9450 }, {
9451 key: "componentWillUnmount",
9452 value: function componentWillUnmount() {
9453 this.setState({
9454 dragging: false
9455 }); // prevents invariant if unmounted while dragging
9456 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
9457 // the underlying DOM node ourselves. See the README for more information.
9458
9459 }, {
9460 key: "findDOMNode",
9461 value: function findDOMNode()
9462 /*: ?HTMLElement*/
9463 {
9464 var _this$props$nodeRef$c, _this$props, _this$props$nodeRef;
9465
9466 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);
9467 }
9468 }, {
9469 key: "render",
9470 value: function render()
9471 /*: ReactElement<any>*/
9472 {
9473 var _clsx;
9474
9475 var _this$props2 = this.props,
9476 axis = _this$props2.axis,
9477 bounds = _this$props2.bounds,
9478 children = _this$props2.children,
9479 defaultPosition = _this$props2.defaultPosition,
9480 defaultClassName = _this$props2.defaultClassName,
9481 defaultClassNameDragging = _this$props2.defaultClassNameDragging,
9482 defaultClassNameDragged = _this$props2.defaultClassNameDragged,
9483 position = _this$props2.position,
9484 positionOffset = _this$props2.positionOffset,
9485 scale = _this$props2.scale,
9486 draggableCoreProps = _objectWithoutProperties(_this$props2, _excluded);
9487
9488 var style = {};
9489 var svgTransform = null; // If this is controlled, we don't want to move it - unless it's dragging.
9490
9491 var controlled = Boolean(position);
9492 var draggable = !controlled || this.state.dragging;
9493 var validPosition = position || defaultPosition;
9494 var transformOpts = {
9495 // Set left if horizontal drag is enabled
9496 x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,
9497 // Set top if vertical drag is enabled
9498 y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y
9499 }; // If this element was SVG, we use the `transform` attribute.
9500
9501 if (this.state.isElementSVG) {
9502 svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);
9503 } else {
9504 // Add a CSS transform to move the element around. This allows us to move the element around
9505 // without worrying about whether or not it is relatively or absolutely positioned.
9506 // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>
9507 // has a clean slate.
9508 style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);
9509 } // Mark with class while dragging
9510
9511
9512 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
9513 // This makes it flexible to use whatever element is wanted (div, ul, etc)
9514
9515 return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {
9516 onStart: this.onDragStart,
9517 onDrag: this.onDrag,
9518 onStop: this.onDragStop
9519 }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {
9520 className: className,
9521 style: _objectSpread(_objectSpread({}, children.props.style), style),
9522 transform: svgTransform
9523 }));
9524 }
9525 }], [{
9526 key: "getDerivedStateFromProps",
9527 value: // React 16.3+
9528 // Arity (props, state)
9529 function getDerivedStateFromProps(_ref, _ref2)
9530 /*: ?$Shape<DraggableState>*/
9531 {
9532 var position = _ref.position;
9533 var prevPropsPosition = _ref2.prevPropsPosition;
9534
9535 // Set x/y if a new position is provided in props that is different than the previous.
9536 if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {
9537 (0, _log.default)('Draggable: getDerivedStateFromProps %j', {
9538 position: position,
9539 prevPropsPosition: prevPropsPosition
9540 });
9541 return {
9542 x: position.x,
9543 y: position.y,
9544 prevPropsPosition: _objectSpread({}, position)
9545 };
9546 }
9547
9548 return null;
9549 }
9550 }]);
9551
9552 return Draggable;
9553 }(React.Component);
9554
9555 exports["default"] = Draggable;
9556
9557 _defineProperty(Draggable, "displayName", 'Draggable');
9558
9559 _defineProperty(Draggable, "propTypes", _objectSpread(_objectSpread({}, _DraggableCore.default.propTypes), {}, {
9560 /**
9561 * `axis` determines which axis the draggable can move.
9562 *
9563 * Note that all callbacks will still return data as normal. This only
9564 * controls flushing to the DOM.
9565 *
9566 * 'both' allows movement horizontally and vertically.
9567 * 'x' limits movement to horizontal axis.
9568 * 'y' limits movement to vertical axis.
9569 * 'none' limits all movement.
9570 *
9571 * Defaults to 'both'.
9572 */
9573 axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),
9574
9575 /**
9576 * `bounds` determines the range of movement available to the element.
9577 * Available values are:
9578 *
9579 * 'parent' restricts movement within the Draggable's parent node.
9580 *
9581 * Alternatively, pass an object with the following properties, all of which are optional:
9582 *
9583 * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}
9584 *
9585 * All values are in px.
9586 *
9587 * Example:
9588 *
9589 * ```jsx
9590 * let App = React.createClass({
9591 * render: function () {
9592 * return (
9593 * <Draggable bounds={{right: 300, bottom: 300}}>
9594 * <div>Content</div>
9595 * </Draggable>
9596 * );
9597 * }
9598 * });
9599 * ```
9600 */
9601 bounds: _propTypes.default.oneOfType([_propTypes.default.shape({
9602 left: _propTypes.default.number,
9603 right: _propTypes.default.number,
9604 top: _propTypes.default.number,
9605 bottom: _propTypes.default.number
9606 }), _propTypes.default.string, _propTypes.default.oneOf([false])]),
9607 defaultClassName: _propTypes.default.string,
9608 defaultClassNameDragging: _propTypes.default.string,
9609 defaultClassNameDragged: _propTypes.default.string,
9610
9611 /**
9612 * `defaultPosition` specifies the x and y that the dragged item should start at
9613 *
9614 * Example:
9615 *
9616 * ```jsx
9617 * let App = React.createClass({
9618 * render: function () {
9619 * return (
9620 * <Draggable defaultPosition={{x: 25, y: 25}}>
9621 * <div>I start with transformX: 25px and transformY: 25px;</div>
9622 * </Draggable>
9623 * );
9624 * }
9625 * });
9626 * ```
9627 */
9628 defaultPosition: _propTypes.default.shape({
9629 x: _propTypes.default.number,
9630 y: _propTypes.default.number
9631 }),
9632 positionOffset: _propTypes.default.shape({
9633 x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
9634 y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
9635 }),
9636
9637 /**
9638 * `position`, if present, defines the current position of the element.
9639 *
9640 * This is similar to how form elements in React work - if no `position` is supplied, the component
9641 * is uncontrolled.
9642 *
9643 * Example:
9644 *
9645 * ```jsx
9646 * let App = React.createClass({
9647 * render: function () {
9648 * return (
9649 * <Draggable position={{x: 25, y: 25}}>
9650 * <div>I start with transformX: 25px and transformY: 25px;</div>
9651 * </Draggable>
9652 * );
9653 * }
9654 * });
9655 * ```
9656 */
9657 position: _propTypes.default.shape({
9658 x: _propTypes.default.number,
9659 y: _propTypes.default.number
9660 }),
9661
9662 /**
9663 * These properties should be defined on the child, not here.
9664 */
9665 className: _shims.dontSetMe,
9666 style: _shims.dontSetMe,
9667 transform: _shims.dontSetMe
9668 }));
9669
9670 _defineProperty(Draggable, "defaultProps", _objectSpread(_objectSpread({}, _DraggableCore.default.defaultProps), {}, {
9671 axis: 'both',
9672 bounds: false,
9673 defaultClassName: 'react-draggable',
9674 defaultClassNameDragging: 'react-draggable-dragging',
9675 defaultClassNameDragged: 'react-draggable-dragged',
9676 defaultPosition: {
9677 x: 0,
9678 y: 0
9679 },
9680 scale: 1
9681 }));
9682
9683 /***/ }),
9684
9685 /***/ "../node_modules/react-draggable/build/cjs/DraggableCore.js":
9686 /*!******************************************************************!*\
9687 !*** ../node_modules/react-draggable/build/cjs/DraggableCore.js ***!
9688 \******************************************************************/
9689 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9690
9691 "use strict";
9692
9693
9694 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); }
9695
9696 Object.defineProperty(exports, "__esModule", ({
9697 value: true
9698 }));
9699 exports["default"] = void 0;
9700
9701 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9702
9703 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9704
9705 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9706
9707 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9708
9709 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9710
9711 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9712
9713 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9714
9715 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9716
9717 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); }
9718
9719 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; }
9720
9721 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9722
9723 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."); }
9724
9725 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); }
9726
9727 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; }
9728
9729 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; }
9730
9731 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9732
9733 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9734
9735 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); } }
9736
9737 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9738
9739 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); }
9740
9741 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9742
9743 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); }; }
9744
9745 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); }
9746
9747 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9748
9749 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; } }
9750
9751 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9752
9753 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; }
9754
9755 // Simple abstraction for dragging events names.
9756 var eventsFor = {
9757 touch: {
9758 start: 'touchstart',
9759 move: 'touchmove',
9760 stop: 'touchend'
9761 },
9762 mouse: {
9763 start: 'mousedown',
9764 move: 'mousemove',
9765 stop: 'mouseup'
9766 }
9767 }; // Default to mouse events.
9768
9769 var dragEventFor = eventsFor.mouse;
9770 /*:: type DraggableCoreState = {
9771 dragging: boolean,
9772 lastX: number,
9773 lastY: number,
9774 touchIdentifier: ?number
9775 };*/
9776
9777 /*:: export type DraggableData = {
9778 node: HTMLElement,
9779 x: number, y: number,
9780 deltaX: number, deltaY: number,
9781 lastX: number, lastY: number,
9782 };*/
9783
9784 /*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/
9785
9786 /*:: export type ControlPosition = {x: number, y: number};*/
9787
9788 /*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/
9789
9790 /*:: export type DraggableCoreDefaultProps = {
9791 allowAnyClick: boolean,
9792 disabled: boolean,
9793 enableUserSelectHack: boolean,
9794 onStart: DraggableEventHandler,
9795 onDrag: DraggableEventHandler,
9796 onStop: DraggableEventHandler,
9797 onMouseDown: (e: MouseEvent) => void,
9798 scale: number,
9799 };*/
9800
9801 /*:: export type DraggableCoreProps = {
9802 ...DraggableCoreDefaultProps,
9803 cancel: string,
9804 children: ReactElement<any>,
9805 offsetParent: HTMLElement,
9806 grid: [number, number],
9807 handle: string,
9808 nodeRef?: ?React.ElementRef<any>,
9809 };*/
9810
9811 //
9812 // Define <DraggableCore>.
9813 //
9814 // <DraggableCore> is for advanced usage of <Draggable>. It maintains minimal internal state so it can
9815 // work well with libraries that require more control over the element.
9816 //
9817 var DraggableCore = /*#__PURE__*/function (_React$Component) {
9818 _inherits(DraggableCore, _React$Component);
9819
9820 var _super = _createSuper(DraggableCore);
9821
9822 function DraggableCore() {
9823 var _this;
9824
9825 _classCallCheck(this, DraggableCore);
9826
9827 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9828 args[_key] = arguments[_key];
9829 }
9830
9831 _this = _super.call.apply(_super, [this].concat(args));
9832
9833 _defineProperty(_assertThisInitialized(_this), "state", {
9834 dragging: false,
9835 // Used while dragging to determine deltas.
9836 lastX: NaN,
9837 lastY: NaN,
9838 touchIdentifier: null
9839 });
9840
9841 _defineProperty(_assertThisInitialized(_this), "mounted", false);
9842
9843 _defineProperty(_assertThisInitialized(_this), "handleDragStart", function (e) {
9844 // Make it possible to attach event handlers on top of this one.
9845 _this.props.onMouseDown(e); // Only accept left-clicks.
9846
9847
9848 if (!_this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false; // Get nodes. Be sure to grab relative document (could be iframed)
9849
9850 var thisNode = _this.findDOMNode();
9851
9852 if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {
9853 throw new Error('<DraggableCore> not mounted on DragStart!');
9854 }
9855
9856 var ownerDocument = thisNode.ownerDocument; // Short circuit if handle or cancel prop was provided and selector doesn't match.
9857
9858 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)) {
9859 return;
9860 } // Prevent scrolling on mobile devices, like ipad/iphone.
9861 // Important that this is after handle/cancel.
9862
9863
9864 if (e.type === 'touchstart') e.preventDefault(); // Set touch identifier in component state if this is a touch event. This allows us to
9865 // distinguish between individual touches on multitouch screens by identifying which
9866 // touchpoint was set to this element.
9867
9868 var touchIdentifier = (0, _domFns.getTouchIdentifier)(e);
9869
9870 _this.setState({
9871 touchIdentifier: touchIdentifier
9872 }); // Get the current drag point from the event. This is used as the offset.
9873
9874
9875 var position = (0, _positionFns.getControlPosition)(e, touchIdentifier, _assertThisInitialized(_this));
9876 if (position == null) return; // not possible but satisfies flow
9877
9878 var x = position.x,
9879 y = position.y; // Create an event object with all the data parents need to make a decision here.
9880
9881 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9882 (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent); // Call event handler. If it returns explicit false, cancel.
9883
9884 (0, _log.default)('calling', _this.props.onStart);
9885
9886 var shouldUpdate = _this.props.onStart(e, coreEvent);
9887
9888 if (shouldUpdate === false || _this.mounted === false) return; // Add a style to the body to disable user-select. This prevents text from
9889 // being selected all over the page.
9890
9891 if (_this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument); // Initiate dragging. Set the current x and y as offsets
9892 // so we know how much we've moved during the drag. This allows us
9893 // to drag elements around even if they have been moved, without issue.
9894
9895 _this.setState({
9896 dragging: true,
9897 lastX: x,
9898 lastY: y
9899 }); // Add events to the document directly so we catch when the user's mouse/touch moves outside of
9900 // this element. We use different events depending on whether or not we have detected that this
9901 // is a touch-capable device.
9902
9903
9904 (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, _this.handleDrag);
9905 (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, _this.handleDragStop);
9906 });
9907
9908 _defineProperty(_assertThisInitialized(_this), "handleDrag", function (e) {
9909 // Get the current drag point from the event. This is used as the offset.
9910 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9911 if (position == null) return;
9912 var x = position.x,
9913 y = position.y; // Snap to grid if prop has been provided
9914
9915 if (Array.isArray(_this.props.grid)) {
9916 var deltaX = x - _this.state.lastX,
9917 deltaY = y - _this.state.lastY;
9918
9919 var _snapToGrid = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9920
9921 var _snapToGrid2 = _slicedToArray(_snapToGrid, 2);
9922
9923 deltaX = _snapToGrid2[0];
9924 deltaY = _snapToGrid2[1];
9925 if (!deltaX && !deltaY) return; // skip useless drag
9926
9927 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9928 }
9929
9930 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9931 (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent); // Call event handler. If it returns explicit false, trigger end.
9932
9933 var shouldUpdate = _this.props.onDrag(e, coreEvent);
9934
9935 if (shouldUpdate === false || _this.mounted === false) {
9936 try {
9937 // $FlowIgnore
9938 _this.handleDragStop(new MouseEvent('mouseup'));
9939 } catch (err) {
9940 // Old browsers
9941 var event = ((document.createEvent('MouseEvents')
9942 /*: any*/
9943 )
9944 /*: MouseTouchEvent*/
9945 ); // I see why this insanity was deprecated
9946 // $FlowIgnore
9947
9948 event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
9949
9950 _this.handleDragStop(event);
9951 }
9952
9953 return;
9954 }
9955
9956 _this.setState({
9957 lastX: x,
9958 lastY: y
9959 });
9960 });
9961
9962 _defineProperty(_assertThisInitialized(_this), "handleDragStop", function (e) {
9963 if (!_this.state.dragging) return;
9964 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9965 if (position == null) return;
9966 var x = position.x,
9967 y = position.y; // Snap to grid if prop has been provided
9968
9969 if (Array.isArray(_this.props.grid)) {
9970 var deltaX = x - _this.state.lastX || 0;
9971 var deltaY = y - _this.state.lastY || 0;
9972
9973 var _snapToGrid3 = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9974
9975 var _snapToGrid4 = _slicedToArray(_snapToGrid3, 2);
9976
9977 deltaX = _snapToGrid4[0];
9978 deltaY = _snapToGrid4[1];
9979 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9980 }
9981
9982 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y); // Call event handler
9983
9984 var shouldContinue = _this.props.onStop(e, coreEvent);
9985
9986 if (shouldContinue === false || _this.mounted === false) return false;
9987
9988 var thisNode = _this.findDOMNode();
9989
9990 if (thisNode) {
9991 // Remove user-select hack
9992 if (_this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);
9993 }
9994
9995 (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent); // Reset the el.
9996
9997 _this.setState({
9998 dragging: false,
9999 lastX: NaN,
10000 lastY: NaN
10001 });
10002
10003 if (thisNode) {
10004 // Remove event handlers
10005 (0, _log.default)('DraggableCore: Removing handlers');
10006 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, _this.handleDrag);
10007 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, _this.handleDragStop);
10008 }
10009 });
10010
10011 _defineProperty(_assertThisInitialized(_this), "onMouseDown", function (e) {
10012 dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse
10013
10014 return _this.handleDragStart(e);
10015 });
10016
10017 _defineProperty(_assertThisInitialized(_this), "onMouseUp", function (e) {
10018 dragEventFor = eventsFor.mouse;
10019 return _this.handleDragStop(e);
10020 });
10021
10022 _defineProperty(_assertThisInitialized(_this), "onTouchStart", function (e) {
10023 // We're on a touch device now, so change the event handlers
10024 dragEventFor = eventsFor.touch;
10025 return _this.handleDragStart(e);
10026 });
10027
10028 _defineProperty(_assertThisInitialized(_this), "onTouchEnd", function (e) {
10029 // We're on a touch device now, so change the event handlers
10030 dragEventFor = eventsFor.touch;
10031 return _this.handleDragStop(e);
10032 });
10033
10034 return _this;
10035 }
10036
10037 _createClass(DraggableCore, [{
10038 key: "componentDidMount",
10039 value: function componentDidMount() {
10040 this.mounted = true; // Touch handlers must be added with {passive: false} to be cancelable.
10041 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10042
10043 var thisNode = this.findDOMNode();
10044
10045 if (thisNode) {
10046 (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10047 passive: false
10048 });
10049 }
10050 }
10051 }, {
10052 key: "componentWillUnmount",
10053 value: function componentWillUnmount() {
10054 this.mounted = false; // Remove any leftover event handlers. Remove both touch and mouse handlers in case
10055 // some browser quirk caused a touch event to fire during a mouse move, or vice versa.
10056
10057 var thisNode = this.findDOMNode();
10058
10059 if (thisNode) {
10060 var ownerDocument = thisNode.ownerDocument;
10061 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);
10062 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);
10063 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);
10064 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);
10065 (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10066 passive: false
10067 });
10068 if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);
10069 }
10070 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
10071 // the underlying DOM node ourselves. See the README for more information.
10072
10073 }, {
10074 key: "findDOMNode",
10075 value: function findDOMNode()
10076 /*: ?HTMLElement*/
10077 {
10078 var _this$props, _this$props2, _this$props2$nodeRef;
10079
10080 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);
10081 }
10082 }, {
10083 key: "render",
10084 value: function render()
10085 /*: React.Element<any>*/
10086 {
10087 // Reuse the child provided
10088 // This makes it flexible to use whatever element is wanted (div, ul, etc)
10089 return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {
10090 // Note: mouseMove handler is attached to document so it will still function
10091 // when the user drags quickly and leaves the bounds of the element.
10092 onMouseDown: this.onMouseDown,
10093 onMouseUp: this.onMouseUp,
10094 // onTouchStart is added on `componentDidMount` so they can be added with
10095 // {passive: false}, which allows it to cancel. See
10096 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10097 onTouchEnd: this.onTouchEnd
10098 });
10099 }
10100 }]);
10101
10102 return DraggableCore;
10103 }(React.Component);
10104
10105 exports["default"] = DraggableCore;
10106
10107 _defineProperty(DraggableCore, "displayName", 'DraggableCore');
10108
10109 _defineProperty(DraggableCore, "propTypes", {
10110 /**
10111 * `allowAnyClick` allows dragging using any mouse button.
10112 * By default, we only accept the left button.
10113 *
10114 * Defaults to `false`.
10115 */
10116 allowAnyClick: _propTypes.default.bool,
10117
10118 /**
10119 * `disabled`, if true, stops the <Draggable> from dragging. All handlers,
10120 * with the exception of `onMouseDown`, will not fire.
10121 */
10122 disabled: _propTypes.default.bool,
10123
10124 /**
10125 * By default, we add 'user-select:none' attributes to the document body
10126 * to prevent ugly text selection during drag. If this is causing problems
10127 * for your app, set this to `false`.
10128 */
10129 enableUserSelectHack: _propTypes.default.bool,
10130
10131 /**
10132 * `offsetParent`, if set, uses the passed DOM node to compute drag offsets
10133 * instead of using the parent node.
10134 */
10135 offsetParent: function offsetParent(props
10136 /*: DraggableCoreProps*/
10137 , propName
10138 /*: $Keys<DraggableCoreProps>*/
10139 ) {
10140 if (props[propName] && props[propName].nodeType !== 1) {
10141 throw new Error('Draggable\'s offsetParent must be a DOM Node.');
10142 }
10143 },
10144
10145 /**
10146 * `grid` specifies the x and y that dragging should snap to.
10147 */
10148 grid: _propTypes.default.arrayOf(_propTypes.default.number),
10149
10150 /**
10151 * `handle` specifies a selector to be used as the handle that initiates drag.
10152 *
10153 * Example:
10154 *
10155 * ```jsx
10156 * let App = React.createClass({
10157 * render: function () {
10158 * return (
10159 * <Draggable handle=".handle">
10160 * <div>
10161 * <div className="handle">Click me to drag</div>
10162 * <div>This is some other content</div>
10163 * </div>
10164 * </Draggable>
10165 * );
10166 * }
10167 * });
10168 * ```
10169 */
10170 handle: _propTypes.default.string,
10171
10172 /**
10173 * `cancel` specifies a selector to be used to prevent drag initialization.
10174 *
10175 * Example:
10176 *
10177 * ```jsx
10178 * let App = React.createClass({
10179 * render: function () {
10180 * return(
10181 * <Draggable cancel=".cancel">
10182 * <div>
10183 * <div className="cancel">You can't drag from here</div>
10184 * <div>Dragging here works fine</div>
10185 * </div>
10186 * </Draggable>
10187 * );
10188 * }
10189 * });
10190 * ```
10191 */
10192 cancel: _propTypes.default.string,
10193
10194 /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.
10195 * Unfortunately, in order for <Draggable> to work properly, we need raw access
10196 * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`
10197 * as in this example:
10198 *
10199 * function MyComponent() {
10200 * const nodeRef = React.useRef(null);
10201 * return (
10202 * <Draggable nodeRef={nodeRef}>
10203 * <div ref={nodeRef}>Example Target</div>
10204 * </Draggable>
10205 * );
10206 * }
10207 *
10208 * This can be used for arbitrarily nested components, so long as the ref ends up
10209 * pointing to the actual child DOM node and not a custom component.
10210 */
10211 nodeRef: _propTypes.default.object,
10212
10213 /**
10214 * Called when dragging starts.
10215 * If this function returns the boolean false, dragging will be canceled.
10216 */
10217 onStart: _propTypes.default.func,
10218
10219 /**
10220 * Called while dragging.
10221 * If this function returns the boolean false, dragging will be canceled.
10222 */
10223 onDrag: _propTypes.default.func,
10224
10225 /**
10226 * Called when dragging stops.
10227 * If this function returns the boolean false, the drag will remain active.
10228 */
10229 onStop: _propTypes.default.func,
10230
10231 /**
10232 * A workaround option which can be passed if onMouseDown needs to be accessed,
10233 * since it'll always be blocked (as there is internal use of onMouseDown)
10234 */
10235 onMouseDown: _propTypes.default.func,
10236
10237 /**
10238 * `scale`, if set, applies scaling while dragging an element
10239 */
10240 scale: _propTypes.default.number,
10241
10242 /**
10243 * These properties should be defined on the child, not here.
10244 */
10245 className: _shims.dontSetMe,
10246 style: _shims.dontSetMe,
10247 transform: _shims.dontSetMe
10248 });
10249
10250 _defineProperty(DraggableCore, "defaultProps", {
10251 allowAnyClick: false,
10252 // by default only accept left click
10253 disabled: false,
10254 enableUserSelectHack: true,
10255 onStart: function onStart() {},
10256 onDrag: function onDrag() {},
10257 onStop: function onStop() {},
10258 onMouseDown: function onMouseDown() {},
10259 scale: 1
10260 });
10261
10262 /***/ }),
10263
10264 /***/ "../node_modules/react-draggable/build/cjs/cjs.js":
10265 /*!********************************************************!*\
10266 !*** ../node_modules/react-draggable/build/cjs/cjs.js ***!
10267 \********************************************************/
10268 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10269
10270 "use strict";
10271
10272
10273 var _require = __webpack_require__(/*! ./Draggable */ "../node_modules/react-draggable/build/cjs/Draggable.js"),
10274 Draggable = _require.default,
10275 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'.
10276 // See https://github.com/mzabriskie/react-draggable/pull/254
10277 // and https://github.com/mzabriskie/react-draggable/issues/266
10278
10279
10280 module.exports = Draggable;
10281 module.exports["default"] = Draggable;
10282 module.exports.DraggableCore = DraggableCore;
10283
10284 /***/ }),
10285
10286 /***/ "../node_modules/react-draggable/build/cjs/utils/domFns.js":
10287 /*!*****************************************************************!*\
10288 !*** ../node_modules/react-draggable/build/cjs/utils/domFns.js ***!
10289 \*****************************************************************/
10290 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10291
10292 "use strict";
10293
10294
10295 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); }
10296
10297 Object.defineProperty(exports, "__esModule", ({
10298 value: true
10299 }));
10300 exports.addClassName = addClassName;
10301 exports.addEvent = addEvent;
10302 exports.addUserSelectStyles = addUserSelectStyles;
10303 exports.createCSSTransform = createCSSTransform;
10304 exports.createSVGTransform = createSVGTransform;
10305 exports.getTouch = getTouch;
10306 exports.getTouchIdentifier = getTouchIdentifier;
10307 exports.getTranslation = getTranslation;
10308 exports.innerHeight = innerHeight;
10309 exports.innerWidth = innerWidth;
10310 exports.matchesSelector = matchesSelector;
10311 exports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;
10312 exports.offsetXYFromParent = offsetXYFromParent;
10313 exports.outerHeight = outerHeight;
10314 exports.outerWidth = outerWidth;
10315 exports.removeClassName = removeClassName;
10316 exports.removeEvent = removeEvent;
10317 exports.removeUserSelectStyles = removeUserSelectStyles;
10318
10319 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10320
10321 var _getPrefix = _interopRequireWildcard(__webpack_require__(/*! ./getPrefix */ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js"));
10322
10323 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); }
10324
10325 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; }
10326
10327 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; }
10328
10329 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; }
10330
10331 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; }
10332
10333 var matchesSelectorFunc = '';
10334
10335 function matchesSelector(el
10336 /*: Node*/
10337 , selector
10338 /*: string*/
10339 )
10340 /*: boolean*/
10341 {
10342 if (!matchesSelectorFunc) {
10343 matchesSelectorFunc = (0, _shims.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {
10344 // $FlowIgnore: Doesn't think elements are indexable
10345 return (0, _shims.isFunction)(el[method]);
10346 });
10347 } // Might not be found entirely (not an Element?) - in that case, bail
10348 // $FlowIgnore: Doesn't think elements are indexable
10349
10350
10351 if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false; // $FlowIgnore: Doesn't think elements are indexable
10352
10353 return el[matchesSelectorFunc](selector);
10354 } // Works up the tree to the draggable itself attempting to match selector.
10355
10356
10357 function matchesSelectorAndParentsTo(el
10358 /*: Node*/
10359 , selector
10360 /*: string*/
10361 , baseNode
10362 /*: Node*/
10363 )
10364 /*: boolean*/
10365 {
10366 var node = el;
10367
10368 do {
10369 if (matchesSelector(node, selector)) return true;
10370 if (node === baseNode) return false;
10371 node = node.parentNode;
10372 } while (node);
10373
10374 return false;
10375 }
10376
10377 function addEvent(el
10378 /*: ?Node*/
10379 , event
10380 /*: string*/
10381 , handler
10382 /*: Function*/
10383 , inputOptions
10384 /*: Object*/
10385 )
10386 /*: void*/
10387 {
10388 if (!el) return;
10389
10390 var options = _objectSpread({
10391 capture: true
10392 }, inputOptions); // $FlowIgnore[method-unbinding]
10393
10394
10395 if (el.addEventListener) {
10396 el.addEventListener(event, handler, options);
10397 } else if (el.attachEvent) {
10398 el.attachEvent('on' + event, handler);
10399 } else {
10400 // $FlowIgnore: Doesn't think elements are indexable
10401 el['on' + event] = handler;
10402 }
10403 }
10404
10405 function removeEvent(el
10406 /*: ?Node*/
10407 , event
10408 /*: string*/
10409 , handler
10410 /*: Function*/
10411 , inputOptions
10412 /*: Object*/
10413 )
10414 /*: void*/
10415 {
10416 if (!el) return;
10417
10418 var options = _objectSpread({
10419 capture: true
10420 }, inputOptions); // $FlowIgnore[method-unbinding]
10421
10422
10423 if (el.removeEventListener) {
10424 el.removeEventListener(event, handler, options);
10425 } else if (el.detachEvent) {
10426 el.detachEvent('on' + event, handler);
10427 } else {
10428 // $FlowIgnore: Doesn't think elements are indexable
10429 el['on' + event] = null;
10430 }
10431 }
10432
10433 function outerHeight(node
10434 /*: HTMLElement*/
10435 )
10436 /*: number*/
10437 {
10438 // This is deliberately excluding margin for our calculations, since we are using
10439 // offsetTop which is including margin. See getBoundPosition
10440 var height = node.clientHeight;
10441 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10442 height += (0, _shims.int)(computedStyle.borderTopWidth);
10443 height += (0, _shims.int)(computedStyle.borderBottomWidth);
10444 return height;
10445 }
10446
10447 function outerWidth(node
10448 /*: HTMLElement*/
10449 )
10450 /*: number*/
10451 {
10452 // This is deliberately excluding margin for our calculations, since we are using
10453 // offsetLeft which is including margin. See getBoundPosition
10454 var width = node.clientWidth;
10455 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10456 width += (0, _shims.int)(computedStyle.borderLeftWidth);
10457 width += (0, _shims.int)(computedStyle.borderRightWidth);
10458 return width;
10459 }
10460
10461 function innerHeight(node
10462 /*: HTMLElement*/
10463 )
10464 /*: number*/
10465 {
10466 var height = node.clientHeight;
10467 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10468 height -= (0, _shims.int)(computedStyle.paddingTop);
10469 height -= (0, _shims.int)(computedStyle.paddingBottom);
10470 return height;
10471 }
10472
10473 function innerWidth(node
10474 /*: HTMLElement*/
10475 )
10476 /*: number*/
10477 {
10478 var width = node.clientWidth;
10479 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10480 width -= (0, _shims.int)(computedStyle.paddingLeft);
10481 width -= (0, _shims.int)(computedStyle.paddingRight);
10482 return width;
10483 }
10484 /*:: interface EventWithOffset {
10485 clientX: number, clientY: number
10486 }*/
10487
10488
10489 // Get from offsetParent
10490 function offsetXYFromParent(evt
10491 /*: EventWithOffset*/
10492 , offsetParent
10493 /*: HTMLElement*/
10494 , scale
10495 /*: number*/
10496 )
10497 /*: ControlPosition*/
10498 {
10499 var isBody = offsetParent === offsetParent.ownerDocument.body;
10500 var offsetParentRect = isBody ? {
10501 left: 0,
10502 top: 0
10503 } : offsetParent.getBoundingClientRect();
10504 var x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;
10505 var y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;
10506 return {
10507 x: x,
10508 y: y
10509 };
10510 }
10511
10512 function createCSSTransform(controlPos
10513 /*: ControlPosition*/
10514 , positionOffset
10515 /*: PositionOffsetControlPosition*/
10516 )
10517 /*: Object*/
10518 {
10519 var translation = getTranslation(controlPos, positionOffset, 'px');
10520 return _defineProperty({}, (0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default), translation);
10521 }
10522
10523 function createSVGTransform(controlPos
10524 /*: ControlPosition*/
10525 , positionOffset
10526 /*: PositionOffsetControlPosition*/
10527 )
10528 /*: string*/
10529 {
10530 var translation = getTranslation(controlPos, positionOffset, '');
10531 return translation;
10532 }
10533
10534 function getTranslation(_ref2, positionOffset
10535 /*: PositionOffsetControlPosition*/
10536 , unitSuffix
10537 /*: string*/
10538 )
10539 /*: string*/
10540 {
10541 var x = _ref2.x,
10542 y = _ref2.y;
10543 var translation = "translate(".concat(x).concat(unitSuffix, ",").concat(y).concat(unitSuffix, ")");
10544
10545 if (positionOffset) {
10546 var defaultX = "".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);
10547 var defaultY = "".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);
10548 translation = "translate(".concat(defaultX, ", ").concat(defaultY, ")") + translation;
10549 }
10550
10551 return translation;
10552 }
10553
10554 function getTouch(e
10555 /*: MouseTouchEvent*/
10556 , identifier
10557 /*: number*/
10558 )
10559 /*: ?{clientX: number, clientY: number}*/
10560 {
10561 return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, function (t) {
10562 return identifier === t.identifier;
10563 }) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, function (t) {
10564 return identifier === t.identifier;
10565 });
10566 }
10567
10568 function getTouchIdentifier(e
10569 /*: MouseTouchEvent*/
10570 )
10571 /*: ?number*/
10572 {
10573 if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;
10574 if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;
10575 } // User-select Hacks:
10576 //
10577 // Useful for preventing blue highlights all over everything when dragging.
10578 // Note we're passing `document` b/c we could be iframed
10579
10580
10581 function addUserSelectStyles(doc
10582 /*: ?Document*/
10583 ) {
10584 if (!doc) return;
10585 var styleEl = doc.getElementById('react-draggable-style-el');
10586
10587 if (!styleEl) {
10588 styleEl = doc.createElement('style');
10589 styleEl.type = 'text/css';
10590 styleEl.id = 'react-draggable-style-el';
10591 styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n';
10592 styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\n';
10593 doc.getElementsByTagName('head')[0].appendChild(styleEl);
10594 }
10595
10596 if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');
10597 }
10598
10599 function removeUserSelectStyles(doc
10600 /*: ?Document*/
10601 ) {
10602 if (!doc) return;
10603
10604 try {
10605 if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection'); // $FlowIgnore: IE
10606
10607 if (doc.selection) {
10608 // $FlowIgnore: IE
10609 doc.selection.empty();
10610 } else {
10611 // Remove selection caused by scroll, unless it's a focused input
10612 // (we use doc.defaultView in case we're in an iframe)
10613 var selection = (doc.defaultView || window).getSelection();
10614
10615 if (selection && selection.type !== 'Caret') {
10616 selection.removeAllRanges();
10617 }
10618 }
10619 } catch (e) {// probably IE
10620 }
10621 }
10622
10623 function addClassName(el
10624 /*: HTMLElement*/
10625 , className
10626 /*: string*/
10627 ) {
10628 if (el.classList) {
10629 el.classList.add(className);
10630 } else {
10631 if (!el.className.match(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)")))) {
10632 el.className += " ".concat(className);
10633 }
10634 }
10635 }
10636
10637 function removeClassName(el
10638 /*: HTMLElement*/
10639 , className
10640 /*: string*/
10641 ) {
10642 if (el.classList) {
10643 el.classList.remove(className);
10644 } else {
10645 el.className = el.className.replace(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)"), 'g'), '');
10646 }
10647 }
10648
10649 /***/ }),
10650
10651 /***/ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js":
10652 /*!********************************************************************!*\
10653 !*** ../node_modules/react-draggable/build/cjs/utils/getPrefix.js ***!
10654 \********************************************************************/
10655 /***/ ((__unused_webpack_module, exports) => {
10656
10657 "use strict";
10658
10659
10660 Object.defineProperty(exports, "__esModule", ({
10661 value: true
10662 }));
10663 exports.browserPrefixToKey = browserPrefixToKey;
10664 exports.browserPrefixToStyle = browserPrefixToStyle;
10665 exports["default"] = void 0;
10666 exports.getPrefix = getPrefix;
10667 var prefixes = ['Moz', 'Webkit', 'O', 'ms'];
10668
10669 function getPrefix()
10670 /*: string*/
10671 {
10672 var _window$document, _window$document$docu;
10673
10674 var prop
10675 /*: string*/
10676 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';
10677 // Ensure we're running in an environment where there is actually a global
10678 // `window` obj
10679 if (typeof window === 'undefined') return ''; // If we're in a pseudo-browser server-side environment, this access
10680 // path may not exist, so bail out if it doesn't.
10681
10682 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;
10683 if (!style) return '';
10684 if (prop in style) return '';
10685
10686 for (var i = 0; i < prefixes.length; i++) {
10687 if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];
10688 }
10689
10690 return '';
10691 }
10692
10693 function browserPrefixToKey(prop
10694 /*: string*/
10695 , prefix
10696 /*: string*/
10697 )
10698 /*: string*/
10699 {
10700 return prefix ? "".concat(prefix).concat(kebabToTitleCase(prop)) : prop;
10701 }
10702
10703 function browserPrefixToStyle(prop
10704 /*: string*/
10705 , prefix
10706 /*: string*/
10707 )
10708 /*: string*/
10709 {
10710 return prefix ? "-".concat(prefix.toLowerCase(), "-").concat(prop) : prop;
10711 }
10712
10713 function kebabToTitleCase(str
10714 /*: string*/
10715 )
10716 /*: string*/
10717 {
10718 var out = '';
10719 var shouldCapitalize = true;
10720
10721 for (var i = 0; i < str.length; i++) {
10722 if (shouldCapitalize) {
10723 out += str[i].toUpperCase();
10724 shouldCapitalize = false;
10725 } else if (str[i] === '-') {
10726 shouldCapitalize = true;
10727 } else {
10728 out += str[i];
10729 }
10730 }
10731
10732 return out;
10733 } // Default export is the prefix itself, like 'Moz', 'Webkit', etc
10734 // Note that you may have to re-test for certain things; for instance, Chrome 50
10735 // can handle unprefixed `transform`, but not unprefixed `user-select`
10736
10737
10738 var _default = (getPrefix()
10739 /*: string*/
10740 );
10741
10742 exports["default"] = _default;
10743
10744 /***/ }),
10745
10746 /***/ "../node_modules/react-draggable/build/cjs/utils/log.js":
10747 /*!**************************************************************!*\
10748 !*** ../node_modules/react-draggable/build/cjs/utils/log.js ***!
10749 \**************************************************************/
10750 /***/ ((__unused_webpack_module, exports) => {
10751
10752 "use strict";
10753
10754
10755 Object.defineProperty(exports, "__esModule", ({
10756 value: true
10757 }));
10758 exports["default"] = log;
10759
10760 /*eslint no-console:0*/
10761 function log() {
10762 var _console;
10763
10764 if (false) {}
10765 }
10766
10767 /***/ }),
10768
10769 /***/ "../node_modules/react-draggable/build/cjs/utils/positionFns.js":
10770 /*!**********************************************************************!*\
10771 !*** ../node_modules/react-draggable/build/cjs/utils/positionFns.js ***!
10772 \**********************************************************************/
10773 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10774
10775 "use strict";
10776
10777
10778 Object.defineProperty(exports, "__esModule", ({
10779 value: true
10780 }));
10781 exports.canDragX = canDragX;
10782 exports.canDragY = canDragY;
10783 exports.createCoreData = createCoreData;
10784 exports.createDraggableData = createDraggableData;
10785 exports.getBoundPosition = getBoundPosition;
10786 exports.getControlPosition = getControlPosition;
10787 exports.snapToGrid = snapToGrid;
10788
10789 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10790
10791 var _domFns = __webpack_require__(/*! ./domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
10792
10793 function getBoundPosition(draggable
10794 /*: Draggable*/
10795 , x
10796 /*: number*/
10797 , y
10798 /*: number*/
10799 )
10800 /*: [number, number]*/
10801 {
10802 // If no bounds, short-circuit and move on
10803 if (!draggable.props.bounds) return [x, y]; // Clone new bounds
10804
10805 var bounds = draggable.props.bounds;
10806 bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);
10807 var node = findDOMNode(draggable);
10808
10809 if (typeof bounds === 'string') {
10810 var ownerDocument = node.ownerDocument;
10811 var ownerWindow = ownerDocument.defaultView;
10812 var boundNode;
10813
10814 if (bounds === 'parent') {
10815 boundNode = node.parentNode;
10816 } else {
10817 boundNode = ownerDocument.querySelector(bounds);
10818 }
10819
10820 if (!(boundNode instanceof ownerWindow.HTMLElement)) {
10821 throw new Error('Bounds selector "' + bounds + '" could not find an element.');
10822 }
10823
10824 var boundNodeEl
10825 /*: HTMLElement*/
10826 = boundNode; // for Flow, can't seem to refine correctly
10827
10828 var nodeStyle = ownerWindow.getComputedStyle(node);
10829 var boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl); // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.
10830
10831 bounds = {
10832 left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),
10833 top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),
10834 right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),
10835 bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)
10836 };
10837 } // Keep x and y below right and bottom limits...
10838
10839
10840 if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);
10841 if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom); // But above left and top limits.
10842
10843 if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);
10844 if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);
10845 return [x, y];
10846 }
10847
10848 function snapToGrid(grid
10849 /*: [number, number]*/
10850 , pendingX
10851 /*: number*/
10852 , pendingY
10853 /*: number*/
10854 )
10855 /*: [number, number]*/
10856 {
10857 var x = Math.round(pendingX / grid[0]) * grid[0];
10858 var y = Math.round(pendingY / grid[1]) * grid[1];
10859 return [x, y];
10860 }
10861
10862 function canDragX(draggable
10863 /*: Draggable*/
10864 )
10865 /*: boolean*/
10866 {
10867 return draggable.props.axis === 'both' || draggable.props.axis === 'x';
10868 }
10869
10870 function canDragY(draggable
10871 /*: Draggable*/
10872 )
10873 /*: boolean*/
10874 {
10875 return draggable.props.axis === 'both' || draggable.props.axis === 'y';
10876 } // Get {x, y} positions from event.
10877
10878
10879 function getControlPosition(e
10880 /*: MouseTouchEvent*/
10881 , touchIdentifier
10882 /*: ?number*/
10883 , draggableCore
10884 /*: DraggableCore*/
10885 )
10886 /*: ?ControlPosition*/
10887 {
10888 var touchObj = typeof touchIdentifier === 'number' ? (0, _domFns.getTouch)(e, touchIdentifier) : null;
10889 if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch
10890
10891 var node = findDOMNode(draggableCore); // User can provide an offsetParent if desired.
10892
10893 var offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;
10894 return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);
10895 } // Create an data object exposed by <DraggableCore>'s events
10896
10897
10898 function createCoreData(draggable
10899 /*: DraggableCore*/
10900 , x
10901 /*: number*/
10902 , y
10903 /*: number*/
10904 )
10905 /*: DraggableData*/
10906 {
10907 var state = draggable.state;
10908 var isStart = !(0, _shims.isNum)(state.lastX);
10909 var node = findDOMNode(draggable);
10910
10911 if (isStart) {
10912 // If this is our first move, use the x and y as last coords.
10913 return {
10914 node: node,
10915 deltaX: 0,
10916 deltaY: 0,
10917 lastX: x,
10918 lastY: y,
10919 x: x,
10920 y: y
10921 };
10922 } else {
10923 // Otherwise calculate proper values.
10924 return {
10925 node: node,
10926 deltaX: x - state.lastX,
10927 deltaY: y - state.lastY,
10928 lastX: state.lastX,
10929 lastY: state.lastY,
10930 x: x,
10931 y: y
10932 };
10933 }
10934 } // Create an data exposed by <Draggable>'s events
10935
10936
10937 function createDraggableData(draggable
10938 /*: Draggable*/
10939 , coreData
10940 /*: DraggableData*/
10941 )
10942 /*: DraggableData*/
10943 {
10944 var scale = draggable.props.scale;
10945 return {
10946 node: coreData.node,
10947 x: draggable.state.x + coreData.deltaX / scale,
10948 y: draggable.state.y + coreData.deltaY / scale,
10949 deltaX: coreData.deltaX / scale,
10950 deltaY: coreData.deltaY / scale,
10951 lastX: draggable.state.x,
10952 lastY: draggable.state.y
10953 };
10954 } // A lot faster than stringify/parse
10955
10956
10957 function cloneBounds(bounds
10958 /*: Bounds*/
10959 )
10960 /*: Bounds*/
10961 {
10962 return {
10963 left: bounds.left,
10964 top: bounds.top,
10965 right: bounds.right,
10966 bottom: bounds.bottom
10967 };
10968 }
10969
10970 function findDOMNode(draggable
10971 /*: Draggable | DraggableCore*/
10972 )
10973 /*: HTMLElement*/
10974 {
10975 var node = draggable.findDOMNode();
10976
10977 if (!node) {
10978 throw new Error('<DraggableCore>: Unmounted during event!');
10979 } // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME
10980
10981
10982 return node;
10983 }
10984
10985 /***/ }),
10986
10987 /***/ "../node_modules/react-draggable/build/cjs/utils/shims.js":
10988 /*!****************************************************************!*\
10989 !*** ../node_modules/react-draggable/build/cjs/utils/shims.js ***!
10990 \****************************************************************/
10991 /***/ ((__unused_webpack_module, exports) => {
10992
10993 "use strict";
10994
10995
10996 Object.defineProperty(exports, "__esModule", ({
10997 value: true
10998 }));
10999 exports.dontSetMe = dontSetMe;
11000 exports.findInArray = findInArray;
11001 exports.int = int;
11002 exports.isFunction = isFunction;
11003 exports.isNum = isNum;
11004
11005 // @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc
11006 function findInArray(array
11007 /*: Array<any> | TouchList*/
11008 , callback
11009 /*: Function*/
11010 )
11011 /*: any*/
11012 {
11013 for (var i = 0, length = array.length; i < length; i++) {
11014 if (callback.apply(callback, [array[i], i, array])) return array[i];
11015 }
11016 }
11017
11018 function isFunction(func
11019 /*: any*/
11020 )
11021 /*: boolean %checks*/
11022 {
11023 // $FlowIgnore[method-unbinding]
11024 return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';
11025 }
11026
11027 function isNum(num
11028 /*: any*/
11029 )
11030 /*: boolean %checks*/
11031 {
11032 return typeof num === 'number' && !isNaN(num);
11033 }
11034
11035 function int(a
11036 /*: string*/
11037 )
11038 /*: number*/
11039 {
11040 return parseInt(a, 10);
11041 }
11042
11043 function dontSetMe(props
11044 /*: Object*/
11045 , propName
11046 /*: string*/
11047 , componentName
11048 /*: string*/
11049 )
11050 /*: ?Error*/
11051 {
11052 if (props[propName]) {
11053 return new Error("Invalid prop ".concat(propName, " passed to ").concat(componentName, " - do not set this, set it on the child."));
11054 }
11055 }
11056
11057 /***/ }),
11058
11059 /***/ "../node_modules/react-is/cjs/react-is.development.js":
11060 /*!************************************************************!*\
11061 !*** ../node_modules/react-is/cjs/react-is.development.js ***!
11062 \************************************************************/
11063 /***/ ((__unused_webpack_module, exports) => {
11064
11065 "use strict";
11066 /**
11067 * @license React
11068 * react-is.development.js
11069 *
11070 * Copyright (c) Facebook, Inc. and its affiliates.
11071 *
11072 * This source code is licensed under the MIT license found in the
11073 * LICENSE file in the root directory of this source tree.
11074 */
11075
11076
11077
11078 if (true) {
11079 (function() {
11080 'use strict';
11081
11082 // ATTENTION
11083 // When adding new symbols to this file,
11084 // Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'
11085 // The Symbol used to tag the ReactElement-like types.
11086 var REACT_ELEMENT_TYPE = Symbol.for('react.element');
11087 var REACT_PORTAL_TYPE = Symbol.for('react.portal');
11088 var REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');
11089 var REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');
11090 var REACT_PROFILER_TYPE = Symbol.for('react.profiler');
11091 var REACT_PROVIDER_TYPE = Symbol.for('react.provider');
11092 var REACT_CONTEXT_TYPE = Symbol.for('react.context');
11093 var REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_context');
11094 var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');
11095 var REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');
11096 var REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');
11097 var REACT_MEMO_TYPE = Symbol.for('react.memo');
11098 var REACT_LAZY_TYPE = Symbol.for('react.lazy');
11099 var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');
11100
11101 // -----------------------------------------------------------------------------
11102
11103 var enableScopeAPI = false; // Experimental Create Event Handle API.
11104 var enableCacheElement = false;
11105 var enableTransitionTracing = false; // No known bugs, but needs performance testing
11106
11107 var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber
11108 // stuff. Intended to enable React core members to more easily debug scheduling
11109 // issues in DEV builds.
11110
11111 var enableDebugTracing = false; // Track which Fiber(s) schedule render work.
11112
11113 var REACT_MODULE_REFERENCE;
11114
11115 {
11116 REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');
11117 }
11118
11119 function isValidElementType(type) {
11120 if (typeof type === 'string' || typeof type === 'function') {
11121 return true;
11122 } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).
11123
11124
11125 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 ) {
11126 return true;
11127 }
11128
11129 if (typeof type === 'object' && type !== null) {
11130 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
11131 // types supported by any Flight configuration anywhere since
11132 // we don't know which Flight build this will end up being used
11133 // with.
11134 type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {
11135 return true;
11136 }
11137 }
11138
11139 return false;
11140 }
11141
11142 function typeOf(object) {
11143 if (typeof object === 'object' && object !== null) {
11144 var $$typeof = object.$$typeof;
11145
11146 switch ($$typeof) {
11147 case REACT_ELEMENT_TYPE:
11148 var type = object.type;
11149
11150 switch (type) {
11151 case REACT_FRAGMENT_TYPE:
11152 case REACT_PROFILER_TYPE:
11153 case REACT_STRICT_MODE_TYPE:
11154 case REACT_SUSPENSE_TYPE:
11155 case REACT_SUSPENSE_LIST_TYPE:
11156 return type;
11157
11158 default:
11159 var $$typeofType = type && type.$$typeof;
11160
11161 switch ($$typeofType) {
11162 case REACT_SERVER_CONTEXT_TYPE:
11163 case REACT_CONTEXT_TYPE:
11164 case REACT_FORWARD_REF_TYPE:
11165 case REACT_LAZY_TYPE:
11166 case REACT_MEMO_TYPE:
11167 case REACT_PROVIDER_TYPE:
11168 return $$typeofType;
11169
11170 default:
11171 return $$typeof;
11172 }
11173
11174 }
11175
11176 case REACT_PORTAL_TYPE:
11177 return $$typeof;
11178 }
11179 }
11180
11181 return undefined;
11182 }
11183 var ContextConsumer = REACT_CONTEXT_TYPE;
11184 var ContextProvider = REACT_PROVIDER_TYPE;
11185 var Element = REACT_ELEMENT_TYPE;
11186 var ForwardRef = REACT_FORWARD_REF_TYPE;
11187 var Fragment = REACT_FRAGMENT_TYPE;
11188 var Lazy = REACT_LAZY_TYPE;
11189 var Memo = REACT_MEMO_TYPE;
11190 var Portal = REACT_PORTAL_TYPE;
11191 var Profiler = REACT_PROFILER_TYPE;
11192 var StrictMode = REACT_STRICT_MODE_TYPE;
11193 var Suspense = REACT_SUSPENSE_TYPE;
11194 var SuspenseList = REACT_SUSPENSE_LIST_TYPE;
11195 var hasWarnedAboutDeprecatedIsAsyncMode = false;
11196 var hasWarnedAboutDeprecatedIsConcurrentMode = false; // AsyncMode should be deprecated
11197
11198 function isAsyncMode(object) {
11199 {
11200 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
11201 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
11202
11203 console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11204 }
11205 }
11206
11207 return false;
11208 }
11209 function isConcurrentMode(object) {
11210 {
11211 if (!hasWarnedAboutDeprecatedIsConcurrentMode) {
11212 hasWarnedAboutDeprecatedIsConcurrentMode = true; // Using console['warn'] to evade Babel and ESLint
11213
11214 console['warn']('The ReactIs.isConcurrentMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11215 }
11216 }
11217
11218 return false;
11219 }
11220 function isContextConsumer(object) {
11221 return typeOf(object) === REACT_CONTEXT_TYPE;
11222 }
11223 function isContextProvider(object) {
11224 return typeOf(object) === REACT_PROVIDER_TYPE;
11225 }
11226 function isElement(object) {
11227 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
11228 }
11229 function isForwardRef(object) {
11230 return typeOf(object) === REACT_FORWARD_REF_TYPE;
11231 }
11232 function isFragment(object) {
11233 return typeOf(object) === REACT_FRAGMENT_TYPE;
11234 }
11235 function isLazy(object) {
11236 return typeOf(object) === REACT_LAZY_TYPE;
11237 }
11238 function isMemo(object) {
11239 return typeOf(object) === REACT_MEMO_TYPE;
11240 }
11241 function isPortal(object) {
11242 return typeOf(object) === REACT_PORTAL_TYPE;
11243 }
11244 function isProfiler(object) {
11245 return typeOf(object) === REACT_PROFILER_TYPE;
11246 }
11247 function isStrictMode(object) {
11248 return typeOf(object) === REACT_STRICT_MODE_TYPE;
11249 }
11250 function isSuspense(object) {
11251 return typeOf(object) === REACT_SUSPENSE_TYPE;
11252 }
11253 function isSuspenseList(object) {
11254 return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;
11255 }
11256
11257 exports.ContextConsumer = ContextConsumer;
11258 exports.ContextProvider = ContextProvider;
11259 exports.Element = Element;
11260 exports.ForwardRef = ForwardRef;
11261 exports.Fragment = Fragment;
11262 exports.Lazy = Lazy;
11263 exports.Memo = Memo;
11264 exports.Portal = Portal;
11265 exports.Profiler = Profiler;
11266 exports.StrictMode = StrictMode;
11267 exports.Suspense = Suspense;
11268 exports.SuspenseList = SuspenseList;
11269 exports.isAsyncMode = isAsyncMode;
11270 exports.isConcurrentMode = isConcurrentMode;
11271 exports.isContextConsumer = isContextConsumer;
11272 exports.isContextProvider = isContextProvider;
11273 exports.isElement = isElement;
11274 exports.isForwardRef = isForwardRef;
11275 exports.isFragment = isFragment;
11276 exports.isLazy = isLazy;
11277 exports.isMemo = isMemo;
11278 exports.isPortal = isPortal;
11279 exports.isProfiler = isProfiler;
11280 exports.isStrictMode = isStrictMode;
11281 exports.isSuspense = isSuspense;
11282 exports.isSuspenseList = isSuspenseList;
11283 exports.isValidElementType = isValidElementType;
11284 exports.typeOf = typeOf;
11285 })();
11286 }
11287
11288
11289 /***/ }),
11290
11291 /***/ "../node_modules/react-is/index.js":
11292 /*!*****************************************!*\
11293 !*** ../node_modules/react-is/index.js ***!
11294 \*****************************************/
11295 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11296
11297 "use strict";
11298
11299
11300 if (false) {} else {
11301 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
11302 }
11303
11304
11305 /***/ }),
11306
11307 /***/ "../node_modules/shallowequal/index.js":
11308 /*!*********************************************!*\
11309 !*** ../node_modules/shallowequal/index.js ***!
11310 \*********************************************/
11311 /***/ ((module) => {
11312
11313 //
11314
11315 module.exports = function shallowEqual(objA, objB, compare, compareContext) {
11316 var ret = compare ? compare.call(compareContext, objA, objB) : void 0;
11317
11318 if (ret !== void 0) {
11319 return !!ret;
11320 }
11321
11322 if (objA === objB) {
11323 return true;
11324 }
11325
11326 if (typeof objA !== "object" || !objA || typeof objB !== "object" || !objB) {
11327 return false;
11328 }
11329
11330 var keysA = Object.keys(objA);
11331 var keysB = Object.keys(objB);
11332
11333 if (keysA.length !== keysB.length) {
11334 return false;
11335 }
11336
11337 var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);
11338
11339 // Test for A's keys different from B.
11340 for (var idx = 0; idx < keysA.length; idx++) {
11341 var key = keysA[idx];
11342
11343 if (!bHasOwnProperty(key)) {
11344 return false;
11345 }
11346
11347 var valueA = objA[key];
11348 var valueB = objB[key];
11349
11350 ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;
11351
11352 if (ret === false || (ret === void 0 && valueA !== valueB)) {
11353 return false;
11354 }
11355 }
11356
11357 return true;
11358 };
11359
11360
11361 /***/ }),
11362
11363 /***/ "../node_modules/styled-components/dist/styled-components.browser.esm.js":
11364 /*!*******************************************************************************!*\
11365 !*** ../node_modules/styled-components/dist/styled-components.browser.esm.js ***!
11366 \*******************************************************************************/
11367 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11368
11369 "use strict";
11370 __webpack_require__.r(__webpack_exports__);
11371 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11372 /* harmony export */ ServerStyleSheet: () => (/* binding */ Ue),
11373 /* harmony export */ StyleSheetConsumer: () => (/* binding */ ue),
11374 /* harmony export */ StyleSheetContext: () => (/* binding */ ce),
11375 /* harmony export */ StyleSheetManager: () => (/* binding */ me),
11376 /* harmony export */ ThemeConsumer: () => (/* binding */ Ge),
11377 /* harmony export */ ThemeContext: () => (/* binding */ Me),
11378 /* harmony export */ ThemeProvider: () => (/* binding */ Le),
11379 /* harmony export */ __PRIVATE__: () => (/* binding */ Ze),
11380 /* harmony export */ createGlobalStyle: () => (/* binding */ $e),
11381 /* harmony export */ css: () => (/* binding */ Ae),
11382 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
11383 /* harmony export */ isStyledComponent: () => (/* binding */ _),
11384 /* harmony export */ keyframes: () => (/* binding */ We),
11385 /* harmony export */ useTheme: () => (/* binding */ Xe),
11386 /* harmony export */ version: () => (/* binding */ A),
11387 /* harmony export */ withTheme: () => (/* binding */ Je)
11388 /* harmony export */ });
11389 /* harmony import */ var react_is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
11390 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
11391 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
11392 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! shallowequal */ "../node_modules/shallowequal/index.js");
11393 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(shallowequal__WEBPACK_IMPORTED_MODULE_2__);
11394 /* harmony import */ var _emotion_stylis__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @emotion/stylis */ "../node_modules/@emotion/stylis/dist/stylis.browser.esm.js");
11395 /* 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");
11396 /* 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");
11397 /* 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");
11398 /* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6__);
11399 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);
11400 //# sourceMappingURL=styled-components.browser.esm.js.map
11401
11402
11403 /***/ }),
11404
11405 /***/ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js":
11406 /*!*****************************************************************************************************!*\
11407 !*** ../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js ***!
11408 \*****************************************************************************************************/
11409 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11410
11411 "use strict";
11412 __webpack_require__.r(__webpack_exports__);
11413 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11414 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
11415 /* harmony export */ });
11416 var unitlessKeys = {
11417 animationIterationCount: 1,
11418 borderImageOutset: 1,
11419 borderImageSlice: 1,
11420 borderImageWidth: 1,
11421 boxFlex: 1,
11422 boxFlexGroup: 1,
11423 boxOrdinalGroup: 1,
11424 columnCount: 1,
11425 columns: 1,
11426 flex: 1,
11427 flexGrow: 1,
11428 flexPositive: 1,
11429 flexShrink: 1,
11430 flexNegative: 1,
11431 flexOrder: 1,
11432 gridRow: 1,
11433 gridRowEnd: 1,
11434 gridRowSpan: 1,
11435 gridRowStart: 1,
11436 gridColumn: 1,
11437 gridColumnEnd: 1,
11438 gridColumnSpan: 1,
11439 gridColumnStart: 1,
11440 msGridRow: 1,
11441 msGridRowSpan: 1,
11442 msGridColumn: 1,
11443 msGridColumnSpan: 1,
11444 fontWeight: 1,
11445 lineHeight: 1,
11446 opacity: 1,
11447 order: 1,
11448 orphans: 1,
11449 tabSize: 1,
11450 widows: 1,
11451 zIndex: 1,
11452 zoom: 1,
11453 WebkitLineClamp: 1,
11454 // SVG-related properties
11455 fillOpacity: 1,
11456 floodOpacity: 1,
11457 stopOpacity: 1,
11458 strokeDasharray: 1,
11459 strokeDashoffset: 1,
11460 strokeMiterlimit: 1,
11461 strokeOpacity: 1,
11462 strokeWidth: 1
11463 };
11464
11465 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (unitlessKeys);
11466
11467
11468 /***/ }),
11469
11470 /***/ "../node_modules/validator/lib/isFQDN.js":
11471 /*!***********************************************!*\
11472 !*** ../node_modules/validator/lib/isFQDN.js ***!
11473 \***********************************************/
11474 /***/ ((module, exports, __webpack_require__) => {
11475
11476 "use strict";
11477
11478
11479 Object.defineProperty(exports, "__esModule", ({
11480 value: true
11481 }));
11482 exports["default"] = isFQDN;
11483
11484 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11485
11486 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11487
11488 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11489
11490 var default_fqdn_options = {
11491 require_tld: true,
11492 allow_underscores: false,
11493 allow_trailing_dot: false,
11494 allow_numeric_tld: false,
11495 allow_wildcard: false,
11496 ignore_max_length: false
11497 };
11498
11499 function isFQDN(str, options) {
11500 (0, _assertString.default)(str);
11501 options = (0, _merge.default)(options, default_fqdn_options);
11502 /* Remove the optional trailing dot before checking validity */
11503
11504 if (options.allow_trailing_dot && str[str.length - 1] === '.') {
11505 str = str.substring(0, str.length - 1);
11506 }
11507 /* Remove the optional wildcard before checking validity */
11508
11509
11510 if (options.allow_wildcard === true && str.indexOf('*.') === 0) {
11511 str = str.substring(2);
11512 }
11513
11514 var parts = str.split('.');
11515 var tld = parts[parts.length - 1];
11516
11517 if (options.require_tld) {
11518 // disallow fqdns without tld
11519 if (parts.length < 2) {
11520 return false;
11521 }
11522
11523 if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
11524 return false;
11525 } // disallow spaces
11526
11527
11528 if (/\s/.test(tld)) {
11529 return false;
11530 }
11531 } // reject numeric TLDs
11532
11533
11534 if (!options.allow_numeric_tld && /^\d+$/.test(tld)) {
11535 return false;
11536 }
11537
11538 return parts.every(function (part) {
11539 if (part.length > 63 && !options.ignore_max_length) {
11540 return false;
11541 }
11542
11543 if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) {
11544 return false;
11545 } // disallow full-width chars
11546
11547
11548 if (/[\uff01-\uff5e]/.test(part)) {
11549 return false;
11550 } // disallow parts starting or ending with hyphen
11551
11552
11553 if (/^-|-$/.test(part)) {
11554 return false;
11555 }
11556
11557 if (!options.allow_underscores && /_/.test(part)) {
11558 return false;
11559 }
11560
11561 return true;
11562 });
11563 }
11564
11565 module.exports = exports.default;
11566 module.exports["default"] = exports.default;
11567
11568 /***/ }),
11569
11570 /***/ "../node_modules/validator/lib/isIP.js":
11571 /*!*********************************************!*\
11572 !*** ../node_modules/validator/lib/isIP.js ***!
11573 \*********************************************/
11574 /***/ ((module, exports, __webpack_require__) => {
11575
11576 "use strict";
11577
11578
11579 Object.defineProperty(exports, "__esModule", ({
11580 value: true
11581 }));
11582 exports["default"] = isIP;
11583
11584 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11585
11586 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11587
11588 /**
11589 11.3. Examples
11590
11591 The following addresses
11592
11593 fe80::1234 (on the 1st link of the node)
11594 ff02::5678 (on the 5th link of the node)
11595 ff08::9abc (on the 10th organization of the node)
11596
11597 would be represented as follows:
11598
11599 fe80::1234%1
11600 ff02::5678%5
11601 ff08::9abc%10
11602
11603 (Here we assume a natural translation from a zone index to the
11604 <zone_id> part, where the Nth zone of any scope is translated into
11605 "N".)
11606
11607 If we use interface names as <zone_id>, those addresses could also be
11608 represented as follows:
11609
11610 fe80::1234%ne0
11611 ff02::5678%pvc1.3
11612 ff08::9abc%interface10
11613
11614 where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
11615 to the 5th link, and "interface10" belongs to the 10th organization.
11616 * * */
11617 var IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
11618 var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
11619 var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
11620 var IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';
11621 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,})?$');
11622
11623 function isIP(str) {
11624 var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
11625 (0, _assertString.default)(str);
11626 version = String(version);
11627
11628 if (!version) {
11629 return isIP(str, 4) || isIP(str, 6);
11630 }
11631
11632 if (version === '4') {
11633 return IPv4AddressRegExp.test(str);
11634 }
11635
11636 if (version === '6') {
11637 return IPv6AddressRegExp.test(str);
11638 }
11639
11640 return false;
11641 }
11642
11643 module.exports = exports.default;
11644 module.exports["default"] = exports.default;
11645
11646 /***/ }),
11647
11648 /***/ "../node_modules/validator/lib/isURL.js":
11649 /*!**********************************************!*\
11650 !*** ../node_modules/validator/lib/isURL.js ***!
11651 \**********************************************/
11652 /***/ ((module, exports, __webpack_require__) => {
11653
11654 "use strict";
11655
11656
11657 Object.defineProperty(exports, "__esModule", ({
11658 value: true
11659 }));
11660 exports["default"] = isURL;
11661
11662 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11663
11664 var _isFQDN = _interopRequireDefault(__webpack_require__(/*! ./isFQDN */ "../node_modules/validator/lib/isFQDN.js"));
11665
11666 var _isIP = _interopRequireDefault(__webpack_require__(/*! ./isIP */ "../node_modules/validator/lib/isIP.js"));
11667
11668 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11669
11670 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11671
11672 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11673
11674 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."); }
11675
11676 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); }
11677
11678 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; }
11679
11680 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; }
11681
11682 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11683
11684 /*
11685 options for isURL method
11686
11687 require_protocol - if set as true isURL will return false if protocol is not present in the URL
11688 require_valid_protocol - isURL will check if the URL's protocol is present in the protocols option
11689 protocols - valid protocols can be modified with this option
11690 require_host - if set as false isURL will not check if host is present in the URL
11691 require_port - if set as true isURL will check if port is present in the URL
11692 allow_protocol_relative_urls - if set as true protocol relative URLs will be allowed
11693 validate_length - if set as false isURL will skip string length validation (IE maximum is 2083)
11694
11695 */
11696 var default_url_options = {
11697 protocols: ['http', 'https', 'ftp'],
11698 require_tld: true,
11699 require_protocol: false,
11700 require_host: true,
11701 require_port: false,
11702 require_valid_protocol: true,
11703 allow_underscores: false,
11704 allow_trailing_dot: false,
11705 allow_protocol_relative_urls: false,
11706 allow_fragments: true,
11707 allow_query_components: true,
11708 validate_length: true
11709 };
11710 var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
11711
11712 function isRegExp(obj) {
11713 return Object.prototype.toString.call(obj) === '[object RegExp]';
11714 }
11715
11716 function checkHost(host, matches) {
11717 for (var i = 0; i < matches.length; i++) {
11718 var match = matches[i];
11719
11720 if (host === match || isRegExp(match) && match.test(host)) {
11721 return true;
11722 }
11723 }
11724
11725 return false;
11726 }
11727
11728 function isURL(url, options) {
11729 (0, _assertString.default)(url);
11730
11731 if (!url || /[\s<>]/.test(url)) {
11732 return false;
11733 }
11734
11735 if (url.indexOf('mailto:') === 0) {
11736 return false;
11737 }
11738
11739 options = (0, _merge.default)(options, default_url_options);
11740
11741 if (options.validate_length && url.length >= 2083) {
11742 return false;
11743 }
11744
11745 if (!options.allow_fragments && url.includes('#')) {
11746 return false;
11747 }
11748
11749 if (!options.allow_query_components && (url.includes('?') || url.includes('&'))) {
11750 return false;
11751 }
11752
11753 var protocol, auth, host, hostname, port, port_str, split, ipv6;
11754 split = url.split('#');
11755 url = split.shift();
11756 split = url.split('?');
11757 url = split.shift();
11758 split = url.split('://');
11759
11760 if (split.length > 1) {
11761 protocol = split.shift().toLowerCase();
11762
11763 if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
11764 return false;
11765 }
11766 } else if (options.require_protocol) {
11767 return false;
11768 } else if (url.slice(0, 2) === '//') {
11769 if (!options.allow_protocol_relative_urls) {
11770 return false;
11771 }
11772
11773 split[0] = url.slice(2);
11774 }
11775
11776 url = split.join('://');
11777
11778 if (url === '') {
11779 return false;
11780 }
11781
11782 split = url.split('/');
11783 url = split.shift();
11784
11785 if (url === '' && !options.require_host) {
11786 return true;
11787 }
11788
11789 split = url.split('@');
11790
11791 if (split.length > 1) {
11792 if (options.disallow_auth) {
11793 return false;
11794 }
11795
11796 if (split[0] === '') {
11797 return false;
11798 }
11799
11800 auth = split.shift();
11801
11802 if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
11803 return false;
11804 }
11805
11806 var _auth$split = auth.split(':'),
11807 _auth$split2 = _slicedToArray(_auth$split, 2),
11808 user = _auth$split2[0],
11809 password = _auth$split2[1];
11810
11811 if (user === '' && password === '') {
11812 return false;
11813 }
11814 }
11815
11816 hostname = split.join('@');
11817 port_str = null;
11818 ipv6 = null;
11819 var ipv6_match = hostname.match(wrapped_ipv6);
11820
11821 if (ipv6_match) {
11822 host = '';
11823 ipv6 = ipv6_match[1];
11824 port_str = ipv6_match[2] || null;
11825 } else {
11826 split = hostname.split(':');
11827 host = split.shift();
11828
11829 if (split.length) {
11830 port_str = split.join(':');
11831 }
11832 }
11833
11834 if (port_str !== null && port_str.length > 0) {
11835 port = parseInt(port_str, 10);
11836
11837 if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
11838 return false;
11839 }
11840 } else if (options.require_port) {
11841 return false;
11842 }
11843
11844 if (options.host_whitelist) {
11845 return checkHost(host, options.host_whitelist);
11846 }
11847
11848 if (host === '' && !options.require_host) {
11849 return true;
11850 }
11851
11852 if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
11853 return false;
11854 }
11855
11856 host = host || ipv6;
11857
11858 if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
11859 return false;
11860 }
11861
11862 return true;
11863 }
11864
11865 module.exports = exports.default;
11866 module.exports["default"] = exports.default;
11867
11868 /***/ }),
11869
11870 /***/ "../node_modules/validator/lib/util/assertString.js":
11871 /*!**********************************************************!*\
11872 !*** ../node_modules/validator/lib/util/assertString.js ***!
11873 \**********************************************************/
11874 /***/ ((module, exports) => {
11875
11876 "use strict";
11877
11878
11879 Object.defineProperty(exports, "__esModule", ({
11880 value: true
11881 }));
11882 exports["default"] = assertString;
11883
11884 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); }
11885
11886 function assertString(input) {
11887 var isString = typeof input === 'string' || input instanceof String;
11888
11889 if (!isString) {
11890 var invalidType = _typeof(input);
11891
11892 if (input === null) invalidType = 'null';else if (invalidType === 'object') invalidType = input.constructor.name;
11893 throw new TypeError("Expected a string but received a ".concat(invalidType));
11894 }
11895 }
11896
11897 module.exports = exports.default;
11898 module.exports["default"] = exports.default;
11899
11900 /***/ }),
11901
11902 /***/ "../node_modules/validator/lib/util/merge.js":
11903 /*!***************************************************!*\
11904 !*** ../node_modules/validator/lib/util/merge.js ***!
11905 \***************************************************/
11906 /***/ ((module, exports) => {
11907
11908 "use strict";
11909
11910
11911 Object.defineProperty(exports, "__esModule", ({
11912 value: true
11913 }));
11914 exports["default"] = merge;
11915
11916 function merge() {
11917 var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
11918 var defaults = arguments.length > 1 ? arguments[1] : undefined;
11919
11920 for (var key in defaults) {
11921 if (typeof obj[key] === 'undefined') {
11922 obj[key] = defaults[key];
11923 }
11924 }
11925
11926 return obj;
11927 }
11928
11929 module.exports = exports.default;
11930 module.exports["default"] = exports.default;
11931
11932 /***/ }),
11933
11934 /***/ "react":
11935 /*!************************!*\
11936 !*** external "React" ***!
11937 \************************/
11938 /***/ ((module) => {
11939
11940 "use strict";
11941 module.exports = React;
11942
11943 /***/ }),
11944
11945 /***/ "react-dom":
11946 /*!***************************!*\
11947 !*** external "ReactDOM" ***!
11948 \***************************/
11949 /***/ ((module) => {
11950
11951 "use strict";
11952 module.exports = ReactDOM;
11953
11954 /***/ }),
11955
11956 /***/ "@elementor/icons":
11957 /*!************************************!*\
11958 !*** external "elementorV2.icons" ***!
11959 \************************************/
11960 /***/ ((module) => {
11961
11962 "use strict";
11963 module.exports = elementorV2.icons;
11964
11965 /***/ }),
11966
11967 /***/ "@elementor/ui":
11968 /*!*********************************!*\
11969 !*** external "elementorV2.ui" ***!
11970 \*********************************/
11971 /***/ ((module) => {
11972
11973 "use strict";
11974 module.exports = elementorV2.ui;
11975
11976 /***/ }),
11977
11978 /***/ "@wordpress/i18n":
11979 /*!**************************!*\
11980 !*** external "wp.i18n" ***!
11981 \**************************/
11982 /***/ ((module) => {
11983
11984 "use strict";
11985 module.exports = wp.i18n;
11986
11987 /***/ }),
11988
11989 /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
11990 /*!******************************************************************!*\
11991 !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
11992 \******************************************************************/
11993 /***/ ((module) => {
11994
11995 function _arrayLikeToArray(arr, len) {
11996 if (len == null || len > arr.length) len = arr.length;
11997 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
11998 return arr2;
11999 }
12000 module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12001
12002 /***/ }),
12003
12004 /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
12005 /*!****************************************************************!*\
12006 !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
12007 \****************************************************************/
12008 /***/ ((module) => {
12009
12010 function _arrayWithHoles(arr) {
12011 if (Array.isArray(arr)) return arr;
12012 }
12013 module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12014
12015 /***/ }),
12016
12017 /***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
12018 /*!*******************************************************************!*\
12019 !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
12020 \*******************************************************************/
12021 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12022
12023 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12024 function _arrayWithoutHoles(arr) {
12025 if (Array.isArray(arr)) return arrayLikeToArray(arr);
12026 }
12027 module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12028
12029 /***/ }),
12030
12031 /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
12032 /*!***********************************************************************!*\
12033 !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
12034 \***********************************************************************/
12035 /***/ ((module) => {
12036
12037 function _assertThisInitialized(self) {
12038 if (self === void 0) {
12039 throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
12040 }
12041 return self;
12042 }
12043 module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
12044
12045 /***/ }),
12046
12047 /***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js":
12048 /*!******************************************************************!*\
12049 !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
12050 \******************************************************************/
12051 /***/ ((module) => {
12052
12053 function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
12054 try {
12055 var info = gen[key](arg);
12056 var value = info.value;
12057 } catch (error) {
12058 reject(error);
12059 return;
12060 }
12061 if (info.done) {
12062 resolve(value);
12063 } else {
12064 Promise.resolve(value).then(_next, _throw);
12065 }
12066 }
12067 function _asyncToGenerator(fn) {
12068 return function () {
12069 var self = this,
12070 args = arguments;
12071 return new Promise(function (resolve, reject) {
12072 var gen = fn.apply(self, args);
12073 function _next(value) {
12074 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
12075 }
12076 function _throw(err) {
12077 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
12078 }
12079 _next(undefined);
12080 });
12081 };
12082 }
12083 module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
12084
12085 /***/ }),
12086
12087 /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
12088 /*!****************************************************************!*\
12089 !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
12090 \****************************************************************/
12091 /***/ ((module) => {
12092
12093 function _classCallCheck(instance, Constructor) {
12094 if (!(instance instanceof Constructor)) {
12095 throw new TypeError("Cannot call a class as a function");
12096 }
12097 }
12098 module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
12099
12100 /***/ }),
12101
12102 /***/ "../node_modules/@babel/runtime/helpers/createClass.js":
12103 /*!*************************************************************!*\
12104 !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
12105 \*************************************************************/
12106 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12107
12108 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12109 function _defineProperties(target, props) {
12110 for (var i = 0; i < props.length; i++) {
12111 var descriptor = props[i];
12112 descriptor.enumerable = descriptor.enumerable || false;
12113 descriptor.configurable = true;
12114 if ("value" in descriptor) descriptor.writable = true;
12115 Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
12116 }
12117 }
12118 function _createClass(Constructor, protoProps, staticProps) {
12119 if (protoProps) _defineProperties(Constructor.prototype, protoProps);
12120 if (staticProps) _defineProperties(Constructor, staticProps);
12121 Object.defineProperty(Constructor, "prototype", {
12122 writable: false
12123 });
12124 return Constructor;
12125 }
12126 module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
12127
12128 /***/ }),
12129
12130 /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
12131 /*!****************************************************************!*\
12132 !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
12133 \****************************************************************/
12134 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12135
12136 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12137 function _defineProperty(obj, key, value) {
12138 key = toPropertyKey(key);
12139 if (key in obj) {
12140 Object.defineProperty(obj, key, {
12141 value: value,
12142 enumerable: true,
12143 configurable: true,
12144 writable: true
12145 });
12146 } else {
12147 obj[key] = value;
12148 }
12149 return obj;
12150 }
12151 module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
12152
12153 /***/ }),
12154
12155 /***/ "../node_modules/@babel/runtime/helpers/extends.js":
12156 /*!*********************************************************!*\
12157 !*** ../node_modules/@babel/runtime/helpers/extends.js ***!
12158 \*********************************************************/
12159 /***/ ((module) => {
12160
12161 function _extends() {
12162 module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {
12163 for (var i = 1; i < arguments.length; i++) {
12164 var source = arguments[i];
12165 for (var key in source) {
12166 if (Object.prototype.hasOwnProperty.call(source, key)) {
12167 target[key] = source[key];
12168 }
12169 }
12170 }
12171 return target;
12172 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12173 return _extends.apply(this, arguments);
12174 }
12175 module.exports = _extends, module.exports.__esModule = true, module.exports["default"] = module.exports;
12176
12177 /***/ }),
12178
12179 /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
12180 /*!****************************************************************!*\
12181 !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
12182 \****************************************************************/
12183 /***/ ((module) => {
12184
12185 function _getPrototypeOf(o) {
12186 module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
12187 return o.__proto__ || Object.getPrototypeOf(o);
12188 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12189 return _getPrototypeOf(o);
12190 }
12191 module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12192
12193 /***/ }),
12194
12195 /***/ "../node_modules/@babel/runtime/helpers/inherits.js":
12196 /*!**********************************************************!*\
12197 !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
12198 \**********************************************************/
12199 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12200
12201 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
12202 function _inherits(subClass, superClass) {
12203 if (typeof superClass !== "function" && superClass !== null) {
12204 throw new TypeError("Super expression must either be null or a function");
12205 }
12206 subClass.prototype = Object.create(superClass && superClass.prototype, {
12207 constructor: {
12208 value: subClass,
12209 writable: true,
12210 configurable: true
12211 }
12212 });
12213 Object.defineProperty(subClass, "prototype", {
12214 writable: false
12215 });
12216 if (superClass) setPrototypeOf(subClass, superClass);
12217 }
12218 module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
12219
12220 /***/ }),
12221
12222 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
12223 /*!***********************************************************************!*\
12224 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
12225 \***********************************************************************/
12226 /***/ ((module) => {
12227
12228 function _interopRequireDefault(obj) {
12229 return obj && obj.__esModule ? obj : {
12230 "default": obj
12231 };
12232 }
12233 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
12234
12235 /***/ }),
12236
12237 /***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
12238 /*!*****************************************************************!*\
12239 !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
12240 \*****************************************************************/
12241 /***/ ((module) => {
12242
12243 function _iterableToArray(iter) {
12244 if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
12245 }
12246 module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12247
12248 /***/ }),
12249
12250 /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
12251 /*!**********************************************************************!*\
12252 !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
12253 \**********************************************************************/
12254 /***/ ((module) => {
12255
12256 function _iterableToArrayLimit(r, l) {
12257 var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
12258 if (null != t) {
12259 var e,
12260 n,
12261 i,
12262 u,
12263 a = [],
12264 f = !0,
12265 o = !1;
12266 try {
12267 if (i = (t = t.call(r)).next, 0 === l) {
12268 if (Object(t) !== t) return;
12269 f = !1;
12270 } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
12271 } catch (r) {
12272 o = !0, n = r;
12273 } finally {
12274 try {
12275 if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
12276 } finally {
12277 if (o) throw n;
12278 }
12279 }
12280 return a;
12281 }
12282 }
12283 module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
12284
12285 /***/ }),
12286
12287 /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
12288 /*!*****************************************************************!*\
12289 !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
12290 \*****************************************************************/
12291 /***/ ((module) => {
12292
12293 function _nonIterableRest() {
12294 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12295 }
12296 module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
12297
12298 /***/ }),
12299
12300 /***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
12301 /*!*******************************************************************!*\
12302 !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
12303 \*******************************************************************/
12304 /***/ ((module) => {
12305
12306 function _nonIterableSpread() {
12307 throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12308 }
12309 module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
12310
12311 /***/ }),
12312
12313 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
12314 /*!*************************************************************************!*\
12315 !*** ../node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
12316 \*************************************************************************/
12317 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12318
12319 var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose.js */ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");
12320 function _objectWithoutProperties(source, excluded) {
12321 if (source == null) return {};
12322 var target = objectWithoutPropertiesLoose(source, excluded);
12323 var key, i;
12324 if (Object.getOwnPropertySymbols) {
12325 var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
12326 for (i = 0; i < sourceSymbolKeys.length; i++) {
12327 key = sourceSymbolKeys[i];
12328 if (excluded.indexOf(key) >= 0) continue;
12329 if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
12330 target[key] = source[key];
12331 }
12332 }
12333 return target;
12334 }
12335 module.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports["default"] = module.exports;
12336
12337 /***/ }),
12338
12339 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
12340 /*!******************************************************************************!*\
12341 !*** ../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
12342 \******************************************************************************/
12343 /***/ ((module) => {
12344
12345 function _objectWithoutPropertiesLoose(source, excluded) {
12346 if (source == null) return {};
12347 var target = {};
12348 var sourceKeys = Object.keys(source);
12349 var key, i;
12350 for (i = 0; i < sourceKeys.length; i++) {
12351 key = sourceKeys[i];
12352 if (excluded.indexOf(key) >= 0) continue;
12353 target[key] = source[key];
12354 }
12355 return target;
12356 }
12357 module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports["default"] = module.exports;
12358
12359 /***/ }),
12360
12361 /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
12362 /*!***************************************************************************!*\
12363 !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
12364 \***************************************************************************/
12365 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12366
12367 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12368 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
12369 function _possibleConstructorReturn(self, call) {
12370 if (call && (_typeof(call) === "object" || typeof call === "function")) {
12371 return call;
12372 } else if (call !== void 0) {
12373 throw new TypeError("Derived constructors may only return object or undefined");
12374 }
12375 return assertThisInitialized(self);
12376 }
12377 module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
12378
12379 /***/ }),
12380
12381 /***/ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js":
12382 /*!********************************************************************!*\
12383 !*** ../node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
12384 \********************************************************************/
12385 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12386
12387 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12388 function _regeneratorRuntime() {
12389 "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
12390 module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
12391 return e;
12392 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12393 var t,
12394 e = {},
12395 r = Object.prototype,
12396 n = r.hasOwnProperty,
12397 o = Object.defineProperty || function (t, e, r) {
12398 t[e] = r.value;
12399 },
12400 i = "function" == typeof Symbol ? Symbol : {},
12401 a = i.iterator || "@@iterator",
12402 c = i.asyncIterator || "@@asyncIterator",
12403 u = i.toStringTag || "@@toStringTag";
12404 function define(t, e, r) {
12405 return Object.defineProperty(t, e, {
12406 value: r,
12407 enumerable: !0,
12408 configurable: !0,
12409 writable: !0
12410 }), t[e];
12411 }
12412 try {
12413 define({}, "");
12414 } catch (t) {
12415 define = function define(t, e, r) {
12416 return t[e] = r;
12417 };
12418 }
12419 function wrap(t, e, r, n) {
12420 var i = e && e.prototype instanceof Generator ? e : Generator,
12421 a = Object.create(i.prototype),
12422 c = new Context(n || []);
12423 return o(a, "_invoke", {
12424 value: makeInvokeMethod(t, r, c)
12425 }), a;
12426 }
12427 function tryCatch(t, e, r) {
12428 try {
12429 return {
12430 type: "normal",
12431 arg: t.call(e, r)
12432 };
12433 } catch (t) {
12434 return {
12435 type: "throw",
12436 arg: t
12437 };
12438 }
12439 }
12440 e.wrap = wrap;
12441 var h = "suspendedStart",
12442 l = "suspendedYield",
12443 f = "executing",
12444 s = "completed",
12445 y = {};
12446 function Generator() {}
12447 function GeneratorFunction() {}
12448 function GeneratorFunctionPrototype() {}
12449 var p = {};
12450 define(p, a, function () {
12451 return this;
12452 });
12453 var d = Object.getPrototypeOf,
12454 v = d && d(d(values([])));
12455 v && v !== r && n.call(v, a) && (p = v);
12456 var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
12457 function defineIteratorMethods(t) {
12458 ["next", "throw", "return"].forEach(function (e) {
12459 define(t, e, function (t) {
12460 return this._invoke(e, t);
12461 });
12462 });
12463 }
12464 function AsyncIterator(t, e) {
12465 function invoke(r, o, i, a) {
12466 var c = tryCatch(t[r], t, o);
12467 if ("throw" !== c.type) {
12468 var u = c.arg,
12469 h = u.value;
12470 return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
12471 invoke("next", t, i, a);
12472 }, function (t) {
12473 invoke("throw", t, i, a);
12474 }) : e.resolve(h).then(function (t) {
12475 u.value = t, i(u);
12476 }, function (t) {
12477 return invoke("throw", t, i, a);
12478 });
12479 }
12480 a(c.arg);
12481 }
12482 var r;
12483 o(this, "_invoke", {
12484 value: function value(t, n) {
12485 function callInvokeWithMethodAndArg() {
12486 return new e(function (e, r) {
12487 invoke(t, n, e, r);
12488 });
12489 }
12490 return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
12491 }
12492 });
12493 }
12494 function makeInvokeMethod(e, r, n) {
12495 var o = h;
12496 return function (i, a) {
12497 if (o === f) throw new Error("Generator is already running");
12498 if (o === s) {
12499 if ("throw" === i) throw a;
12500 return {
12501 value: t,
12502 done: !0
12503 };
12504 }
12505 for (n.method = i, n.arg = a;;) {
12506 var c = n.delegate;
12507 if (c) {
12508 var u = maybeInvokeDelegate(c, n);
12509 if (u) {
12510 if (u === y) continue;
12511 return u;
12512 }
12513 }
12514 if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
12515 if (o === h) throw o = s, n.arg;
12516 n.dispatchException(n.arg);
12517 } else "return" === n.method && n.abrupt("return", n.arg);
12518 o = f;
12519 var p = tryCatch(e, r, n);
12520 if ("normal" === p.type) {
12521 if (o = n.done ? s : l, p.arg === y) continue;
12522 return {
12523 value: p.arg,
12524 done: n.done
12525 };
12526 }
12527 "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
12528 }
12529 };
12530 }
12531 function maybeInvokeDelegate(e, r) {
12532 var n = r.method,
12533 o = e.iterator[n];
12534 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;
12535 var i = tryCatch(o, e.iterator, r.arg);
12536 if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
12537 var a = i.arg;
12538 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);
12539 }
12540 function pushTryEntry(t) {
12541 var e = {
12542 tryLoc: t[0]
12543 };
12544 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
12545 }
12546 function resetTryEntry(t) {
12547 var e = t.completion || {};
12548 e.type = "normal", delete e.arg, t.completion = e;
12549 }
12550 function Context(t) {
12551 this.tryEntries = [{
12552 tryLoc: "root"
12553 }], t.forEach(pushTryEntry, this), this.reset(!0);
12554 }
12555 function values(e) {
12556 if (e || "" === e) {
12557 var r = e[a];
12558 if (r) return r.call(e);
12559 if ("function" == typeof e.next) return e;
12560 if (!isNaN(e.length)) {
12561 var o = -1,
12562 i = function next() {
12563 for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
12564 return next.value = t, next.done = !0, next;
12565 };
12566 return i.next = i;
12567 }
12568 }
12569 throw new TypeError(_typeof(e) + " is not iterable");
12570 }
12571 return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
12572 value: GeneratorFunctionPrototype,
12573 configurable: !0
12574 }), o(GeneratorFunctionPrototype, "constructor", {
12575 value: GeneratorFunction,
12576 configurable: !0
12577 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
12578 var e = "function" == typeof t && t.constructor;
12579 return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
12580 }, e.mark = function (t) {
12581 return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
12582 }, e.awrap = function (t) {
12583 return {
12584 __await: t
12585 };
12586 }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
12587 return this;
12588 }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
12589 void 0 === i && (i = Promise);
12590 var a = new AsyncIterator(wrap(t, r, n, o), i);
12591 return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
12592 return t.done ? t.value : a.next();
12593 });
12594 }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
12595 return this;
12596 }), define(g, "toString", function () {
12597 return "[object Generator]";
12598 }), e.keys = function (t) {
12599 var e = Object(t),
12600 r = [];
12601 for (var n in e) r.push(n);
12602 return r.reverse(), function next() {
12603 for (; r.length;) {
12604 var t = r.pop();
12605 if (t in e) return next.value = t, next.done = !1, next;
12606 }
12607 return next.done = !0, next;
12608 };
12609 }, e.values = values, Context.prototype = {
12610 constructor: Context,
12611 reset: function reset(e) {
12612 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);
12613 },
12614 stop: function stop() {
12615 this.done = !0;
12616 var t = this.tryEntries[0].completion;
12617 if ("throw" === t.type) throw t.arg;
12618 return this.rval;
12619 },
12620 dispatchException: function dispatchException(e) {
12621 if (this.done) throw e;
12622 var r = this;
12623 function handle(n, o) {
12624 return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
12625 }
12626 for (var o = this.tryEntries.length - 1; o >= 0; --o) {
12627 var i = this.tryEntries[o],
12628 a = i.completion;
12629 if ("root" === i.tryLoc) return handle("end");
12630 if (i.tryLoc <= this.prev) {
12631 var c = n.call(i, "catchLoc"),
12632 u = n.call(i, "finallyLoc");
12633 if (c && u) {
12634 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12635 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12636 } else if (c) {
12637 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12638 } else {
12639 if (!u) throw new Error("try statement without catch or finally");
12640 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12641 }
12642 }
12643 }
12644 },
12645 abrupt: function abrupt(t, e) {
12646 for (var r = this.tryEntries.length - 1; r >= 0; --r) {
12647 var o = this.tryEntries[r];
12648 if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
12649 var i = o;
12650 break;
12651 }
12652 }
12653 i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
12654 var a = i ? i.completion : {};
12655 return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
12656 },
12657 complete: function complete(t, e) {
12658 if ("throw" === t.type) throw t.arg;
12659 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;
12660 },
12661 finish: function finish(t) {
12662 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12663 var r = this.tryEntries[e];
12664 if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
12665 }
12666 },
12667 "catch": function _catch(t) {
12668 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12669 var r = this.tryEntries[e];
12670 if (r.tryLoc === t) {
12671 var n = r.completion;
12672 if ("throw" === n.type) {
12673 var o = n.arg;
12674 resetTryEntry(r);
12675 }
12676 return o;
12677 }
12678 }
12679 throw new Error("illegal catch attempt");
12680 },
12681 delegateYield: function delegateYield(e, r, n) {
12682 return this.delegate = {
12683 iterator: values(e),
12684 resultName: r,
12685 nextLoc: n
12686 }, "next" === this.method && (this.arg = t), y;
12687 }
12688 }, e;
12689 }
12690 module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
12691
12692 /***/ }),
12693
12694 /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
12695 /*!****************************************************************!*\
12696 !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
12697 \****************************************************************/
12698 /***/ ((module) => {
12699
12700 function _setPrototypeOf(o, p) {
12701 module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
12702 o.__proto__ = p;
12703 return o;
12704 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12705 return _setPrototypeOf(o, p);
12706 }
12707 module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12708
12709 /***/ }),
12710
12711 /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
12712 /*!***************************************************************!*\
12713 !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
12714 \***************************************************************/
12715 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12716
12717 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
12718 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
12719 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12720 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
12721 function _slicedToArray(arr, i) {
12722 return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
12723 }
12724 module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12725
12726 /***/ }),
12727
12728 /***/ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js":
12729 /*!***********************************************************************!*\
12730 !*** ../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js ***!
12731 \***********************************************************************/
12732 /***/ ((module) => {
12733
12734 function _taggedTemplateLiteral(strings, raw) {
12735 if (!raw) {
12736 raw = strings.slice(0);
12737 }
12738 return Object.freeze(Object.defineProperties(strings, {
12739 raw: {
12740 value: Object.freeze(raw)
12741 }
12742 }));
12743 }
12744 module.exports = _taggedTemplateLiteral, module.exports.__esModule = true, module.exports["default"] = module.exports;
12745
12746 /***/ }),
12747
12748 /***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
12749 /*!*******************************************************************!*\
12750 !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
12751 \*******************************************************************/
12752 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12753
12754 var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
12755 var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
12756 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12757 var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
12758 function _toConsumableArray(arr) {
12759 return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
12760 }
12761 module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12762
12763 /***/ }),
12764
12765 /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
12766 /*!*************************************************************!*\
12767 !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
12768 \*************************************************************/
12769 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12770
12771 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12772 function toPrimitive(t, r) {
12773 if ("object" != _typeof(t) || !t) return t;
12774 var e = t[Symbol.toPrimitive];
12775 if (void 0 !== e) {
12776 var i = e.call(t, r || "default");
12777 if ("object" != _typeof(i)) return i;
12778 throw new TypeError("@@toPrimitive must return a primitive value.");
12779 }
12780 return ("string" === r ? String : Number)(t);
12781 }
12782 module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
12783
12784 /***/ }),
12785
12786 /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
12787 /*!***************************************************************!*\
12788 !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
12789 \***************************************************************/
12790 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12791
12792 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12793 var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
12794 function toPropertyKey(t) {
12795 var i = toPrimitive(t, "string");
12796 return "symbol" == _typeof(i) ? i : String(i);
12797 }
12798 module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
12799
12800 /***/ }),
12801
12802 /***/ "../node_modules/@babel/runtime/helpers/typeof.js":
12803 /*!********************************************************!*\
12804 !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
12805 \********************************************************/
12806 /***/ ((module) => {
12807
12808 function _typeof(o) {
12809 "@babel/helpers - typeof";
12810
12811 return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
12812 return typeof o;
12813 } : function (o) {
12814 return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
12815 }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
12816 }
12817 module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
12818
12819 /***/ }),
12820
12821 /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
12822 /*!****************************************************************************!*\
12823 !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
12824 \****************************************************************************/
12825 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12826
12827 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12828 function _unsupportedIterableToArray(o, minLen) {
12829 if (!o) return;
12830 if (typeof o === "string") return arrayLikeToArray(o, minLen);
12831 var n = Object.prototype.toString.call(o).slice(8, -1);
12832 if (n === "Object" && o.constructor) n = o.constructor.name;
12833 if (n === "Map" || n === "Set") return Array.from(o);
12834 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
12835 }
12836 module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12837
12838 /***/ }),
12839
12840 /***/ "../node_modules/@babel/runtime/regenerator/index.js":
12841 /*!***********************************************************!*\
12842 !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
12843 \***********************************************************/
12844 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12845
12846 // TODO(Babel 8): Remove this file.
12847
12848 var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js")();
12849 module.exports = runtime;
12850
12851 // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
12852 try {
12853 regeneratorRuntime = runtime;
12854 } catch (accidentalStrictMode) {
12855 if (typeof globalThis === "object") {
12856 globalThis.regeneratorRuntime = runtime;
12857 } else {
12858 Function("r", "regeneratorRuntime = r")(runtime);
12859 }
12860 }
12861
12862
12863 /***/ })
12864
12865 /******/ });
12866 /************************************************************************/
12867 /******/ // The module cache
12868 /******/ var __webpack_module_cache__ = {};
12869 /******/
12870 /******/ // The require function
12871 /******/ function __webpack_require__(moduleId) {
12872 /******/ // Check if module is in cache
12873 /******/ var cachedModule = __webpack_module_cache__[moduleId];
12874 /******/ if (cachedModule !== undefined) {
12875 /******/ return cachedModule.exports;
12876 /******/ }
12877 /******/ // Create a new module (and put it into the cache)
12878 /******/ var module = __webpack_module_cache__[moduleId] = {
12879 /******/ // no module.id needed
12880 /******/ // no module.loaded needed
12881 /******/ exports: {}
12882 /******/ };
12883 /******/
12884 /******/ // Execute the module function
12885 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
12886 /******/
12887 /******/ // Return the exports of the module
12888 /******/ return module.exports;
12889 /******/ }
12890 /******/
12891 /************************************************************************/
12892 /******/ /* webpack/runtime/compat get default export */
12893 /******/ (() => {
12894 /******/ // getDefaultExport function for compatibility with non-harmony modules
12895 /******/ __webpack_require__.n = (module) => {
12896 /******/ var getter = module && module.__esModule ?
12897 /******/ () => (module['default']) :
12898 /******/ () => (module);
12899 /******/ __webpack_require__.d(getter, { a: getter });
12900 /******/ return getter;
12901 /******/ };
12902 /******/ })();
12903 /******/
12904 /******/ /* webpack/runtime/define property getters */
12905 /******/ (() => {
12906 /******/ // define getter functions for harmony exports
12907 /******/ __webpack_require__.d = (exports, definition) => {
12908 /******/ for(var key in definition) {
12909 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
12910 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
12911 /******/ }
12912 /******/ }
12913 /******/ };
12914 /******/ })();
12915 /******/
12916 /******/ /* webpack/runtime/hasOwnProperty shorthand */
12917 /******/ (() => {
12918 /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
12919 /******/ })();
12920 /******/
12921 /******/ /* webpack/runtime/make namespace object */
12922 /******/ (() => {
12923 /******/ // define __esModule on exports
12924 /******/ __webpack_require__.r = (exports) => {
12925 /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
12926 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
12927 /******/ }
12928 /******/ Object.defineProperty(exports, '__esModule', { value: true });
12929 /******/ };
12930 /******/ })();
12931 /******/
12932 /******/ /* webpack/runtime/nonce */
12933 /******/ (() => {
12934 /******/ __webpack_require__.nc = undefined;
12935 /******/ })();
12936 /******/
12937 /************************************************************************/
12938 var __webpack_exports__ = {};
12939 // This entry need to be wrapped in an IIFE because it need to be in strict mode.
12940 (() => {
12941 "use strict";
12942 var exports = __webpack_exports__;
12943 /*!*******************************************************!*\
12944 !*** ../modules/ai/assets/js/editor/layout-module.js ***!
12945 \*******************************************************/
12946
12947
12948 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
12949 Object.defineProperty(exports, "__esModule", ({
12950 value: true
12951 }));
12952 exports["default"] = exports.AI_ATTACHMENT = void 0;
12953 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
12954 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
12955 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
12956 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
12957 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
12958 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
12959 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
12960 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
12961 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
12962 var _aiLayoutBehavior = _interopRequireDefault(__webpack_require__(/*! ./ai-layout-behavior */ "../modules/ai/assets/js/editor/ai-layout-behavior.js"));
12963 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
12964 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
12965 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
12966 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"));
12967 var _attachments = __webpack_require__(/*! ./pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
12968 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); }; }
12969 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; } }
12970 var AI_ATTACHMENT = 'ai-attachment';
12971 exports.AI_ATTACHMENT = AI_ATTACHMENT;
12972 var Module = /*#__PURE__*/function (_elementorModules$edi) {
12973 (0, _inherits2.default)(Module, _elementorModules$edi);
12974 var _super = _createSuper(Module);
12975 function Module() {
12976 var _this;
12977 (0, _classCallCheck2.default)(this, Module);
12978 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12979 args[_key] = arguments[_key];
12980 }
12981 _this = _super.call.apply(_super, [this].concat(args));
12982 (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "registerVariationsContextMenu", function (groups, currentElement) {
12983 var _ElementorAiConfig, _ElementorAiConfig$us;
12984 var saveGroup = groups.find(function (group) {
12985 return 'save' === group.name;
12986 });
12987 if (!saveGroup) {
12988 return groups;
12989 }
12990 var contextMenu = {
12991 name: 'ai',
12992 icon: 'eicon-ai',
12993 isEnabled: function isEnabled() {
12994 return 0 !== currentElement.getContainer().children.length;
12995 },
12996 title: (0, _i18n.__)('Generate variations with AI', 'elementor'),
12997 callback: function () {
12998 var _callback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
12999 var container, json, attachments;
13000 return _regenerator.default.wrap(function _callee$(_context) {
13001 while (1) switch (_context.prev = _context.next) {
13002 case 0:
13003 container = currentElement.getContainer();
13004 json = container.model.toJSON({
13005 remove: ['default']
13006 });
13007 attachments = [{
13008 type: 'json',
13009 previewHTML: '',
13010 content: json,
13011 label: container.model.get('title'),
13012 source: _attachments.USER_VARIATION_SOURCE
13013 }];
13014 (0, _editorIntegration.renderLayoutApp)({
13015 parentContainer: container.parent,
13016 mode: _config.MODE_VARIATION,
13017 at: container.view._index,
13018 attachments: attachments,
13019 onSelect: function onSelect() {
13020 container.view.$el.hide();
13021 },
13022 onClose: function onClose() {
13023 container.view.$el.show();
13024 },
13025 onInsert: function onInsert(template) {
13026 (0, _editorIntegration.importToEditor)({
13027 parentContainer: container.parent,
13028 at: container.view._index,
13029 template: template,
13030 historyTitle: (0, _i18n.__)('AI Variation', 'elementor'),
13031 replace: true
13032 });
13033 }
13034 });
13035 case 4:
13036 case "end":
13037 return _context.stop();
13038 }
13039 }, _callee);
13040 }));
13041 function callback() {
13042 return _callback.apply(this, arguments);
13043 }
13044 return callback;
13045 }()
13046 };
13047 if (!((_ElementorAiConfig = ElementorAiConfig) !== null && _ElementorAiConfig !== void 0 && (_ElementorAiConfig$us = _ElementorAiConfig.usage) !== null && _ElementorAiConfig$us !== void 0 && _ElementorAiConfig$us.hasAiSubscription)) {
13048 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>";
13049 contextMenu.shortcut = "<div class=\"elementor-context-menu-list__item__ai-badge\">".concat(svg, "</div>");
13050 }
13051
13052 // Add on top of save group actions
13053 saveGroup.actions.unshift(contextMenu);
13054 return groups;
13055 });
13056 return _this;
13057 }
13058 (0, _createClass2.default)(Module, [{
13059 key: "onElementorInit",
13060 value: function onElementorInit() {
13061 var _this2 = this;
13062 elementor.hooks.addFilter('views/add-section/behaviors', this.registerAiLayoutBehavior);
13063 elementor.hooks.addFilter('elements/container/contextMenuGroups', this.registerVariationsContextMenu);
13064 elementor.hooks.addFilter('elementor/editor/template-library/template/behaviors', this.registerLibraryActionButtonBehavior);
13065 elementor.hooks.addFilter('elementor/editor/template-library/template/action-button', this.filterLibraryActionButtonTemplate, 11);
13066 $e.commands.register('library', 'generate-ai-variation', function (args) {
13067 return _this2.applyTemplate(args);
13068 });
13069 }
13070 }, {
13071 key: "applyTemplate",
13072 value: function applyTemplate(args) {
13073 window.postMessage({
13074 type: 'library/attach:start'
13075 });
13076 $e.components.get('library').downloadTemplate(args, function (data) {
13077 var model = args.model;
13078 window.postMessage({
13079 type: 'library/attach',
13080 json: data.content[0],
13081 html: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
13082 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
13083 source: _attachments.ELEMENTOR_LIBRARY_SOURCE
13084 }, window.location.origin);
13085 });
13086 }
13087 }, {
13088 key: "registerLibraryActionButtonBehavior",
13089 value: function registerLibraryActionButtonBehavior(behaviors) {
13090 behaviors.applyAiTemplate = {
13091 behaviorClass: _applyTemplateForAiBehavior.default
13092 };
13093 return behaviors;
13094 }
13095 }, {
13096 key: "registerAiLayoutBehavior",
13097 value: function registerAiLayoutBehavior(behaviors) {
13098 behaviors.ai = {
13099 behaviorClass: _aiLayoutBehavior.default
13100 };
13101 return behaviors;
13102 }
13103 }, {
13104 key: "filterLibraryActionButtonTemplate",
13105 value: function filterLibraryActionButtonTemplate(viewId) {
13106 var modalConfig = $e.components.get('library').manager.modalConfig;
13107 var originalCoreViewId = '#tmpl-elementor-template-library-insert-button';
13108 if (originalCoreViewId !== viewId) {
13109 return viewId;
13110 }
13111 if ($e.routes.current.library !== 'library/templates/blocks') {
13112 return viewId;
13113 }
13114 if (AI_ATTACHMENT === modalConfig.mode) {
13115 viewId = '#tmpl-elementor-template-library-apply-ai-button';
13116 } else {
13117 viewId = '#tmpl-elementor-template-library-insert-and-ai-variations-buttons';
13118 }
13119 return viewId;
13120 }
13121 }]);
13122 return Module;
13123 }(elementorModules.editor.utils.Module);
13124 exports["default"] = Module;
13125 new Module();
13126 })();
13127
13128 /******/ })()
13129 ;
13130 //# sourceMappingURL=ai-layout.js.map