PluginProbe
Elementor Website Builder – more than just a page builder / 3.22.0-beta1
Elementor Website Builder – more than just a page builder v3.22.0-beta1
4.3.4 4.3.3 4.3.2 4.3.1 4.3.0 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 All 457 releases
elementor / assets / js / ai-layout.js

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

13,135 lines 583.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*! elementor - v3.22.0 - 19-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 window.elementorAiCurrentContext = this.getOption('context');
804 (0, _editorIntegration.renderLayoutApp)({
805 parentContainer: elementor.getPreviewContainer(),
806 mode: _config.MODE_LAYOUT,
807 at: this.view.getOption('at'),
808 onInsert: this.onInsert.bind(this),
809 onRenderApp: function onRenderApp(args) {
810 args.previewContainer.init();
811 },
812 onGenerate: function onGenerate(args) {
813 args.previewContainer.reset();
814 }
815 });
816 }
817 }, {
818 key: "hideDropArea",
819 value: function hideDropArea() {
820 this.view.onCloseButtonClick();
821 }
822 }, {
823 key: "onInsert",
824 value: function onInsert(template) {
825 this.hideDropArea();
826 (0, _editorIntegration.importToEditor)({
827 parentContainer: elementor.getPreviewContainer(),
828 at: this.view.getOption('at'),
829 template: template,
830 historyTitle: (0, _i18n.__)('AI Layout', 'elementor')
831 });
832 }
833 }, {
834 key: "onRender",
835 value: function onRender() {
836 var $button = jQuery('<div>', {
837 class: 'e-ai-layout-button elementor-add-section-area-button e-button-primary',
838 title: (0, _i18n.__)('Build with AI', 'elementor'),
839 role: 'button'
840 });
841 $button.html("\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<i class=\"eicon-ai\"></i>\n\t\t");
842 this.ui.addTemplateButton.after($button);
843 }
844 }]);
845 return AiLayoutBehavior;
846 }(Marionette.Behavior);
847 exports["default"] = AiLayoutBehavior;
848
849 /***/ }),
850
851 /***/ "../modules/ai/assets/js/editor/api/index.js":
852 /*!***************************************************!*\
853 !*** ../modules/ai/assets/js/editor/api/index.js ***!
854 \***************************************************/
855 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
856
857 "use strict";
858
859
860 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
861 Object.defineProperty(exports, "__esModule", ({
862 value: true
863 }));
864 exports.uploadImage = exports.toggleFavoriteHistoryItem = exports.setStatusFeedback = exports.setGetStarted = exports.getUserInformation = exports.getTextToImageGeneration = exports.getRemoteConfig = exports.getLayoutPromptEnhanced = exports.getImageToImageUpscale = exports.getImageToImageReplaceBackground = exports.getImageToImageRemoveText = exports.getImageToImageRemoveBackground = exports.getImageToImageOutPainting = exports.getImageToImageMaskGeneration = exports.getImageToImageGeneration = exports.getImagePromptEnhanced = exports.getHistory = exports.getEditText = exports.getCustomCode = exports.getCustomCSS = exports.getCompletionText = exports.generateLayout = exports.deleteHistoryItem = void 0;
865 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
866 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
867 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
868 var request = function request(endpoint) {
869 var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
870 var immediately = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
871 var signal = arguments.length > 3 ? arguments[3] : undefined;
872 if (Object.keys(data).length) {
873 data.context = window.elementorAiCurrentContext;
874 }
875 return new Promise(function (resolve, reject) {
876 var ajaxData = elementorCommon.ajax.addRequest(endpoint, {
877 success: resolve,
878 error: reject,
879 data: data
880 }, immediately);
881 if (signal && ajaxData.jqXhr) {
882 signal.addEventListener('abort', ajaxData.jqXhr.abort);
883 }
884 });
885 };
886 var getUserInformation = function getUserInformation() {
887 return request('ai_get_user_information');
888 };
889 exports.getUserInformation = getUserInformation;
890 var getRemoteConfig = function getRemoteConfig() {
891 return request('ai_get_remote_config');
892 };
893 exports.getRemoteConfig = getRemoteConfig;
894 var getCompletionText = function getCompletionText(payload) {
895 return request('ai_get_completion_text', {
896 payload: payload
897 });
898 };
899 exports.getCompletionText = getCompletionText;
900 var getEditText = function getEditText(payload) {
901 return request('ai_get_edit_text', {
902 payload: payload
903 });
904 };
905 exports.getEditText = getEditText;
906 var getCustomCode = function getCustomCode(payload) {
907 return request('ai_get_custom_code', {
908 payload: payload
909 });
910 };
911 exports.getCustomCode = getCustomCode;
912 var getCustomCSS = function getCustomCSS(payload) {
913 return request('ai_get_custom_css', {
914 payload: payload
915 });
916 };
917 exports.getCustomCSS = getCustomCSS;
918 var setGetStarted = function setGetStarted() {
919 return request('ai_set_get_started');
920 };
921 exports.setGetStarted = setGetStarted;
922 var setStatusFeedback = function setStatusFeedback(responseId) {
923 return request('ai_set_status_feedback', {
924 response_id: responseId
925 });
926 };
927 exports.setStatusFeedback = setStatusFeedback;
928 var getTextToImageGeneration = function getTextToImageGeneration(payload) {
929 return request('ai_get_text_to_image', {
930 payload: payload
931 });
932 };
933 exports.getTextToImageGeneration = getTextToImageGeneration;
934 var getImageToImageGeneration = function getImageToImageGeneration(payload) {
935 return request('ai_get_image_to_image', {
936 payload: payload
937 });
938 };
939 exports.getImageToImageGeneration = getImageToImageGeneration;
940 var getImageToImageMaskGeneration = function getImageToImageMaskGeneration(payload) {
941 return request('ai_get_image_to_image_mask', {
942 payload: payload
943 });
944 };
945 exports.getImageToImageMaskGeneration = getImageToImageMaskGeneration;
946 var getImageToImageOutPainting = function getImageToImageOutPainting(payload) {
947 return request('ai_get_image_to_image_outpainting', {
948 payload: payload
949 });
950 };
951 exports.getImageToImageOutPainting = getImageToImageOutPainting;
952 var getImageToImageUpscale = function getImageToImageUpscale(payload) {
953 return request('ai_get_image_to_image_upscale', {
954 payload: payload
955 });
956 };
957 exports.getImageToImageUpscale = getImageToImageUpscale;
958 var getImageToImageRemoveBackground = function getImageToImageRemoveBackground(payload) {
959 return request('ai_get_image_to_image_remove_background', {
960 payload: payload
961 });
962 };
963 exports.getImageToImageRemoveBackground = getImageToImageRemoveBackground;
964 var getImageToImageReplaceBackground = function getImageToImageReplaceBackground(payload) {
965 return request('ai_get_image_to_image_replace_background', {
966 payload: payload
967 });
968 };
969 exports.getImageToImageReplaceBackground = getImageToImageReplaceBackground;
970 var getImageToImageRemoveText = function getImageToImageRemoveText(image) {
971 return request('ai_get_image_to_image_remove_text', {
972 image: image
973 });
974 };
975 exports.getImageToImageRemoveText = getImageToImageRemoveText;
976 var getImagePromptEnhanced = function getImagePromptEnhanced(prompt) {
977 return request('ai_get_image_prompt_enhancer', {
978 prompt: prompt
979 });
980 };
981 exports.getImagePromptEnhanced = getImagePromptEnhanced;
982 var uploadImage = function uploadImage(image) {
983 return request('ai_upload_image', _objectSpread({}, image));
984 };
985
986 /**
987 * @typedef {Object} AttachmentPropType - See ./types/attachment.js
988 * @typedef {Object} requestBody
989 * @property {string} prompt - Prompt to generate the layout from.
990 * @property {0|1|2} [variationType] - Type of the layout to generate (actually it's a position).
991 * @property {string[]} [prevGeneratedIds] - Previously generated ids for exclusion on regeneration.
992 * @property {AttachmentPropType[]} [attachments] - Attachments to use for the generation. currently only `json` type is supported - a container JSON to generate variations from.
993 */
994
995 /**
996 * @param {requestBody} requestBody
997 * @param {AbortSignal} [signal]
998 */
999 exports.uploadImage = uploadImage;
1000 var generateLayout = function generateLayout(requestBody, signal) {
1001 return request('ai_generate_layout', requestBody, true, signal);
1002 };
1003 exports.generateLayout = generateLayout;
1004 var getLayoutPromptEnhanced = function getLayoutPromptEnhanced(prompt, enhanceType) {
1005 return request('ai_get_layout_prompt_enhancer', {
1006 prompt: prompt,
1007 enhance_type: enhanceType
1008 });
1009 };
1010 exports.getLayoutPromptEnhanced = getLayoutPromptEnhanced;
1011 var getHistory = function getHistory(type, page, limit) {
1012 return request('ai_get_history', {
1013 type: type,
1014 page: page,
1015 limit: limit
1016 });
1017 };
1018 exports.getHistory = getHistory;
1019 var deleteHistoryItem = function deleteHistoryItem(id) {
1020 return request('ai_delete_history_item', {
1021 id: id
1022 });
1023 };
1024 exports.deleteHistoryItem = deleteHistoryItem;
1025 var toggleFavoriteHistoryItem = function toggleFavoriteHistoryItem(id) {
1026 return request('ai_toggle_favorite_history_item', {
1027 id: id
1028 });
1029 };
1030 exports.toggleFavoriteHistoryItem = toggleFavoriteHistoryItem;
1031
1032 /***/ }),
1033
1034 /***/ "../modules/ai/assets/js/editor/components/alert-dialog.js":
1035 /*!*****************************************************************!*\
1036 !*** ../modules/ai/assets/js/editor/components/alert-dialog.js ***!
1037 \*****************************************************************/
1038 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1039
1040 "use strict";
1041
1042
1043 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1044 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1045 Object.defineProperty(exports, "__esModule", ({
1046 value: true
1047 }));
1048 exports.AlertDialog = void 0;
1049 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1050 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1051 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1052 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1053 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1054 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); }
1055 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; }
1056 var AlertDialog = function AlertDialog(props) {
1057 var _useState = (0, _react.useState)(true),
1058 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1059 isShown = _useState2[0],
1060 setIsShown = _useState2[1];
1061 if (!isShown) {
1062 return null;
1063 }
1064 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1065 open: true,
1066 maxWidth: "lg"
1067 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
1068 sx: {
1069 padding: 0
1070 }
1071 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1072 sx: {
1073 textAlign: 'center',
1074 padding: 3
1075 }
1076 }, props.message), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1077 alignItems: "center",
1078 spacing: 2,
1079 marginBottom: 2
1080 }, /*#__PURE__*/_react.default.createElement(_ui.Button, {
1081 variant: "contained",
1082 type: "button",
1083 color: "primary",
1084 onClick: function onClick() {
1085 var _props$onClose;
1086 setIsShown(false);
1087 (_props$onClose = props.onClose) === null || _props$onClose === void 0 ? void 0 : _props$onClose.call(props);
1088 }
1089 }, (0, _i18n.__)('Close', 'elementor')))));
1090 };
1091 exports.AlertDialog = AlertDialog;
1092 AlertDialog.propTypes = {
1093 message: _propTypes.default.string.isRequired,
1094 onClose: _propTypes.default.func
1095 };
1096
1097 /***/ }),
1098
1099 /***/ "../modules/ai/assets/js/editor/components/dialog-header.js":
1100 /*!******************************************************************!*\
1101 !*** ../modules/ai/assets/js/editor/components/dialog-header.js ***!
1102 \******************************************************************/
1103 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1104
1105 "use strict";
1106
1107
1108 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1109 Object.defineProperty(exports, "__esModule", ({
1110 value: true
1111 }));
1112 exports["default"] = void 0;
1113 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1114 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1115 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1116 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1117 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1118 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1119 var ElementorLogo = function ElementorLogo(props) {
1120 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1121 viewBox: "0 0 32 32"
1122 }, props), /*#__PURE__*/_react.default.createElement("path", {
1123 fillRule: "evenodd",
1124 clipRule: "evenodd",
1125 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"
1126 }));
1127 };
1128 var StyledElementorLogo = (0, _ui.styled)(ElementorLogo)(function (_ref) {
1129 var theme = _ref.theme;
1130 return {
1131 width: theme.spacing(3),
1132 height: theme.spacing(3),
1133 '& path': {
1134 fill: theme.palette.text.primary
1135 }
1136 };
1137 });
1138 var DialogHeader = function DialogHeader(props) {
1139 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
1140 sx: {
1141 fontWeight: 'normal'
1142 },
1143 color: "transparent",
1144 position: "relative"
1145 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
1146 variant: "dense"
1147 }, /*#__PURE__*/_react.default.createElement(StyledElementorLogo, {
1148 sx: {
1149 mr: 1
1150 }
1151 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1152 component: "span",
1153 variant: "subtitle2",
1154 sx: {
1155 fontWeight: 'bold',
1156 textTransform: 'uppercase'
1157 }
1158 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
1159 label: (0, _i18n.__)('Beta', 'elementor'),
1160 color: "default",
1161 size: "small",
1162 sx: {
1163 ml: 1
1164 }
1165 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1166 direction: "row",
1167 spacing: 1,
1168 alignItems: "center",
1169 sx: {
1170 ml: 'auto'
1171 }
1172 }, props.children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
1173 size: "small",
1174 "aria-label": "close",
1175 onClick: props.onClose,
1176 sx: {
1177 '&.MuiButtonBase-root': {
1178 mr: -1
1179 }
1180 }
1181 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
1182 };
1183 DialogHeader.propTypes = {
1184 onClose: _propTypes.default.func.isRequired,
1185 children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node])
1186 };
1187 var _default = DialogHeader;
1188 exports["default"] = _default;
1189
1190 /***/ }),
1191
1192 /***/ "../modules/ai/assets/js/editor/components/loader.js":
1193 /*!***********************************************************!*\
1194 !*** ../modules/ai/assets/js/editor/components/loader.js ***!
1195 \***********************************************************/
1196 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1197
1198 "use strict";
1199
1200
1201 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1202 Object.defineProperty(exports, "__esModule", ({
1203 value: true
1204 }));
1205 exports["default"] = void 0;
1206 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1207 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1208 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1209 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1210 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1211 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1212 var _excluded = ["sx", "BoxProps"];
1213 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; }
1214 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; }
1215 var Loader = function Loader(_ref) {
1216 var _ref$sx = _ref.sx,
1217 sx = _ref$sx === void 0 ? {} : _ref$sx,
1218 _ref$BoxProps = _ref.BoxProps,
1219 BoxProps = _ref$BoxProps === void 0 ? {} : _ref$BoxProps,
1220 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1221 return /*#__PURE__*/_react.default.createElement(_ui.Box, (0, _extends2.default)({
1222 width: "100%",
1223 display: "flex",
1224 alignItems: "center"
1225 }, BoxProps, {
1226 sx: _objectSpread({
1227 px: 1.5,
1228 minHeight: function minHeight(theme) {
1229 return theme.spacing(5);
1230 }
1231 }, BoxProps.sx || {})
1232 }), /*#__PURE__*/_react.default.createElement(_ui.LinearProgress, (0, _extends2.default)({
1233 color: "secondary"
1234 }, props, {
1235 sx: _objectSpread({
1236 width: '100%'
1237 }, sx)
1238 })));
1239 };
1240 Loader.propTypes = {
1241 sx: _propTypes.default.object,
1242 BoxProps: _propTypes.default.object
1243 };
1244 var _default = Loader;
1245 exports["default"] = _default;
1246
1247 /***/ }),
1248
1249 /***/ "../modules/ai/assets/js/editor/components/prompt-dialog.js":
1250 /*!******************************************************************!*\
1251 !*** ../modules/ai/assets/js/editor/components/prompt-dialog.js ***!
1252 \******************************************************************/
1253 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1254
1255 "use strict";
1256
1257
1258 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1259 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1260 Object.defineProperty(exports, "__esModule", ({
1261 value: true
1262 }));
1263 exports["default"] = void 0;
1264 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1265 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1266 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1267 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1268 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1269 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1270 var _reactDraggable = _interopRequireDefault(__webpack_require__(/*! react-draggable */ "../node_modules/react-draggable/build/cjs/cjs.js"));
1271 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1272 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); }
1273 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; }
1274 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; }
1275 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; }
1276 var DraggablePaper = function DraggablePaper(props) {
1277 var _useState = (0, _react.useState)({
1278 x: 0,
1279 y: 0
1280 }),
1281 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1282 position = _useState2[0],
1283 setPosition = _useState2[1];
1284 var paperRef = (0, _react.useRef)(null);
1285 var timeout = (0, _react.useRef)(null);
1286 var onDrag = function onDrag(_e, _ref) {
1287 var x = _ref.x,
1288 y = _ref.y;
1289 return setPosition({
1290 x: x,
1291 y: y
1292 });
1293 };
1294 var handlePositionBoundaries = function handlePositionBoundaries() {
1295 clearTimeout(timeout.current);
1296
1297 // Ensuring the dialog header, which is used as the dialog dragging handle, does not exceed the screen.
1298 timeout.current = setTimeout(function () {
1299 var _paperRef$current;
1300 var dialogTop = (_paperRef$current = paperRef.current) === null || _paperRef$current === void 0 ? void 0 : _paperRef$current.getBoundingClientRect().top;
1301 if (dialogTop < 0) {
1302 setPosition(function (prev) {
1303 return _objectSpread(_objectSpread({}, prev), {}, {
1304 y: prev.y - dialogTop
1305 });
1306 });
1307 }
1308 }, 50);
1309 };
1310 (0, _react.useEffect)(function () {
1311 var resizeObserver = new ResizeObserver(handlePositionBoundaries);
1312 resizeObserver.observe(paperRef.current);
1313 return function () {
1314 resizeObserver.disconnect();
1315 };
1316 }, []);
1317 return /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
1318 position: position,
1319 onDrag: onDrag,
1320 handle: ".MuiAppBar-root",
1321 cancel: '[class*="MuiDialogContent-root"]',
1322 bounds: "parent"
1323 }, /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
1324 ref: paperRef
1325 })));
1326 };
1327 var PromptDialog = function PromptDialog(props) {
1328 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
1329 scroll: "paper",
1330 open: true,
1331 fullWidth: true,
1332 hideBackdrop: true,
1333 PaperComponent: DraggablePaper,
1334 disableScrollLock: true,
1335 sx: {
1336 '& .MuiDialog-container': {
1337 alignItems: 'flex-start',
1338 mt: '18vh'
1339 }
1340 },
1341 PaperProps: {
1342 sx: {
1343 m: 0,
1344 maxHeight: '76vh'
1345 }
1346 }
1347 }, props), props.children);
1348 };
1349 PromptDialog.propTypes = {
1350 onClose: _propTypes.default.func.isRequired,
1351 children: _propTypes.default.node,
1352 maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false])
1353 };
1354 PromptDialog.Header = _dialogHeader.default;
1355 PromptDialog.Content = _ui.DialogContent;
1356 var _default = PromptDialog;
1357 exports["default"] = _default;
1358
1359 /***/ }),
1360
1361 /***/ "../modules/ai/assets/js/editor/components/prompt-error-message.js":
1362 /*!*************************************************************************!*\
1363 !*** ../modules/ai/assets/js/editor/components/prompt-error-message.js ***!
1364 \*************************************************************************/
1365 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1366
1367 "use strict";
1368 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
1369
1370
1371 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1372 Object.defineProperty(exports, "__esModule", ({
1373 value: true
1374 }));
1375 exports["default"] = void 0;
1376 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1377 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1378 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1379 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1380 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1381 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1382 var _excluded = ["error", "onRetry", "actionPosition"];
1383 var PromptErrorMessage = function PromptErrorMessage(_ref) {
1384 var error = _ref.error,
1385 _ref$onRetry = _ref.onRetry,
1386 onRetry = _ref$onRetry === void 0 ? function () {} : _ref$onRetry,
1387 _ref$actionPosition = _ref.actionPosition,
1388 actionPosition = _ref$actionPosition === void 0 ? 'default' : _ref$actionPosition,
1389 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1390 function getQuotaReachedTrailMessage(featureName) {
1391 if (!featureName) {
1392 return {
1393 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('It\'s time to upgrade.', 'elementor')),
1394 description: (0, _i18n.__)('Enjoy the free trial? Upgrade now for unlimited access to built-in image, text and custom code generators.', 'elementor'),
1395 buttonText: (0, _i18n.__)('Upgrade', 'elementor'),
1396 buttonAction: function buttonAction() {
1397 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1398 }
1399 };
1400 }
1401 return {
1402 // Translators: %s is the feature name.
1403 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, sprintf((0, _i18n.__)('You\'ve used all AI credits for %s.', 'elementor'), featureName.toLowerCase())),
1404 description: (0, _i18n.__)('Upgrade now to keep using this feature. You still have credits for other AI features (Text, Code, Images, Containers, etc.)', 'elementor'),
1405 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1406 buttonAction: function buttonAction() {
1407 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1408 }
1409 };
1410 }
1411 function getErrorMessage() {
1412 var _error$extra_data;
1413 var errMsg = error.message || error;
1414 var featureName = (_error$extra_data = error.extra_data) === null || _error$extra_data === void 0 ? void 0 : _error$extra_data.featureName;
1415 var messages = {
1416 default: {
1417 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1418 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1419 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1420 buttonAction: onRetry
1421 },
1422 service_outage_internal: {
1423 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1424 description: (0, _i18n.__)('Wait a moment and give it another go.', 'elementor'),
1425 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1426 buttonAction: onRetry
1427 },
1428 invalid_connect_data: {
1429 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1430 description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'), ' ', /*#__PURE__*/_react.default.createElement("a", {
1431 href: "https://elementor.com/help/disconnecting-reconnecting-your-elementor-account/",
1432 target: "_blank",
1433 rel: "noreferrer"
1434 }, (0, _i18n.__)('Show me how', 'elementor'))),
1435 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1436 buttonAction: function buttonAction() {
1437 return window.open(window.ElementorAiConfig.connect_url);
1438 }
1439 },
1440 not_connected: {
1441 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('You aren\'t connected to Elementor AI.', 'elementor')),
1442 description: (0, _i18n.__)('Elementor AI is just a few clicks away. Connect your account to instantly create texts and custom code.', 'elementor'),
1443 buttonText: (0, _i18n.__)('Connect', 'elementor'),
1444 buttonAction: function buttonAction() {
1445 return window.open(window.ElementorAiConfig.connect_url);
1446 }
1447 },
1448 quota_reached_trail: getQuotaReachedTrailMessage(featureName),
1449 quota_reached_subscription: {
1450 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Looks like you\'re out of credits.', 'elementor')),
1451 description: (0, _i18n.__)('Ready to take it to the next level?', 'elementor'),
1452 buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1453 buttonAction: function buttonAction() {
1454 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1455 }
1456 },
1457 rate_limit_network: {
1458 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Whoa! Slow down there.', 'elementor')),
1459 description: (0, _i18n.__)('We can’t process that many requests so fast. Try again in 15 minutes.', 'elementor')
1460 },
1461 invalid_prompts: {
1462 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('We were unable to generate that prompt.', 'elementor')),
1463 description: (0, _i18n.__)('Seems like the prompt contains words that could generate harmful content. Write a different prompt to continue.', 'elementor')
1464 },
1465 service_unavailable: {
1466 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1467 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1468 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1469 buttonAction: onRetry
1470 },
1471 request_timeout_error: {
1472 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1473 description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1474 buttonText: (0, _i18n.__)('Try again', 'elementor'),
1475 buttonAction: onRetry
1476 },
1477 invalid_token: {
1478 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Try again', 'elementor')),
1479 description: (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'),
1480 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1481 buttonAction: onRetry
1482 },
1483 file_too_large: {
1484 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('The file is too large.', 'elementor')),
1485 description: (0, _i18n.__)('Please upload a file that is less than 4MB.', 'elementor')
1486 }
1487 };
1488 return messages[errMsg] || messages.default;
1489 }
1490 var message = getErrorMessage();
1491 var action = (message === null || message === void 0 ? void 0 : message.buttonText) && /*#__PURE__*/_react.default.createElement(_ui.Button, {
1492 color: "inherit",
1493 size: "small",
1494 variant: "outlined",
1495 onClick: message.buttonAction
1496 }, message.buttonText);
1497 return /*#__PURE__*/_react.default.createElement(_ui.Alert, (0, _extends2.default)({
1498 severity: message.severity || 'error',
1499 action: 'default' === actionPosition && action
1500 }, props), message.text, message.description, 'bottom' === actionPosition && /*#__PURE__*/_react.default.createElement(_ui.Box, {
1501 sx: {
1502 mt: 1
1503 }
1504 }, action));
1505 };
1506 PromptErrorMessage.propTypes = {
1507 error: _propTypes.default.string,
1508 onRetry: _propTypes.default.func,
1509 actionPosition: _propTypes.default.oneOf(['default', 'bottom'])
1510 };
1511 var _default = PromptErrorMessage;
1512 exports["default"] = _default;
1513
1514 /***/ }),
1515
1516 /***/ "../modules/ai/assets/js/editor/components/prompt-library-link.js":
1517 /*!************************************************************************!*\
1518 !*** ../modules/ai/assets/js/editor/components/prompt-library-link.js ***!
1519 \************************************************************************/
1520 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1521
1522 "use strict";
1523
1524
1525 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1526 Object.defineProperty(exports, "__esModule", ({
1527 value: true
1528 }));
1529 exports["default"] = void 0;
1530 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1531 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1532 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1533 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1534 var PromptLibraryLink = function PromptLibraryLink(props) {
1535 return /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1536 variant: "body2",
1537 color: "text.secondary"
1538 }, (0, _i18n.__)('For more suggestions, explore our'), ' ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
1539 href: props.libraryLink,
1540 className: "elementor-clickable",
1541 target: "_blank"
1542 }, (0, _i18n.__)('prompt library')));
1543 };
1544 PromptLibraryLink.propTypes = {
1545 libraryLink: _propTypes.default.string
1546 };
1547 var _default = PromptLibraryLink;
1548 exports["default"] = _default;
1549
1550 /***/ }),
1551
1552 /***/ "../modules/ai/assets/js/editor/components/upgrade-chip.js":
1553 /*!*****************************************************************!*\
1554 !*** ../modules/ai/assets/js/editor/components/upgrade-chip.js ***!
1555 \*****************************************************************/
1556 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1557
1558 "use strict";
1559
1560
1561 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1562 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1563 Object.defineProperty(exports, "__esModule", ({
1564 value: true
1565 }));
1566 exports["default"] = void 0;
1567 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1568 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1569 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1570 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1571 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1572 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1573 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); }
1574 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; }
1575 var popoverId = 'e-ai-upgrade-popover';
1576 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
1577 var theme = _ref.theme;
1578 return {
1579 position: 'relative',
1580 '[data-popper-placement="top"] &': {
1581 marginBottom: theme.spacing(2.5)
1582 },
1583 '[data-popper-placement="bottom"] &': {
1584 marginTop: theme.spacing(2.5)
1585 },
1586 padding: theme.spacing(3),
1587 boxShadow: theme.shadows[4],
1588 zIndex: '9999'
1589 };
1590 });
1591 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
1592 var theme = _ref2.theme;
1593 return {
1594 width: theme.spacing(5),
1595 height: theme.spacing(2.5),
1596 position: 'absolute',
1597 overflow: 'hidden',
1598 // Override Popper inline styles.
1599 left: '50% !important',
1600 transform: 'translateX(-50%) rotate(var(--rotate, 0deg)) !important',
1601 '[data-popper-placement="top"] &': {
1602 top: '100%'
1603 },
1604 '[data-popper-placement="bottom"] &': {
1605 '--rotate': '180deg',
1606 top: "calc(".concat(theme.spacing(2.5), " * -1)")
1607 },
1608 '&::after': {
1609 backgroundColor: theme.palette.background.paper,
1610 content: '""',
1611 display: 'block',
1612 position: 'absolute',
1613 width: theme.spacing(2.5),
1614 height: theme.spacing(2.5),
1615 top: 0,
1616 left: '50%',
1617 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
1618 boxShadow: '1px 1px 5px 0px rgba(0, 0, 0, 0.2)',
1619 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
1620 }
1621 };
1622 });
1623 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')];
1624 var Chip = (0, _ui.styled)(_ui.Chip)(function () {
1625 return {
1626 '& .MuiChip-label': {
1627 lineHeight: 1.5
1628 },
1629 '& .MuiSvgIcon-root.MuiChip-icon': {
1630 fontSize: '1.25rem'
1631 }
1632 };
1633 });
1634 var UpgradeChip = function UpgradeChip(_ref3) {
1635 var _ref3$hasSubscription = _ref3.hasSubscription,
1636 hasSubscription = _ref3$hasSubscription === void 0 ? false : _ref3$hasSubscription,
1637 _ref3$usagePercentage = _ref3.usagePercentage,
1638 usagePercentage = _ref3$usagePercentage === void 0 ? 0 : _ref3$usagePercentage;
1639 var _useState = (0, _react.useState)(false),
1640 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1641 isPopoverOpen = _useState2[0],
1642 setIsPopoverOpen = _useState2[1];
1643 var anchorEl = (0, _react.useRef)(null);
1644 var arrowEl = (0, _react.useRef)(null);
1645 var showPopover = function showPopover() {
1646 return setIsPopoverOpen(true);
1647 };
1648 var hidePopover = function hidePopover() {
1649 return setIsPopoverOpen(false);
1650 };
1651 var actionUrl = 'https://go.elementor.com/ai-popup-purchase-dropdown/';
1652 if (hasSubscription) {
1653 actionUrl = usagePercentage >= 100 ? 'https://go.elementor.com/ai-popup-upgrade-limit-reached/' : 'https://go.elementor.com/ai-popup-upgrade-limit-reached-80-percent/';
1654 }
1655 var actionLabel = hasSubscription ? (0, _i18n.__)('Upgrade Elementor AI', 'elementor') : (0, _i18n.__)('Get Elementor AI', 'elementor');
1656 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1657 component: "span",
1658 "aria-owns": isPopoverOpen ? popoverId : undefined,
1659 "aria-haspopup": "true",
1660 onMouseEnter: showPopover,
1661 onMouseLeave: hidePopover,
1662 ref: anchorEl,
1663 display: "flex",
1664 alignItems: "center"
1665 }, /*#__PURE__*/_react.default.createElement(Chip, {
1666 color: "promotion",
1667 label: (0, _i18n.__)('Upgrade', 'elementor'),
1668 icon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1669 size: "small"
1670 }), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
1671 open: isPopoverOpen,
1672 anchorEl: anchorEl.current,
1673 sx: {
1674 zIndex: '9999',
1675 maxWidth: 300
1676 },
1677 modifiers: [{
1678 name: 'arrow',
1679 enabled: true,
1680 options: {
1681 element: arrowEl.current
1682 }
1683 }]
1684 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
1685 ref: arrowEl
1686 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1687 variant: "h5",
1688 color: "text.primary"
1689 }, (0, _i18n.__)('Unlimited access to Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.List, {
1690 sx: {
1691 mb: 1
1692 }
1693 }, upgradeBullets.map(function (bullet, index) {
1694 return /*#__PURE__*/_react.default.createElement(_ui.ListItem, {
1695 key: index,
1696 disableGutters: true,
1697 sx: {
1698 alignItems: 'flex-start'
1699 }
1700 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(_icons.CheckedCircleIcon, null)), /*#__PURE__*/_react.default.createElement(_ui.ListItemText, {
1701 sx: {
1702 m: 0
1703 }
1704 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1705 variant: "body2"
1706 }, bullet)));
1707 })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
1708 variant: "contained",
1709 color: "promotion",
1710 size: "small",
1711 href: actionUrl,
1712 target: "_blank",
1713 startIcon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1714 sx: {
1715 '&:hover': {
1716 color: 'promotion.contrastText'
1717 }
1718 }
1719 }, actionLabel))));
1720 };
1721 var _default = UpgradeChip;
1722 exports["default"] = _default;
1723 UpgradeChip.propTypes = {
1724 hasSubscription: _propTypes.default.bool,
1725 usagePercentage: _propTypes.default.number
1726 };
1727
1728 /***/ }),
1729
1730 /***/ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js":
1731 /*!**************************************************************************!*\
1732 !*** ../modules/ai/assets/js/editor/components/voice-promotion-alert.js ***!
1733 \**************************************************************************/
1734 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1735
1736 "use strict";
1737 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
1738 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
1739
1740
1741 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1742 Object.defineProperty(exports, "__esModule", ({
1743 value: true
1744 }));
1745 exports["default"] = exports.VoicePromotionAlert = void 0;
1746 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1747 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1748 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1749 var _bulbIcon = _interopRequireDefault(__webpack_require__(/*! ../icons/bulb-icon */ "../modules/ai/assets/js/editor/icons/bulb-icon.js"));
1750 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
1751 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; }
1752 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; }
1753 var VoicePromotionAlert = function VoicePromotionAlert(props) {
1754 var _useIntroduction = (0, _useIntroduction2.default)(props.introductionKey),
1755 isViewed = _useIntroduction.isViewed,
1756 markAsViewed = _useIntroduction.markAsViewed;
1757 if (isViewed) {
1758 return null;
1759 }
1760 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1761 sx: _objectSpread({
1762 mt: 2
1763 }, props.sx),
1764 alignItems: "top"
1765 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
1766 severity: "info",
1767 variant: "standard",
1768 icon: /*#__PURE__*/_react.default.createElement(_bulbIcon.default, {
1769 sx: {
1770 alignSelf: 'flex-start'
1771 }
1772 }),
1773 onClose: markAsViewed
1774 }, __('Get improved results from AI by adding personal context.', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
1775 onClick: function onClick() {
1776 return $e.route('panel/global/menu');
1777 },
1778 className: "elementor-clickable",
1779 style: {
1780 textDecoration: 'none'
1781 },
1782 color: "info.main",
1783 href: "#"
1784 }, __('Let’s do it', 'elementor'))));
1785 };
1786 exports.VoicePromotionAlert = VoicePromotionAlert;
1787 VoicePromotionAlert.propTypes = {
1788 sx: PropTypes.object,
1789 introductionKey: PropTypes.string
1790 };
1791 var _default = VoicePromotionAlert;
1792 exports["default"] = _default;
1793
1794 /***/ }),
1795
1796 /***/ "../modules/ai/assets/js/editor/components/wizard-dialog.js":
1797 /*!******************************************************************!*\
1798 !*** ../modules/ai/assets/js/editor/components/wizard-dialog.js ***!
1799 \******************************************************************/
1800 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1801
1802 "use strict";
1803
1804
1805 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1806 Object.defineProperty(exports, "__esModule", ({
1807 value: true
1808 }));
1809 exports["default"] = void 0;
1810 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1811 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1812 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1813 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1814 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1815 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1816 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1817 var _excluded = ["sx"];
1818 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; }
1819 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; }
1820 var WizardDialog = function WizardDialog(props) {
1821 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1822 open: true,
1823 onClose: props.onClose,
1824 fullWidth: true,
1825 hideBackdrop: true,
1826 maxWidth: "lg",
1827 PaperProps: {
1828 sx: {
1829 height: '88vh'
1830 }
1831 },
1832 sx: {
1833 zIndex: 9999
1834 }
1835 }, props.children);
1836 };
1837 WizardDialog.propTypes = {
1838 onClose: _propTypes.default.func.isRequired,
1839 children: _propTypes.default.node.isRequired
1840 };
1841 var WizardDialogContent = function WizardDialogContent(_ref) {
1842 var _ref$sx = _ref.sx,
1843 sx = _ref$sx === void 0 ? {} : _ref$sx,
1844 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1845 return /*#__PURE__*/_react.default.createElement(_ui.DialogContent, (0, _extends2.default)({}, props, {
1846 sx: _objectSpread({
1847 display: 'flex',
1848 flexDirection: 'column',
1849 justifyContent: 'center'
1850 }, sx)
1851 }));
1852 };
1853 WizardDialogContent.propTypes = {
1854 sx: _propTypes.default.object
1855 };
1856 WizardDialog.Header = _dialogHeader.default;
1857 WizardDialog.Content = WizardDialogContent;
1858 var _default = WizardDialog;
1859 exports["default"] = _default;
1860
1861 /***/ }),
1862
1863 /***/ "../modules/ai/assets/js/editor/context/requests-ids.js":
1864 /*!**************************************************************!*\
1865 !*** ../modules/ai/assets/js/editor/context/requests-ids.js ***!
1866 \**************************************************************/
1867 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1868
1869 "use strict";
1870
1871
1872 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1873 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1874 Object.defineProperty(exports, "__esModule", ({
1875 value: true
1876 }));
1877 exports["default"] = exports.RequestIdsProvider = void 0;
1878 exports.generateIds = generateIds;
1879 exports.useRequestIds = exports.getUniqueId = void 0;
1880 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1881 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1882 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); }
1883 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; }
1884 var Context = (0, _react.createContext)({});
1885 var useRequestIds = function useRequestIds() {
1886 var context = (0, _react.useContext)(Context);
1887 if (!context) {
1888 throw new Error('useRequestIds must be used within a RequestIdsProvider');
1889 }
1890 return context;
1891 };
1892 exports.useRequestIds = useRequestIds;
1893 var getUniqueId = function getUniqueId(prefix) {
1894 return prefix + '-' + Math.random().toString(16).substr(2, 7);
1895 };
1896 exports.getUniqueId = getUniqueId;
1897 window.EDITOR_SESSION_ID = window.EDITOR_SESSION_ID || getUniqueId('editor-session');
1898 function generateIds(template) {
1899 var _template$elements;
1900 template.id = getUniqueId().toString();
1901 if ((_template$elements = template.elements) !== null && _template$elements !== void 0 && _template$elements.length) {
1902 template.elements.map(function (child) {
1903 return generateIds(child);
1904 });
1905 }
1906 return template;
1907 }
1908 var RequestIdsProvider = function RequestIdsProvider(props) {
1909 var editorSessionId = (0, _react.useRef)(window.EDITOR_SESSION_ID);
1910 var sessionId = (0, _react.useRef)('');
1911 var generateId = (0, _react.useRef)('');
1912 var batchId = (0, _react.useRef)('');
1913 var requestId = (0, _react.useRef)('');
1914 sessionId.current = getUniqueId('session');
1915 var setGenerate = function setGenerate() {
1916 generateId.current = getUniqueId('generate');
1917 return generateId;
1918 };
1919 var setBatch = function setBatch() {
1920 batchId.current = getUniqueId('batch');
1921 return batchId;
1922 };
1923 var setRequest = function setRequest() {
1924 requestId.current = getUniqueId('request');
1925 return requestId;
1926 };
1927 return /*#__PURE__*/_react.default.createElement(Context.Provider, {
1928 value: {
1929 editorSessionId: editorSessionId,
1930 sessionId: sessionId,
1931 generateId: generateId,
1932 batchId: batchId,
1933 requestId: requestId,
1934 setGenerate: setGenerate,
1935 setBatch: setBatch,
1936 setRequest: setRequest
1937 }
1938 }, props.children);
1939 };
1940 exports.RequestIdsProvider = RequestIdsProvider;
1941 RequestIdsProvider.propTypes = {
1942 children: _propTypes.default.node.isRequired
1943 };
1944 var _default = Context;
1945 exports["default"] = _default;
1946
1947 /***/ }),
1948
1949 /***/ "../modules/ai/assets/js/editor/hooks/use-introduction.js":
1950 /*!****************************************************************!*\
1951 !*** ../modules/ai/assets/js/editor/hooks/use-introduction.js ***!
1952 \****************************************************************/
1953 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1954
1955 "use strict";
1956
1957
1958 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1959 Object.defineProperty(exports, "__esModule", ({
1960 value: true
1961 }));
1962 exports["default"] = useIntroduction;
1963 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1964 var _react = __webpack_require__(/*! react */ "react");
1965 function useIntroduction(key) {
1966 var _window$elementor$con, _window$elementorAdmi, _window$elementorAdmi2, _globalConfig$introdu;
1967 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;
1968 var _useState = (0, _react.useState)(!!(globalConfig !== null && globalConfig !== void 0 && (_globalConfig$introdu = globalConfig.introduction) !== null && _globalConfig$introdu !== void 0 && _globalConfig$introdu[key])),
1969 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1970 isViewed = _useState2[0],
1971 setIsViewed = _useState2[1];
1972 function markAsViewed() {
1973 if (!key) {
1974 return Promise.reject();
1975 }
1976 return new Promise(function (resolve, reject) {
1977 if (isViewed) {
1978 reject();
1979 }
1980 setIsViewed(true);
1981 elementorCommon.ajax.addRequest('introduction_viewed', {
1982 data: {
1983 introductionKey: key
1984 },
1985 error: function error() {
1986 setIsViewed(false);
1987 reject();
1988 },
1989 success: function success() {
1990 setIsViewed(true);
1991 if (globalConfig !== null && globalConfig !== void 0 && globalConfig.introduction) {
1992 globalConfig.introduction[key] = true;
1993 }
1994 resolve();
1995 }
1996 });
1997 });
1998 }
1999 return {
2000 isViewed: isViewed,
2001 markAsViewed: markAsViewed
2002 };
2003 }
2004
2005 /***/ }),
2006
2007 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js":
2008 /*!*******************************************************************!*\
2009 !*** ../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js ***!
2010 \*******************************************************************/
2011 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2012
2013 "use strict";
2014
2015
2016 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2017 Object.defineProperty(exports, "__esModule", ({
2018 value: true
2019 }));
2020 exports["default"] = void 0;
2021 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2022 var _usePrompt2 = _interopRequireDefault(__webpack_require__(/*! ./use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
2023 var _config = __webpack_require__(/*! ../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2024 var enhancePromptMap = new Map([['media', _api.getImagePromptEnhanced], ['layout', _api.getLayoutPromptEnhanced]]);
2025 var getResult = function getResult(prompt, type, enhanceType) {
2026 if (!enhancePromptMap.has(type)) {
2027 throw new Error("Invalid prompt type: ".concat(type));
2028 }
2029 return enhancePromptMap.get(type)(prompt, enhanceType);
2030 };
2031
2032 /**
2033 * Hook to enhance a prompt.
2034 *
2035 * @param {string} prompt
2036 * @param {'media' | 'layout'} type
2037 * @return {{enhancedPrompt: string | undefined, isEnhancing: boolean, enhance: (function(...[*]): Promise)}}
2038 */
2039 var usePromptEnhancer = function usePromptEnhancer(prompt, type) {
2040 var _useConfig = (0, _config.useConfig)(),
2041 mode = _useConfig.mode;
2042 var _usePrompt = (0, _usePrompt2.default)(function () {
2043 return getResult(prompt, type, mode);
2044 }, prompt),
2045 enhancedData = _usePrompt.data,
2046 isEnhancing = _usePrompt.isLoading,
2047 enhance = _usePrompt.send;
2048 return {
2049 enhance: enhance,
2050 isEnhancing: isEnhancing,
2051 enhancedPrompt: enhancedData === null || enhancedData === void 0 ? void 0 : enhancedData.result
2052 };
2053 };
2054 var _default = usePromptEnhancer;
2055 exports["default"] = _default;
2056
2057 /***/ }),
2058
2059 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt.js":
2060 /*!**********************************************************!*\
2061 !*** ../modules/ai/assets/js/editor/hooks/use-prompt.js ***!
2062 \**********************************************************/
2063 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2064
2065 "use strict";
2066
2067
2068 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2069 Object.defineProperty(exports, "__esModule", ({
2070 value: true
2071 }));
2072 exports["default"] = void 0;
2073 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2074 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2075 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2076 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2077 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
2078 var _react = __webpack_require__(/*! react */ "react");
2079 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2080 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2081 var _excluded = ["text", "response_id", "usage", "images"];
2082 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; }
2083 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; }
2084 var normalizeResponse = function normalizeResponse(_ref) {
2085 var text = _ref.text,
2086 responseId = _ref.response_id,
2087 usage = _ref.usage,
2088 images = _ref.images,
2089 optional = (0, _objectWithoutProperties2.default)(_ref, _excluded);
2090 var creditsData = usage ? usage.quota - usage.usedQuota : 0;
2091 var credits = Math.max(creditsData, 0);
2092 var result = text || images;
2093 var normalized = {
2094 result: result,
2095 responseId: responseId,
2096 credits: credits
2097 };
2098 if (optional.base_template_id) {
2099 normalized.baseTemplateId = optional.base_template_id;
2100 }
2101 normalized.type = optional.template_type;
2102 return normalized;
2103 };
2104 var usePrompt = function usePrompt(fetchData, initialState) {
2105 var _useState = (0, _react.useState)(false),
2106 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2107 isLoading = _useState2[0],
2108 setIsLoading = _useState2[1];
2109 var _useState3 = (0, _react.useState)(''),
2110 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2111 error = _useState4[0],
2112 setError = _useState4[1];
2113 var _useState5 = (0, _react.useState)(initialState),
2114 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2115 data = _useState6[0],
2116 setData = _useState6[1];
2117 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
2118 setRequest = _useRequestIds.setRequest,
2119 editorSessionId = _useRequestIds.editorSessionId,
2120 sessionId = _useRequestIds.sessionId,
2121 generateId = _useRequestIds.generateId,
2122 batchId = _useRequestIds.batchId;
2123 var send = /*#__PURE__*/function () {
2124 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(payload) {
2125 return _regenerator.default.wrap(function _callee$(_context) {
2126 while (1) switch (_context.prev = _context.next) {
2127 case 0:
2128 return _context.abrupt("return", new Promise(function (resolve, reject) {
2129 setError('');
2130 setIsLoading(true);
2131 var requestId = setRequest();
2132 var requestIds = {
2133 editorSessionId: editorSessionId.current,
2134 sessionId: sessionId.current,
2135 generateId: generateId.current,
2136 batchId: batchId.current,
2137 requestId: requestId.current
2138 };
2139 payload = _objectSpread(_objectSpread({}, payload), {}, {
2140 requestIds: requestIds
2141 });
2142 fetchData(payload).then(function (result) {
2143 var normalizedData = normalizeResponse(result);
2144 setData(normalizedData);
2145 resolve(normalizedData);
2146 }).catch(function (err) {
2147 var finalError = (err === null || err === void 0 ? void 0 : err.responseText) || err;
2148 setError(finalError);
2149 reject(finalError);
2150 }).finally(function () {
2151 return setIsLoading(false);
2152 });
2153 }));
2154 case 1:
2155 case "end":
2156 return _context.stop();
2157 }
2158 }, _callee);
2159 }));
2160 return function send(_x) {
2161 return _ref2.apply(this, arguments);
2162 };
2163 }();
2164 var sendUsageData = function sendUsageData() {
2165 var usageData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : data;
2166 return usageData.responseId && (0, _api.setStatusFeedback)(usageData.responseId);
2167 };
2168 var reset = function reset() {
2169 setData(function (_ref3) {
2170 var credits = _ref3.credits;
2171 return {
2172 credits: credits,
2173 result: '',
2174 responseId: ''
2175 };
2176 });
2177 setError('');
2178 setIsLoading(false);
2179 };
2180 var setResult = function setResult(result) {
2181 var responseId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
2182 var updatedResult = _objectSpread({}, data);
2183 updatedResult.result = result;
2184 if (responseId) {
2185 updatedResult.responseId = responseId;
2186 }
2187 setData(updatedResult);
2188 };
2189 return {
2190 isLoading: isLoading,
2191 error: error,
2192 data: data,
2193 setResult: setResult,
2194 reset: reset,
2195 send: send,
2196 sendUsageData: sendUsageData
2197 };
2198 };
2199 var _default = usePrompt;
2200 exports["default"] = _default;
2201
2202 /***/ }),
2203
2204 /***/ "../modules/ai/assets/js/editor/hooks/use-timeout.js":
2205 /*!***********************************************************!*\
2206 !*** ../modules/ai/assets/js/editor/hooks/use-timeout.js ***!
2207 \***********************************************************/
2208 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2209
2210 "use strict";
2211
2212
2213 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2214 Object.defineProperty(exports, "__esModule", ({
2215 value: true
2216 }));
2217 exports.useTimeout = void 0;
2218 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2219 var _react = __webpack_require__(/*! react */ "react");
2220 var useTimeout = function useTimeout(delay) {
2221 var _useState = (0, _react.useState)(false),
2222 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2223 isTimeout = _useState2[0],
2224 setIsTimeout = _useState2[1];
2225 var timeoutIdRef = (0, _react.useRef)(null);
2226 var turnOffTimeout = function turnOffTimeout() {
2227 clearTimeout(timeoutIdRef.current);
2228 setIsTimeout(false);
2229 };
2230 (0, _react.useEffect)(function () {
2231 timeoutIdRef.current = setTimeout(function () {
2232 setIsTimeout(true);
2233 }, delay);
2234 return function () {
2235 clearTimeout(timeoutIdRef.current);
2236 };
2237 }, [delay]);
2238 return [isTimeout, turnOffTimeout];
2239 };
2240 exports.useTimeout = useTimeout;
2241
2242 /***/ }),
2243
2244 /***/ "../modules/ai/assets/js/editor/hooks/use-user-info.js":
2245 /*!*************************************************************!*\
2246 !*** ../modules/ai/assets/js/editor/hooks/use-user-info.js ***!
2247 \*************************************************************/
2248 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2249
2250 "use strict";
2251
2252
2253 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2254 Object.defineProperty(exports, "__esModule", ({
2255 value: true
2256 }));
2257 exports["default"] = void 0;
2258 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2259 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2260 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2261 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2262 var _react = __webpack_require__(/*! react */ "react");
2263 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2264 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; }
2265 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; }
2266 var useUserInfo = function useUserInfo() {
2267 var _useState = (0, _react.useState)(false),
2268 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2269 isLoaded = _useState2[0],
2270 setIsLoaded = _useState2[1];
2271 var _useState3 = (0, _react.useState)(false),
2272 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2273 isLoading = _useState4[0],
2274 setIsLoading = _useState4[1];
2275 var _useState5 = (0, _react.useState)({
2276 is_connected: false,
2277 is_get_started: false,
2278 connect_url: '',
2279 usage: {
2280 hasAiSubscription: false,
2281 quota: 0,
2282 usedQuota: 0
2283 }
2284 }),
2285 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2286 userInfo = _useState6[0],
2287 setUserInfo = _useState6[1];
2288 var credits = userInfo.usage.quota - userInfo.usage.usedQuota;
2289 var usagePercentage = userInfo.usage.usedQuota / userInfo.usage.quota * 100;
2290 var fetchData = /*#__PURE__*/function () {
2291 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
2292 var userInfoResult;
2293 return _regenerator.default.wrap(function _callee$(_context) {
2294 while (1) switch (_context.prev = _context.next) {
2295 case 0:
2296 setIsLoading(true);
2297 _context.next = 3;
2298 return (0, _api.getUserInformation)();
2299 case 3:
2300 userInfoResult = _context.sent;
2301 setUserInfo(function (prevState) {
2302 return _objectSpread(_objectSpread({}, prevState), userInfoResult);
2303 });
2304 setIsLoaded(true);
2305 setIsLoading(false);
2306 case 7:
2307 case "end":
2308 return _context.stop();
2309 }
2310 }, _callee);
2311 }));
2312 return function fetchData() {
2313 return _ref.apply(this, arguments);
2314 };
2315 }();
2316 if (!isLoaded && !isLoading) {
2317 fetchData();
2318 }
2319 return {
2320 isLoading: isLoading,
2321 isLoaded: isLoaded,
2322 isConnected: userInfo.is_connected,
2323 isGetStarted: userInfo.is_get_started,
2324 connectUrl: userInfo.connect_url,
2325 builderUrl: userInfo.usage.builderUrl,
2326 hasSubscription: userInfo.usage.hasAiSubscription,
2327 credits: credits < 0 ? 0 : credits,
2328 usagePercentage: Math.round(usagePercentage),
2329 fetchData: fetchData
2330 };
2331 };
2332 var _default = useUserInfo;
2333 exports["default"] = _default;
2334
2335 /***/ }),
2336
2337 /***/ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js":
2338 /*!***************************************************************!*\
2339 !*** ../modules/ai/assets/js/editor/icons/arrow-left-icon.js ***!
2340 \***************************************************************/
2341 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2342
2343 "use strict";
2344
2345
2346 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2347 Object.defineProperty(exports, "__esModule", ({
2348 value: true
2349 }));
2350 exports["default"] = void 0;
2351 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2352 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2353 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2354 var ArrowLeftIcon = _react.default.forwardRef(function (props, ref) {
2355 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2356 viewBox: "0 0 24 24"
2357 }, props, {
2358 ref: ref
2359 }), /*#__PURE__*/_react.default.createElement("path", {
2360 fillRule: "evenodd",
2361 clipRule: "evenodd",
2362 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"
2363 }));
2364 });
2365 var _default = ArrowLeftIcon;
2366 exports["default"] = _default;
2367
2368 /***/ }),
2369
2370 /***/ "../modules/ai/assets/js/editor/icons/bulb-icon.js":
2371 /*!*********************************************************!*\
2372 !*** ../modules/ai/assets/js/editor/icons/bulb-icon.js ***!
2373 \*********************************************************/
2374 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2375
2376 "use strict";
2377
2378
2379 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2380 Object.defineProperty(exports, "__esModule", ({
2381 value: true
2382 }));
2383 exports["default"] = void 0;
2384 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2385 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2386 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2387 var BulbIcon = _react.default.forwardRef(function (props, ref) {
2388 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({}, props, {
2389 ref: ref
2390 }), /*#__PURE__*/_react.default.createElement("svg", {
2391 width: "22",
2392 height: "22",
2393 viewBox: "0 0 22 22",
2394 fill: "none",
2395 xmlns: "http://www.w3.org/2000/svg"
2396 }, /*#__PURE__*/_react.default.createElement("g", {
2397 clipPath: "url(#clip0_10743_8902)"
2398 }, /*#__PURE__*/_react.default.createElement("path", {
2399 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",
2400 stroke: "#2563EB",
2401 strokeWidth: "1.5",
2402 strokeLinecap: "round",
2403 strokeLinejoin: "round"
2404 }), /*#__PURE__*/_react.default.createElement("path", {
2405 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",
2406 stroke: "#2563EB",
2407 strokeWidth: "1.5",
2408 strokeLinecap: "round",
2409 strokeLinejoin: "round"
2410 }), /*#__PURE__*/_react.default.createElement("path", {
2411 d: "M10.0833 16.5H11.9166",
2412 stroke: "#2563EB",
2413 strokeWidth: "1.5",
2414 strokeLinecap: "round",
2415 strokeLinejoin: "round"
2416 })), /*#__PURE__*/_react.default.createElement("defs", null, /*#__PURE__*/_react.default.createElement("clipPath", {
2417 id: "clip0_10743_8902"
2418 }, /*#__PURE__*/_react.default.createElement("rect", {
2419 width: "22",
2420 height: "22",
2421 fill: "white"
2422 })))));
2423 });
2424 var _default = BulbIcon;
2425 exports["default"] = _default;
2426
2427 /***/ }),
2428
2429 /***/ "../modules/ai/assets/js/editor/icons/copy-page-icon.js":
2430 /*!**************************************************************!*\
2431 !*** ../modules/ai/assets/js/editor/icons/copy-page-icon.js ***!
2432 \**************************************************************/
2433 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2434
2435 "use strict";
2436
2437
2438 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2439 Object.defineProperty(exports, "__esModule", ({
2440 value: true
2441 }));
2442 exports["default"] = void 0;
2443 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2444 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2445 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2446 var CopyPageIcon = _react.default.forwardRef(function (props, ref) {
2447 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2448 viewBox: "0 0 24 24"
2449 }, props, {
2450 ref: ref
2451 }), /*#__PURE__*/_react.default.createElement("path", {
2452 fillRule: "evenodd",
2453 clipRule: "evenodd",
2454 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"
2455 }));
2456 });
2457 var _default = CopyPageIcon;
2458 exports["default"] = _default;
2459
2460 /***/ }),
2461
2462 /***/ "../modules/ai/assets/js/editor/icons/edit-icon.js":
2463 /*!*********************************************************!*\
2464 !*** ../modules/ai/assets/js/editor/icons/edit-icon.js ***!
2465 \*********************************************************/
2466 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2467
2468 "use strict";
2469
2470
2471 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2472 Object.defineProperty(exports, "__esModule", ({
2473 value: true
2474 }));
2475 exports["default"] = void 0;
2476 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2477 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2478 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2479 var EditIcon = _react.default.forwardRef(function (props, ref) {
2480 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2481 viewBox: "0 0 24 24"
2482 }, props, {
2483 ref: ref
2484 }), /*#__PURE__*/_react.default.createElement("path", {
2485 fillRule: "evenodd",
2486 clipRule: "evenodd",
2487 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"
2488 }), /*#__PURE__*/_react.default.createElement("path", {
2489 fillRule: "evenodd",
2490 clipRule: "evenodd",
2491 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"
2492 }));
2493 });
2494 var _default = EditIcon;
2495 exports["default"] = _default;
2496
2497 /***/ }),
2498
2499 /***/ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js":
2500 /*!********************************************************************!*\
2501 !*** ../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js ***!
2502 \********************************************************************/
2503 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2504
2505 "use strict";
2506
2507
2508 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2509 Object.defineProperty(exports, "__esModule", ({
2510 value: true
2511 }));
2512 exports["default"] = void 0;
2513 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2514 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2515 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2516 var ExpandDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2517 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2518 viewBox: "0 0 24 24"
2519 }, props, {
2520 ref: ref
2521 }), /*#__PURE__*/_react.default.createElement("path", {
2522 fillRule: "evenodd",
2523 clipRule: "evenodd",
2524 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"
2525 }));
2526 });
2527 var _default = ExpandDiagonalIcon;
2528 exports["default"] = _default;
2529
2530 /***/ }),
2531
2532 /***/ "../modules/ai/assets/js/editor/icons/lock-icon.js":
2533 /*!*********************************************************!*\
2534 !*** ../modules/ai/assets/js/editor/icons/lock-icon.js ***!
2535 \*********************************************************/
2536 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2537
2538 "use strict";
2539
2540
2541 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2542 Object.defineProperty(exports, "__esModule", ({
2543 value: true
2544 }));
2545 exports["default"] = void 0;
2546 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2547 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2548 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2549 var LockIcon = _react.default.forwardRef(function (props, ref) {
2550 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2551 viewBox: "0 0 24 24"
2552 }, props, {
2553 ref: ref
2554 }), /*#__PURE__*/_react.default.createElement("path", {
2555 fillRule: "evenodd",
2556 clipRule: "evenodd",
2557 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"
2558 }), /*#__PURE__*/_react.default.createElement("path", {
2559 fillRule: "evenodd",
2560 clipRule: "evenodd",
2561 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"
2562 }), /*#__PURE__*/_react.default.createElement("path", {
2563 d: "M6 12H19V20H6V12Z"
2564 }));
2565 });
2566 var _default = LockIcon;
2567 exports["default"] = _default;
2568
2569 /***/ }),
2570
2571 /***/ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js":
2572 /*!**********************************************************************!*\
2573 !*** ../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js ***!
2574 \**********************************************************************/
2575 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2576
2577 "use strict";
2578
2579
2580 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2581 Object.defineProperty(exports, "__esModule", ({
2582 value: true
2583 }));
2584 exports["default"] = void 0;
2585 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2586 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2587 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2588 var MinimizeDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2589 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2590 viewBox: "0 0 24 24"
2591 }, props, {
2592 ref: ref
2593 }), /*#__PURE__*/_react.default.createElement("path", {
2594 fillRule: "evenodd",
2595 clipRule: "evenodd",
2596 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"
2597 }));
2598 });
2599 var _default = MinimizeDiagonalIcon;
2600 exports["default"] = _default;
2601
2602 /***/ }),
2603
2604 /***/ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js":
2605 /*!****************************************************************!*\
2606 !*** ../modules/ai/assets/js/editor/icons/plus-circle-icon.js ***!
2607 \****************************************************************/
2608 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2609
2610 "use strict";
2611
2612
2613 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2614 Object.defineProperty(exports, "__esModule", ({
2615 value: true
2616 }));
2617 exports["default"] = void 0;
2618 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2619 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2620 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2621 var PlusCircleIcon = _react.default.forwardRef(function (props, ref) {
2622 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2623 viewBox: "0 0 24 24"
2624 }, props, {
2625 ref: ref
2626 }), /*#__PURE__*/_react.default.createElement("path", {
2627 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"
2628 }));
2629 });
2630 var _default = PlusCircleIcon;
2631 exports["default"] = _default;
2632
2633 /***/ }),
2634
2635 /***/ "../modules/ai/assets/js/editor/icons/refresh-icon.js":
2636 /*!************************************************************!*\
2637 !*** ../modules/ai/assets/js/editor/icons/refresh-icon.js ***!
2638 \************************************************************/
2639 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2640
2641 "use strict";
2642
2643
2644 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2645 Object.defineProperty(exports, "__esModule", ({
2646 value: true
2647 }));
2648 exports["default"] = void 0;
2649 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2650 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2651 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2652 var RefreshIcon = _react.default.forwardRef(function (props, ref) {
2653 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2654 viewBox: "0 0 24 24"
2655 }, props, {
2656 ref: ref
2657 }), /*#__PURE__*/_react.default.createElement("path", {
2658 fillRule: "evenodd",
2659 clipRule: "evenodd",
2660 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"
2661 }), /*#__PURE__*/_react.default.createElement("path", {
2662 fillRule: "evenodd",
2663 clipRule: "evenodd",
2664 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"
2665 }));
2666 });
2667 var _default = RefreshIcon;
2668 exports["default"] = _default;
2669
2670 /***/ }),
2671
2672 /***/ "../modules/ai/assets/js/editor/icons/wand-icon.js":
2673 /*!*********************************************************!*\
2674 !*** ../modules/ai/assets/js/editor/icons/wand-icon.js ***!
2675 \*********************************************************/
2676 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2677
2678 "use strict";
2679
2680
2681 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2682 Object.defineProperty(exports, "__esModule", ({
2683 value: true
2684 }));
2685 exports["default"] = void 0;
2686 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2687 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2688 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2689 var WandIcon = _react.default.forwardRef(function (props, ref) {
2690 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2691 viewBox: "0 0 24 24"
2692 }, props, {
2693 ref: ref
2694 }), /*#__PURE__*/_react.default.createElement("path", {
2695 fillRule: "evenodd",
2696 clipRule: "evenodd",
2697 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"
2698 }), /*#__PURE__*/_react.default.createElement("path", {
2699 fillRule: "evenodd",
2700 clipRule: "evenodd",
2701 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"
2702 }), /*#__PURE__*/_react.default.createElement("path", {
2703 fillRule: "evenodd",
2704 clipRule: "evenodd",
2705 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"
2706 }));
2707 });
2708 var _default = WandIcon;
2709 exports["default"] = _default;
2710
2711 /***/ }),
2712
2713 /***/ "../modules/ai/assets/js/editor/icons/website-icon.js":
2714 /*!************************************************************!*\
2715 !*** ../modules/ai/assets/js/editor/icons/website-icon.js ***!
2716 \************************************************************/
2717 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2718
2719 "use strict";
2720
2721
2722 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2723 Object.defineProperty(exports, "__esModule", ({
2724 value: true
2725 }));
2726 exports["default"] = void 0;
2727 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2728 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2729 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2730 var WebsiteIcon = _react.default.forwardRef(function (props, ref) {
2731 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2732 viewBox: "0 0 24 24"
2733 }, props, {
2734 ref: ref
2735 }), /*#__PURE__*/_react.default.createElement("path", {
2736 fillRule: "evenodd",
2737 clipRule: "evenodd",
2738 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"
2739 }));
2740 });
2741 var _default = WebsiteIcon;
2742 exports["default"] = _default;
2743
2744 /***/ }),
2745
2746 /***/ "../modules/ai/assets/js/editor/icons/x-circle-icon.js":
2747 /*!*************************************************************!*\
2748 !*** ../modules/ai/assets/js/editor/icons/x-circle-icon.js ***!
2749 \*************************************************************/
2750 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2751
2752 "use strict";
2753
2754
2755 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2756 Object.defineProperty(exports, "__esModule", ({
2757 value: true
2758 }));
2759 exports["default"] = void 0;
2760 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2761 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2762 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2763 var XCircleIcon = _react.default.forwardRef(function (props, ref) {
2764 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2765 viewBox: "0 0 24 24"
2766 }, props, {
2767 ref: ref
2768 }), /*#__PURE__*/_react.default.createElement("path", {
2769 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"
2770 }));
2771 });
2772 var _default = XCircleIcon;
2773 exports["default"] = _default;
2774
2775 /***/ }),
2776
2777 /***/ "../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js":
2778 /*!********************************************************************************************!*\
2779 !*** ../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js ***!
2780 \********************************************************************************************/
2781 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2782
2783 "use strict";
2784
2785
2786 var _require = __webpack_require__(/*! ../../utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js"),
2787 renderLayoutApp = _require.renderLayoutApp,
2788 importToEditor = _require.importToEditor;
2789 var _require2 = __webpack_require__(/*! ../../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js"),
2790 MODE_VARIATION = _require2.MODE_VARIATION;
2791 var _require3 = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"),
2792 __ = _require3.__;
2793 var _require4 = __webpack_require__(/*! ../../pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"),
2794 ATTACHMENT_TYPE_JSON = _require4.ATTACHMENT_TYPE_JSON,
2795 ELEMENTOR_LIBRARY_SOURCE = _require4.ELEMENTOR_LIBRARY_SOURCE;
2796 var ApplyTemplateForAiBehavior;
2797 ApplyTemplateForAiBehavior = Marionette.Behavior.extend({
2798 ui: {
2799 applyButton: '.elementor-template-library-template-apply-ai',
2800 generateVariation: '.elementor-template-library-template-generate-variation'
2801 },
2802 events: {
2803 'click @ui.applyButton': 'onApplyButtonClick',
2804 'click @ui.generateVariation': 'onGenerateVariationClick'
2805 },
2806 onGenerateVariationClick: function onGenerateVariationClick() {
2807 var _libraryComponent$man, _libraryComponent$man2;
2808 var args = {
2809 model: this.view.model
2810 };
2811 var libraryComponent = $e.components.get('library');
2812 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;
2813 libraryComponent.downloadTemplate(args, function (data) {
2814 var model = args.model;
2815 var attachment = {
2816 type: ATTACHMENT_TYPE_JSON,
2817 previewHTML: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
2818 content: data.content[0],
2819 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
2820 source: ELEMENTOR_LIBRARY_SOURCE
2821 };
2822 renderLayoutApp({
2823 parentContainer: elementor.getPreviewContainer(),
2824 mode: MODE_VARIATION,
2825 at: at,
2826 attachments: [attachment],
2827 onInsert: function onInsert(template) {
2828 importToEditor({
2829 parentContainer: elementor.getPreviewContainer(),
2830 at: at,
2831 template: template,
2832 historyTitle: __('AI Variation from library', 'elementor')
2833 });
2834 }
2835 });
2836 $e.run('library/close');
2837 });
2838 },
2839 onApplyButtonClick: function onApplyButtonClick() {
2840 var args = {
2841 model: this.view.model
2842 };
2843 this.ui.applyButton.addClass('elementor-disabled');
2844 if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
2845 $e.route('library/connect', args);
2846 return;
2847 }
2848 $e.run('library/generate-ai-variation', args);
2849 }
2850 });
2851 module.exports = ApplyTemplateForAiBehavior;
2852
2853 /***/ }),
2854
2855 /***/ "../modules/ai/assets/js/editor/layout-app-wrapper.js":
2856 /*!************************************************************!*\
2857 !*** ../modules/ai/assets/js/editor/layout-app-wrapper.js ***!
2858 \************************************************************/
2859 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2860
2861 "use strict";
2862
2863
2864 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2865 Object.defineProperty(exports, "__esModule", ({
2866 value: true
2867 }));
2868 exports["default"] = void 0;
2869 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2870 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2871 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2872 var LayoutAppWrapper = function LayoutAppWrapper(props) {
2873 return /*#__PURE__*/_react.default.createElement(_ui.DirectionProvider, {
2874 rtl: props.isRTL
2875 }, /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, {
2876 colorScheme: props.colorScheme
2877 }, props.children));
2878 };
2879 LayoutAppWrapper.propTypes = {
2880 children: _propTypes.default.node,
2881 isRTL: _propTypes.default.bool,
2882 colorScheme: _propTypes.default.oneOf(['auto', 'light', 'dark'])
2883 };
2884 var _default = LayoutAppWrapper;
2885 exports["default"] = _default;
2886
2887 /***/ }),
2888
2889 /***/ "../modules/ai/assets/js/editor/layout-app.js":
2890 /*!****************************************************!*\
2891 !*** ../modules/ai/assets/js/editor/layout-app.js ***!
2892 \****************************************************/
2893 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2894
2895 "use strict";
2896
2897
2898 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2899 Object.defineProperty(exports, "__esModule", ({
2900 value: true
2901 }));
2902 exports["default"] = void 0;
2903 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2904 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2905 var _layoutContent = _interopRequireDefault(__webpack_require__(/*! ./layout-content */ "../modules/ai/assets/js/editor/layout-content.js"));
2906 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2907 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2908 var _remoteConfig = __webpack_require__(/*! ./pages/form-layout/context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
2909 var _requestsIds = __webpack_require__(/*! ./context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2910 var LayoutApp = function LayoutApp(props) {
2911 return /*#__PURE__*/_react.default.createElement(_remoteConfig.RemoteConfigProvider, {
2912 onError: props.onClose
2913 }, /*#__PURE__*/_react.default.createElement(_requestsIds.RequestIdsProvider, null, /*#__PURE__*/_react.default.createElement(_config.ConfigProvider, {
2914 mode: props.mode,
2915 attachmentsTypes: props.attachmentsTypes,
2916 onClose: props.onClose,
2917 onConnect: props.onConnect,
2918 onData: props.onData,
2919 onInsert: props.onInsert,
2920 onSelect: props.onSelect,
2921 onGenerate: props.onGenerate,
2922 currentContext: props.currentContext,
2923 hasPro: props.hasPro
2924 }, /*#__PURE__*/_react.default.createElement(_layoutContent.default, {
2925 attachments: props.attachments
2926 }))));
2927 };
2928 LayoutApp.propTypes = {
2929 mode: _propTypes.default.oneOf(_config.LAYOUT_APP_MODES).isRequired,
2930 attachmentsTypes: _attachment.AttachmentsTypesPropType,
2931 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
2932 onClose: _propTypes.default.func.isRequired,
2933 onConnect: _propTypes.default.func.isRequired,
2934 onData: _propTypes.default.func.isRequired,
2935 onInsert: _propTypes.default.func.isRequired,
2936 onSelect: _propTypes.default.func.isRequired,
2937 onGenerate: _propTypes.default.func.isRequired,
2938 currentContext: _propTypes.default.object,
2939 hasPro: _propTypes.default.bool
2940 };
2941 var _default = LayoutApp;
2942 exports["default"] = _default;
2943
2944 /***/ }),
2945
2946 /***/ "../modules/ai/assets/js/editor/layout-content.js":
2947 /*!********************************************************!*\
2948 !*** ../modules/ai/assets/js/editor/layout-content.js ***!
2949 \********************************************************/
2950 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2951
2952 "use strict";
2953
2954
2955 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2956 Object.defineProperty(exports, "__esModule", ({
2957 value: true
2958 }));
2959 exports["default"] = void 0;
2960 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2961 var _connect = _interopRequireDefault(__webpack_require__(/*! ./pages/connect */ "../modules/ai/assets/js/editor/pages/connect/index.js"));
2962 var _formLayout = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout */ "../modules/ai/assets/js/editor/pages/form-layout/index.js"));
2963 var _getStarted = _interopRequireDefault(__webpack_require__(/*! ./pages/get-started */ "../modules/ai/assets/js/editor/pages/get-started/index.js"));
2964 var _loader = _interopRequireDefault(__webpack_require__(/*! ./components/loader */ "../modules/ai/assets/js/editor/components/loader.js"));
2965 var _upgradeChip = _interopRequireDefault(__webpack_require__(/*! ./components/upgrade-chip */ "../modules/ai/assets/js/editor/components/upgrade-chip.js"));
2966 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
2967 var _wizardDialog = _interopRequireDefault(__webpack_require__(/*! ./components/wizard-dialog */ "../modules/ai/assets/js/editor/components/wizard-dialog.js"));
2968 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout/components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
2969 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2970 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2971 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2972 var LayoutContent = function LayoutContent(props) {
2973 var _useUserInfo = (0, _useUserInfo2.default)(),
2974 isLoading = _useUserInfo.isLoading,
2975 isConnected = _useUserInfo.isConnected,
2976 isGetStarted = _useUserInfo.isGetStarted,
2977 connectUrl = _useUserInfo.connectUrl,
2978 fetchData = _useUserInfo.fetchData,
2979 hasSubscription = _useUserInfo.hasSubscription,
2980 usagePercentage = _useUserInfo.usagePercentage;
2981 var _useConfig = (0, _config.useConfig)(),
2982 onClose = _useConfig.onClose,
2983 onConnect = _useConfig.onConnect;
2984 if (isLoading) {
2985 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2986 onClose: onClose
2987 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, {
2988 onClose: onClose
2989 }), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, {
2990 dividers: true
2991 }, /*#__PURE__*/_react.default.createElement(_loader.default, {
2992 BoxProps: {
2993 sx: {
2994 px: 3
2995 }
2996 }
2997 })));
2998 }
2999 if (!isConnected) {
3000 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3001 onClose: onClose
3002 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3003 onClose: onClose
3004 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3005 dividers: true
3006 }, /*#__PURE__*/_react.default.createElement(_connect.default, {
3007 connectUrl: connectUrl,
3008 onSuccess: function onSuccess(data) {
3009 onConnect(data);
3010 fetchData();
3011 }
3012 })));
3013 }
3014 if (!isGetStarted) {
3015 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3016 onClose: onClose
3017 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3018 onClose: onClose
3019 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3020 dividers: true
3021 }, /*#__PURE__*/_react.default.createElement(_getStarted.default, {
3022 onSuccess: fetchData
3023 })));
3024 }
3025 var showUpgradeChip = !hasSubscription || 80 <= usagePercentage;
3026 return /*#__PURE__*/_react.default.createElement(_formLayout.default, {
3027 attachments: props.attachments,
3028 DialogHeaderProps: {
3029 children: showUpgradeChip && /*#__PURE__*/_react.default.createElement(_upgradeChip.default, {
3030 hasSubscription: hasSubscription,
3031 usagePercentage: usagePercentage
3032 })
3033 }
3034 });
3035 };
3036 LayoutContent.propTypes = {
3037 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
3038 };
3039 var _default = LayoutContent;
3040 exports["default"] = _default;
3041
3042 /***/ }),
3043
3044 /***/ "../modules/ai/assets/js/editor/pages/connect/index.js":
3045 /*!*************************************************************!*\
3046 !*** ../modules/ai/assets/js/editor/pages/connect/index.js ***!
3047 \*************************************************************/
3048 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3049
3050 "use strict";
3051
3052
3053 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3054 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3055 Object.defineProperty(exports, "__esModule", ({
3056 value: true
3057 }));
3058 exports["default"] = void 0;
3059 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3060 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3061 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3062 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3063 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3064 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); }
3065 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; }
3066 var Connect = function Connect(_ref) {
3067 var connectUrl = _ref.connectUrl,
3068 onSuccess = _ref.onSuccess;
3069 var approveButtonRef = (0, _react.useRef)();
3070 (0, _react.useEffect)(function () {
3071 // On local dev (as a standalone app), the connect lib is not loaded.
3072 if (!jQuery.fn.elementorConnect) {
3073 return;
3074 }
3075 jQuery(approveButtonRef.current).elementorConnect({
3076 success: function success(_, data) {
3077 return onSuccess(data);
3078 },
3079 error: function error() {
3080 throw new Error('Elementor AI: Failed to connect.');
3081 }
3082 });
3083 }, []);
3084 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3085 alignItems: "center",
3086 gap: 2
3087 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3088 sx: {
3089 color: 'text.primary',
3090 fontSize: '60px',
3091 mb: 1
3092 }
3093 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3094 variant: "h4",
3095 sx: {
3096 color: 'text.primary'
3097 }
3098 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3099 variant: "body2"
3100 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3101 variant: "caption",
3102 sx: {
3103 maxWidth: 520,
3104 textAlign: 'center'
3105 }
3106 }, (0, _i18n.__)('By clicking "Connect", I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
3107 href: "https://go.elementor.com/ai-terms/",
3108 target: "_blank",
3109 color: "info.main"
3110 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
3111 href: "https://go.elementor.com/ai-privacy-policy/",
3112 target: "_blank",
3113 color: "info.main"
3114 }, (0, _i18n.__)('Privacy Policy', 'elementor')), (0, _i18n.__)(' of the Elementor AI service.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
3115 ref: approveButtonRef,
3116 href: connectUrl,
3117 variant: "contained",
3118 sx: {
3119 mt: 1,
3120 '&:hover': {
3121 color: 'primary.contrastText'
3122 }
3123 }
3124 }, (0, _i18n.__)('Connect', 'elementor')));
3125 };
3126 Connect.propTypes = {
3127 connectUrl: _propTypes.default.string.isRequired,
3128 onSuccess: _propTypes.default.func.isRequired
3129 };
3130 var _default = Connect;
3131 exports["default"] = _default;
3132
3133 /***/ }),
3134
3135 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js":
3136 /*!**********************************************************************************!*\
3137 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js ***!
3138 \**********************************************************************************/
3139 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3140
3141 "use strict";
3142
3143
3144 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3145 Object.defineProperty(exports, "__esModule", ({
3146 value: true
3147 }));
3148 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;
3149 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3150 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3151 var _menu = __webpack_require__(/*! ./attachments/menu */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js");
3152 var _thumbnailJson = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-json */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js"));
3153 var _thumbnailUrl = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-url */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js"));
3154 var _websiteIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/website-icon */ "../modules/ai/assets/js/editor/icons/website-icon.js"));
3155 var _copyPageIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/copy-page-icon */ "../modules/ai/assets/js/editor/icons/copy-page-icon.js"));
3156 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3157 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3158 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3159 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3160 var ATTACHMENT_TYPE_JSON = 'json';
3161 exports.ATTACHMENT_TYPE_JSON = ATTACHMENT_TYPE_JSON;
3162 var ATTACHMENT_TYPE_URL = 'url';
3163 exports.ATTACHMENT_TYPE_URL = ATTACHMENT_TYPE_URL;
3164 var MENU_TYPE_LIBRARY = 'library';
3165 exports.MENU_TYPE_LIBRARY = MENU_TYPE_LIBRARY;
3166 var USER_VARIATION_SOURCE = 'user-variation';
3167 exports.USER_VARIATION_SOURCE = USER_VARIATION_SOURCE;
3168 var ELEMENTOR_LIBRARY_SOURCE = 'elementor-library';
3169 exports.ELEMENTOR_LIBRARY_SOURCE = ELEMENTOR_LIBRARY_SOURCE;
3170 var USER_URL_SOURCE = 'user-url';
3171 exports.USER_URL_SOURCE = USER_URL_SOURCE;
3172 var Attachments = function Attachments(props) {
3173 if (!props.attachments.length) {
3174 return /*#__PURE__*/_react.default.createElement(_menu.Menu, {
3175 disabled: props.disabled,
3176 onAttach: props.onAttach,
3177 items: [{
3178 title: (0, _i18n.__)('Reference a website', 'elementor'),
3179 icon: _websiteIcon.default,
3180 type: ATTACHMENT_TYPE_URL
3181 }, {
3182 title: (0, _i18n.__)('Create variations from Template Library', 'elementor'),
3183 icon: _copyPageIcon.default,
3184 type: MENU_TYPE_LIBRARY
3185 }]
3186 });
3187 }
3188 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3189 direction: "row",
3190 spacing: 1
3191 }, props.attachments.map(function (attachment, index) {
3192 switch (attachment.type) {
3193 case ATTACHMENT_TYPE_JSON:
3194 return /*#__PURE__*/_react.default.createElement(_thumbnailJson.default, (0, _extends2.default)({
3195 key: index
3196 }, props));
3197 case ATTACHMENT_TYPE_URL:
3198 return /*#__PURE__*/_react.default.createElement(_thumbnailUrl.default, (0, _extends2.default)({
3199 key: index
3200 }, props));
3201 default:
3202 return null;
3203 }
3204 }));
3205 };
3206 Attachments.propTypes = {
3207 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3208 onAttach: _propTypes.default.func.isRequired,
3209 onDetach: _propTypes.default.func,
3210 disabled: _propTypes.default.bool
3211 };
3212 var _default = Attachments;
3213 exports["default"] = _default;
3214
3215 /***/ }),
3216
3217 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js":
3218 /*!************************************************************************************************!*\
3219 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js ***!
3220 \************************************************************************************************/
3221 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3222
3223 "use strict";
3224
3225
3226 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3227 Object.defineProperty(exports, "__esModule", ({
3228 value: true
3229 }));
3230 exports["default"] = exports.AttachDialog = void 0;
3231 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3232 var _urlDialog = __webpack_require__(/*! ./url-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js");
3233 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3234 var _libraryDialog = __webpack_require__(/*! ./library-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js");
3235 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3236 var AttachDialog = function AttachDialog(props) {
3237 var type = props.type;
3238 var url = props.url;
3239 switch (type) {
3240 case _attachments.ATTACHMENT_TYPE_URL:
3241 return /*#__PURE__*/_react.default.createElement(_urlDialog.UrlDialog, {
3242 url: url,
3243 onAttach: props.onAttach,
3244 onClose: props.onClose
3245 });
3246 case _attachments.MENU_TYPE_LIBRARY:
3247 return /*#__PURE__*/_react.default.createElement(_libraryDialog.LibraryDialog, {
3248 onAttach: props.onAttach,
3249 onClose: props.onClose
3250 });
3251 }
3252 return null;
3253 };
3254 exports.AttachDialog = AttachDialog;
3255 AttachDialog.propTypes = {
3256 type: _propTypes.default.string,
3257 onAttach: _propTypes.default.func,
3258 onClose: _propTypes.default.func,
3259 url: _propTypes.default.string
3260 };
3261 var _default = AttachDialog;
3262 exports["default"] = _default;
3263
3264 /***/ }),
3265
3266 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js":
3267 /*!*************************************************************************************************!*\
3268 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js ***!
3269 \*************************************************************************************************/
3270 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3271
3272 "use strict";
3273
3274
3275 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3276 Object.defineProperty(exports, "__esModule", ({
3277 value: true
3278 }));
3279 exports.LibraryDialog = void 0;
3280 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3281 var _react = __webpack_require__(/*! react */ "react");
3282 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3283 var LibraryDialog = function LibraryDialog(props) {
3284 var isApplyingTemplate = (0, _react.useRef)(false);
3285 (0, _react.useEffect)(function () {
3286 var onLibraryHide = function onLibraryHide() {
3287 if (isApplyingTemplate.current) {
3288 return;
3289 }
3290 props.onClose();
3291 };
3292 $e.components.get('library').layout.getModal().on('hide', onLibraryHide);
3293 return function () {
3294 $e.components.get('library').layout.getModal().off('hide', onLibraryHide);
3295 };
3296 }, [props]);
3297 (0, _react.useEffect)(function () {
3298 var onMessage = function onMessage(event) {
3299 var _event$data = event.data,
3300 type = _event$data.type,
3301 json = _event$data.json,
3302 html = _event$data.html,
3303 label = _event$data.label,
3304 source = _event$data.source;
3305 switch (type) {
3306 case 'library/attach:start':
3307 isApplyingTemplate.current = true;
3308 break;
3309 case 'library/attach':
3310 props.onAttach([{
3311 type: _attachments.ATTACHMENT_TYPE_JSON,
3312 previewHTML: html,
3313 content: json,
3314 label: label,
3315 source: source
3316 }]);
3317 isApplyingTemplate.current = false;
3318 props.onClose();
3319 break;
3320 }
3321 };
3322 window.addEventListener('message', onMessage);
3323 return function () {
3324 window.removeEventListener('message', onMessage);
3325 };
3326 });
3327 $e.run('library/open', {
3328 toDefault: true,
3329 mode: 'ai-attachment'
3330 });
3331 isApplyingTemplate.current = false;
3332 return null;
3333 };
3334 exports.LibraryDialog = LibraryDialog;
3335 LibraryDialog.propTypes = {
3336 onAttach: _propTypes.default.func.isRequired,
3337 onClose: _propTypes.default.func.isRequired
3338 };
3339
3340 /***/ }),
3341
3342 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js":
3343 /*!***************************************************************************************!*\
3344 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js ***!
3345 \***************************************************************************************/
3346 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3347
3348 "use strict";
3349
3350
3351 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3352 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3353 Object.defineProperty(exports, "__esModule", ({
3354 value: true
3355 }));
3356 exports.Menu = void 0;
3357 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3358 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3359 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3360 var _xCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/x-circle-icon */ "../modules/ai/assets/js/editor/icons/x-circle-icon.js"));
3361 var _plusCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/plus-circle-icon */ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js"));
3362 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3363 var _attachDialog = __webpack_require__(/*! ./attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js");
3364 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3365 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); }
3366 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; }
3367 var Menu = function Menu(props) {
3368 var _useState = (0, _react.useState)(false),
3369 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3370 isOpen = _useState2[0],
3371 setIsOpen = _useState2[1];
3372 var _useState3 = (0, _react.useState)(null),
3373 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
3374 selectedType = _useState4[0],
3375 setSelectedType = _useState4[1];
3376 var _useTheme = (0, _ui.useTheme)(),
3377 direction = _useTheme.direction;
3378 var anchorRef = (0, _react.useRef)(null);
3379 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-attachment-badge'),
3380 isViewed = _useIntroduction.isViewed,
3381 markAsViewed = _useIntroduction.markAsViewed;
3382 return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3383 size: "small",
3384 ref: anchorRef,
3385 disabled: props.disabled,
3386 onClick: function onClick() {
3387 setIsOpen(true);
3388 if (!isViewed) {
3389 markAsViewed();
3390 }
3391 },
3392 color: "secondary"
3393 }, function () {
3394 if (isOpen) {
3395 return /*#__PURE__*/_react.default.createElement(_xCircleIcon.default, {
3396 fontSize: "small"
3397 });
3398 } else if (isViewed) {
3399 return /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3400 fontSize: "small"
3401 });
3402 }
3403 return /*#__PURE__*/_react.default.createElement(_ui.Badge, {
3404 color: "primary",
3405 badgeContent: " ",
3406 variant: "dot"
3407 }, /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3408 fontSize: "small"
3409 }));
3410 }()), /*#__PURE__*/_react.default.createElement(_ui.Popover, {
3411 open: isOpen,
3412 anchorEl: anchorRef.current,
3413 onClose: function onClose() {
3414 return setIsOpen(false);
3415 },
3416 anchorOrigin: {
3417 vertical: 'bottom',
3418 horizontal: 'rtl' === direction ? 'right' : 'left'
3419 },
3420 transformOrigin: {
3421 vertical: 'top',
3422 horizontal: 'rtl' === direction ? 'right' : 'left'
3423 }
3424 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3425 sx: {
3426 width: 440
3427 }
3428 }, props.items.map(function (item) {
3429 var IconComponent = item.icon;
3430 return /*#__PURE__*/_react.default.createElement(_ui.MenuItem, {
3431 key: item.type,
3432 onClick: function onClick() {
3433 setSelectedType(item.type);
3434 setIsOpen(false);
3435 }
3436 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(IconComponent, null)), item.title);
3437 }))), /*#__PURE__*/_react.default.createElement(_attachDialog.AttachDialog, {
3438 type: selectedType,
3439 onAttach: props.onAttach,
3440 onClose: function onClose() {
3441 setIsOpen(false);
3442 setSelectedType(null);
3443 }
3444 }));
3445 };
3446 exports.Menu = Menu;
3447 Menu.propTypes = {
3448 items: _propTypes.default.arrayOf(_propTypes.default.shape({
3449 title: _propTypes.default.string.isRequired,
3450 type: _propTypes.default.string.isRequired,
3451 icon: _propTypes.default.elementType
3452 })).isRequired,
3453 onAttach: _propTypes.default.func.isRequired,
3454 disabled: _propTypes.default.bool
3455 };
3456
3457 /***/ }),
3458
3459 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js":
3460 /*!******************************************************************************************************!*\
3461 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js ***!
3462 \******************************************************************************************************/
3463 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3464
3465 "use strict";
3466
3467
3468 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3469 Object.defineProperty(exports, "__esModule", ({
3470 value: true
3471 }));
3472 exports.PromptPowerNotice = void 0;
3473 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3474 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3475 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3476 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3477 var PromptPowerNotice = function PromptPowerNotice() {
3478 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-attachments-power'),
3479 isViewed = _useIntroduction.isViewed,
3480 markAsViewed = _useIntroduction.markAsViewed;
3481 if (isViewed) {
3482 return null;
3483 }
3484 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3485 sx: {
3486 pt: 2,
3487 px: 2,
3488 pb: 0
3489 }
3490 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
3491 severity: "info",
3492 onClose: function onClose() {
3493 return markAsViewed();
3494 }
3495 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3496 variant: "body2",
3497 display: "inline-block",
3498 sx: {
3499 paddingInlineEnd: 1
3500 }
3501 }, (0, _i18n.__)('You’ve got the power.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3502 variant: "body2",
3503 display: "inline-block"
3504 }, (0, _i18n.__)('Craft your prompt to affect content, images and/or colors - whichever you decide.', 'elementor'))));
3505 };
3506 exports.PromptPowerNotice = PromptPowerNotice;
3507
3508 /***/ }),
3509
3510 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js":
3511 /*!*************************************************************************************************!*\
3512 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js ***!
3513 \*************************************************************************************************/
3514 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3515
3516 "use strict";
3517
3518
3519 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3520 Object.defineProperty(exports, "__esModule", ({
3521 value: true
3522 }));
3523 exports["default"] = exports.ThumbnailJson = void 0;
3524 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3525 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3526 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3527 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3528 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3529 var ThumbnailJson = function ThumbnailJson(props) {
3530 var _props$attachments;
3531 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3532 return 'json' === item.type;
3533 });
3534 if (!attachment) {
3535 return null;
3536 }
3537 if (!attachment.previewHTML) {
3538 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
3539 animation: "wave",
3540 variant: "rounded",
3541 width: 60,
3542 height: 60
3543 });
3544 }
3545 return /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3546 html: attachment.previewHTML,
3547 disabled: props.disabled
3548 });
3549 };
3550 exports.ThumbnailJson = ThumbnailJson;
3551 ThumbnailJson.propTypes = {
3552 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3553 disabled: _propTypes.default.bool
3554 };
3555 var _default = ThumbnailJson;
3556 exports["default"] = _default;
3557
3558 /***/ }),
3559
3560 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js":
3561 /*!************************************************************************************************!*\
3562 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js ***!
3563 \************************************************************************************************/
3564 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3565
3566 "use strict";
3567
3568
3569 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3570 Object.defineProperty(exports, "__esModule", ({
3571 value: true
3572 }));
3573 exports["default"] = exports.ThumbnailUrl = void 0;
3574 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3575 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3576 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3577 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3578 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3579 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3580 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3581 var ThumbnailUrl = function ThumbnailUrl(props) {
3582 var _props$attachments;
3583 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3584 return 'url' === item.type;
3585 });
3586 if (!attachment) {
3587 return null;
3588 }
3589 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3590 sx: {
3591 position: 'relative',
3592 '&:hover::before': {
3593 content: '""',
3594 position: 'absolute',
3595 userSelect: 'none',
3596 inset: 0,
3597 backgroundColor: 'rgba(0,0,0,0.6)',
3598 borderRadius: 1,
3599 zIndex: 1
3600 },
3601 '&:hover .remove-attachment': {
3602 display: 'flex'
3603 }
3604 }
3605 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3606 className: "remove-attachment",
3607 size: "small",
3608 "aria-label": (0, _i18n.__)('Remove', 'elementor'),
3609 disabled: props.disabled,
3610 onClick: function onClick(event) {
3611 event.stopPropagation();
3612 props.onDetach();
3613 },
3614 sx: {
3615 display: 'none',
3616 position: 'absolute',
3617 insetInlineEnd: 4,
3618 insetBlockStart: 4,
3619 backgroundColor: 'secondary.main',
3620 zIndex: 1,
3621 borderRadius: 1,
3622 p: '3px',
3623 '&:hover': {
3624 backgroundColor: 'secondary.dark'
3625 }
3626 }
3627 }, /*#__PURE__*/_react.default.createElement(_icons.TrashIcon, {
3628 sx: {
3629 fontSize: '1.125rem',
3630 color: 'common.white'
3631 }
3632 })), /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3633 disabled: props.disabled,
3634 html: attachment.previewHTML
3635 }));
3636 };
3637 exports.ThumbnailUrl = ThumbnailUrl;
3638 ThumbnailUrl.propTypes = {
3639 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3640 disabled: _propTypes.default.bool,
3641 onDetach: _propTypes.default.func
3642 };
3643 var _default = ThumbnailUrl;
3644 exports["default"] = _default;
3645
3646 /***/ }),
3647
3648 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js":
3649 /*!********************************************************************************************!*\
3650 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js ***!
3651 \********************************************************************************************/
3652 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3653
3654 "use strict";
3655
3656
3657 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3658 Object.defineProperty(exports, "__esModule", ({
3659 value: true
3660 }));
3661 exports.Thumbnail = exports.THUMBNAIL_SIZE = void 0;
3662 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3663 var _taggedTemplateLiteral2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js"));
3664 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3665 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3666 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3667 var _styledComponents = _interopRequireDefault(__webpack_require__(/*! styled-components */ "../node_modules/styled-components/dist/styled-components.browser.esm.js"));
3668 var _templateObject;
3669 var THUMBNAIL_SIZE = 64;
3670 exports.THUMBNAIL_SIZE = THUMBNAIL_SIZE;
3671 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);
3672 var Thumbnail = function Thumbnail(props) {
3673 var _props$html$match, _props$html$match$gro, _props$html$match2, _props$html$match2$gr;
3674 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;
3675 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;
3676 var width = dataWidth ? parseInt(dataWidth) : THUMBNAIL_SIZE;
3677 var height = dataHeight ? parseInt(dataHeight) : THUMBNAIL_SIZE;
3678 var scaleFactor = Math.min(height, width);
3679 var scale = THUMBNAIL_SIZE / scaleFactor;
3680
3681 // Center the preview
3682 var top = height > width ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (height / width)) / 2 : 0;
3683 var left = width > height ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (width / height)) / 2 : 0;
3684 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3685 dir: "ltr",
3686 sx: {
3687 position: 'relative',
3688 cursor: 'default',
3689 overflow: 'hidden',
3690 border: '1px solid',
3691 borderColor: 'grey.300',
3692 borderRadius: 1,
3693 boxSizing: 'border-box',
3694 width: THUMBNAIL_SIZE,
3695 height: THUMBNAIL_SIZE,
3696 opacity: props.disabled ? 0.5 : 1
3697 }
3698 }, /*#__PURE__*/_react.default.createElement("iframe", {
3699 title: (0, _i18n.__)('Preview', 'elementor'),
3700 sandbox: "",
3701 srcDoc: "<style>" + StyledBody.componentStyle.rules.join('') + "</style>" + props.html,
3702 style: {
3703 border: 'none',
3704 overflow: 'hidden',
3705 width: width,
3706 height: height,
3707 transform: "scale(".concat(scale, ")"),
3708 transformOrigin: "".concat(left, "px ").concat(top, "px")
3709 }
3710 }));
3711 };
3712 exports.Thumbnail = Thumbnail;
3713 Thumbnail.propTypes = {
3714 html: _propTypes.default.string.isRequired,
3715 disabled: _propTypes.default.bool
3716 };
3717
3718 /***/ }),
3719
3720 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js":
3721 /*!*********************************************************************************************!*\
3722 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js ***!
3723 \*********************************************************************************************/
3724 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3725
3726 "use strict";
3727
3728
3729 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3730 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3731 Object.defineProperty(exports, "__esModule", ({
3732 value: true
3733 }));
3734 exports.UrlDialog = void 0;
3735 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3736 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3737 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3738 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3739 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3740 var _useAttachUrlService2 = __webpack_require__(/*! ../../hooks/use-attach-url-service */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js");
3741 var _alertDialog = __webpack_require__(/*! ../../../../components/alert-dialog */ "../modules/ai/assets/js/editor/components/alert-dialog.js");
3742 var _useTimeout3 = __webpack_require__(/*! ../../../../hooks/use-timeout */ "../modules/ai/assets/js/editor/hooks/use-timeout.js");
3743 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3744 var _remoteConfig = __webpack_require__(/*! ../../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
3745 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
3746 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); }
3747 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; }
3748 var UrlDialog = function UrlDialog(props) {
3749 var iframeRef = (0, _react.useRef)(null);
3750 var _useAttachUrlService = (0, _useAttachUrlService2.useAttachUrlService)({
3751 targetUrl: props.url
3752 }),
3753 iframeSource = _useAttachUrlService.iframeSource;
3754 var iframeOrigin = iframeSource ? new URL(iframeSource).origin : '';
3755 var _useTimeout = (0, _useTimeout3.useTimeout)(10000),
3756 _useTimeout2 = (0, _slicedToArray2.default)(_useTimeout, 2),
3757 isTimeout = _useTimeout2[0],
3758 turnOffTimeout = _useTimeout2[1];
3759 var _useUserInfo = (0, _useUserInfo2.default)(),
3760 isConnected = _useUserInfo.isConnected,
3761 hasSubscription = _useUserInfo.hasSubscription,
3762 credits = _useUserInfo.credits,
3763 usagePercentage = _useUserInfo.usagePercentage;
3764 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
3765 isLoaded = _useRemoteConfig.isLoaded,
3766 isError = _useRemoteConfig.isError,
3767 remoteConfig = _useRemoteConfig.remoteConfig;
3768 (0, _react.useEffect)(function () {
3769 var onMessage = function onMessage(event) {
3770 if (event.origin !== iframeOrigin) {
3771 return;
3772 }
3773 var _event$data = event.data,
3774 type = _event$data.type,
3775 html = _event$data.html,
3776 url = _event$data.url;
3777 switch (type) {
3778 case 'element-selector/close':
3779 props.onClose();
3780 break;
3781 case 'element-selector/loaded':
3782 turnOffTimeout();
3783 break;
3784 case 'element-selector/attach':
3785 props.onAttach([{
3786 type: 'url',
3787 previewHTML: html,
3788 content: html,
3789 label: url ? new URL(url).host : '',
3790 source: _attachments.USER_URL_SOURCE
3791 }]);
3792 break;
3793 }
3794 };
3795 window.addEventListener('message', onMessage);
3796 return function () {
3797 window.removeEventListener('message', onMessage);
3798 };
3799 }, [iframeOrigin, iframeSource, props, turnOffTimeout]);
3800 if (!iframeSource) {
3801 return /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3802 message: (0, _i18n.__)('The app is not available. Please try again later.', 'elementor'),
3803 onClose: props.onClose
3804 });
3805 }
3806 if (!isLoaded || isError) {
3807 return null;
3808 }
3809 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
3810 open: true,
3811 fullScreen: true,
3812 hideBackdrop: true,
3813 maxWidth: "md",
3814 sx: {
3815 '& .MuiPaper-root': {
3816 backgroundColor: 'transparent'
3817 }
3818 }
3819 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
3820 sx: {
3821 padding: 0
3822 }
3823 }, isTimeout && /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3824 message: (0, _i18n.__)('The app is not responding. Please try again later.', 'elementor'),
3825 onClose: props.onClose
3826 }), !isTimeout && /*#__PURE__*/_react.default.createElement("iframe", {
3827 ref: iframeRef,
3828 title: (0, _i18n.__)('URL as a reference', 'elementor'),
3829 src: iframeSource,
3830 onLoad: function onLoad() {
3831 var _window$elementorAppC = window.elementorAppConfig['kit-library'],
3832 accessLevel = _window$elementorAppC.access_level,
3833 accessTier = _window$elementorAppC.access_tier,
3834 isPro = _window$elementorAppC.is_pro;
3835 iframeRef.current.contentWindow.postMessage({
3836 type: 'referrer/info',
3837 info: {
3838 page: {
3839 url: window.location.href
3840 },
3841 authToken: remoteConfig[_remoteConfig.CONFIG_KEYS.AUTH_TOKEN] || '',
3842 products: {
3843 core: {
3844 version: window.elementor.config.version
3845 },
3846 pro: {
3847 isPro: isPro,
3848 accessLevel: accessLevel,
3849 accessTier: accessTier
3850 },
3851 ai: {
3852 isConnected: isConnected,
3853 hasSubscription: hasSubscription,
3854 credits: credits,
3855 usagePercentage: usagePercentage
3856 }
3857 },
3858 user: {
3859 isAdmin: window.elementor.config.user.is_administrator
3860 }
3861 }
3862 }, iframeOrigin);
3863 },
3864 style: {
3865 border: 'none',
3866 overflow: 'scroll',
3867 width: '100%',
3868 height: '100%',
3869 backgroundColor: 'rgba(255,255,255,0.6)'
3870 }
3871 })));
3872 };
3873 exports.UrlDialog = UrlDialog;
3874 UrlDialog.propTypes = {
3875 onAttach: _propTypes.default.func.isRequired,
3876 onClose: _propTypes.default.func.isRequired,
3877 url: _propTypes.default.string
3878 };
3879
3880 /***/ }),
3881
3882 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js":
3883 /*!************************************************************************************!*\
3884 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js ***!
3885 \************************************************************************************/
3886 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3887
3888 "use strict";
3889
3890
3891 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3892 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3893 Object.defineProperty(exports, "__esModule", ({
3894 value: true
3895 }));
3896 exports["default"] = void 0;
3897 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3898 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3899 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3900 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3901 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3902 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3903 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3904 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3905 var _promptDialog = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-dialog */ "../modules/ai/assets/js/editor/components/prompt-dialog.js"));
3906 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3907 var _excluded = ["sx", "PaperProps"];
3908 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); }
3909 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; }
3910 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; }
3911 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; }
3912 var StyledDialog = (0, _ui.styled)(_promptDialog.default)(function () {
3913 return {
3914 '& .MuiDialog-container': {
3915 marginTop: 0,
3916 alignItems: 'flex-end',
3917 paddingBottom: '16vh'
3918 },
3919 '& .MuiPaper-root': {
3920 margin: 0,
3921 maxHeight: '55vh'
3922 }
3923 };
3924 });
3925 var DialogHeader = function DialogHeader(_ref) {
3926 var onClose = _ref.onClose,
3927 children = _ref.children;
3928 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
3929 sx: {
3930 fontWeight: 'normal'
3931 },
3932 color: "transparent",
3933 position: "relative"
3934 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
3935 variant: "dense"
3936 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3937 sx: {
3938 mr: 1
3939 }
3940 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3941 component: "span",
3942 variant: "subtitle2",
3943 sx: {
3944 fontWeight: 'bold',
3945 textTransform: 'uppercase'
3946 }
3947 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
3948 label: (0, _i18n.__)('Beta', 'elementor'),
3949 color: "default",
3950 size: "small",
3951 sx: {
3952 ml: 1
3953 }
3954 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3955 direction: "row",
3956 spacing: 1,
3957 alignItems: "center",
3958 sx: {
3959 ml: 'auto'
3960 }
3961 }, children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3962 size: "small",
3963 "aria-label": "close",
3964 onClick: onClose,
3965 sx: {
3966 '&.MuiButtonBase-root': {
3967 mr: -1
3968 }
3969 }
3970 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
3971 };
3972 DialogHeader.propTypes = {
3973 children: _propTypes.default.node,
3974 onClose: _propTypes.default.func.isRequired
3975 };
3976 var StyledDialogContent = (0, _ui.styled)(_promptDialog.default.Content)(function () {
3977 return {
3978 '&.MuiDialogContent-root': {
3979 padding: 0
3980 }
3981 };
3982 });
3983 var LayoutDialog = function LayoutDialog(_ref2) {
3984 var _ref2$sx = _ref2.sx,
3985 sx = _ref2$sx === void 0 ? {} : _ref2$sx,
3986 _ref2$PaperProps = _ref2.PaperProps,
3987 PaperProps = _ref2$PaperProps === void 0 ? {} : _ref2$PaperProps,
3988 props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
3989 var _useState = (0, _react.useState)({
3990 pointerEvents: 'none'
3991 }),
3992 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3993 sxStyle = _useState2[0],
3994 setSxStyle = _useState2[1];
3995 var timeoutRef = (0, _react.useRef)(null);
3996
3997 /**
3998 * The PromptDialog is using disableScrollLock in order to allow scrolling the page when the Dialog is opened.
3999 * When using the react-draggable library inside the editor, the background page scroll is not working smoothly.
4000 * Therefore, we need to delay the pointerEvents: none, which allowing to scroll the page content.
4001 */
4002 return /*#__PURE__*/_react.default.createElement(StyledDialog, (0, _extends2.default)({
4003 maxWidth: "md",
4004 PaperProps: _objectSpread({
4005 sx: {
4006 pointerEvents: 'auto'
4007 },
4008 onMouseEnter: function onMouseEnter() {
4009 clearTimeout(timeoutRef.current);
4010 setSxStyle({
4011 pointerEvents: 'all'
4012 });
4013 },
4014 onMouseLeave: function onMouseLeave() {
4015 clearTimeout(timeoutRef.current);
4016 timeoutRef.current = setTimeout(function () {
4017 setSxStyle({
4018 pointerEvents: 'none'
4019 });
4020 }, 200);
4021 }
4022 }, PaperProps)
4023 }, props, {
4024 sx: _objectSpread(_objectSpread({}, sxStyle), sx)
4025 }));
4026 };
4027 LayoutDialog.propTypes = {
4028 sx: _propTypes.default.object,
4029 PaperProps: _propTypes.default.object
4030 };
4031 LayoutDialog.Header = DialogHeader;
4032 LayoutDialog.Content = StyledDialogContent;
4033 var _default = LayoutDialog;
4034 exports["default"] = _default;
4035
4036 /***/ }),
4037
4038 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js":
4039 /*!*********************************************************************************************!*\
4040 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js ***!
4041 \*********************************************************************************************/
4042 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4043
4044 "use strict";
4045
4046
4047 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4048 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4049 Object.defineProperty(exports, "__esModule", ({
4050 value: true
4051 }));
4052 exports.ProTemplateIndicator = void 0;
4053 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4054 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4055 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4056 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4057 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4058 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); }
4059 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; }
4060 var popoverId = 'e-pro-upgrade-popover';
4061 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
4062 var theme = _ref.theme;
4063 return {
4064 position: 'relative',
4065 padding: theme.spacing(3),
4066 boxShadow: theme.shadows[4],
4067 zIndex: '9999'
4068 };
4069 });
4070 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
4071 var theme = _ref2.theme;
4072 return {
4073 position: 'absolute',
4074 width: theme.spacing(5),
4075 height: theme.spacing(5),
4076 overflow: 'hidden',
4077 // Override Popper inline styles.
4078 left: '100% !important',
4079 transform: 'translateX(-50%) translateY(-50%) rotate(var(--rotate, 0deg)) !important',
4080 '&::after': {
4081 backgroundColor: theme.palette.background.paper,
4082 content: '""',
4083 display: 'block',
4084 position: 'absolute',
4085 width: theme.spacing(2.5),
4086 height: theme.spacing(2.5),
4087 top: '50%',
4088 left: '50%',
4089 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
4090 boxShadow: '5px -5px 5px 0px rgba(0, 0, 0, 0.2)',
4091 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
4092 }
4093 };
4094 });
4095 var ProTemplateIndicator = function ProTemplateIndicator() {
4096 var actionUrl = 'https://go.elementor.com/go-pro-ai/';
4097 var actionLabel = (0, _i18n.__)('Go Pro', 'elementor');
4098 var _useState = (0, _react.useState)(false),
4099 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4100 isPopoverOpen = _useState2[0],
4101 setIsPopoverOpen = _useState2[1];
4102 var anchorEl = (0, _react.useRef)(null);
4103 var arrowEl = (0, _react.useRef)(null);
4104 var showPopover = function showPopover() {
4105 return setIsPopoverOpen(true);
4106 };
4107 var hidePopover = function hidePopover() {
4108 return setIsPopoverOpen(false);
4109 };
4110 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4111 flexDirection: "row-reverse",
4112 component: "span",
4113 display: "flex",
4114 onMouseLeave: hidePopover,
4115 alignItems: "center"
4116 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
4117 ref: anchorEl,
4118 onMouseEnter: showPopover,
4119 onClick: function onClick(e) {
4120 return e.stopPropagation();
4121 } /* Do nothing */,
4122 "aria-owns": isPopoverOpen ? popoverId : undefined,
4123 "aria-haspopup": "true",
4124 sx: {
4125 m: 1,
4126 '&:hover': {
4127 backgroundColor: 'action.selected'
4128 }
4129 }
4130 }, /*#__PURE__*/_react.default.createElement(_lockIcon.default, {
4131 sx: {
4132 color: 'text.primary'
4133 }
4134 })), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
4135 open: isPopoverOpen,
4136 popperOptions: {
4137 placement: 'left-start',
4138 modifiers: [{
4139 name: 'arrow',
4140 enabled: true,
4141 options: {
4142 element: arrowEl.current,
4143 padding: 5
4144 }
4145 }, {
4146 name: 'offset',
4147 options: {
4148 offset: [0, 10]
4149 }
4150 }]
4151 },
4152 anchorEl: anchorEl.current,
4153 sx: {
4154 zIndex: '9999',
4155 maxWidth: 300
4156 }
4157 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
4158 ref: arrowEl
4159 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4160 alignItems: "start",
4161 spacing: 2
4162 }, /*#__PURE__*/_react.default.createElement(_ui.Chip, {
4163 color: "promotion",
4164 variant: "outlined",
4165 size: "small",
4166 label: (0, _i18n.__)('Pro', 'elementor'),
4167 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null)
4168 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4169 variant: "body2"
4170 }, (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, {
4171 variant: "contained",
4172 color: "promotion",
4173 size: "small",
4174 href: actionUrl,
4175 target: "_blank",
4176 sx: {
4177 alignSelf: 'flex-end'
4178 }
4179 }, actionLabel)))));
4180 };
4181 exports.ProTemplateIndicator = ProTemplateIndicator;
4182
4183 /***/ }),
4184
4185 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js":
4186 /*!*****************************************************************************************!*\
4187 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js ***!
4188 \*****************************************************************************************/
4189 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4190
4191 "use strict";
4192
4193
4194 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4195 Object.defineProperty(exports, "__esModule", ({
4196 value: true
4197 }));
4198 exports.ProWidgetsNotice = void 0;
4199 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4200 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4201 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4202 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4203 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
4204 var ProWidgetsNotice = function ProWidgetsNotice() {
4205 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-pro-widget'),
4206 isViewed = _useIntroduction.isViewed,
4207 markAsViewed = _useIntroduction.markAsViewed;
4208 if (isViewed) {
4209 return null;
4210 }
4211 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4212 sx: {
4213 pt: 2,
4214 px: 2,
4215 pb: 0
4216 }
4217 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
4218 severity: "info",
4219 variant: "filled",
4220 color: "promotion",
4221 onClose: function onClose() {
4222 return markAsViewed();
4223 },
4224 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null),
4225 sx: {
4226 '& .MuiAlert-message': {
4227 width: '100%'
4228 }
4229 }
4230 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4231 flexDirection: "row",
4232 alignItems: "baseline",
4233 justifyContent: "space-between"
4234 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4235 variant: "body2",
4236 component: "span",
4237 sx: {
4238 paddingInlineEnd: 0.5
4239 }
4240 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4241 variant: "subtitle2",
4242 component: "span",
4243 sx: {
4244 paddingInlineEnd: 1
4245 }
4246 }, (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, {
4247 variant: "outlined",
4248 size: "small",
4249 onClick: function onClick() {
4250 return window.open('https://go.elementor.com/upgrade-pro/', '_blank');
4251 },
4252 color: "inherit"
4253 }, (0, _i18n.__)('Go Pro', 'elementor')))));
4254 };
4255 exports.ProWidgetsNotice = ProWidgetsNotice;
4256
4257 /***/ }),
4258
4259 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js":
4260 /*!******************************************************************************************!*\
4261 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js ***!
4262 \******************************************************************************************/
4263 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4264
4265 "use strict";
4266
4267
4268 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4269 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4270 Object.defineProperty(exports, "__esModule", ({
4271 value: true
4272 }));
4273 exports["default"] = void 0;
4274 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4275 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4276 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4277 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4278 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4279 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4280 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4281 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4282 var _promptLibraryLink = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-library-link */ "../modules/ai/assets/js/editor/components/prompt-library-link.js"));
4283 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4284 var _excluded = ["onSubmit"];
4285 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); }
4286 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; }
4287 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; }
4288 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; }
4289 var TextInput = (0, _react.forwardRef)(function (props, ref) {
4290 return /*#__PURE__*/_react.default.createElement(_ui.TextField
4291 // eslint-disable-next-line jsx-a11y/no-autofocus
4292 , (0, _extends2.default)({
4293 autoFocus: true,
4294 multiline: true,
4295 size: "small",
4296 maxRows: 3,
4297 color: "secondary",
4298 variant: "standard"
4299 }, props, {
4300 inputRef: ref,
4301 InputProps: _objectSpread(_objectSpread({}, props.InputProps), {}, {
4302 type: 'search',
4303 sx: {
4304 pt: 0
4305 }
4306 })
4307 }));
4308 });
4309 TextInput.propTypes = {
4310 InputProps: _propTypes.default.object
4311 };
4312 var PaperComponent = function PaperComponent(props) {
4313 var _useConfig = (0, _config.useConfig)(),
4314 mode = _useConfig.mode;
4315 var libraryLink = _config.MODE_VARIATION === mode ? 'https://go.elementor.com/ai-prompt-library-variations/' : 'https://go.elementor.com/ai-prompt-library-containers/';
4316 return /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
4317 elevation: 8,
4318 sx: {
4319 borderRadius: 2
4320 }
4321 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4322 component: _ui.Box,
4323 color: function color(theme) {
4324 return theme.palette.text.tertiary;
4325 },
4326 variant: "caption",
4327 paddingX: 2,
4328 paddingY: 1
4329 }, (0, _i18n.__)('Suggested Prompts', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Divider, null), props.children, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4330 sx: {
4331 m: 2
4332 }
4333 }, /*#__PURE__*/_react.default.createElement(_promptLibraryLink.default, {
4334 libraryLink: libraryLink
4335 })));
4336 };
4337 PaperComponent.propTypes = {
4338 children: _propTypes.default.node
4339 };
4340 var PromptAutocomplete = function PromptAutocomplete(_ref) {
4341 var onSubmit = _ref.onSubmit,
4342 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4343 var _useState = (0, _react.useState)(false),
4344 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4345 showSuggestions = _useState2[0],
4346 setShowSuggestions = _useState2[1];
4347 var theme = (0, _ui.useTheme)();
4348 var itemHeight = parseInt(theme.spacing(4));
4349 var maxItems = 5;
4350 return /*#__PURE__*/_react.default.createElement(_ui.Autocomplete, (0, _extends2.default)({
4351 PaperComponent: PaperComponent,
4352 ListboxProps: {
4353 sx: {
4354 maxHeight: maxItems * itemHeight
4355 }
4356 },
4357 renderOption: function renderOption(optionProps, option) {
4358 return /*#__PURE__*/_react.default.createElement(_ui.Typography, (0, _extends2.default)({}, optionProps, {
4359 title: option.text,
4360 noWrap: true,
4361 variant: "body2",
4362 component: _ui.Box,
4363 sx: {
4364 '&.MuiAutocomplete-option': {
4365 display: 'block',
4366 minHeight: itemHeight
4367 }
4368 }
4369 }), option.text);
4370 },
4371 freeSolo: true,
4372 fullWidth: true,
4373 disableClearable: true,
4374 open: showSuggestions,
4375 onClose: function onClose(e) {
4376 var _e$relatedTarget;
4377 return setShowSuggestions('A' === ((_e$relatedTarget = e.relatedTarget) === null || _e$relatedTarget === void 0 ? void 0 : _e$relatedTarget.tagName));
4378 },
4379 onKeyDown: function onKeyDown(e) {
4380 if ('Enter' === e.key && !e.shiftKey && !showSuggestions) {
4381 onSubmit(e);
4382 } else if ('/' === e.key && '' === e.target.value) {
4383 e.preventDefault();
4384 setShowSuggestions(true);
4385 }
4386 }
4387 }, props));
4388 };
4389 PromptAutocomplete.propTypes = {
4390 onSubmit: _propTypes.default.func.isRequired
4391 };
4392 PromptAutocomplete.TextInput = TextInput;
4393 var _default = PromptAutocomplete;
4394 exports["default"] = _default;
4395
4396 /***/ }),
4397
4398 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js":
4399 /*!**********************************************************************************!*\
4400 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js ***!
4401 \**********************************************************************************/
4402 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4403
4404 "use strict";
4405
4406
4407 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4408 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4409 Object.defineProperty(exports, "__esModule", ({
4410 value: true
4411 }));
4412 exports["default"] = void 0;
4413 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4414 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4415 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4416 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4417 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4418 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4419 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4420 var _promptAutocomplete = _interopRequireDefault(__webpack_require__(/*! ./prompt-autocomplete */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js"));
4421 var _enhanceButton = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/enhance-button */ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js"));
4422 var _generateSubmit = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/generate-submit */ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js"));
4423 var _arrowLeftIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/arrow-left-icon */ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js"));
4424 var _editIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/edit-icon */ "../modules/ai/assets/js/editor/icons/edit-icon.js"));
4425 var _usePromptEnhancer2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt-enhancer */ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js"));
4426 var _attachments = _interopRequireDefault(__webpack_require__(/*! ./attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"));
4427 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4428 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
4429 var _excluded = ["tooltip"];
4430 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); }
4431 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; }
4432 var PROMPT_SUGGESTIONS = Object.freeze([{
4433 text: (0, _i18n.__)('Services section with list layout, icons, and service descriptions for [topic]', 'elementor')
4434 }, {
4435 text: (0, _i18n.__)('Accordion-style FAQ block with clickable questions about [topic]', 'elementor')
4436 }, {
4437 text: (0, _i18n.__)('Hero section with image, heading, subheading, and CTA button about [topic]', 'elementor')
4438 }, {
4439 text: (0, _i18n.__)('Full-width call-to-action with background image and overlay text about [topic]', 'elementor')
4440 }, {
4441 text: (0, _i18n.__)('Carousel testimonial block with user images, names, and feedback about [topic]', 'elementor')
4442 }, {
4443 text: (0, _i18n.__)('Features block showcasing feature title and brief description about [topic]', 'elementor')
4444 }, {
4445 text: (0, _i18n.__)('Multi-column minimalistic About Us section with icons for [topic]', 'elementor')
4446 }, {
4447 text: (0, _i18n.__)('Section with contact form and social media icons for [topic]', 'elementor')
4448 }, {
4449 text: (0, _i18n.__)('Statistics display in a 3-column layout with numbers and icons for [topic]', 'elementor')
4450 }, {
4451 text: (0, _i18n.__)('Pricing table section with highlighted option for [topic]', 'elementor')
4452 }, {
4453 text: (0, _i18n.__)('About Us section combining company history and values for [topic]', 'elementor')
4454 }]);
4455 var IconButtonWithTooltip = function IconButtonWithTooltip(_ref) {
4456 var tooltip = _ref.tooltip,
4457 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4458 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
4459 title: tooltip
4460 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
4461 component: "span",
4462 sx: {
4463 cursor: props.disabled ? 'default' : 'pointer'
4464 }
4465 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, props)));
4466 };
4467 IconButtonWithTooltip.propTypes = {
4468 tooltip: _propTypes.default.string,
4469 disabled: _propTypes.default.bool
4470 };
4471 var BackButton = function BackButton(props) {
4472 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4473 size: "small",
4474 color: "secondary",
4475 tooltip: (0, _i18n.__)('Back to results', 'elementor')
4476 }, props), /*#__PURE__*/_react.default.createElement(_arrowLeftIcon.default, null));
4477 };
4478 var EditButton = function EditButton(props) {
4479 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4480 size: "small",
4481 color: "primary",
4482 tooltip: (0, _i18n.__)('Edit prompt', 'elementor')
4483 }, props), /*#__PURE__*/_react.default.createElement(_editIcon.default, null));
4484 };
4485 var GenerateButton = function GenerateButton(props) {
4486 return /*#__PURE__*/_react.default.createElement(_generateSubmit.default, (0, _extends2.default)({
4487 size: "small",
4488 fullWidth: false
4489 }, props), (0, _i18n.__)('Generate', 'elementor'));
4490 };
4491 var PromptForm = (0, _react.forwardRef)(function (_ref2, ref) {
4492 var _attachments$;
4493 var attachments = _ref2.attachments,
4494 isActive = _ref2.isActive,
4495 isLoading = _ref2.isLoading,
4496 _ref2$showActions = _ref2.showActions,
4497 showActions = _ref2$showActions === void 0 ? false : _ref2$showActions,
4498 onAttach = _ref2.onAttach,
4499 onDetach = _ref2.onDetach,
4500 _onSubmit = _ref2.onSubmit,
4501 onBack = _ref2.onBack,
4502 onEdit = _ref2.onEdit,
4503 _ref2$shouldResetProm = _ref2.shouldResetPrompt,
4504 shouldResetPrompt = _ref2$shouldResetProm === void 0 ? false : _ref2$shouldResetProm;
4505 var _useState = (0, _react.useState)(''),
4506 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4507 prompt = _useState2[0],
4508 setPrompt = _useState2[1];
4509 (0, _react.useEffect)(function () {
4510 if (shouldResetPrompt) {
4511 setPrompt('');
4512 }
4513 }, [shouldResetPrompt]);
4514 var _usePromptEnhancer = (0, _usePromptEnhancer2.default)(prompt, 'layout'),
4515 isEnhancing = _usePromptEnhancer.isEnhancing,
4516 enhance = _usePromptEnhancer.enhance;
4517 var previousPrompt = (0, _react.useRef)('');
4518 var _useConfig = (0, _config.useConfig)(),
4519 attachmentsTypes = _useConfig.attachmentsTypes;
4520 var isInputDisabled = isLoading || isEnhancing || !isActive;
4521 var isInputEmpty = '' === prompt && !attachments.length;
4522 var isGenerateDisabled = isInputDisabled || isInputEmpty;
4523 var attachmentsType = ((_attachments$ = attachments[0]) === null || _attachments$ === void 0 ? void 0 : _attachments$.type) || '';
4524 var attachmentsConfig = attachmentsTypes[attachmentsType];
4525 var promptSuggestions = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptSuggestions) || PROMPT_SUGGESTIONS;
4526 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');
4527 var handleBack = function handleBack() {
4528 setPrompt(previousPrompt.current);
4529 onBack();
4530 };
4531 var handleEdit = function handleEdit() {
4532 previousPrompt.current = prompt;
4533 onEdit();
4534 };
4535 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4536 component: "form",
4537 onSubmit: function onSubmit(e) {
4538 return _onSubmit(e, prompt);
4539 },
4540 direction: "row",
4541 sx: {
4542 p: 3
4543 },
4544 alignItems: "start",
4545 gap: 1
4546 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4547 direction: "row",
4548 alignItems: "start",
4549 flexGrow: 1,
4550 spacing: 2
4551 }, showActions && (isActive ? /*#__PURE__*/_react.default.createElement(BackButton, {
4552 disabled: isLoading || isEnhancing,
4553 onClick: handleBack
4554 }) : /*#__PURE__*/_react.default.createElement(EditButton, {
4555 disabled: isLoading,
4556 onClick: handleEdit
4557 })), /*#__PURE__*/_react.default.createElement(_attachments.default, {
4558 attachments: attachments,
4559 onAttach: onAttach,
4560 onDetach: onDetach,
4561 disabled: isInputDisabled
4562 }), /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default, {
4563 value: prompt,
4564 disabled: isInputDisabled,
4565 onSubmit: function onSubmit(e) {
4566 return _onSubmit(e, prompt);
4567 },
4568 options: promptSuggestions,
4569 onChange: function onChange(_, selectedValue) {
4570 return setPrompt(selectedValue.text + ' ');
4571 },
4572 renderInput: function renderInput(params) {
4573 return /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default.TextInput, (0, _extends2.default)({}, params, {
4574 ref: ref,
4575 onChange: function onChange(e) {
4576 return setPrompt(e.target.value);
4577 },
4578 placeholder: promptPlaceholder
4579 }));
4580 }
4581 })), /*#__PURE__*/_react.default.createElement(_enhanceButton.default, {
4582 size: "small",
4583 disabled: isGenerateDisabled || '' === prompt,
4584 isLoading: isEnhancing,
4585 onClick: function onClick() {
4586 return enhance().then(function (_ref3) {
4587 var result = _ref3.result;
4588 return setPrompt(result);
4589 });
4590 }
4591 }), /*#__PURE__*/_react.default.createElement(GenerateButton, {
4592 disabled: isGenerateDisabled
4593 }));
4594 });
4595 PromptForm.propTypes = {
4596 isActive: _propTypes.default.bool,
4597 onAttach: _propTypes.default.func,
4598 onDetach: _propTypes.default.func,
4599 isLoading: _propTypes.default.bool,
4600 showActions: _propTypes.default.bool,
4601 onSubmit: _propTypes.default.func.isRequired,
4602 onBack: _propTypes.default.func.isRequired,
4603 onEdit: _propTypes.default.func.isRequired,
4604 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
4605 shouldResetPrompt: _propTypes.default.bool
4606 };
4607 var _default = PromptForm;
4608 exports["default"] = _default;
4609
4610 /***/ }),
4611
4612 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js":
4613 /*!*******************************************************************************************!*\
4614 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js ***!
4615 \*******************************************************************************************/
4616 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4617
4618 "use strict";
4619
4620
4621 Object.defineProperty(exports, "__esModule", ({
4622 value: true
4623 }));
4624 exports["default"] = void 0;
4625 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4626 var ScreenshotContainer = (0, _ui.styled)(_ui.Box, {
4627 shouldForwardProp: function shouldForwardProp(prop) {
4628 return prop !== 'outlineOffset';
4629 }
4630 })(function (_ref) {
4631 var theme = _ref.theme,
4632 selected = _ref.selected,
4633 height = _ref.height,
4634 disabled = _ref.disabled,
4635 _ref$outlineOffset = _ref.outlineOffset,
4636 outlineOffset = _ref$outlineOffset === void 0 ? '0px' : _ref$outlineOffset;
4637 var outlineColor = selected ? theme.palette.text.primary : theme.palette.text.disabled;
4638 var outline = "2px solid ".concat(outlineColor);
4639 return {
4640 height: height,
4641 cursor: disabled ? 'default' : 'pointer',
4642 overflow: 'hidden',
4643 boxSizing: 'border-box',
4644 backgroundPosition: 'top center',
4645 backgroundSize: '100% auto',
4646 backgroundRepeat: 'no-repeat',
4647 backgroundColor: theme.palette.common.white,
4648 borderRadius: theme.shape.borderRadius * 0.5,
4649 outlineOffset: outlineOffset,
4650 outline: outline,
4651 opacity: disabled ? '0.4' : '1',
4652 transition: "all 50ms linear",
4653 '&:hover': disabled ? {} : {
4654 outlineColor: theme.palette.text.primary
4655 }
4656 };
4657 });
4658 var _default = ScreenshotContainer;
4659 exports["default"] = _default;
4660
4661 /***/ }),
4662
4663 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js":
4664 /*!*********************************************************************************************!*\
4665 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js ***!
4666 \*********************************************************************************************/
4667 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4668
4669 "use strict";
4670
4671
4672 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4673 Object.defineProperty(exports, "__esModule", ({
4674 value: true
4675 }));
4676 exports["default"] = ScreenshotUnavailable;
4677 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4678 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4679 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4680 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4681 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4682 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4683 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; }
4684 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; }
4685 function ScreenshotUnavailable(props) {
4686 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, (0, _extends2.default)({}, props, {
4687 sx: _objectSpread(_objectSpread({}, props.sx || {}), {}, {
4688 display: 'flex',
4689 alignItems: 'center',
4690 justifyContent: 'center',
4691 backgroundColor: 'background.paper',
4692 color: 'text.tertiary',
4693 fontStyle: 'italic',
4694 fontSize: '12px',
4695 paddingInline: 12,
4696 textAlign: 'center',
4697 lineHeight: 1.5
4698 })
4699 }), (0, _i18n.__)('Preview unavailable', 'elementor'));
4700 }
4701 ScreenshotUnavailable.propTypes = {
4702 sx: _propTypes.default.object
4703 };
4704
4705 /***/ }),
4706
4707 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js":
4708 /*!*********************************************************************************!*\
4709 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js ***!
4710 \*********************************************************************************/
4711 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4712
4713 "use strict";
4714
4715
4716 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4717 Object.defineProperty(exports, "__esModule", ({
4718 value: true
4719 }));
4720 exports["default"] = void 0;
4721 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4722 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4723 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4724 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4725 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4726 var _screenshotUnavailable = _interopRequireDefault(__webpack_require__(/*! ./screenshot-unavailable */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js"));
4727 var _templateBadge = _interopRequireDefault(__webpack_require__(/*! ./template-badge */ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js"));
4728 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; }
4729 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; }
4730 var SCREENSHOT_HEIGHT = '138px';
4731 var Screenshot = function Screenshot(_ref) {
4732 var url = _ref.url,
4733 type = _ref.type,
4734 _ref$isLoading = _ref.isLoading,
4735 isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
4736 _ref$isSelected = _ref.isSelected,
4737 isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
4738 isPlaceholder = _ref.isPlaceholder,
4739 disabled = _ref.disabled,
4740 onClick = _ref.onClick,
4741 _ref$sx = _ref.sx,
4742 sx = _ref$sx === void 0 ? {} : _ref$sx,
4743 outlineOffset = _ref.outlineOffset;
4744 if (isPlaceholder) {
4745 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4746 sx: _objectSpread({
4747 height: SCREENSHOT_HEIGHT
4748 }, sx)
4749 });
4750 }
4751 if (isLoading) {
4752 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
4753 width: "100%",
4754 animation: "wave",
4755 variant: "rounded",
4756 height: SCREENSHOT_HEIGHT,
4757 sx: sx
4758 });
4759 }
4760 if (!url) {
4761 return /*#__PURE__*/_react.default.createElement(_screenshotUnavailable.default, {
4762 selected: isSelected,
4763 disabled: disabled,
4764 sx: sx,
4765 onClick: onClick,
4766 height: SCREENSHOT_HEIGHT,
4767 outlineOffset: outlineOffset
4768 });
4769 }
4770 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, {
4771 selected: isSelected,
4772 disabled: disabled,
4773 sx: _objectSpread({
4774 backgroundImage: "url('".concat(url, "')")
4775 }, sx),
4776 onClick: onClick,
4777 height: SCREENSHOT_HEIGHT,
4778 outlineOffset: outlineOffset
4779 }, /*#__PURE__*/_react.default.createElement(_templateBadge.default, {
4780 type: type
4781 }));
4782 };
4783 Screenshot.propTypes = {
4784 isSelected: _propTypes.default.bool,
4785 isLoading: _propTypes.default.bool,
4786 isPlaceholder: _propTypes.default.bool,
4787 disabled: _propTypes.default.bool,
4788 onClick: _propTypes.default.func.isRequired,
4789 url: _propTypes.default.string,
4790 type: _propTypes.default.string,
4791 sx: _propTypes.default.object,
4792 outlineOffset: _propTypes.default.string
4793 };
4794 var _default = Screenshot;
4795 exports["default"] = _default;
4796
4797 /***/ }),
4798
4799 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js":
4800 /*!*************************************************************************************!*\
4801 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js ***!
4802 \*************************************************************************************/
4803 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4804
4805 "use strict";
4806
4807
4808 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4809 Object.defineProperty(exports, "__esModule", ({
4810 value: true
4811 }));
4812 exports["default"] = void 0;
4813 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4814 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4815 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4816 var _proTemplateIndicator = __webpack_require__(/*! ./pro-template-indicator */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js");
4817 var TemplateBadge = function TemplateBadge(props) {
4818 var _useConfig = (0, _config.useConfig)(),
4819 hasPro = _useConfig.hasPro;
4820 if ('Pro' === props.type && !hasPro) {
4821 return /*#__PURE__*/_react.default.createElement(_proTemplateIndicator.ProTemplateIndicator, null);
4822 }
4823 return null;
4824 };
4825 var _default = TemplateBadge;
4826 exports["default"] = _default;
4827 TemplateBadge.propTypes = {
4828 type: _propTypes.default.string
4829 };
4830
4831 /***/ }),
4832
4833 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js":
4834 /*!********************************************************************************************!*\
4835 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js ***!
4836 \********************************************************************************************/
4837 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4838
4839 "use strict";
4840
4841
4842 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4843 Object.defineProperty(exports, "__esModule", ({
4844 value: true
4845 }));
4846 exports["default"] = void 0;
4847 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4848 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4849 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4850 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4851 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4852 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4853 var _excluded = ["onClose", "onCancel", "title", "text"];
4854 var UnsavedChangesAlert = function UnsavedChangesAlert(_ref) {
4855 var onClose = _ref.onClose,
4856 onCancel = _ref.onCancel,
4857 title = _ref.title,
4858 text = _ref.text,
4859 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4860 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
4861 "aria-labelledby": "unsaved-changes-alert-title",
4862 "aria-describedby": "unsaved-changes-alert-description"
4863 }, props), /*#__PURE__*/_react.default.createElement(_ui.DialogTitle, {
4864 id: "unsaved-changes-alert-title"
4865 }, title), /*#__PURE__*/_react.default.createElement(_ui.DialogContent, null, /*#__PURE__*/_react.default.createElement(_ui.DialogContentText, {
4866 id: "unsaved-changes-alert-description"
4867 }, text)), /*#__PURE__*/_react.default.createElement(_ui.DialogActions, null, /*#__PURE__*/_react.default.createElement(_ui.Button, {
4868 onClick: onCancel,
4869 color: "secondary"
4870 }, (0, _i18n.__)('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
4871 onClick: onClose,
4872 color: "error",
4873 variant: "contained"
4874 }, (0, _i18n.__)('Yes, leave', 'elementor'))));
4875 };
4876 UnsavedChangesAlert.propTypes = {
4877 title: _propTypes.default.string,
4878 text: _propTypes.default.string,
4879 onCancel: _propTypes.default.func,
4880 onClose: _propTypes.default.func
4881 };
4882 var _default = UnsavedChangesAlert;
4883 exports["default"] = _default;
4884
4885 /***/ }),
4886
4887 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js":
4888 /*!**************************************************************************!*\
4889 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/config.js ***!
4890 \**************************************************************************/
4891 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4892
4893 "use strict";
4894
4895
4896 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4897 Object.defineProperty(exports, "__esModule", ({
4898 value: true
4899 }));
4900 exports.useConfig = exports["default"] = exports.MODE_VARIATION = exports.MODE_LAYOUT = exports.LAYOUT_APP_MODES = exports.ConfigProvider = void 0;
4901 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4902 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4903 var MODE_LAYOUT = 'layout';
4904 exports.MODE_LAYOUT = MODE_LAYOUT;
4905 var MODE_VARIATION = 'variation';
4906 exports.MODE_VARIATION = MODE_VARIATION;
4907 var LAYOUT_APP_MODES = [MODE_LAYOUT, MODE_VARIATION];
4908 exports.LAYOUT_APP_MODES = LAYOUT_APP_MODES;
4909 var ConfigContext = _react.default.createContext({});
4910 var useConfig = function useConfig() {
4911 return _react.default.useContext(ConfigContext);
4912 };
4913 exports.useConfig = useConfig;
4914 var ConfigProvider = function ConfigProvider(props) {
4915 return /*#__PURE__*/_react.default.createElement(ConfigContext.Provider, {
4916 value: {
4917 mode: props.mode,
4918 attachmentsTypes: props.attachmentsTypes,
4919 onClose: props.onClose,
4920 onConnect: props.onConnect,
4921 onData: props.onData,
4922 onInsert: props.onInsert,
4923 onSelect: props.onSelect,
4924 onGenerate: props.onGenerate,
4925 currentContext: props.currentContext,
4926 hasPro: props.hasPro
4927 }
4928 }, props.children);
4929 };
4930 exports.ConfigProvider = ConfigProvider;
4931 ConfigProvider.propTypes = {
4932 mode: _propTypes.default.oneOf(LAYOUT_APP_MODES).isRequired,
4933 children: _propTypes.default.node.isRequired,
4934 attachmentsTypes: _propTypes.default.object.isRequired,
4935 onClose: _propTypes.default.func.isRequired,
4936 onConnect: _propTypes.default.func.isRequired,
4937 onData: _propTypes.default.func.isRequired,
4938 onInsert: _propTypes.default.func.isRequired,
4939 onSelect: _propTypes.default.func.isRequired,
4940 onGenerate: _propTypes.default.func.isRequired,
4941 currentContext: _propTypes.default.object,
4942 hasPro: _propTypes.default.bool
4943 };
4944 var _default = ConfigContext;
4945 exports["default"] = _default;
4946
4947 /***/ }),
4948
4949 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js":
4950 /*!*********************************************************************************!*\
4951 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js ***!
4952 \*********************************************************************************/
4953 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4954
4955 "use strict";
4956
4957
4958 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4959 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4960 Object.defineProperty(exports, "__esModule", ({
4961 value: true
4962 }));
4963 exports.useRemoteConfig = exports.RemoteConfigProvider = exports.CONFIG_KEYS = void 0;
4964 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4965 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4966 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4967 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4968 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4969 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
4970 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); }
4971 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; }
4972 var RemoteConfigContext = _react.default.createContext({});
4973 var useRemoteConfig = function useRemoteConfig() {
4974 return _react.default.useContext(RemoteConfigContext);
4975 };
4976 exports.useRemoteConfig = useRemoteConfig;
4977 var CONFIG_KEYS = {
4978 WEB_BASED_BUILDER_URL: 'webBasedBuilderUrl',
4979 AUTH_TOKEN: 'jwt'
4980 };
4981 exports.CONFIG_KEYS = CONFIG_KEYS;
4982 var RemoteConfigProvider = function RemoteConfigProvider(props) {
4983 var _useState = (0, _react.useState)(false),
4984 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4985 isLoading = _useState2[0],
4986 setIsLoading = _useState2[1];
4987 var _useState3 = (0, _react.useState)(false),
4988 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
4989 isLoaded = _useState4[0],
4990 setIsLoaded = _useState4[1];
4991 var _useState5 = (0, _react.useState)(false),
4992 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
4993 isError = _useState6[0],
4994 setIsError = _useState6[1];
4995 var _useState7 = (0, _react.useState)({}),
4996 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
4997 remoteConfig = _useState8[0],
4998 setRemoteConfig = _useState8[1];
4999 var fetchData = /*#__PURE__*/function () {
5000 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5001 var result;
5002 return _regenerator.default.wrap(function _callee$(_context) {
5003 while (1) switch (_context.prev = _context.next) {
5004 case 0:
5005 setIsLoading(true);
5006 _context.prev = 1;
5007 _context.next = 4;
5008 return (0, _api.getRemoteConfig)().finally(function () {
5009 setIsLoaded(true);
5010 setIsLoading(false);
5011 });
5012 case 4:
5013 result = _context.sent;
5014 if (result.config) {
5015 _context.next = 7;
5016 break;
5017 }
5018 throw new Error('Invalid remote config');
5019 case 7:
5020 setRemoteConfig(result.config);
5021 _context.next = 15;
5022 break;
5023 case 10:
5024 _context.prev = 10;
5025 _context.t0 = _context["catch"](1);
5026 setIsError(true);
5027 setIsLoaded(true);
5028 setIsLoading(false);
5029 case 15:
5030 case "end":
5031 return _context.stop();
5032 }
5033 }, _callee, null, [[1, 10]]);
5034 }));
5035 return function fetchData() {
5036 return _ref.apply(this, arguments);
5037 };
5038 }();
5039 if (!isLoaded && !isLoading) {
5040 fetchData();
5041 }
5042 return /*#__PURE__*/_react.default.createElement(RemoteConfigContext.Provider, {
5043 value: {
5044 isLoading: isLoading,
5045 isLoaded: isLoaded,
5046 isError: isError,
5047 remoteConfig: remoteConfig
5048 }
5049 }, props.children);
5050 };
5051 exports.RemoteConfigProvider = RemoteConfigProvider;
5052 RemoteConfigProvider.propTypes = {
5053 children: _propTypes.default.node.isRequired,
5054 onError: _propTypes.default.func.isRequired
5055 };
5056
5057 /***/ }),
5058
5059 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js":
5060 /*!****************************************************************************************!*\
5061 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js ***!
5062 \****************************************************************************************/
5063 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5064
5065 "use strict";
5066
5067
5068 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5069 Object.defineProperty(exports, "__esModule", ({
5070 value: true
5071 }));
5072 exports.useAttachUrlService = void 0;
5073 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5074 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5075 var _react = __webpack_require__(/*! react */ "react");
5076 var _remoteConfig = __webpack_require__(/*! ../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
5077 var useAttachUrlService = function useAttachUrlService(args) {
5078 var _window$elementorComm, _window$elementorComm2;
5079 var _useState = (0, _react.useState)(args.targetUrl),
5080 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5081 currentUrl = _useState2[0],
5082 setCurrentUrl = _useState2[1];
5083 var theme = (0, _ui.useTheme)();
5084 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
5085 isLoaded = _useRemoteConfig.isLoaded,
5086 isError = _useRemoteConfig.isError,
5087 remoteConfig = _useRemoteConfig.remoteConfig;
5088 if (!isLoaded || isError || !remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]) {
5089 return {
5090 iframeSource: '',
5091 currentUrl: currentUrl,
5092 setCurrentUrl: setCurrentUrl
5093 };
5094 }
5095 var urlObject = new URL(remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]);
5096 urlObject.searchParams.append('colorScheme', theme.palette.mode);
5097 urlObject.searchParams.append('isRTL', 'rtl' === theme.direction ? 'true' : 'false');
5098 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);
5099 if (currentUrl) {
5100 urlObject.searchParams.append('url', currentUrl);
5101 }
5102 return {
5103 iframeSource: urlObject.toString(),
5104 currentUrl: currentUrl,
5105 setCurrentUrl: setCurrentUrl
5106 };
5107 };
5108 exports.useAttachUrlService = useAttachUrlService;
5109
5110 /***/ }),
5111
5112 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js":
5113 /*!***********************************************************************************!*\
5114 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js ***!
5115 \***********************************************************************************/
5116 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5117
5118 "use strict";
5119
5120
5121 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5122 Object.defineProperty(exports, "__esModule", ({
5123 value: true
5124 }));
5125 exports["default"] = void 0;
5126 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
5127 var _usePrompt = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
5128 var useLayoutPrompt = function useLayoutPrompt(type, initialValue) {
5129 return (0, _usePrompt.default)(function (requestBody, signal) {
5130 requestBody.variationType = type;
5131 return (0, _api.generateLayout)(requestBody, signal);
5132 }, initialValue);
5133 };
5134 var _default = useLayoutPrompt;
5135 exports["default"] = _default;
5136
5137 /***/ }),
5138
5139 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js":
5140 /*!********************************************************************************!*\
5141 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js ***!
5142 \********************************************************************************/
5143 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5144
5145 "use strict";
5146
5147
5148 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5149 Object.defineProperty(exports, "__esModule", ({
5150 value: true
5151 }));
5152 exports["default"] = void 0;
5153 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5154 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5155 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5156 var _react = __webpack_require__(/*! react */ "react");
5157 var _useLayoutPrompt = _interopRequireDefault(__webpack_require__(/*! ./use-layout-prompt */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js"));
5158 var ERROR_INITIAL_VALUE = '';
5159 var useScreenshot = function useScreenshot(type, onData) {
5160 var _useState = (0, _react.useState)(ERROR_INITIAL_VALUE),
5161 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5162 error = _useState2[0],
5163 setError = _useState2[1];
5164 var _useState3 = (0, _react.useState)(false),
5165 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5166 isLoading = _useState4[0],
5167 setIsLoading = _useState4[1];
5168 var layoutData = (0, _useLayoutPrompt.default)(type, null);
5169 var generate = function generate(requestBody, signal) {
5170 setIsLoading(true);
5171 setError(ERROR_INITIAL_VALUE);
5172 return layoutData.send(requestBody, signal).then( /*#__PURE__*/function () {
5173 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(data) {
5174 var createdScreenshot;
5175 return _regenerator.default.wrap(function _callee$(_context) {
5176 while (1) switch (_context.prev = _context.next) {
5177 case 0:
5178 _context.next = 2;
5179 return onData(data.result);
5180 case 2:
5181 createdScreenshot = _context.sent;
5182 createdScreenshot.sendUsageData = function () {
5183 return layoutData.sendUsageData(data);
5184 };
5185 createdScreenshot.baseTemplateId = data.baseTemplateId;
5186 createdScreenshot.type = data.type;
5187 return _context.abrupt("return", createdScreenshot);
5188 case 7:
5189 case "end":
5190 return _context.stop();
5191 }
5192 }, _callee);
5193 }));
5194 return function (_x) {
5195 return _ref.apply(this, arguments);
5196 };
5197 }()).catch(function (err) {
5198 setError(err.extra_data ? err : err.message || err);
5199 throw err;
5200 }).finally(function () {
5201 return setIsLoading(false);
5202 });
5203 };
5204 return {
5205 generate: generate,
5206 error: error,
5207 isLoading: isLoading
5208 };
5209 };
5210 var _default = useScreenshot;
5211 exports["default"] = _default;
5212
5213 /***/ }),
5214
5215 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js":
5216 /*!*********************************************************************************!*\
5217 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js ***!
5218 \*********************************************************************************/
5219 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5220
5221 "use strict";
5222
5223
5224 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5225 Object.defineProperty(exports, "__esModule", ({
5226 value: true
5227 }));
5228 exports["default"] = void 0;
5229 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5230 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5231 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5232 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5233 var _react = __webpack_require__(/*! react */ "react");
5234 var _useScreenshot = _interopRequireDefault(__webpack_require__(/*! ./use-screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js"));
5235 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5236 var _requestsIds = __webpack_require__(/*! ../../../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5237 var PENDING_VALUE = {
5238 isPending: true
5239 };
5240 var useScreenshots = function useScreenshots(_ref) {
5241 var onData = _ref.onData;
5242 var _useState = (0, _react.useState)([]),
5243 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5244 screenshots = _useState2[0],
5245 setScreenshots = _useState2[1];
5246
5247 /**
5248 * The ids for each request are:
5249 * - editorSessionId: a unique id for each editor opening
5250 * - sessionId: a unique id for each session. (open the AI builder)
5251 * - generateId: a unique id for each generate request. (prompt change)
5252 * - batchId: a unique id for each batch of generate requests. (generate, regenerate)
5253 * - requestId: a unique id for each generate request.
5254 */
5255
5256 var _useConfig = (0, _config.useConfig)(),
5257 currentContext = _useConfig.currentContext;
5258 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
5259 editorSessionId = _useRequestIds.editorSessionId,
5260 sessionId = _useRequestIds.sessionId,
5261 setRequest = _useRequestIds.setRequest,
5262 setBatch = _useRequestIds.setBatch,
5263 setGenerate = _useRequestIds.setGenerate;
5264 var generateIdRef = (0, _react.useRef)('');
5265 var batchId = setBatch();
5266 var screenshotsData = [(0, _useScreenshot.default)(0, onData), (0, _useScreenshot.default)(1, onData), (0, _useScreenshot.default)(2, onData)];
5267 var screenshotsGroupCount = screenshotsData.length;
5268 var error = screenshotsData.every(function (s) {
5269 return s === null || s === void 0 ? void 0 : s.error;
5270 }) ? screenshotsData[0].error : '';
5271 var isLoading = screenshotsData.some(function (s) {
5272 return s === null || s === void 0 ? void 0 : s.isLoading;
5273 });
5274 var abortController = (0, _react.useRef)(null);
5275 var abort = function abort() {
5276 var _abortController$curr;
5277 return (_abortController$curr = abortController.current) === null || _abortController$curr === void 0 ? void 0 : _abortController$curr.abort();
5278 };
5279 var createScreenshots = /*#__PURE__*/function () {
5280 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(prompt, attachments) {
5281 var onGenerate, onError, promises, results, isAllFailed;
5282 return _regenerator.default.wrap(function _callee$(_context) {
5283 while (1) switch (_context.prev = _context.next) {
5284 case 0:
5285 abortController.current = new AbortController();
5286 onGenerate = function onGenerate(screenshot) {
5287 setScreenshots(function (prev) {
5288 var updatedData = (0, _toConsumableArray2.default)(prev);
5289 var pendingIndex = updatedData.indexOf(PENDING_VALUE);
5290 updatedData[pendingIndex] = screenshot;
5291 return updatedData;
5292 });
5293 return true;
5294 };
5295 onError = function onError() {
5296 setScreenshots(function (prev) {
5297 var updatedData = (0, _toConsumableArray2.default)(prev);
5298 var pendingIndex = updatedData.lastIndexOf(PENDING_VALUE);
5299 updatedData[pendingIndex] = {
5300 isError: true
5301 };
5302 return updatedData;
5303 });
5304 return false;
5305 };
5306 promises = screenshotsData.map(function (_ref3) {
5307 var generate = _ref3.generate;
5308 var prevGeneratedIds = screenshots.map(function (screenshot) {
5309 return screenshot.baseTemplateId || '';
5310 });
5311 var requestBody = {
5312 prompt: prompt,
5313 prevGeneratedIds: prevGeneratedIds,
5314 currentContext: currentContext,
5315 ids: {
5316 editorSessionId: editorSessionId.current,
5317 sessionId: sessionId.current,
5318 generateId: generateIdRef.current,
5319 batchId: batchId.current,
5320 requestId: setRequest().current
5321 },
5322 attachments: attachments.map(function (_ref4) {
5323 var type = _ref4.type,
5324 content = _ref4.content,
5325 label = _ref4.label,
5326 source = _ref4.source;
5327 // Send only the data that is needed for the generation.
5328 return {
5329 type: type,
5330 content: content,
5331 label: label,
5332 source: source
5333 };
5334 })
5335 };
5336 return generate(requestBody, abortController.current.signal).then(onGenerate).catch(onError);
5337 });
5338 _context.next = 6;
5339 return Promise.all(promises);
5340 case 6:
5341 results = _context.sent;
5342 isAllFailed = results.every(function (value) {
5343 return false === value;
5344 });
5345 if (isAllFailed) {
5346 setScreenshots(function (prev) {
5347 var updatedData = (0, _toConsumableArray2.default)(prev);
5348 updatedData.splice(screenshotsGroupCount * -1);
5349 return updatedData;
5350 });
5351 }
5352 case 9:
5353 case "end":
5354 return _context.stop();
5355 }
5356 }, _callee);
5357 }));
5358 return function createScreenshots(_x, _x2) {
5359 return _ref2.apply(this, arguments);
5360 };
5361 }();
5362 var generate = function generate(prompt, attachments) {
5363 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5364 generateIdRef.current = setGenerate().current;
5365 setScreenshots(placeholders);
5366 createScreenshots(prompt, attachments);
5367 };
5368 var regenerate = function regenerate(prompt, attachments) {
5369 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5370 setScreenshots(function (prev) {
5371 return [].concat((0, _toConsumableArray2.default)(prev), (0, _toConsumableArray2.default)(placeholders));
5372 });
5373 createScreenshots(prompt, attachments);
5374 };
5375 return {
5376 generate: generate,
5377 regenerate: regenerate,
5378 screenshots: screenshots,
5379 isLoading: isLoading,
5380 error: error,
5381 abort: abort
5382 };
5383 };
5384 var _default = useScreenshots;
5385 exports["default"] = _default;
5386
5387 /***/ }),
5388
5389 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js":
5390 /*!****************************************************************************!*\
5391 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js ***!
5392 \****************************************************************************/
5393 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5394
5395 "use strict";
5396
5397
5398 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5399 Object.defineProperty(exports, "__esModule", ({
5400 value: true
5401 }));
5402 exports["default"] = exports.SCREENSHOTS_PER_PAGE = exports.MAX_PAGES = void 0;
5403 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5404 var _react = __webpack_require__(/*! react */ "react");
5405 var SCREENSHOTS_PER_PAGE = 3;
5406 exports.SCREENSHOTS_PER_PAGE = SCREENSHOTS_PER_PAGE;
5407 var MAX_PAGES = 5;
5408 exports.MAX_PAGES = MAX_PAGES;
5409 var useSlider = function useSlider() {
5410 var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
5411 _ref$slidesCount = _ref.slidesCount,
5412 slidesCount = _ref$slidesCount === void 0 ? 0 : _ref$slidesCount,
5413 _ref$slidesPerPage = _ref.slidesPerPage,
5414 slidesPerPage = _ref$slidesPerPage === void 0 ? SCREENSHOTS_PER_PAGE : _ref$slidesPerPage,
5415 _ref$gapPercentage = _ref.gapPercentage,
5416 gapPercentage = _ref$gapPercentage === void 0 ? 2 : _ref$gapPercentage;
5417 var _useState = (0, _react.useState)(1),
5418 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5419 currentPage = _useState2[0],
5420 setCurrentPage = _useState2[1];
5421 var gapsCount = slidesPerPage - 1;
5422 var slideWidthPercentage = (100 - gapPercentage * gapsCount) / slidesPerPage;
5423 var offsetXPercentage = (slideWidthPercentage + gapPercentage) * slidesPerPage * (currentPage - 1) * -1;
5424 var pagesCount = Math.ceil(slidesCount / slidesPerPage);
5425 (0, _react.useEffect)(function () {
5426 // In cases when the slidesCount value was reduced, we need to navigate to the last page.
5427 if (currentPage > 1 && currentPage > pagesCount) {
5428 setCurrentPage(pagesCount);
5429 }
5430 }, [pagesCount]);
5431 return {
5432 currentPage: currentPage,
5433 setCurrentPage: setCurrentPage,
5434 pagesCount: pagesCount,
5435 slidesPerPage: slidesPerPage,
5436 gapPercentage: gapPercentage,
5437 offsetXPercentage: offsetXPercentage,
5438 slideWidthPercentage: slideWidthPercentage
5439 };
5440 };
5441 var _default = useSlider;
5442 exports["default"] = _default;
5443
5444 /***/ }),
5445
5446 /***/ "../modules/ai/assets/js/editor/pages/form-layout/index.js":
5447 /*!*****************************************************************!*\
5448 !*** ../modules/ai/assets/js/editor/pages/form-layout/index.js ***!
5449 \*****************************************************************/
5450 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5451
5452 "use strict";
5453
5454
5455 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5456 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5457 Object.defineProperty(exports, "__esModule", ({
5458 value: true
5459 }));
5460 exports["default"] = void 0;
5461 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5462 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5463 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5464 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5465 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5466 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5467 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5468 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5469 var _promptErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../../components/prompt-error-message */ "../modules/ai/assets/js/editor/components/prompt-error-message.js"));
5470 var _unsavedChangesAlert = _interopRequireDefault(__webpack_require__(/*! ./components/unsaved-changes-alert */ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js"));
5471 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
5472 var _promptForm = _interopRequireDefault(__webpack_require__(/*! ./components/prompt-form */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js"));
5473 var _refreshIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/refresh-icon */ "../modules/ai/assets/js/editor/icons/refresh-icon.js"));
5474 var _screenshot = _interopRequireDefault(__webpack_require__(/*! ./components/screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js"));
5475 var _useScreenshots2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-screenshots */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js"));
5476 var _useSlider2 = _interopRequireWildcard(__webpack_require__(/*! ./hooks/use-slider */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js"));
5477 var _minimizeDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/minimize-diagonal-icon */ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js"));
5478 var _expandDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/expand-diagonal-icon */ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js"));
5479 var _config = __webpack_require__(/*! ./context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5480 var _attachment = __webpack_require__(/*! ../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
5481 var _promptPowerNotice = __webpack_require__(/*! ./components/attachments/prompt-power-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js");
5482 var _proWidgetsNotice = __webpack_require__(/*! ./components/pro-widgets-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js");
5483 var _attachments = __webpack_require__(/*! ./components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
5484 var _attachDialog = _interopRequireDefault(__webpack_require__(/*! ./components/attachments/attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js"));
5485 var _isURL = _interopRequireDefault(__webpack_require__(/*! validator/lib/isURL */ "../node_modules/validator/lib/isURL.js"));
5486 var _voicePromotionAlert = __webpack_require__(/*! ../../components/voice-promotion-alert */ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js");
5487 var _excluded = ["children"];
5488 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); }
5489 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; }
5490 var DirectionalMinimizeDiagonalIcon = (0, _ui.withDirection)(_minimizeDiagonalIcon.default);
5491 var DirectionalExpandDiagonalIcon = (0, _ui.withDirection)(_expandDiagonalIcon.default);
5492
5493 /**
5494 * @typedef {Object} Attachment
5495 * @property {('json')} type - The type of the attachment, currently only `json` is supported.
5496 * @property {string} previewHTML - HTML content as a string, representing a preview.
5497 * @property {string} content - Actual content of the attachment as a string.
5498 * @property {string} label - Label for the attachment.
5499 */
5500
5501 var RegenerateButton = function RegenerateButton(props) {
5502 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5503 size: "small",
5504 color: "secondary",
5505 startIcon: /*#__PURE__*/_react.default.createElement(_refreshIcon.default, null)
5506 }, props), (0, _i18n.__)('Regenerate', 'elementor'));
5507 };
5508 var UseLayoutButton = function UseLayoutButton(props) {
5509 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5510 size: "small",
5511 variant: "contained"
5512 }, props), (0, _i18n.__)('Use Layout', 'elementor'));
5513 };
5514 UseLayoutButton.propTypes = {
5515 sx: _propTypes.default.object
5516 };
5517 var isRegenerateButtonDisabled = function isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive) {
5518 if (isLoading || isPromptFormActive) {
5519 return true;
5520 }
5521 return screenshots.length >= _useSlider2.SCREENSHOTS_PER_PAGE * _useSlider2.MAX_PAGES;
5522 };
5523 var FormLayout = function FormLayout(_ref) {
5524 var _screenshots$selected, _screenshots$2;
5525 var _ref$DialogHeaderProp = _ref.DialogHeaderProps,
5526 DialogHeaderProps = _ref$DialogHeaderProp === void 0 ? {} : _ref$DialogHeaderProp,
5527 _ref$DialogContentPro = _ref.DialogContentProps,
5528 DialogContentProps = _ref$DialogContentPro === void 0 ? {} : _ref$DialogContentPro,
5529 initialAttachments = _ref.attachments;
5530 var _useConfig = (0, _config.useConfig)(),
5531 attachmentsTypes = _useConfig.attachmentsTypes,
5532 onData = _useConfig.onData,
5533 onInsert = _useConfig.onInsert,
5534 onSelect = _useConfig.onSelect,
5535 onClose = _useConfig.onClose,
5536 onGenerate = _useConfig.onGenerate,
5537 hasPro = _useConfig.hasPro;
5538 var _useScreenshots = (0, _useScreenshots2.default)({
5539 onData: onData
5540 }),
5541 screenshots = _useScreenshots.screenshots,
5542 generate = _useScreenshots.generate,
5543 regenerate = _useScreenshots.regenerate,
5544 isLoading = _useScreenshots.isLoading,
5545 error = _useScreenshots.error,
5546 abort = _useScreenshots.abort;
5547 var screenshotOutlineOffset = '2px';
5548 var _useSlider = (0, _useSlider2.default)({
5549 slidesCount: screenshots.length
5550 }),
5551 currentPage = _useSlider.currentPage,
5552 setCurrentPage = _useSlider.setCurrentPage,
5553 pagesCount = _useSlider.pagesCount,
5554 gapPercentage = _useSlider.gapPercentage,
5555 slidesPerPage = _useSlider.slidesPerPage,
5556 offsetXPercentage = _useSlider.offsetXPercentage,
5557 slideWidthPercentage = _useSlider.slideWidthPercentage;
5558 var _useState = (0, _react.useState)(-1),
5559 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5560 selectedScreenshotIndex = _useState2[0],
5561 setSelectedScreenshotIndex = _useState2[1];
5562 var _useState3 = (0, _react.useState)(false),
5563 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5564 showUnsavedChangesAlert = _useState4[0],
5565 setShowUnsavedChangesAlert = _useState4[1];
5566 var _useState5 = (0, _react.useState)(true),
5567 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
5568 isPromptEditable = _useState6[0],
5569 setIsPromptEditable = _useState6[1];
5570 var _useState7 = (0, _react.useState)([]),
5571 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
5572 attachments = _useState8[0],
5573 setAttachments = _useState8[1];
5574 var _useState9 = (0, _react.useState)(false),
5575 _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
5576 shouldRenderWebApp = _useState10[0],
5577 setShouldRenderWebApp = _useState10[1];
5578 var _useState11 = (0, _react.useState)(false),
5579 _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
5580 isMinimized = _useState12[0],
5581 setIsMinimized = _useState12[1];
5582 var lastRun = (0, _react.useRef)(function () {});
5583 var promptInputRef = (0, _react.useRef)(null);
5584 var selectedTemplate = (_screenshots$selected = screenshots[selectedScreenshotIndex]) === null || _screenshots$selected === void 0 ? void 0 : _screenshots$selected.template;
5585 var dialogContentChildren = DialogContentProps.children,
5586 dialogContentProps = (0, _objectWithoutProperties2.default)(DialogContentProps, _excluded);
5587
5588 // When there are no screenshots the prompt field should be editable.
5589 var shouldFallbackToEditPrompt = !!(error && 0 === screenshots.length);
5590 var isPromptFormActive = isPromptEditable || shouldFallbackToEditPrompt;
5591 var mayContainProWidgets = 0 === attachments.length || attachments.some(function (attachment) {
5592 return _attachments.ATTACHMENT_TYPE_URL === attachment.type;
5593 });
5594 var abortAndClose = function abortAndClose() {
5595 abort();
5596 onClose();
5597 };
5598 var onCloseIntent = function onCloseIntent() {
5599 var hasUnsavedChanges = promptInputRef.current.value.trim() !== '' || screenshots.length > 0;
5600 if (hasUnsavedChanges) {
5601 return setShowUnsavedChangesAlert(true);
5602 }
5603 abortAndClose();
5604 };
5605 var handleGenerate = function handleGenerate(event, prompt) {
5606 event.preventDefault();
5607 if ('' === prompt.trim() && 0 === attachments.length) {
5608 return;
5609 }
5610 if ((0, _isURL.default)(prompt)) {
5611 setShouldRenderWebApp(true);
5612 return;
5613 }
5614 onGenerate();
5615 lastRun.current = function () {
5616 setSelectedScreenshotIndex(-1);
5617 generate(prompt, attachments);
5618 };
5619 lastRun.current();
5620 setIsPromptEditable(false);
5621 setCurrentPage(1);
5622 };
5623 var handleRegenerate = function handleRegenerate() {
5624 lastRun.current = function () {
5625 regenerate(promptInputRef.current.value, attachments);
5626 // Changing the current page to the next page number.
5627 setCurrentPage(pagesCount + 1);
5628 };
5629 lastRun.current();
5630 };
5631 var applyTemplate = function applyTemplate() {
5632 onInsert(selectedTemplate);
5633 screenshots[selectedScreenshotIndex].sendUsageData();
5634 abortAndClose();
5635 };
5636 var handleScreenshotClick = function handleScreenshotClick(index, template) {
5637 return function () {
5638 if (isPromptFormActive) {
5639 return;
5640 }
5641 setSelectedScreenshotIndex(index);
5642 onSelect(template);
5643 };
5644 };
5645
5646 /**
5647 * @param {Attachment[]} items
5648 */
5649 var onAttach = function onAttach(items) {
5650 items.forEach(function (item) {
5651 if (!attachmentsTypes[item.type]) {
5652 throw new Error("Invalid attachment type: ".concat(item.type));
5653 }
5654 var typeConfig = attachmentsTypes[item.type];
5655 if (!item.previewHTML && typeConfig.previewGenerator) {
5656 typeConfig.previewGenerator(item.content).then(function (html) {
5657 item.previewHTML = html;
5658 setAttachments(function (prev) {
5659 // Replace the attachment with the updated one.
5660 return prev.map(function (attachment) {
5661 if (attachment.content === item.content) {
5662 return item;
5663 }
5664 return attachment;
5665 });
5666 });
5667 });
5668 }
5669 });
5670 setAttachments(items);
5671 setShouldRenderWebApp(false);
5672 setIsPromptEditable(true);
5673 };
5674 (0, _react.useEffect)(function () {
5675 var _screenshots$;
5676 var isFirstTemplateExist = (_screenshots$ = screenshots[0]) === null || _screenshots$ === void 0 ? void 0 : _screenshots$.template;
5677 if (isFirstTemplateExist) {
5678 onSelect(screenshots[0].template);
5679 setSelectedScreenshotIndex(0);
5680 }
5681 }, [(_screenshots$2 = screenshots[0]) === null || _screenshots$2 === void 0 ? void 0 : _screenshots$2.template]);
5682 (0, _react.useEffect)(function () {
5683 if (initialAttachments !== null && initialAttachments !== void 0 && initialAttachments.length) {
5684 onAttach(initialAttachments);
5685 }
5686 }, []);
5687 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
5688 onClose: onCloseIntent
5689 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, (0, _extends2.default)({
5690 onClose: onCloseIntent
5691 }, DialogHeaderProps), DialogHeaderProps.children, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5692 title: isMinimized ? (0, _i18n.__)('Expand', 'elementor') : (0, _i18n.__)('Minimize', 'elementor')
5693 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
5694 size: "small",
5695 "aria-label": "minimize",
5696 onClick: function onClick() {
5697 return setIsMinimized(function (prev) {
5698 return !prev;
5699 });
5700 }
5701 }, isMinimized ? /*#__PURE__*/_react.default.createElement(DirectionalExpandDiagonalIcon, null) : /*#__PURE__*/_react.default.createElement(DirectionalMinimizeDiagonalIcon, null)))), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, (0, _extends2.default)({
5702 dividers: true
5703 }, dialogContentProps), /*#__PURE__*/_react.default.createElement(_ui.Collapse, {
5704 in: !isMinimized
5705 }, dialogContentChildren && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5706 sx: {
5707 pt: 2,
5708 px: 2,
5709 pb: 0
5710 }
5711 }, 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, {
5712 sx: {
5713 pt: 2,
5714 px: 2,
5715 pb: 0
5716 }
5717 }, /*#__PURE__*/_react.default.createElement(_promptErrorMessage.default, {
5718 error: error,
5719 onRetry: lastRun.current
5720 })), showUnsavedChangesAlert && /*#__PURE__*/_react.default.createElement(_unsavedChangesAlert.default, {
5721 open: showUnsavedChangesAlert,
5722 title: (0, _i18n.__)('Leave Elementor AI?', 'elementor'),
5723 text: (0, _i18n.__)("Your progress will be deleted, and can't be recovered.", 'elementor'),
5724 onClose: abortAndClose,
5725 onCancel: function onCancel() {
5726 return setShowUnsavedChangesAlert(false);
5727 }
5728 }), shouldRenderWebApp && /*#__PURE__*/_react.default.createElement(_attachDialog.default, {
5729 type: _attachments.ATTACHMENT_TYPE_URL,
5730 url: promptInputRef.current.value,
5731 onAttach: onAttach,
5732 onClose: function onClose() {
5733 setShouldRenderWebApp(false);
5734 }
5735 }), /*#__PURE__*/_react.default.createElement(_promptForm.default, {
5736 shouldResetPrompt: shouldRenderWebApp,
5737 ref: promptInputRef,
5738 isActive: isPromptFormActive,
5739 isLoading: isLoading,
5740 showActions: screenshots.length > 0 || isLoading,
5741 attachmentsTypes: attachmentsTypes,
5742 attachments: attachments,
5743 onAttach: onAttach,
5744 onDetach: function onDetach(index) {
5745 setAttachments(function (prev) {
5746 var newAttachments = (0, _toConsumableArray2.default)(prev);
5747 newAttachments.splice(index, 1);
5748 return newAttachments;
5749 });
5750 setIsPromptEditable(true);
5751 },
5752 onSubmit: handleGenerate,
5753 onBack: function onBack() {
5754 return setIsPromptEditable(false);
5755 },
5756 onEdit: function onEdit() {
5757 return setIsPromptEditable(true);
5758 }
5759 }), (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, {
5760 sx: {
5761 p: 1.5
5762 }
5763 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5764 sx: {
5765 overflow: 'hidden',
5766 p: 0.5
5767 }
5768 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5769 sx: {
5770 display: 'flex',
5771 transition: 'all 0.4s ease',
5772 gap: "".concat(gapPercentage, "%"),
5773 transform: "translateX(".concat(offsetXPercentage, "%)")
5774 }
5775 }, screenshots.map(function (_ref2, index) {
5776 var screenshot = _ref2.screenshot,
5777 type = _ref2.type,
5778 template = _ref2.template,
5779 isError = _ref2.isError,
5780 isPending = _ref2.isPending;
5781 return /*#__PURE__*/_react.default.createElement(_screenshot.default, {
5782 key: index,
5783 url: screenshot,
5784 type: type,
5785 disabled: isPromptFormActive,
5786 isPlaceholder: isError,
5787 isLoading: isPending,
5788 isSelected: selectedScreenshotIndex === index,
5789 onClick: handleScreenshotClick(index, template),
5790 outlineOffset: screenshotOutlineOffset,
5791 sx: {
5792 flex: "0 0 ".concat(slideWidthPercentage, "%")
5793 }
5794 });
5795 }))), /*#__PURE__*/_react.default.createElement(_voicePromotionAlert.VoicePromotionAlert, {
5796 introductionKey: "ai-context-layout-promotion"
5797 })), screenshots.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5798 sx: {
5799 pt: 0,
5800 px: 2,
5801 pb: 2
5802 },
5803 display: "grid",
5804 gridTemplateColumns: "repeat(3, 1fr)",
5805 justifyItems: "center"
5806 }, /*#__PURE__*/_react.default.createElement(RegenerateButton, {
5807 onClick: handleRegenerate,
5808 disabled: isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive),
5809 sx: {
5810 justifySelf: 'start'
5811 }
5812 }), screenshots.length > slidesPerPage && /*#__PURE__*/_react.default.createElement(_ui.Pagination, {
5813 page: currentPage,
5814 count: pagesCount,
5815 disabled: isPromptFormActive,
5816 onChange: function onChange(_, page) {
5817 return setCurrentPage(page);
5818 }
5819 }), /*#__PURE__*/_react.default.createElement(UseLayoutButton, {
5820 onClick: applyTemplate,
5821 disabled: isPromptFormActive || -1 === selectedScreenshotIndex,
5822 sx: {
5823 justifySelf: 'end',
5824 gridColumn: 3
5825 }
5826 }))))));
5827 };
5828 FormLayout.propTypes = {
5829 DialogHeaderProps: _propTypes.default.object,
5830 DialogContentProps: _propTypes.default.object,
5831 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
5832 };
5833 var _default = FormLayout;
5834 exports["default"] = _default;
5835
5836 /***/ }),
5837
5838 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js":
5839 /*!************************************************************************************!*\
5840 !*** ../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js ***!
5841 \************************************************************************************/
5842 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5843
5844 "use strict";
5845
5846
5847 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5848 Object.defineProperty(exports, "__esModule", ({
5849 value: true
5850 }));
5851 exports["default"] = void 0;
5852 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5853 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5854 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5855 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5856 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5857 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5858 var _wandIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/wand-icon */ "../modules/ai/assets/js/editor/icons/wand-icon.js"));
5859 var _excluded = ["isLoading"];
5860 var StyledWandIcon = (0, _ui.withDirection)(_wandIcon.default);
5861 var EnhanceButton = function EnhanceButton(_ref) {
5862 var isLoading = _ref.isLoading,
5863 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
5864 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5865 title: (0, _i18n.__)('Enhance prompt', 'elementor')
5866 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5867 component: "span",
5868 sx: {
5869 cursor: props.disabled ? 'default' : 'pointer'
5870 }
5871 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, (0, _extends2.default)({
5872 size: "small",
5873 color: "secondary"
5874 }, props), isLoading ? /*#__PURE__*/_react.default.createElement(_ui.CircularProgress, {
5875 color: "secondary",
5876 size: 20
5877 }) : /*#__PURE__*/_react.default.createElement(StyledWandIcon, {
5878 fontSize: "small"
5879 }))));
5880 };
5881 EnhanceButton.propTypes = {
5882 disabled: _propTypes.default.bool,
5883 isLoading: _propTypes.default.bool
5884 };
5885 var _default = EnhanceButton;
5886 exports["default"] = _default;
5887
5888 /***/ }),
5889
5890 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js":
5891 /*!*************************************************************************************!*\
5892 !*** ../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js ***!
5893 \*************************************************************************************/
5894 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5895
5896 "use strict";
5897
5898
5899 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5900 Object.defineProperty(exports, "__esModule", ({
5901 value: true
5902 }));
5903 exports["default"] = void 0;
5904 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5905 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5906 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5907 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5908 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5909 var GenerateSubmit = function GenerateSubmit(props) {
5910 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5911 fullWidth: true,
5912 size: "medium",
5913 type: "submit",
5914 variant: "contained"
5915 }, props), props.children || (0, _i18n.__)('Generate', 'elementor'));
5916 };
5917 GenerateSubmit.propTypes = {
5918 children: _propTypes.default.node
5919 };
5920 var _default = GenerateSubmit;
5921 exports["default"] = _default;
5922
5923 /***/ }),
5924
5925 /***/ "../modules/ai/assets/js/editor/pages/get-started/index.js":
5926 /*!*****************************************************************!*\
5927 !*** ../modules/ai/assets/js/editor/pages/get-started/index.js ***!
5928 \*****************************************************************/
5929 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5930
5931 "use strict";
5932
5933
5934 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5935 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5936 Object.defineProperty(exports, "__esModule", ({
5937 value: true
5938 }));
5939 exports["default"] = void 0;
5940 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5941 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5942 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5943 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5944 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5945 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5946 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5947 var _api = __webpack_require__(/*! ../../api */ "../modules/ai/assets/js/editor/api/index.js");
5948 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
5949 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); }
5950 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; }
5951 var GetStarted = function GetStarted(_ref) {
5952 var onSuccess = _ref.onSuccess;
5953 var _useState = (0, _react.useState)(false),
5954 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5955 isTermsChecked = _useState2[0],
5956 setIsTermsChecked = _useState2[1];
5957 var onGetStartedClick = /*#__PURE__*/function () {
5958 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5959 return _regenerator.default.wrap(function _callee$(_context) {
5960 while (1) switch (_context.prev = _context.next) {
5961 case 0:
5962 _context.next = 2;
5963 return (0, _api.setGetStarted)();
5964 case 2:
5965 onSuccess();
5966 case 3:
5967 case "end":
5968 return _context.stop();
5969 }
5970 }, _callee);
5971 }));
5972 return function onGetStartedClick() {
5973 return _ref2.apply(this, arguments);
5974 };
5975 }();
5976 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5977 alignItems: "center",
5978 gap: 1.5
5979 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
5980 sx: {
5981 color: 'text.primary',
5982 fontSize: '60px',
5983 mb: 1
5984 }
5985 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5986 variant: "h4",
5987 sx: {
5988 color: 'text.primary'
5989 }
5990 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5991 variant: "body2"
5992 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5993 direction: "row",
5994 gap: 1.5,
5995 alignItems: "flex-start"
5996 }, /*#__PURE__*/_react.default.createElement(_ui.Checkbox, {
5997 id: "e-ai-terms-approval",
5998 color: "secondary",
5999 sx: {
6000 p: 0
6001 },
6002 onChange: function onChange() {
6003 return setIsTermsChecked(function (prevState) {
6004 return !prevState;
6005 });
6006 }
6007 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6008 variant: "caption",
6009 sx: {
6010 maxWidth: 520
6011 },
6012 component: "label",
6013 htmlFor: "e-ai-terms-approval"
6014 }, (0, _i18n.__)('I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
6015 href: "https://go.elementor.com/ai-terms/",
6016 target: "_blank",
6017 color: "info.main"
6018 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
6019 href: "https://go.elementor.com/ai-privacy-policy/",
6020 target: "_blank",
6021 color: "info.main"
6022 }, (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, {
6023 disabled: !isTermsChecked,
6024 variant: "contained",
6025 onClick: onGetStartedClick,
6026 sx: {
6027 mt: 1,
6028 '&:hover': {
6029 color: 'primary.contrastText'
6030 }
6031 }
6032 }, (0, _i18n.__)('Get Started', 'elementor')));
6033 };
6034 GetStarted.propTypes = {
6035 onSuccess: _propTypes.default.func.isRequired
6036 };
6037 var _default = GetStarted;
6038 exports["default"] = _default;
6039
6040 /***/ }),
6041
6042 /***/ "../modules/ai/assets/js/editor/types/attachment.js":
6043 /*!**********************************************************!*\
6044 !*** ../modules/ai/assets/js/editor/types/attachment.js ***!
6045 \**********************************************************/
6046 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6047
6048 "use strict";
6049
6050
6051 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6052 Object.defineProperty(exports, "__esModule", ({
6053 value: true
6054 }));
6055 exports.AttachmentsTypesPropType = exports.AttachmentPropType = void 0;
6056 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
6057 var AttachmentPropType = _propTypes.default.shape({
6058 type: _propTypes.default.string,
6059 previewHTML: _propTypes.default.string,
6060 content: _propTypes.default.string,
6061 label: _propTypes.default.string,
6062 source: _propTypes.default.string
6063 });
6064 exports.AttachmentPropType = AttachmentPropType;
6065 var AttachmentsTypesPropType = _propTypes.default.shape({
6066 type: _propTypes.default.shape({
6067 promptPlaceholder: _propTypes.default.string,
6068 promptSuggestions: _propTypes.default.arrayOf(_propTypes.default.shape({
6069 text: _propTypes.default.string.isRequired
6070 })),
6071 previewGenerator: _propTypes.default.func
6072 })
6073 });
6074 exports.AttachmentsTypesPropType = AttachmentsTypesPropType;
6075
6076 /***/ }),
6077
6078 /***/ "../modules/ai/assets/js/editor/utils/editor-integration.js":
6079 /*!******************************************************************!*\
6080 !*** ../modules/ai/assets/js/editor/utils/editor-integration.js ***!
6081 \******************************************************************/
6082 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6083
6084 "use strict";
6085
6086
6087 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6088 Object.defineProperty(exports, "__esModule", ({
6089 value: true
6090 }));
6091 exports.renderLayoutApp = exports.openPanel = exports.onConnect = exports.importToEditor = exports.getUiConfig = exports.closePanel = void 0;
6092 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
6093 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6094 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6095 var _react2 = _interopRequireDefault(__webpack_require__(/*! elementor-utils/react */ "../assets/dev/js/utils/react.js"));
6096 var _previewContainer = __webpack_require__(/*! ./preview-container */ "../modules/ai/assets/js/editor/utils/preview-container.js");
6097 var _layoutApp = _interopRequireDefault(__webpack_require__(/*! ../layout-app */ "../modules/ai/assets/js/editor/layout-app.js"));
6098 var _screenshot = __webpack_require__(/*! ./screenshot */ "../modules/ai/assets/js/editor/utils/screenshot.js");
6099 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6100 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
6101 var _layoutAppWrapper = _interopRequireDefault(__webpack_require__(/*! ../layout-app-wrapper */ "../modules/ai/assets/js/editor/layout-app-wrapper.js"));
6102 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6103 var closePanel = function closePanel() {
6104 $e.run('panel/close');
6105 $e.components.get('panel').blockUserInteractions();
6106 };
6107 exports.closePanel = closePanel;
6108 var openPanel = function openPanel() {
6109 $e.run('panel/open');
6110 $e.components.get('panel').unblockUserInteractions();
6111 };
6112 exports.openPanel = openPanel;
6113 var onConnect = function onConnect(data) {
6114 elementorCommon.config.library_connect.is_connected = true;
6115 elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0;
6116 elementorCommon.config.library_connect.current_access_tier = data.access_tier;
6117 };
6118 exports.onConnect = onConnect;
6119 var getUiConfig = function getUiConfig() {
6120 var _elementor, _elementor$getPrefere;
6121 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';
6122 var isRTL = elementorCommon.config.isRTL;
6123 return {
6124 colorScheme: colorScheme,
6125 isRTL: isRTL
6126 };
6127 };
6128 exports.getUiConfig = getUiConfig;
6129 var VARIATIONS_PROMPTS = [{
6130 text: (0, _i18n.__)('Minimalist design with bold typography about', 'elementor')
6131 }, {
6132 text: (0, _i18n.__)('Elegant style with serif fonts discussing', 'elementor')
6133 }, {
6134 text: (0, _i18n.__)('Retro vibe with muted colors and classic fonts about', 'elementor')
6135 }, {
6136 text: (0, _i18n.__)('Futuristic design with neon accents about', 'elementor')
6137 }, {
6138 text: (0, _i18n.__)('Professional look with clean lines for', 'elementor')
6139 }, {
6140 text: (0, _i18n.__)('Earthy tones and organic shapes featuring', 'elementor')
6141 }, {
6142 text: (0, _i18n.__)('Luxurious theme with rich colors discussing', 'elementor')
6143 }, {
6144 text: (0, _i18n.__)('Tech-inspired style with modern fonts about', 'elementor')
6145 }, {
6146 text: (0, _i18n.__)('Warm hues with comforting visuals about', 'elementor')
6147 }];
6148 var PROMPT_PLACEHOLDER = (0, _i18n.__)("Press '/' for suggestions or describe the changes you want to apply (optional)...", 'elementor');
6149 var renderLayoutApp = function renderLayoutApp() {
6150 var _options$onRenderApp;
6151 var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
6152 parentContainer: null,
6153 mode: '',
6154 at: null,
6155 onClose: null,
6156 onGenerate: null,
6157 onInsert: null,
6158 onRenderApp: null,
6159 onSelect: null,
6160 attachments: []
6161 };
6162 closePanel();
6163 var previewContainer = (0, _previewContainer.createPreviewContainer)(options.parentContainer, {
6164 // Create the container at the "drag widget here" area position.
6165 at: options.at
6166 });
6167 var _getUiConfig = getUiConfig(),
6168 colorScheme = _getUiConfig.colorScheme,
6169 isRTL = _getUiConfig.isRTL;
6170 var rootElement = document.createElement('div');
6171 document.body.append(rootElement);
6172 var bodyStyle = window.elementorFrontend.elements.$window[0].getComputedStyle(window.elementorFrontend.elements.$body[0]);
6173 var _ReactUtils$render = _react2.default.render( /*#__PURE__*/_react.default.createElement(_layoutAppWrapper.default, {
6174 isRTL: isRTL,
6175 colorScheme: colorScheme
6176 }, /*#__PURE__*/_react.default.createElement(_layoutApp.default, {
6177 mode: options.mode,
6178 currentContext: {
6179 body: {
6180 backgroundColor: bodyStyle.backgroundColor,
6181 backgroundImage: bodyStyle.backgroundImage
6182 }
6183 },
6184 attachmentsTypes: {
6185 json: {
6186 promptSuggestions: VARIATIONS_PROMPTS,
6187 promptPlaceholder: PROMPT_PLACEHOLDER,
6188 previewGenerator: function () {
6189 var _previewGenerator = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(json) {
6190 var screenshot;
6191 return _regenerator.default.wrap(function _callee$(_context) {
6192 while (1) switch (_context.prev = _context.next) {
6193 case 0:
6194 _context.next = 2;
6195 return (0, _screenshot.takeScreenshot)(json);
6196 case 2:
6197 screenshot = _context.sent;
6198 return _context.abrupt("return", "<img src=\"".concat(screenshot, "\" />"));
6199 case 4:
6200 case "end":
6201 return _context.stop();
6202 }
6203 }, _callee);
6204 }));
6205 function previewGenerator(_x) {
6206 return _previewGenerator.apply(this, arguments);
6207 }
6208 return previewGenerator;
6209 }()
6210 },
6211 url: {
6212 promptPlaceholder: PROMPT_PLACEHOLDER,
6213 promptSuggestions: VARIATIONS_PROMPTS
6214 }
6215 },
6216 attachments: options.attachments || [],
6217 onClose: function onClose() {
6218 var _options$onClose;
6219 previewContainer.destroy();
6220 (_options$onClose = options.onClose) === null || _options$onClose === void 0 ? void 0 : _options$onClose.call(options);
6221 unmount();
6222 rootElement.remove();
6223 openPanel();
6224 },
6225 onConnect: onConnect,
6226 onGenerate: function onGenerate() {
6227 var _options$onGenerate;
6228 (_options$onGenerate = options.onGenerate) === null || _options$onGenerate === void 0 ? void 0 : _options$onGenerate.call(options, {
6229 previewContainer: previewContainer
6230 });
6231 },
6232 onData: /*#__PURE__*/function () {
6233 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(template) {
6234 var screenshot;
6235 return _regenerator.default.wrap(function _callee2$(_context2) {
6236 while (1) switch (_context2.prev = _context2.next) {
6237 case 0:
6238 _context2.next = 2;
6239 return (0, _screenshot.takeScreenshot)(template);
6240 case 2:
6241 screenshot = _context2.sent;
6242 return _context2.abrupt("return", {
6243 screenshot: screenshot,
6244 template: template
6245 });
6246 case 4:
6247 case "end":
6248 return _context2.stop();
6249 }
6250 }, _callee2);
6251 }));
6252 return function (_x2) {
6253 return _ref.apply(this, arguments);
6254 };
6255 }(),
6256 onSelect: function onSelect(template) {
6257 var _options$onSelect;
6258 (_options$onSelect = options.onSelect) === null || _options$onSelect === void 0 ? void 0 : _options$onSelect.call(options);
6259 previewContainer.setContent(template);
6260 },
6261 onInsert: options.onInsert,
6262 hasPro: elementor.helpers.hasPro()
6263 })), rootElement),
6264 unmount = _ReactUtils$render.unmount;
6265 (_options$onRenderApp = options.onRenderApp) === null || _options$onRenderApp === void 0 ? void 0 : _options$onRenderApp.call(options, {
6266 previewContainer: previewContainer
6267 });
6268 };
6269 exports.renderLayoutApp = renderLayoutApp;
6270 var importToEditor = function importToEditor(_ref2) {
6271 var parentContainer = _ref2.parentContainer,
6272 at = _ref2.at,
6273 template = _ref2.template,
6274 historyTitle = _ref2.historyTitle,
6275 _ref2$replace = _ref2.replace,
6276 replace = _ref2$replace === void 0 ? false : _ref2$replace;
6277 var endHistoryLog = (0, _history.startHistoryLog)({
6278 type: 'import',
6279 title: historyTitle
6280 });
6281 if (replace) {
6282 $e.run('document/elements/delete', {
6283 container: parentContainer.children.at(at)
6284 });
6285 }
6286 $e.run('document/elements/create', {
6287 container: parentContainer,
6288 model: (0, _requestsIds.generateIds)(template),
6289 options: {
6290 at: at,
6291 edit: true
6292 }
6293 });
6294 endHistoryLog();
6295 };
6296 exports.importToEditor = importToEditor;
6297
6298 /***/ }),
6299
6300 /***/ "../modules/ai/assets/js/editor/utils/history.js":
6301 /*!*******************************************************!*\
6302 !*** ../modules/ai/assets/js/editor/utils/history.js ***!
6303 \*******************************************************/
6304 /***/ ((__unused_webpack_module, exports) => {
6305
6306 "use strict";
6307
6308
6309 Object.defineProperty(exports, "__esModule", ({
6310 value: true
6311 }));
6312 exports.startHistoryLog = startHistoryLog;
6313 exports.toggleHistory = toggleHistory;
6314 function toggleHistory(isActive) {
6315 elementor.documents.getCurrent().history.setActive(isActive);
6316 }
6317
6318 /**
6319 * @param {Object} options
6320 * @param { 'add' | 'change' | 'disable' | 'duplicate' | 'enable' | 'import' | 'move' | 'paste' | 'paste_style' | 'remove' | 'reset_settings' | 'reset_style' | 'selected' } options.type
6321 * @param { string } options.title
6322 *
6323 * @return {*}
6324 */
6325 function startHistoryLog(_ref) {
6326 var type = _ref.type,
6327 title = _ref.title;
6328 var id = $e.internal('document/history/start-log', {
6329 type: type,
6330 title: title
6331 });
6332 return function () {
6333 return $e.internal('document/history/end-log', {
6334 id: id
6335 });
6336 };
6337 }
6338
6339 /***/ }),
6340
6341 /***/ "../modules/ai/assets/js/editor/utils/preview-container.js":
6342 /*!*****************************************************************!*\
6343 !*** ../modules/ai/assets/js/editor/utils/preview-container.js ***!
6344 \*****************************************************************/
6345 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6346
6347 "use strict";
6348
6349
6350 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6351 Object.defineProperty(exports, "__esModule", ({
6352 value: true
6353 }));
6354 exports.createPreviewContainer = createPreviewContainer;
6355 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
6356 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6357 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6358 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; }
6359 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; }
6360 /**
6361 * @typedef {import('elementor/assets/dev/js/editor/container/container')} Container
6362 */
6363
6364 var PREFIX = 'e-ai-preview-container';
6365 var CLASS_HIDDEN = PREFIX + '--hidden';
6366 var CLASS_IDLE = PREFIX + '--idle';
6367
6368 /**
6369 * @param {Container} parentContainer
6370 * @param {{}} containerOptions
6371 * @return {{init, setContent, reset, destroy}}
6372 */
6373
6374 function createPreviewContainer(parentContainer) {
6375 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6376 var createdContainers = new Map();
6377 var idleContainer = createIdleContainer(parentContainer, containerOptions);
6378 function init() {
6379 showContainer(idleContainer);
6380 }
6381 function getAllContainers() {
6382 return [].concat((0, _toConsumableArray2.default)(createdContainers.values()), [idleContainer]);
6383 }
6384 function reset() {
6385 deleteContainers((0, _toConsumableArray2.default)(createdContainers.values()));
6386 createdContainers.clear();
6387 showContainer(idleContainer);
6388 }
6389 function setContent(template) {
6390 if (!template) {
6391 return;
6392 }
6393 hideContainers(getAllContainers());
6394 if (!createdContainers.has(template)) {
6395 var newContainer = createContainer(parentContainer, template, containerOptions);
6396 createdContainers.set(template, newContainer);
6397 }
6398 showContainer(createdContainers.get(template));
6399 }
6400 function destroy() {
6401 deleteContainers(getAllContainers());
6402 createdContainers.clear();
6403 }
6404 return {
6405 init: init,
6406 reset: reset,
6407 setContent: setContent,
6408 destroy: destroy
6409 };
6410 }
6411
6412 /**
6413 * @param {Container} parentContainer
6414 * @param {{}} model
6415 * @param {{}} options
6416 * @return {*}
6417 */
6418 function createContainer(parentContainer, model) {
6419 var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6420 (0, _history.toggleHistory)(false);
6421 var container = $e.run('document/elements/create', {
6422 container: parentContainer,
6423 model: _objectSpread(_objectSpread({}, model), {}, {
6424 id: "".concat(PREFIX, "-").concat(elementorCommon.helpers.getUniqueId().toString())
6425 }),
6426 options: _objectSpread(_objectSpread({}, options), {}, {
6427 edit: false
6428 })
6429 });
6430 (0, _history.toggleHistory)(true);
6431 container.view.$el.addClass(CLASS_HIDDEN);
6432 return container;
6433 }
6434
6435 /**
6436 * @param {Container} parentContainer
6437 * @param {{}} containerOptions
6438 * @return {*}
6439 */
6440 function createIdleContainer(parentContainer) {
6441 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6442 // Create an empty container that'll be used of UI purposes.
6443 var container = createContainer(parentContainer, {
6444 elType: 'container'
6445 }, containerOptions);
6446 container.view.$el.addClass(CLASS_IDLE);
6447 return container;
6448 }
6449 function hideContainers(containers) {
6450 containers.forEach(function (container) {
6451 container.view.$el.addClass(CLASS_HIDDEN);
6452 });
6453 }
6454 function showContainer(container) {
6455 container.view.$el.removeClass(CLASS_HIDDEN);
6456
6457 // Delay the scroll to avoid UI jumps when toggling between containers.
6458 setTimeout(function () {
6459 container.view.$el[0].scrollIntoView({
6460 behavior: 'smooth',
6461 block: 'start'
6462 });
6463 });
6464 }
6465 function deleteContainers(containers) {
6466 (0, _history.toggleHistory)(false);
6467 $e.run('document/elements/delete', {
6468 containers: containers
6469 });
6470 (0, _history.toggleHistory)(true);
6471 }
6472
6473 /***/ }),
6474
6475 /***/ "../modules/ai/assets/js/editor/utils/screenshot.js":
6476 /*!**********************************************************!*\
6477 !*** ../modules/ai/assets/js/editor/utils/screenshot.js ***!
6478 \**********************************************************/
6479 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6480
6481 "use strict";
6482
6483
6484 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6485 Object.defineProperty(exports, "__esModule", ({
6486 value: true
6487 }));
6488 exports.takeScreenshot = void 0;
6489 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6490 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6491 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6492 var _htmlToImage = __webpack_require__(/*! html-to-image */ "../node_modules/html-to-image/es/index.js");
6493 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6494 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6495 var takeScreenshot = /*#__PURE__*/function () {
6496 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(template) {
6497 var hiddenWrapper, container, screenshot;
6498 return _regenerator.default.wrap(function _callee$(_context) {
6499 while (1) switch (_context.prev = _context.next) {
6500 case 0:
6501 if (template) {
6502 _context.next = 2;
6503 break;
6504 }
6505 return _context.abrupt("return", '');
6506 case 2:
6507 // Disable history so the Editor won't show our hidden container as a user action.
6508 (0, _history.toggleHistory)(false);
6509 hiddenWrapper = createHiddenWrapper();
6510 container = createContainer(template);
6511 wrapContainer(container, hiddenWrapper);
6512 elementor.getPreviewView().$childViewContainer[0].appendChild(hiddenWrapper);
6513
6514 // Wait for the container to render.
6515 _context.next = 9;
6516 return waitForContainer(container.id);
6517 case 9:
6518 if (!template.elements.length) {
6519 _context.next = 12;
6520 break;
6521 }
6522 _context.next = 12;
6523 return Promise.all(template.elements.map(function (child) {
6524 return waitForContainer(child.id);
6525 }));
6526 case 12:
6527 _context.prev = 12;
6528 _context.next = 15;
6529 return screenshotNode(container.view.$el[0]);
6530 case 15:
6531 screenshot = _context.sent;
6532 _context.next = 21;
6533 break;
6534 case 18:
6535 _context.prev = 18;
6536 _context.t0 = _context["catch"](12);
6537 // Return an empty image url if the screenshot failed.
6538 screenshot = '';
6539 case 21:
6540 deleteContainer(container);
6541 hiddenWrapper.remove();
6542 (0, _history.toggleHistory)(true);
6543 return _context.abrupt("return", screenshot);
6544 case 25:
6545 case "end":
6546 return _context.stop();
6547 }
6548 }, _callee, null, [[12, 18]]);
6549 }));
6550 return function takeScreenshot(_x) {
6551 return _ref.apply(this, arguments);
6552 };
6553 }();
6554 exports.takeScreenshot = takeScreenshot;
6555 function screenshotNode(node) {
6556 return toWebp(node, {
6557 quality: 0.01,
6558 // Transparent 1x1 pixel.
6559 imagePlaceholder: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII='
6560 });
6561 }
6562 function toWebp(_x2) {
6563 return _toWebp.apply(this, arguments);
6564 }
6565 function _toWebp() {
6566 _toWebp = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(node) {
6567 var _options$quality;
6568 var options,
6569 canvas,
6570 _args3 = arguments;
6571 return _regenerator.default.wrap(function _callee3$(_context3) {
6572 while (1) switch (_context3.prev = _context3.next) {
6573 case 0:
6574 options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
6575 _context3.next = 3;
6576 return (0, _htmlToImage.toCanvas)(node, options);
6577 case 3:
6578 canvas = _context3.sent;
6579 return _context3.abrupt("return", canvas.toDataURL('image/webp', (_options$quality = options.quality) !== null && _options$quality !== void 0 ? _options$quality : 1));
6580 case 5:
6581 case "end":
6582 return _context3.stop();
6583 }
6584 }, _callee3);
6585 }));
6586 return _toWebp.apply(this, arguments);
6587 }
6588 function createHiddenWrapper() {
6589 var wrapper = document.createElement('div');
6590 wrapper.style.position = 'fixed';
6591 wrapper.style.opacity = '0';
6592 wrapper.style.inset = '0';
6593 return wrapper;
6594 }
6595 function createContainer(template) {
6596 var model = (0, _requestsIds.generateIds)(template);
6597
6598 // Set a custom ID, so it can be used later on in the backend.
6599 model.id = "e-ai-screenshot-container-".concat(model.id);
6600 return $e.run('document/elements/create', {
6601 container: elementor.getPreviewContainer(),
6602 model: model,
6603 options: {
6604 edit: false
6605 }
6606 });
6607 }
6608 function deleteContainer(container) {
6609 return $e.run('document/elements/delete', {
6610 container: container
6611 });
6612 }
6613 function waitForContainer(id) {
6614 var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
6615 var timeoutPromise = sleep(timeout);
6616 var waitPromise = new Promise(function (resolve) {
6617 elementorFrontend.hooks.addAction('frontend/element_ready/global', /*#__PURE__*/function () {
6618 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2($element) {
6619 var images;
6620 return _regenerator.default.wrap(function _callee2$(_context2) {
6621 while (1) switch (_context2.prev = _context2.next) {
6622 case 0:
6623 if (!($element.data('id') === id)) {
6624 _context2.next = 5;
6625 break;
6626 }
6627 images = (0, _toConsumableArray2.default)($element[0].querySelectorAll('img')); // Wait for all images to load.
6628 _context2.next = 4;
6629 return Promise.all(images.map(waitForImage));
6630 case 4:
6631 resolve();
6632 case 5:
6633 case "end":
6634 return _context2.stop();
6635 }
6636 }, _callee2);
6637 }));
6638 return function (_x3) {
6639 return _ref2.apply(this, arguments);
6640 };
6641 }());
6642 });
6643 return Promise.any([timeoutPromise, waitPromise]);
6644 }
6645 function waitForImage(image) {
6646 if (image.complete) {
6647 return Promise.resolve();
6648 }
6649 return new Promise(function (resolve) {
6650 image.addEventListener('load', resolve);
6651 image.addEventListener('error', function () {
6652 // Remove the image to make sure it won't break the screenshot.
6653 image.remove();
6654 resolve();
6655 });
6656 });
6657 }
6658 function sleep(ms) {
6659 return new Promise(function (resolve) {
6660 return setTimeout(resolve, ms);
6661 });
6662 }
6663 function wrapContainer(container, wrapper) {
6664 var el = container.view.$el[0];
6665 el.parentNode.insertBefore(wrapper, el);
6666 wrapper.appendChild(el);
6667 }
6668
6669 /***/ }),
6670
6671 /***/ "../node_modules/clsx/dist/clsx.m.js":
6672 /*!*******************************************!*\
6673 !*** ../node_modules/clsx/dist/clsx.m.js ***!
6674 \*******************************************/
6675 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6676
6677 "use strict";
6678 __webpack_require__.r(__webpack_exports__);
6679 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6680 /* harmony export */ clsx: () => (/* binding */ clsx),
6681 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
6682 /* harmony export */ });
6683 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);
6684
6685 /***/ }),
6686
6687 /***/ "../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js":
6688 /*!***********************************************************************************!*\
6689 !*** ../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js ***!
6690 \***********************************************************************************/
6691 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6692
6693 "use strict";
6694
6695
6696 var reactIs = __webpack_require__(/*! react-is */ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js");
6697
6698 /**
6699 * Copyright 2015, Yahoo! Inc.
6700 * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
6701 */
6702 var REACT_STATICS = {
6703 childContextTypes: true,
6704 contextType: true,
6705 contextTypes: true,
6706 defaultProps: true,
6707 displayName: true,
6708 getDefaultProps: true,
6709 getDerivedStateFromError: true,
6710 getDerivedStateFromProps: true,
6711 mixins: true,
6712 propTypes: true,
6713 type: true
6714 };
6715 var KNOWN_STATICS = {
6716 name: true,
6717 length: true,
6718 prototype: true,
6719 caller: true,
6720 callee: true,
6721 arguments: true,
6722 arity: true
6723 };
6724 var FORWARD_REF_STATICS = {
6725 '$$typeof': true,
6726 render: true,
6727 defaultProps: true,
6728 displayName: true,
6729 propTypes: true
6730 };
6731 var MEMO_STATICS = {
6732 '$$typeof': true,
6733 compare: true,
6734 defaultProps: true,
6735 displayName: true,
6736 propTypes: true,
6737 type: true
6738 };
6739 var TYPE_STATICS = {};
6740 TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
6741 TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
6742
6743 function getStatics(component) {
6744 // React v16.11 and below
6745 if (reactIs.isMemo(component)) {
6746 return MEMO_STATICS;
6747 } // React v16.12 and above
6748
6749
6750 return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
6751 }
6752
6753 var defineProperty = Object.defineProperty;
6754 var getOwnPropertyNames = Object.getOwnPropertyNames;
6755 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
6756 var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
6757 var getPrototypeOf = Object.getPrototypeOf;
6758 var objectPrototype = Object.prototype;
6759 function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
6760 if (typeof sourceComponent !== 'string') {
6761 // don't hoist over string (html) components
6762 if (objectPrototype) {
6763 var inheritedComponent = getPrototypeOf(sourceComponent);
6764
6765 if (inheritedComponent && inheritedComponent !== objectPrototype) {
6766 hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
6767 }
6768 }
6769
6770 var keys = getOwnPropertyNames(sourceComponent);
6771
6772 if (getOwnPropertySymbols) {
6773 keys = keys.concat(getOwnPropertySymbols(sourceComponent));
6774 }
6775
6776 var targetStatics = getStatics(targetComponent);
6777 var sourceStatics = getStatics(sourceComponent);
6778
6779 for (var i = 0; i < keys.length; ++i) {
6780 var key = keys[i];
6781
6782 if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
6783 var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
6784
6785 try {
6786 // Avoid failures from read-only properties
6787 defineProperty(targetComponent, key, descriptor);
6788 } catch (e) {}
6789 }
6790 }
6791 }
6792
6793 return targetComponent;
6794 }
6795
6796 module.exports = hoistNonReactStatics;
6797
6798
6799 /***/ }),
6800
6801 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js":
6802 /*!*************************************************************************************************!*\
6803 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js ***!
6804 \*************************************************************************************************/
6805 /***/ ((__unused_webpack_module, exports) => {
6806
6807 "use strict";
6808 /** @license React v16.13.1
6809 * react-is.development.js
6810 *
6811 * Copyright (c) Facebook, Inc. and its affiliates.
6812 *
6813 * This source code is licensed under the MIT license found in the
6814 * LICENSE file in the root directory of this source tree.
6815 */
6816
6817
6818
6819
6820
6821 if (true) {
6822 (function() {
6823 'use strict';
6824
6825 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
6826 // nor polyfill, then a plain number is used for performance.
6827 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
6828 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
6829 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
6830 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
6831 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
6832 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
6833 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
6834 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
6835 // (unstable) APIs that have been removed. Can we remove the symbols?
6836
6837 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
6838 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
6839 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
6840 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
6841 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
6842 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
6843 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
6844 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
6845 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
6846 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
6847 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
6848
6849 function isValidElementType(type) {
6850 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
6851 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);
6852 }
6853
6854 function typeOf(object) {
6855 if (typeof object === 'object' && object !== null) {
6856 var $$typeof = object.$$typeof;
6857
6858 switch ($$typeof) {
6859 case REACT_ELEMENT_TYPE:
6860 var type = object.type;
6861
6862 switch (type) {
6863 case REACT_ASYNC_MODE_TYPE:
6864 case REACT_CONCURRENT_MODE_TYPE:
6865 case REACT_FRAGMENT_TYPE:
6866 case REACT_PROFILER_TYPE:
6867 case REACT_STRICT_MODE_TYPE:
6868 case REACT_SUSPENSE_TYPE:
6869 return type;
6870
6871 default:
6872 var $$typeofType = type && type.$$typeof;
6873
6874 switch ($$typeofType) {
6875 case REACT_CONTEXT_TYPE:
6876 case REACT_FORWARD_REF_TYPE:
6877 case REACT_LAZY_TYPE:
6878 case REACT_MEMO_TYPE:
6879 case REACT_PROVIDER_TYPE:
6880 return $$typeofType;
6881
6882 default:
6883 return $$typeof;
6884 }
6885
6886 }
6887
6888 case REACT_PORTAL_TYPE:
6889 return $$typeof;
6890 }
6891 }
6892
6893 return undefined;
6894 } // AsyncMode is deprecated along with isAsyncMode
6895
6896 var AsyncMode = REACT_ASYNC_MODE_TYPE;
6897 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
6898 var ContextConsumer = REACT_CONTEXT_TYPE;
6899 var ContextProvider = REACT_PROVIDER_TYPE;
6900 var Element = REACT_ELEMENT_TYPE;
6901 var ForwardRef = REACT_FORWARD_REF_TYPE;
6902 var Fragment = REACT_FRAGMENT_TYPE;
6903 var Lazy = REACT_LAZY_TYPE;
6904 var Memo = REACT_MEMO_TYPE;
6905 var Portal = REACT_PORTAL_TYPE;
6906 var Profiler = REACT_PROFILER_TYPE;
6907 var StrictMode = REACT_STRICT_MODE_TYPE;
6908 var Suspense = REACT_SUSPENSE_TYPE;
6909 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
6910
6911 function isAsyncMode(object) {
6912 {
6913 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
6914 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
6915
6916 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.');
6917 }
6918 }
6919
6920 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
6921 }
6922 function isConcurrentMode(object) {
6923 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
6924 }
6925 function isContextConsumer(object) {
6926 return typeOf(object) === REACT_CONTEXT_TYPE;
6927 }
6928 function isContextProvider(object) {
6929 return typeOf(object) === REACT_PROVIDER_TYPE;
6930 }
6931 function isElement(object) {
6932 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
6933 }
6934 function isForwardRef(object) {
6935 return typeOf(object) === REACT_FORWARD_REF_TYPE;
6936 }
6937 function isFragment(object) {
6938 return typeOf(object) === REACT_FRAGMENT_TYPE;
6939 }
6940 function isLazy(object) {
6941 return typeOf(object) === REACT_LAZY_TYPE;
6942 }
6943 function isMemo(object) {
6944 return typeOf(object) === REACT_MEMO_TYPE;
6945 }
6946 function isPortal(object) {
6947 return typeOf(object) === REACT_PORTAL_TYPE;
6948 }
6949 function isProfiler(object) {
6950 return typeOf(object) === REACT_PROFILER_TYPE;
6951 }
6952 function isStrictMode(object) {
6953 return typeOf(object) === REACT_STRICT_MODE_TYPE;
6954 }
6955 function isSuspense(object) {
6956 return typeOf(object) === REACT_SUSPENSE_TYPE;
6957 }
6958
6959 exports.AsyncMode = AsyncMode;
6960 exports.ConcurrentMode = ConcurrentMode;
6961 exports.ContextConsumer = ContextConsumer;
6962 exports.ContextProvider = ContextProvider;
6963 exports.Element = Element;
6964 exports.ForwardRef = ForwardRef;
6965 exports.Fragment = Fragment;
6966 exports.Lazy = Lazy;
6967 exports.Memo = Memo;
6968 exports.Portal = Portal;
6969 exports.Profiler = Profiler;
6970 exports.StrictMode = StrictMode;
6971 exports.Suspense = Suspense;
6972 exports.isAsyncMode = isAsyncMode;
6973 exports.isConcurrentMode = isConcurrentMode;
6974 exports.isContextConsumer = isContextConsumer;
6975 exports.isContextProvider = isContextProvider;
6976 exports.isElement = isElement;
6977 exports.isForwardRef = isForwardRef;
6978 exports.isFragment = isFragment;
6979 exports.isLazy = isLazy;
6980 exports.isMemo = isMemo;
6981 exports.isPortal = isPortal;
6982 exports.isProfiler = isProfiler;
6983 exports.isStrictMode = isStrictMode;
6984 exports.isSuspense = isSuspense;
6985 exports.isValidElementType = isValidElementType;
6986 exports.typeOf = typeOf;
6987 })();
6988 }
6989
6990
6991 /***/ }),
6992
6993 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js":
6994 /*!******************************************************************************!*\
6995 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/index.js ***!
6996 \******************************************************************************/
6997 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6998
6999 "use strict";
7000
7001
7002 if (false) {} else {
7003 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js");
7004 }
7005
7006
7007 /***/ }),
7008
7009 /***/ "../node_modules/html-to-image/es/apply-style.js":
7010 /*!*******************************************************!*\
7011 !*** ../node_modules/html-to-image/es/apply-style.js ***!
7012 \*******************************************************/
7013 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7014
7015 "use strict";
7016 __webpack_require__.r(__webpack_exports__);
7017 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7018 /* harmony export */ applyStyle: () => (/* binding */ applyStyle)
7019 /* harmony export */ });
7020 function applyStyle(node, options) {
7021 const { style } = node;
7022 if (options.backgroundColor) {
7023 style.backgroundColor = options.backgroundColor;
7024 }
7025 if (options.width) {
7026 style.width = `${options.width}px`;
7027 }
7028 if (options.height) {
7029 style.height = `${options.height}px`;
7030 }
7031 const manual = options.style;
7032 if (manual != null) {
7033 Object.keys(manual).forEach((key) => {
7034 style[key] = manual[key];
7035 });
7036 }
7037 return node;
7038 }
7039 //# sourceMappingURL=apply-style.js.map
7040
7041 /***/ }),
7042
7043 /***/ "../node_modules/html-to-image/es/clone-node.js":
7044 /*!******************************************************!*\
7045 !*** ../node_modules/html-to-image/es/clone-node.js ***!
7046 \******************************************************/
7047 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7048
7049 "use strict";
7050 __webpack_require__.r(__webpack_exports__);
7051 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7052 /* harmony export */ cloneNode: () => (/* binding */ cloneNode)
7053 /* harmony export */ });
7054 /* harmony import */ var _clone_pseudos__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-pseudos */ "../node_modules/html-to-image/es/clone-pseudos.js");
7055 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7056 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7057 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7058
7059
7060
7061
7062 async function cloneCanvasElement(canvas) {
7063 const dataURL = canvas.toDataURL();
7064 if (dataURL === 'data:,') {
7065 return canvas.cloneNode(false);
7066 }
7067 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7068 }
7069 async function cloneVideoElement(video, options) {
7070 if (video.currentSrc) {
7071 const canvas = document.createElement('canvas');
7072 const ctx = canvas.getContext('2d');
7073 canvas.width = video.clientWidth;
7074 canvas.height = video.clientHeight;
7075 ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
7076 const dataURL = canvas.toDataURL();
7077 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7078 }
7079 const poster = video.poster;
7080 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_2__.getMimeType)(poster);
7081 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_3__.resourceToDataURL)(poster, contentType, options);
7082 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7083 }
7084 async function cloneIFrameElement(iframe) {
7085 var _a;
7086 try {
7087 if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) {
7088 return (await cloneNode(iframe.contentDocument.body, {}, true));
7089 }
7090 }
7091 catch (_b) {
7092 // Failed to clone iframe
7093 }
7094 return iframe.cloneNode(false);
7095 }
7096 async function cloneSingleNode(node, options) {
7097 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLCanvasElement)) {
7098 return cloneCanvasElement(node);
7099 }
7100 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLVideoElement)) {
7101 return cloneVideoElement(node, options);
7102 }
7103 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLIFrameElement)) {
7104 return cloneIFrameElement(node);
7105 }
7106 return node.cloneNode(false);
7107 }
7108 const isSlotElement = (node) => node.tagName != null && node.tagName.toUpperCase() === 'SLOT';
7109 async function cloneChildren(nativeNode, clonedNode, options) {
7110 var _a, _b;
7111 let children = [];
7112 if (isSlotElement(nativeNode) && nativeNode.assignedNodes) {
7113 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.assignedNodes());
7114 }
7115 else if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7116 ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {
7117 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.contentDocument.body.childNodes);
7118 }
7119 else {
7120 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);
7121 }
7122 if (children.length === 0 ||
7123 (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLVideoElement)) {
7124 return clonedNode;
7125 }
7126 await children.reduce((deferred, child) => deferred
7127 .then(() => cloneNode(child, options))
7128 .then((clonedChild) => {
7129 if (clonedChild) {
7130 clonedNode.appendChild(clonedChild);
7131 }
7132 }), Promise.resolve());
7133 return clonedNode;
7134 }
7135 function cloneCSSStyle(nativeNode, clonedNode) {
7136 const targetStyle = clonedNode.style;
7137 if (!targetStyle) {
7138 return;
7139 }
7140 const sourceStyle = window.getComputedStyle(nativeNode);
7141 if (sourceStyle.cssText) {
7142 targetStyle.cssText = sourceStyle.cssText;
7143 targetStyle.transformOrigin = sourceStyle.transformOrigin;
7144 }
7145 else {
7146 (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(sourceStyle).forEach((name) => {
7147 let value = sourceStyle.getPropertyValue(name);
7148 if (name === 'font-size' && value.endsWith('px')) {
7149 const reducedFont = Math.floor(parseFloat(value.substring(0, value.length - 2))) - 0.1;
7150 value = `${reducedFont}px`;
7151 }
7152 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7153 name === 'display' &&
7154 value === 'inline') {
7155 value = 'block';
7156 }
7157 if (name === 'd' && clonedNode.getAttribute('d')) {
7158 value = `path(${clonedNode.getAttribute('d')})`;
7159 }
7160 targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));
7161 });
7162 }
7163 }
7164 function cloneInputValue(nativeNode, clonedNode) {
7165 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLTextAreaElement)) {
7166 clonedNode.innerHTML = nativeNode.value;
7167 }
7168 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLInputElement)) {
7169 clonedNode.setAttribute('value', nativeNode.value);
7170 }
7171 }
7172 function cloneSelectValue(nativeNode, clonedNode) {
7173 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLSelectElement)) {
7174 const clonedSelect = clonedNode;
7175 const selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute('value'));
7176 if (selectedOption) {
7177 selectedOption.setAttribute('selected', '');
7178 }
7179 }
7180 }
7181 function decorate(nativeNode, clonedNode) {
7182 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7183 cloneCSSStyle(nativeNode, clonedNode);
7184 (0,_clone_pseudos__WEBPACK_IMPORTED_MODULE_0__.clonePseudoElements)(nativeNode, clonedNode);
7185 cloneInputValue(nativeNode, clonedNode);
7186 cloneSelectValue(nativeNode, clonedNode);
7187 }
7188 return clonedNode;
7189 }
7190 async function ensureSVGSymbols(clone, options) {
7191 const uses = clone.querySelectorAll ? clone.querySelectorAll('use') : [];
7192 if (uses.length === 0) {
7193 return clone;
7194 }
7195 const processedDefs = {};
7196 for (let i = 0; i < uses.length; i++) {
7197 const use = uses[i];
7198 const id = use.getAttribute('xlink:href');
7199 if (id) {
7200 const exist = clone.querySelector(id);
7201 const definition = document.querySelector(id);
7202 if (!exist && definition && !processedDefs[id]) {
7203 // eslint-disable-next-line no-await-in-loop
7204 processedDefs[id] = (await cloneNode(definition, options, true));
7205 }
7206 }
7207 }
7208 const nodes = Object.values(processedDefs);
7209 if (nodes.length) {
7210 const ns = 'http://www.w3.org/1999/xhtml';
7211 const svg = document.createElementNS(ns, 'svg');
7212 svg.setAttribute('xmlns', ns);
7213 svg.style.position = 'absolute';
7214 svg.style.width = '0';
7215 svg.style.height = '0';
7216 svg.style.overflow = 'hidden';
7217 svg.style.display = 'none';
7218 const defs = document.createElementNS(ns, 'defs');
7219 svg.appendChild(defs);
7220 for (let i = 0; i < nodes.length; i++) {
7221 defs.appendChild(nodes[i]);
7222 }
7223 clone.appendChild(svg);
7224 }
7225 return clone;
7226 }
7227 async function cloneNode(node, options, isRoot) {
7228 if (!isRoot && options.filter && !options.filter(node)) {
7229 return null;
7230 }
7231 return Promise.resolve(node)
7232 .then((clonedNode) => cloneSingleNode(clonedNode, options))
7233 .then((clonedNode) => cloneChildren(node, clonedNode, options))
7234 .then((clonedNode) => decorate(node, clonedNode))
7235 .then((clonedNode) => ensureSVGSymbols(clonedNode, options));
7236 }
7237 //# sourceMappingURL=clone-node.js.map
7238
7239 /***/ }),
7240
7241 /***/ "../node_modules/html-to-image/es/clone-pseudos.js":
7242 /*!*********************************************************!*\
7243 !*** ../node_modules/html-to-image/es/clone-pseudos.js ***!
7244 \*********************************************************/
7245 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7246
7247 "use strict";
7248 __webpack_require__.r(__webpack_exports__);
7249 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7250 /* harmony export */ clonePseudoElements: () => (/* binding */ clonePseudoElements)
7251 /* harmony export */ });
7252 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7253
7254 function formatCSSText(style) {
7255 const content = style.getPropertyValue('content');
7256 return `${style.cssText} content: '${content.replace(/'|"/g, '')}';`;
7257 }
7258 function formatCSSProperties(style) {
7259 return (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(style)
7260 .map((name) => {
7261 const value = style.getPropertyValue(name);
7262 const priority = style.getPropertyPriority(name);
7263 return `${name}: ${value}${priority ? ' !important' : ''};`;
7264 })
7265 .join(' ');
7266 }
7267 function getPseudoElementStyle(className, pseudo, style) {
7268 const selector = `.${className}:${pseudo}`;
7269 const cssText = style.cssText
7270 ? formatCSSText(style)
7271 : formatCSSProperties(style);
7272 return document.createTextNode(`${selector}{${cssText}}`);
7273 }
7274 function clonePseudoElement(nativeNode, clonedNode, pseudo) {
7275 const style = window.getComputedStyle(nativeNode, pseudo);
7276 const content = style.getPropertyValue('content');
7277 if (content === '' || content === 'none') {
7278 return;
7279 }
7280 const className = (0,_util__WEBPACK_IMPORTED_MODULE_0__.uuid)();
7281 try {
7282 clonedNode.className = `${clonedNode.className} ${className}`;
7283 }
7284 catch (err) {
7285 return;
7286 }
7287 const styleElement = document.createElement('style');
7288 styleElement.appendChild(getPseudoElementStyle(className, pseudo, style));
7289 clonedNode.appendChild(styleElement);
7290 }
7291 function clonePseudoElements(nativeNode, clonedNode) {
7292 clonePseudoElement(nativeNode, clonedNode, ':before');
7293 clonePseudoElement(nativeNode, clonedNode, ':after');
7294 }
7295 //# sourceMappingURL=clone-pseudos.js.map
7296
7297 /***/ }),
7298
7299 /***/ "../node_modules/html-to-image/es/dataurl.js":
7300 /*!***************************************************!*\
7301 !*** ../node_modules/html-to-image/es/dataurl.js ***!
7302 \***************************************************/
7303 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7304
7305 "use strict";
7306 __webpack_require__.r(__webpack_exports__);
7307 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7308 /* harmony export */ fetchAsDataURL: () => (/* binding */ fetchAsDataURL),
7309 /* harmony export */ isDataUrl: () => (/* binding */ isDataUrl),
7310 /* harmony export */ makeDataUrl: () => (/* binding */ makeDataUrl),
7311 /* harmony export */ resourceToDataURL: () => (/* binding */ resourceToDataURL)
7312 /* harmony export */ });
7313 function getContentFromDataUrl(dataURL) {
7314 return dataURL.split(/,/)[1];
7315 }
7316 function isDataUrl(url) {
7317 return url.search(/^(data:)/) !== -1;
7318 }
7319 function makeDataUrl(content, mimeType) {
7320 return `data:${mimeType};base64,${content}`;
7321 }
7322 async function fetchAsDataURL(url, init, process) {
7323 const res = await fetch(url, init);
7324 if (res.status === 404) {
7325 throw new Error(`Resource "${res.url}" not found`);
7326 }
7327 const blob = await res.blob();
7328 return new Promise((resolve, reject) => {
7329 const reader = new FileReader();
7330 reader.onerror = reject;
7331 reader.onloadend = () => {
7332 try {
7333 resolve(process({ res, result: reader.result }));
7334 }
7335 catch (error) {
7336 reject(error);
7337 }
7338 };
7339 reader.readAsDataURL(blob);
7340 });
7341 }
7342 const cache = {};
7343 function getCacheKey(url, contentType, includeQueryParams) {
7344 let key = url.replace(/\?.*/, '');
7345 if (includeQueryParams) {
7346 key = url;
7347 }
7348 // font resource
7349 if (/ttf|otf|eot|woff2?/i.test(key)) {
7350 key = key.replace(/.*\//, '');
7351 }
7352 return contentType ? `[${contentType}]${key}` : key;
7353 }
7354 async function resourceToDataURL(resourceUrl, contentType, options) {
7355 const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);
7356 if (cache[cacheKey] != null) {
7357 return cache[cacheKey];
7358 }
7359 // ref: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache
7360 if (options.cacheBust) {
7361 // eslint-disable-next-line no-param-reassign
7362 resourceUrl += (/\?/.test(resourceUrl) ? '&' : '?') + new Date().getTime();
7363 }
7364 let dataURL;
7365 try {
7366 const content = await fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result }) => {
7367 if (!contentType) {
7368 // eslint-disable-next-line no-param-reassign
7369 contentType = res.headers.get('Content-Type') || '';
7370 }
7371 return getContentFromDataUrl(result);
7372 });
7373 dataURL = makeDataUrl(content, contentType);
7374 }
7375 catch (error) {
7376 dataURL = options.imagePlaceholder || '';
7377 let msg = `Failed to fetch resource: ${resourceUrl}`;
7378 if (error) {
7379 msg = typeof error === 'string' ? error : error.message;
7380 }
7381 if (msg) {
7382 console.warn(msg);
7383 }
7384 }
7385 cache[cacheKey] = dataURL;
7386 return dataURL;
7387 }
7388 //# sourceMappingURL=dataurl.js.map
7389
7390 /***/ }),
7391
7392 /***/ "../node_modules/html-to-image/es/embed-images.js":
7393 /*!********************************************************!*\
7394 !*** ../node_modules/html-to-image/es/embed-images.js ***!
7395 \********************************************************/
7396 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7397
7398 "use strict";
7399 __webpack_require__.r(__webpack_exports__);
7400 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7401 /* harmony export */ embedImages: () => (/* binding */ embedImages)
7402 /* harmony export */ });
7403 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7404 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7405 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7406 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7407
7408
7409
7410
7411 async function embedProp(propName, node, options) {
7412 var _a;
7413 const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);
7414 if (propValue) {
7415 const cssString = await (0,_embed_resources__WEBPACK_IMPORTED_MODULE_0__.embedResources)(propValue, null, options);
7416 node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));
7417 return true;
7418 }
7419 return false;
7420 }
7421 async function embedBackground(clonedNode, options) {
7422 if (!(await embedProp('background', clonedNode, options))) {
7423 await embedProp('background-image', clonedNode, options);
7424 }
7425 if (!(await embedProp('mask', clonedNode, options))) {
7426 await embedProp('mask-image', clonedNode, options);
7427 }
7428 }
7429 async function embedImageNode(clonedNode, options) {
7430 const isImageElement = (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, HTMLImageElement);
7431 if (!(isImageElement && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.src)) &&
7432 !((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, SVGImageElement) &&
7433 !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.href.baseVal))) {
7434 return;
7435 }
7436 const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;
7437 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(url, (0,_mimes__WEBPACK_IMPORTED_MODULE_3__.getMimeType)(url), options);
7438 await new Promise((resolve, reject) => {
7439 clonedNode.onload = resolve;
7440 clonedNode.onerror = reject;
7441 const image = clonedNode;
7442 if (image.decode) {
7443 image.decode = resolve;
7444 }
7445 if (image.loading === 'lazy') {
7446 image.loading = 'eager';
7447 }
7448 if (isImageElement) {
7449 clonedNode.srcset = '';
7450 clonedNode.src = dataURL;
7451 }
7452 else {
7453 clonedNode.href.baseVal = dataURL;
7454 }
7455 });
7456 }
7457 async function embedChildren(clonedNode, options) {
7458 const children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(clonedNode.childNodes);
7459 const deferreds = children.map((child) => embedImages(child, options));
7460 await Promise.all(deferreds).then(() => clonedNode);
7461 }
7462 async function embedImages(clonedNode, options) {
7463 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7464 await embedBackground(clonedNode, options);
7465 await embedImageNode(clonedNode, options);
7466 await embedChildren(clonedNode, options);
7467 }
7468 }
7469 //# sourceMappingURL=embed-images.js.map
7470
7471 /***/ }),
7472
7473 /***/ "../node_modules/html-to-image/es/embed-resources.js":
7474 /*!***********************************************************!*\
7475 !*** ../node_modules/html-to-image/es/embed-resources.js ***!
7476 \***********************************************************/
7477 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7478
7479 "use strict";
7480 __webpack_require__.r(__webpack_exports__);
7481 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7482 /* harmony export */ embed: () => (/* binding */ embed),
7483 /* harmony export */ embedResources: () => (/* binding */ embedResources),
7484 /* harmony export */ parseURLs: () => (/* binding */ parseURLs),
7485 /* harmony export */ shouldEmbed: () => (/* binding */ shouldEmbed)
7486 /* harmony export */ });
7487 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7488 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7489 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7490
7491
7492
7493 const URL_REGEX = /url\((['"]?)([^'"]+?)\1\)/g;
7494 const URL_WITH_FORMAT_REGEX = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
7495 const FONT_SRC_REGEX = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
7496 function toRegex(url) {
7497 // eslint-disable-next-line no-useless-escape
7498 const escaped = url.replace(/([.*+?^${}()|\[\]\/\\])/g, '\\$1');
7499 return new RegExp(`(url\\(['"]?)(${escaped})(['"]?\\))`, 'g');
7500 }
7501 function parseURLs(cssText) {
7502 const urls = [];
7503 cssText.replace(URL_REGEX, (raw, quotation, url) => {
7504 urls.push(url);
7505 return raw;
7506 });
7507 return urls.filter((url) => !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(url));
7508 }
7509 async function embed(cssText, resourceURL, baseURL, options, getContentFromUrl) {
7510 try {
7511 const resolvedURL = baseURL ? (0,_util__WEBPACK_IMPORTED_MODULE_0__.resolveUrl)(resourceURL, baseURL) : resourceURL;
7512 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_1__.getMimeType)(resourceURL);
7513 let dataURL;
7514 if (getContentFromUrl) {
7515 const content = await getContentFromUrl(resolvedURL);
7516 dataURL = (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.makeDataUrl)(content, contentType);
7517 }
7518 else {
7519 dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(resolvedURL, contentType, options);
7520 }
7521 return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);
7522 }
7523 catch (error) {
7524 // pass
7525 }
7526 return cssText;
7527 }
7528 function filterPreferredFontFormat(str, { preferredFontFormat }) {
7529 return !preferredFontFormat
7530 ? str
7531 : str.replace(FONT_SRC_REGEX, (match) => {
7532 // eslint-disable-next-line no-constant-condition
7533 while (true) {
7534 const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];
7535 if (!format) {
7536 return '';
7537 }
7538 if (format === preferredFontFormat) {
7539 return `src: ${src};`;
7540 }
7541 }
7542 });
7543 }
7544 function shouldEmbed(url) {
7545 return url.search(URL_REGEX) !== -1;
7546 }
7547 async function embedResources(cssText, baseUrl, options) {
7548 if (!shouldEmbed(cssText)) {
7549 return cssText;
7550 }
7551 const filteredCSSText = filterPreferredFontFormat(cssText, options);
7552 const urls = parseURLs(filteredCSSText);
7553 return urls.reduce((deferred, url) => deferred.then((css) => embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));
7554 }
7555 //# sourceMappingURL=embed-resources.js.map
7556
7557 /***/ }),
7558
7559 /***/ "../node_modules/html-to-image/es/embed-webfonts.js":
7560 /*!**********************************************************!*\
7561 !*** ../node_modules/html-to-image/es/embed-webfonts.js ***!
7562 \**********************************************************/
7563 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7564
7565 "use strict";
7566 __webpack_require__.r(__webpack_exports__);
7567 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7568 /* harmony export */ embedWebFonts: () => (/* binding */ embedWebFonts),
7569 /* harmony export */ getWebFontCSS: () => (/* binding */ getWebFontCSS)
7570 /* harmony export */ });
7571 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7572 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7573 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7574
7575
7576
7577 const cssFetchCache = {};
7578 async function fetchCSS(url) {
7579 let cache = cssFetchCache[url];
7580 if (cache != null) {
7581 return cache;
7582 }
7583 const res = await fetch(url);
7584 const cssText = await res.text();
7585 cache = { url, cssText };
7586 cssFetchCache[url] = cache;
7587 return cache;
7588 }
7589 async function embedFonts(data, options) {
7590 let cssText = data.cssText;
7591 const regexUrl = /url\(["']?([^"')]+)["']?\)/g;
7592 const fontLocs = cssText.match(/url\([^)]+\)/g) || [];
7593 const loadFonts = fontLocs.map(async (loc) => {
7594 let url = loc.replace(regexUrl, '$1');
7595 if (!url.startsWith('https://')) {
7596 url = new URL(url, data.url).href;
7597 }
7598 return (0,_dataurl__WEBPACK_IMPORTED_MODULE_1__.fetchAsDataURL)(url, options.fetchRequestInit, ({ result }) => {
7599 cssText = cssText.replace(loc, `url(${result})`);
7600 return [loc, result];
7601 });
7602 });
7603 return Promise.all(loadFonts).then(() => cssText);
7604 }
7605 function parseCSS(source) {
7606 if (source == null) {
7607 return [];
7608 }
7609 const result = [];
7610 const commentsRegex = /(\/\*[\s\S]*?\*\/)/gi;
7611 // strip out comments
7612 let cssText = source.replace(commentsRegex, '');
7613 // eslint-disable-next-line prefer-regex-literals
7614 const keyframesRegex = new RegExp('((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})', 'gi');
7615 // eslint-disable-next-line no-constant-condition
7616 while (true) {
7617 const matches = keyframesRegex.exec(cssText);
7618 if (matches === null) {
7619 break;
7620 }
7621 result.push(matches[0]);
7622 }
7623 cssText = cssText.replace(keyframesRegex, '');
7624 const importRegex = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi;
7625 // to match css & media queries together
7626 const combinedCSSRegex = '((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]' +
7627 '*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})';
7628 // unified regex
7629 const unifiedRegex = new RegExp(combinedCSSRegex, 'gi');
7630 // eslint-disable-next-line no-constant-condition
7631 while (true) {
7632 let matches = importRegex.exec(cssText);
7633 if (matches === null) {
7634 matches = unifiedRegex.exec(cssText);
7635 if (matches === null) {
7636 break;
7637 }
7638 else {
7639 importRegex.lastIndex = unifiedRegex.lastIndex;
7640 }
7641 }
7642 else {
7643 unifiedRegex.lastIndex = importRegex.lastIndex;
7644 }
7645 result.push(matches[0]);
7646 }
7647 return result;
7648 }
7649 async function getCSSRules(styleSheets, options) {
7650 const ret = [];
7651 const deferreds = [];
7652 // First loop inlines imports
7653 styleSheets.forEach((sheet) => {
7654 if ('cssRules' in sheet) {
7655 try {
7656 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item, index) => {
7657 if (item.type === CSSRule.IMPORT_RULE) {
7658 let importIndex = index + 1;
7659 const url = item.href;
7660 const deferred = fetchCSS(url)
7661 .then((metadata) => embedFonts(metadata, options))
7662 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7663 try {
7664 sheet.insertRule(rule, rule.startsWith('@import')
7665 ? (importIndex += 1)
7666 : sheet.cssRules.length);
7667 }
7668 catch (error) {
7669 console.error('Error inserting rule from remote css', {
7670 rule,
7671 error,
7672 });
7673 }
7674 }))
7675 .catch((e) => {
7676 console.error('Error loading remote css', e.toString());
7677 });
7678 deferreds.push(deferred);
7679 }
7680 });
7681 }
7682 catch (e) {
7683 const inline = styleSheets.find((a) => a.href == null) || document.styleSheets[0];
7684 if (sheet.href != null) {
7685 deferreds.push(fetchCSS(sheet.href)
7686 .then((metadata) => embedFonts(metadata, options))
7687 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7688 inline.insertRule(rule, sheet.cssRules.length);
7689 }))
7690 .catch((err) => {
7691 console.error('Error loading remote stylesheet', err);
7692 }));
7693 }
7694 console.error('Error inlining remote css file', e);
7695 }
7696 }
7697 });
7698 return Promise.all(deferreds).then(() => {
7699 // Second loop parses rules
7700 styleSheets.forEach((sheet) => {
7701 if ('cssRules' in sheet) {
7702 try {
7703 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item) => {
7704 ret.push(item);
7705 });
7706 }
7707 catch (e) {
7708 console.error(`Error while reading CSS rules from ${sheet.href}`, e);
7709 }
7710 }
7711 });
7712 return ret;
7713 });
7714 }
7715 function getWebFontRules(cssRules) {
7716 return cssRules
7717 .filter((rule) => rule.type === CSSRule.FONT_FACE_RULE)
7718 .filter((rule) => (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.shouldEmbed)(rule.style.getPropertyValue('src')));
7719 }
7720 async function parseWebFontRules(node, options) {
7721 if (node.ownerDocument == null) {
7722 throw new Error('Provided element is not within a Document');
7723 }
7724 const styleSheets = (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(node.ownerDocument.styleSheets);
7725 const cssRules = await getCSSRules(styleSheets, options);
7726 return getWebFontRules(cssRules);
7727 }
7728 async function getWebFontCSS(node, options) {
7729 const rules = await parseWebFontRules(node, options);
7730 const cssTexts = await Promise.all(rules.map((rule) => {
7731 const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;
7732 return (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.embedResources)(rule.cssText, baseUrl, options);
7733 }));
7734 return cssTexts.join('\n');
7735 }
7736 async function embedWebFonts(clonedNode, options) {
7737 const cssText = options.fontEmbedCSS != null
7738 ? options.fontEmbedCSS
7739 : options.skipFonts
7740 ? null
7741 : await getWebFontCSS(clonedNode, options);
7742 if (cssText) {
7743 const styleNode = document.createElement('style');
7744 const sytleContent = document.createTextNode(cssText);
7745 styleNode.appendChild(sytleContent);
7746 if (clonedNode.firstChild) {
7747 clonedNode.insertBefore(styleNode, clonedNode.firstChild);
7748 }
7749 else {
7750 clonedNode.appendChild(styleNode);
7751 }
7752 }
7753 }
7754 //# sourceMappingURL=embed-webfonts.js.map
7755
7756 /***/ }),
7757
7758 /***/ "../node_modules/html-to-image/es/index.js":
7759 /*!*************************************************!*\
7760 !*** ../node_modules/html-to-image/es/index.js ***!
7761 \*************************************************/
7762 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7763
7764 "use strict";
7765 __webpack_require__.r(__webpack_exports__);
7766 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7767 /* harmony export */ getFontEmbedCSS: () => (/* binding */ getFontEmbedCSS),
7768 /* harmony export */ toBlob: () => (/* binding */ toBlob),
7769 /* harmony export */ toCanvas: () => (/* binding */ toCanvas),
7770 /* harmony export */ toJpeg: () => (/* binding */ toJpeg),
7771 /* harmony export */ toPixelData: () => (/* binding */ toPixelData),
7772 /* harmony export */ toPng: () => (/* binding */ toPng),
7773 /* harmony export */ toSvg: () => (/* binding */ toSvg)
7774 /* harmony export */ });
7775 /* harmony import */ var _clone_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-node */ "../node_modules/html-to-image/es/clone-node.js");
7776 /* harmony import */ var _embed_images__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./embed-images */ "../node_modules/html-to-image/es/embed-images.js");
7777 /* harmony import */ var _apply_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apply-style */ "../node_modules/html-to-image/es/apply-style.js");
7778 /* harmony import */ var _embed_webfonts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./embed-webfonts */ "../node_modules/html-to-image/es/embed-webfonts.js");
7779 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7780
7781
7782
7783
7784
7785 async function toSvg(node, options = {}) {
7786 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7787 const clonedNode = (await (0,_clone_node__WEBPACK_IMPORTED_MODULE_0__.cloneNode)(node, options, true));
7788 await (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.embedWebFonts)(clonedNode, options);
7789 await (0,_embed_images__WEBPACK_IMPORTED_MODULE_1__.embedImages)(clonedNode, options);
7790 (0,_apply_style__WEBPACK_IMPORTED_MODULE_2__.applyStyle)(clonedNode, options);
7791 const datauri = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.nodeToDataURL)(clonedNode, width, height);
7792 return datauri;
7793 }
7794 async function toCanvas(node, options = {}) {
7795 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7796 const svg = await toSvg(node, options);
7797 const img = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.createImage)(svg);
7798 const canvas = document.createElement('canvas');
7799 const context = canvas.getContext('2d');
7800 const ratio = options.pixelRatio || (0,_util__WEBPACK_IMPORTED_MODULE_4__.getPixelRatio)();
7801 const canvasWidth = options.canvasWidth || width;
7802 const canvasHeight = options.canvasHeight || height;
7803 canvas.width = canvasWidth * ratio;
7804 canvas.height = canvasHeight * ratio;
7805 if (!options.skipAutoScale) {
7806 (0,_util__WEBPACK_IMPORTED_MODULE_4__.checkCanvasDimensions)(canvas);
7807 }
7808 canvas.style.width = `${canvasWidth}`;
7809 canvas.style.height = `${canvasHeight}`;
7810 if (options.backgroundColor) {
7811 context.fillStyle = options.backgroundColor;
7812 context.fillRect(0, 0, canvas.width, canvas.height);
7813 }
7814 context.drawImage(img, 0, 0, canvas.width, canvas.height);
7815 return canvas;
7816 }
7817 async function toPixelData(node, options = {}) {
7818 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7819 const canvas = await toCanvas(node, options);
7820 const ctx = canvas.getContext('2d');
7821 return ctx.getImageData(0, 0, width, height).data;
7822 }
7823 async function toPng(node, options = {}) {
7824 const canvas = await toCanvas(node, options);
7825 return canvas.toDataURL();
7826 }
7827 async function toJpeg(node, options = {}) {
7828 const canvas = await toCanvas(node, options);
7829 return canvas.toDataURL('image/jpeg', options.quality || 1);
7830 }
7831 async function toBlob(node, options = {}) {
7832 const canvas = await toCanvas(node, options);
7833 const blob = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.canvasToBlob)(canvas);
7834 return blob;
7835 }
7836 async function getFontEmbedCSS(node, options = {}) {
7837 return (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.getWebFontCSS)(node, options);
7838 }
7839 //# sourceMappingURL=index.js.map
7840
7841 /***/ }),
7842
7843 /***/ "../node_modules/html-to-image/es/mimes.js":
7844 /*!*************************************************!*\
7845 !*** ../node_modules/html-to-image/es/mimes.js ***!
7846 \*************************************************/
7847 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7848
7849 "use strict";
7850 __webpack_require__.r(__webpack_exports__);
7851 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7852 /* harmony export */ getMimeType: () => (/* binding */ getMimeType)
7853 /* harmony export */ });
7854 const WOFF = 'application/font-woff';
7855 const JPEG = 'image/jpeg';
7856 const mimes = {
7857 woff: WOFF,
7858 woff2: WOFF,
7859 ttf: 'application/font-truetype',
7860 eot: 'application/vnd.ms-fontobject',
7861 png: 'image/png',
7862 jpg: JPEG,
7863 jpeg: JPEG,
7864 gif: 'image/gif',
7865 tiff: 'image/tiff',
7866 svg: 'image/svg+xml',
7867 webp: 'image/webp',
7868 };
7869 function getExtension(url) {
7870 const match = /\.([^./]*?)$/g.exec(url);
7871 return match ? match[1] : '';
7872 }
7873 function getMimeType(url) {
7874 const extension = getExtension(url).toLowerCase();
7875 return mimes[extension] || '';
7876 }
7877 //# sourceMappingURL=mimes.js.map
7878
7879 /***/ }),
7880
7881 /***/ "../node_modules/html-to-image/es/util.js":
7882 /*!************************************************!*\
7883 !*** ../node_modules/html-to-image/es/util.js ***!
7884 \************************************************/
7885 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7886
7887 "use strict";
7888 __webpack_require__.r(__webpack_exports__);
7889 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7890 /* harmony export */ canvasToBlob: () => (/* binding */ canvasToBlob),
7891 /* harmony export */ checkCanvasDimensions: () => (/* binding */ checkCanvasDimensions),
7892 /* harmony export */ createImage: () => (/* binding */ createImage),
7893 /* harmony export */ delay: () => (/* binding */ delay),
7894 /* harmony export */ getImageSize: () => (/* binding */ getImageSize),
7895 /* harmony export */ getPixelRatio: () => (/* binding */ getPixelRatio),
7896 /* harmony export */ isInstanceOfElement: () => (/* binding */ isInstanceOfElement),
7897 /* harmony export */ nodeToDataURL: () => (/* binding */ nodeToDataURL),
7898 /* harmony export */ resolveUrl: () => (/* binding */ resolveUrl),
7899 /* harmony export */ svgToDataURL: () => (/* binding */ svgToDataURL),
7900 /* harmony export */ toArray: () => (/* binding */ toArray),
7901 /* harmony export */ uuid: () => (/* binding */ uuid)
7902 /* harmony export */ });
7903 function resolveUrl(url, baseUrl) {
7904 // url is absolute already
7905 if (url.match(/^[a-z]+:\/\//i)) {
7906 return url;
7907 }
7908 // url is absolute already, without protocol
7909 if (url.match(/^\/\//)) {
7910 return window.location.protocol + url;
7911 }
7912 // dataURI, mailto:, tel:, etc.
7913 if (url.match(/^[a-z]+:/i)) {
7914 return url;
7915 }
7916 const doc = document.implementation.createHTMLDocument();
7917 const base = doc.createElement('base');
7918 const a = doc.createElement('a');
7919 doc.head.appendChild(base);
7920 doc.body.appendChild(a);
7921 if (baseUrl) {
7922 base.href = baseUrl;
7923 }
7924 a.href = url;
7925 return a.href;
7926 }
7927 const uuid = (() => {
7928 // generate uuid for className of pseudo elements.
7929 // We should not use GUIDs, otherwise pseudo elements sometimes cannot be captured.
7930 let counter = 0;
7931 // ref: http://stackoverflow.com/a/6248722/2519373
7932 const random = () =>
7933 // eslint-disable-next-line no-bitwise
7934 `0000${((Math.random() * 36 ** 4) << 0).toString(36)}`.slice(-4);
7935 return () => {
7936 counter += 1;
7937 return `u${random()}${counter}`;
7938 };
7939 })();
7940 function delay(ms) {
7941 return (args) => new Promise((resolve) => {
7942 setTimeout(() => resolve(args), ms);
7943 });
7944 }
7945 function toArray(arrayLike) {
7946 const arr = [];
7947 for (let i = 0, l = arrayLike.length; i < l; i++) {
7948 arr.push(arrayLike[i]);
7949 }
7950 return arr;
7951 }
7952 function px(node, styleProperty) {
7953 const win = node.ownerDocument.defaultView || window;
7954 const val = win.getComputedStyle(node).getPropertyValue(styleProperty);
7955 return val ? parseFloat(val.replace('px', '')) : 0;
7956 }
7957 function getNodeWidth(node) {
7958 const leftBorder = px(node, 'border-left-width');
7959 const rightBorder = px(node, 'border-right-width');
7960 return node.clientWidth + leftBorder + rightBorder;
7961 }
7962 function getNodeHeight(node) {
7963 const topBorder = px(node, 'border-top-width');
7964 const bottomBorder = px(node, 'border-bottom-width');
7965 return node.clientHeight + topBorder + bottomBorder;
7966 }
7967 function getImageSize(targetNode, options = {}) {
7968 const width = options.width || getNodeWidth(targetNode);
7969 const height = options.height || getNodeHeight(targetNode);
7970 return { width, height };
7971 }
7972 function getPixelRatio() {
7973 let ratio;
7974 let FINAL_PROCESS;
7975 try {
7976 FINAL_PROCESS = process;
7977 }
7978 catch (e) {
7979 // pass
7980 }
7981 const val = FINAL_PROCESS && FINAL_PROCESS.env
7982 ? FINAL_PROCESS.env.devicePixelRatio
7983 : null;
7984 if (val) {
7985 ratio = parseInt(val, 10);
7986 if (Number.isNaN(ratio)) {
7987 ratio = 1;
7988 }
7989 }
7990 return ratio || window.devicePixelRatio || 1;
7991 }
7992 // @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas#maximum_canvas_size
7993 const canvasDimensionLimit = 16384;
7994 function checkCanvasDimensions(canvas) {
7995 if (canvas.width > canvasDimensionLimit ||
7996 canvas.height > canvasDimensionLimit) {
7997 if (canvas.width > canvasDimensionLimit &&
7998 canvas.height > canvasDimensionLimit) {
7999 if (canvas.width > canvas.height) {
8000 canvas.height *= canvasDimensionLimit / canvas.width;
8001 canvas.width = canvasDimensionLimit;
8002 }
8003 else {
8004 canvas.width *= canvasDimensionLimit / canvas.height;
8005 canvas.height = canvasDimensionLimit;
8006 }
8007 }
8008 else if (canvas.width > canvasDimensionLimit) {
8009 canvas.height *= canvasDimensionLimit / canvas.width;
8010 canvas.width = canvasDimensionLimit;
8011 }
8012 else {
8013 canvas.width *= canvasDimensionLimit / canvas.height;
8014 canvas.height = canvasDimensionLimit;
8015 }
8016 }
8017 }
8018 function canvasToBlob(canvas, options = {}) {
8019 if (canvas.toBlob) {
8020 return new Promise((resolve) => {
8021 canvas.toBlob(resolve, options.type ? options.type : 'image/png', options.quality ? options.quality : 1);
8022 });
8023 }
8024 return new Promise((resolve) => {
8025 const binaryString = window.atob(canvas
8026 .toDataURL(options.type ? options.type : undefined, options.quality ? options.quality : undefined)
8027 .split(',')[1]);
8028 const len = binaryString.length;
8029 const binaryArray = new Uint8Array(len);
8030 for (let i = 0; i < len; i += 1) {
8031 binaryArray[i] = binaryString.charCodeAt(i);
8032 }
8033 resolve(new Blob([binaryArray], {
8034 type: options.type ? options.type : 'image/png',
8035 }));
8036 });
8037 }
8038 function createImage(url) {
8039 return new Promise((resolve, reject) => {
8040 const img = new Image();
8041 img.decode = () => resolve(img);
8042 img.onload = () => resolve(img);
8043 img.onerror = reject;
8044 img.crossOrigin = 'anonymous';
8045 img.decoding = 'async';
8046 img.src = url;
8047 });
8048 }
8049 async function svgToDataURL(svg) {
8050 return Promise.resolve()
8051 .then(() => new XMLSerializer().serializeToString(svg))
8052 .then(encodeURIComponent)
8053 .then((html) => `data:image/svg+xml;charset=utf-8,${html}`);
8054 }
8055 async function nodeToDataURL(node, width, height) {
8056 const xmlns = 'http://www.w3.org/2000/svg';
8057 const svg = document.createElementNS(xmlns, 'svg');
8058 const foreignObject = document.createElementNS(xmlns, 'foreignObject');
8059 svg.setAttribute('width', `${width}`);
8060 svg.setAttribute('height', `${height}`);
8061 svg.setAttribute('viewBox', `0 0 ${width} ${height}`);
8062 foreignObject.setAttribute('width', '100%');
8063 foreignObject.setAttribute('height', '100%');
8064 foreignObject.setAttribute('x', '0');
8065 foreignObject.setAttribute('y', '0');
8066 foreignObject.setAttribute('externalResourcesRequired', 'true');
8067 svg.appendChild(foreignObject);
8068 foreignObject.appendChild(node);
8069 return svgToDataURL(svg);
8070 }
8071 const isInstanceOfElement = (node, instance) => {
8072 if (node instanceof instance)
8073 return true;
8074 const nodePrototype = Object.getPrototypeOf(node);
8075 if (nodePrototype === null)
8076 return false;
8077 return (nodePrototype.constructor.name === instance.name ||
8078 isInstanceOfElement(nodePrototype, instance));
8079 };
8080 //# sourceMappingURL=util.js.map
8081
8082 /***/ }),
8083
8084 /***/ "../node_modules/object-assign/index.js":
8085 /*!**********************************************!*\
8086 !*** ../node_modules/object-assign/index.js ***!
8087 \**********************************************/
8088 /***/ ((module) => {
8089
8090 "use strict";
8091 /*
8092 object-assign
8093 (c) Sindre Sorhus
8094 @license MIT
8095 */
8096
8097
8098 /* eslint-disable no-unused-vars */
8099 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
8100 var hasOwnProperty = Object.prototype.hasOwnProperty;
8101 var propIsEnumerable = Object.prototype.propertyIsEnumerable;
8102
8103 function toObject(val) {
8104 if (val === null || val === undefined) {
8105 throw new TypeError('Object.assign cannot be called with null or undefined');
8106 }
8107
8108 return Object(val);
8109 }
8110
8111 function shouldUseNative() {
8112 try {
8113 if (!Object.assign) {
8114 return false;
8115 }
8116
8117 // Detect buggy property enumeration order in older V8 versions.
8118
8119 // https://bugs.chromium.org/p/v8/issues/detail?id=4118
8120 var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
8121 test1[5] = 'de';
8122 if (Object.getOwnPropertyNames(test1)[0] === '5') {
8123 return false;
8124 }
8125
8126 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8127 var test2 = {};
8128 for (var i = 0; i < 10; i++) {
8129 test2['_' + String.fromCharCode(i)] = i;
8130 }
8131 var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
8132 return test2[n];
8133 });
8134 if (order2.join('') !== '0123456789') {
8135 return false;
8136 }
8137
8138 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8139 var test3 = {};
8140 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
8141 test3[letter] = letter;
8142 });
8143 if (Object.keys(Object.assign({}, test3)).join('') !==
8144 'abcdefghijklmnopqrst') {
8145 return false;
8146 }
8147
8148 return true;
8149 } catch (err) {
8150 // We don't expect any of the above to throw, but better to be safe.
8151 return false;
8152 }
8153 }
8154
8155 module.exports = shouldUseNative() ? Object.assign : function (target, source) {
8156 var from;
8157 var to = toObject(target);
8158 var symbols;
8159
8160 for (var s = 1; s < arguments.length; s++) {
8161 from = Object(arguments[s]);
8162
8163 for (var key in from) {
8164 if (hasOwnProperty.call(from, key)) {
8165 to[key] = from[key];
8166 }
8167 }
8168
8169 if (getOwnPropertySymbols) {
8170 symbols = getOwnPropertySymbols(from);
8171 for (var i = 0; i < symbols.length; i++) {
8172 if (propIsEnumerable.call(from, symbols[i])) {
8173 to[symbols[i]] = from[symbols[i]];
8174 }
8175 }
8176 }
8177 }
8178
8179 return to;
8180 };
8181
8182
8183 /***/ }),
8184
8185 /***/ "../node_modules/prop-types/checkPropTypes.js":
8186 /*!****************************************************!*\
8187 !*** ../node_modules/prop-types/checkPropTypes.js ***!
8188 \****************************************************/
8189 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8190
8191 "use strict";
8192 /**
8193 * Copyright (c) 2013-present, Facebook, Inc.
8194 *
8195 * This source code is licensed under the MIT license found in the
8196 * LICENSE file in the root directory of this source tree.
8197 */
8198
8199
8200
8201 var printWarning = function() {};
8202
8203 if (true) {
8204 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8205 var loggedTypeFailures = {};
8206 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8207
8208 printWarning = function(text) {
8209 var message = 'Warning: ' + text;
8210 if (typeof console !== 'undefined') {
8211 console.error(message);
8212 }
8213 try {
8214 // --- Welcome to debugging React ---
8215 // This error was thrown as a convenience so that you can use this stack
8216 // to find the callsite that caused this warning to fire.
8217 throw new Error(message);
8218 } catch (x) { /**/ }
8219 };
8220 }
8221
8222 /**
8223 * Assert that the values match with the type specs.
8224 * Error messages are memorized and will only be shown once.
8225 *
8226 * @param {object} typeSpecs Map of name to a ReactPropType
8227 * @param {object} values Runtime values that need to be type-checked
8228 * @param {string} location e.g. "prop", "context", "child context"
8229 * @param {string} componentName Name of the component for error messages.
8230 * @param {?Function} getStack Returns the component stack.
8231 * @private
8232 */
8233 function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
8234 if (true) {
8235 for (var typeSpecName in typeSpecs) {
8236 if (has(typeSpecs, typeSpecName)) {
8237 var error;
8238 // Prop type validation may throw. In case they do, we don't want to
8239 // fail the render phase where it didn't fail before. So we log it.
8240 // After these have been cleaned up, we'll let them throw.
8241 try {
8242 // This is intentionally an invariant that gets caught. It's the same
8243 // behavior as without this statement except with a better message.
8244 if (typeof typeSpecs[typeSpecName] !== 'function') {
8245 var err = Error(
8246 (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
8247 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
8248 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
8249 );
8250 err.name = 'Invariant Violation';
8251 throw err;
8252 }
8253 error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
8254 } catch (ex) {
8255 error = ex;
8256 }
8257 if (error && !(error instanceof Error)) {
8258 printWarning(
8259 (componentName || 'React class') + ': type specification of ' +
8260 location + ' `' + typeSpecName + '` is invalid; the type checker ' +
8261 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
8262 'You may have forgotten to pass an argument to the type checker ' +
8263 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
8264 'shape all require an argument).'
8265 );
8266 }
8267 if (error instanceof Error && !(error.message in loggedTypeFailures)) {
8268 // Only monitor this failure once because there tends to be a lot of the
8269 // same error.
8270 loggedTypeFailures[error.message] = true;
8271
8272 var stack = getStack ? getStack() : '';
8273
8274 printWarning(
8275 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
8276 );
8277 }
8278 }
8279 }
8280 }
8281 }
8282
8283 /**
8284 * Resets warning cache when testing.
8285 *
8286 * @private
8287 */
8288 checkPropTypes.resetWarningCache = function() {
8289 if (true) {
8290 loggedTypeFailures = {};
8291 }
8292 }
8293
8294 module.exports = checkPropTypes;
8295
8296
8297 /***/ }),
8298
8299 /***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
8300 /*!*************************************************************!*\
8301 !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
8302 \*************************************************************/
8303 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8304
8305 "use strict";
8306 /**
8307 * Copyright (c) 2013-present, Facebook, Inc.
8308 *
8309 * This source code is licensed under the MIT license found in the
8310 * LICENSE file in the root directory of this source tree.
8311 */
8312
8313
8314
8315 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8316 var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
8317
8318 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8319 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8320 var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
8321
8322 var printWarning = function() {};
8323
8324 if (true) {
8325 printWarning = function(text) {
8326 var message = 'Warning: ' + text;
8327 if (typeof console !== 'undefined') {
8328 console.error(message);
8329 }
8330 try {
8331 // --- Welcome to debugging React ---
8332 // This error was thrown as a convenience so that you can use this stack
8333 // to find the callsite that caused this warning to fire.
8334 throw new Error(message);
8335 } catch (x) {}
8336 };
8337 }
8338
8339 function emptyFunctionThatReturnsNull() {
8340 return null;
8341 }
8342
8343 module.exports = function(isValidElement, throwOnDirectAccess) {
8344 /* global Symbol */
8345 var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
8346 var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
8347
8348 /**
8349 * Returns the iterator method function contained on the iterable object.
8350 *
8351 * Be sure to invoke the function with the iterable as context:
8352 *
8353 * var iteratorFn = getIteratorFn(myIterable);
8354 * if (iteratorFn) {
8355 * var iterator = iteratorFn.call(myIterable);
8356 * ...
8357 * }
8358 *
8359 * @param {?object} maybeIterable
8360 * @return {?function}
8361 */
8362 function getIteratorFn(maybeIterable) {
8363 var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
8364 if (typeof iteratorFn === 'function') {
8365 return iteratorFn;
8366 }
8367 }
8368
8369 /**
8370 * Collection of methods that allow declaration and validation of props that are
8371 * supplied to React components. Example usage:
8372 *
8373 * var Props = require('ReactPropTypes');
8374 * var MyArticle = React.createClass({
8375 * propTypes: {
8376 * // An optional string prop named "description".
8377 * description: Props.string,
8378 *
8379 * // A required enum prop named "category".
8380 * category: Props.oneOf(['News','Photos']).isRequired,
8381 *
8382 * // A prop named "dialog" that requires an instance of Dialog.
8383 * dialog: Props.instanceOf(Dialog).isRequired
8384 * },
8385 * render: function() { ... }
8386 * });
8387 *
8388 * A more formal specification of how these methods are used:
8389 *
8390 * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
8391 * decl := ReactPropTypes.{type}(.isRequired)?
8392 *
8393 * Each and every declaration produces a function with the same signature. This
8394 * allows the creation of custom validation functions. For example:
8395 *
8396 * var MyLink = React.createClass({
8397 * propTypes: {
8398 * // An optional string or URI prop named "href".
8399 * href: function(props, propName, componentName) {
8400 * var propValue = props[propName];
8401 * if (propValue != null && typeof propValue !== 'string' &&
8402 * !(propValue instanceof URI)) {
8403 * return new Error(
8404 * 'Expected a string or an URI for ' + propName + ' in ' +
8405 * componentName
8406 * );
8407 * }
8408 * }
8409 * },
8410 * render: function() {...}
8411 * });
8412 *
8413 * @internal
8414 */
8415
8416 var ANONYMOUS = '<<anonymous>>';
8417
8418 // Important!
8419 // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
8420 var ReactPropTypes = {
8421 array: createPrimitiveTypeChecker('array'),
8422 bigint: createPrimitiveTypeChecker('bigint'),
8423 bool: createPrimitiveTypeChecker('boolean'),
8424 func: createPrimitiveTypeChecker('function'),
8425 number: createPrimitiveTypeChecker('number'),
8426 object: createPrimitiveTypeChecker('object'),
8427 string: createPrimitiveTypeChecker('string'),
8428 symbol: createPrimitiveTypeChecker('symbol'),
8429
8430 any: createAnyTypeChecker(),
8431 arrayOf: createArrayOfTypeChecker,
8432 element: createElementTypeChecker(),
8433 elementType: createElementTypeTypeChecker(),
8434 instanceOf: createInstanceTypeChecker,
8435 node: createNodeChecker(),
8436 objectOf: createObjectOfTypeChecker,
8437 oneOf: createEnumTypeChecker,
8438 oneOfType: createUnionTypeChecker,
8439 shape: createShapeTypeChecker,
8440 exact: createStrictShapeTypeChecker,
8441 };
8442
8443 /**
8444 * inlined Object.is polyfill to avoid requiring consumers ship their own
8445 * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
8446 */
8447 /*eslint-disable no-self-compare*/
8448 function is(x, y) {
8449 // SameValue algorithm
8450 if (x === y) {
8451 // Steps 1-5, 7-10
8452 // Steps 6.b-6.e: +0 != -0
8453 return x !== 0 || 1 / x === 1 / y;
8454 } else {
8455 // Step 6.a: NaN == NaN
8456 return x !== x && y !== y;
8457 }
8458 }
8459 /*eslint-enable no-self-compare*/
8460
8461 /**
8462 * We use an Error-like object for backward compatibility as people may call
8463 * PropTypes directly and inspect their output. However, we don't use real
8464 * Errors anymore. We don't inspect their stack anyway, and creating them
8465 * is prohibitively expensive if they are created too often, such as what
8466 * happens in oneOfType() for any type before the one that matched.
8467 */
8468 function PropTypeError(message, data) {
8469 this.message = message;
8470 this.data = data && typeof data === 'object' ? data: {};
8471 this.stack = '';
8472 }
8473 // Make `instanceof Error` still work for returned errors.
8474 PropTypeError.prototype = Error.prototype;
8475
8476 function createChainableTypeChecker(validate) {
8477 if (true) {
8478 var manualPropTypeCallCache = {};
8479 var manualPropTypeWarningCount = 0;
8480 }
8481 function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
8482 componentName = componentName || ANONYMOUS;
8483 propFullName = propFullName || propName;
8484
8485 if (secret !== ReactPropTypesSecret) {
8486 if (throwOnDirectAccess) {
8487 // New behavior only for users of `prop-types` package
8488 var err = new Error(
8489 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
8490 'Use `PropTypes.checkPropTypes()` to call them. ' +
8491 'Read more at http://fb.me/use-check-prop-types'
8492 );
8493 err.name = 'Invariant Violation';
8494 throw err;
8495 } else if ( true && typeof console !== 'undefined') {
8496 // Old behavior for people using React.PropTypes
8497 var cacheKey = componentName + ':' + propName;
8498 if (
8499 !manualPropTypeCallCache[cacheKey] &&
8500 // Avoid spamming the console because they are often not actionable except for lib authors
8501 manualPropTypeWarningCount < 3
8502 ) {
8503 printWarning(
8504 'You are manually calling a React.PropTypes validation ' +
8505 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
8506 'and will throw in the standalone `prop-types` package. ' +
8507 'You may be seeing this warning due to a third-party PropTypes ' +
8508 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
8509 );
8510 manualPropTypeCallCache[cacheKey] = true;
8511 manualPropTypeWarningCount++;
8512 }
8513 }
8514 }
8515 if (props[propName] == null) {
8516 if (isRequired) {
8517 if (props[propName] === null) {
8518 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
8519 }
8520 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
8521 }
8522 return null;
8523 } else {
8524 return validate(props, propName, componentName, location, propFullName);
8525 }
8526 }
8527
8528 var chainedCheckType = checkType.bind(null, false);
8529 chainedCheckType.isRequired = checkType.bind(null, true);
8530
8531 return chainedCheckType;
8532 }
8533
8534 function createPrimitiveTypeChecker(expectedType) {
8535 function validate(props, propName, componentName, location, propFullName, secret) {
8536 var propValue = props[propName];
8537 var propType = getPropType(propValue);
8538 if (propType !== expectedType) {
8539 // `propValue` being instance of, say, date/regexp, pass the 'object'
8540 // check, but we can offer a more precise error message here rather than
8541 // 'of type `object`'.
8542 var preciseType = getPreciseType(propValue);
8543
8544 return new PropTypeError(
8545 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),
8546 {expectedType: expectedType}
8547 );
8548 }
8549 return null;
8550 }
8551 return createChainableTypeChecker(validate);
8552 }
8553
8554 function createAnyTypeChecker() {
8555 return createChainableTypeChecker(emptyFunctionThatReturnsNull);
8556 }
8557
8558 function createArrayOfTypeChecker(typeChecker) {
8559 function validate(props, propName, componentName, location, propFullName) {
8560 if (typeof typeChecker !== 'function') {
8561 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
8562 }
8563 var propValue = props[propName];
8564 if (!Array.isArray(propValue)) {
8565 var propType = getPropType(propValue);
8566 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
8567 }
8568 for (var i = 0; i < propValue.length; i++) {
8569 var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
8570 if (error instanceof Error) {
8571 return error;
8572 }
8573 }
8574 return null;
8575 }
8576 return createChainableTypeChecker(validate);
8577 }
8578
8579 function createElementTypeChecker() {
8580 function validate(props, propName, componentName, location, propFullName) {
8581 var propValue = props[propName];
8582 if (!isValidElement(propValue)) {
8583 var propType = getPropType(propValue);
8584 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
8585 }
8586 return null;
8587 }
8588 return createChainableTypeChecker(validate);
8589 }
8590
8591 function createElementTypeTypeChecker() {
8592 function validate(props, propName, componentName, location, propFullName) {
8593 var propValue = props[propName];
8594 if (!ReactIs.isValidElementType(propValue)) {
8595 var propType = getPropType(propValue);
8596 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
8597 }
8598 return null;
8599 }
8600 return createChainableTypeChecker(validate);
8601 }
8602
8603 function createInstanceTypeChecker(expectedClass) {
8604 function validate(props, propName, componentName, location, propFullName) {
8605 if (!(props[propName] instanceof expectedClass)) {
8606 var expectedClassName = expectedClass.name || ANONYMOUS;
8607 var actualClassName = getClassName(props[propName]);
8608 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
8609 }
8610 return null;
8611 }
8612 return createChainableTypeChecker(validate);
8613 }
8614
8615 function createEnumTypeChecker(expectedValues) {
8616 if (!Array.isArray(expectedValues)) {
8617 if (true) {
8618 if (arguments.length > 1) {
8619 printWarning(
8620 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
8621 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
8622 );
8623 } else {
8624 printWarning('Invalid argument supplied to oneOf, expected an array.');
8625 }
8626 }
8627 return emptyFunctionThatReturnsNull;
8628 }
8629
8630 function validate(props, propName, componentName, location, propFullName) {
8631 var propValue = props[propName];
8632 for (var i = 0; i < expectedValues.length; i++) {
8633 if (is(propValue, expectedValues[i])) {
8634 return null;
8635 }
8636 }
8637
8638 var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
8639 var type = getPreciseType(value);
8640 if (type === 'symbol') {
8641 return String(value);
8642 }
8643 return value;
8644 });
8645 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
8646 }
8647 return createChainableTypeChecker(validate);
8648 }
8649
8650 function createObjectOfTypeChecker(typeChecker) {
8651 function validate(props, propName, componentName, location, propFullName) {
8652 if (typeof typeChecker !== 'function') {
8653 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
8654 }
8655 var propValue = props[propName];
8656 var propType = getPropType(propValue);
8657 if (propType !== 'object') {
8658 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
8659 }
8660 for (var key in propValue) {
8661 if (has(propValue, key)) {
8662 var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8663 if (error instanceof Error) {
8664 return error;
8665 }
8666 }
8667 }
8668 return null;
8669 }
8670 return createChainableTypeChecker(validate);
8671 }
8672
8673 function createUnionTypeChecker(arrayOfTypeCheckers) {
8674 if (!Array.isArray(arrayOfTypeCheckers)) {
8675 true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
8676 return emptyFunctionThatReturnsNull;
8677 }
8678
8679 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8680 var checker = arrayOfTypeCheckers[i];
8681 if (typeof checker !== 'function') {
8682 printWarning(
8683 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
8684 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
8685 );
8686 return emptyFunctionThatReturnsNull;
8687 }
8688 }
8689
8690 function validate(props, propName, componentName, location, propFullName) {
8691 var expectedTypes = [];
8692 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8693 var checker = arrayOfTypeCheckers[i];
8694 var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
8695 if (checkerResult == null) {
8696 return null;
8697 }
8698 if (checkerResult.data && has(checkerResult.data, 'expectedType')) {
8699 expectedTypes.push(checkerResult.data.expectedType);
8700 }
8701 }
8702 var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';
8703 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));
8704 }
8705 return createChainableTypeChecker(validate);
8706 }
8707
8708 function createNodeChecker() {
8709 function validate(props, propName, componentName, location, propFullName) {
8710 if (!isNode(props[propName])) {
8711 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
8712 }
8713 return null;
8714 }
8715 return createChainableTypeChecker(validate);
8716 }
8717
8718 function invalidValidatorError(componentName, location, propFullName, key, type) {
8719 return new PropTypeError(
8720 (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +
8721 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'
8722 );
8723 }
8724
8725 function createShapeTypeChecker(shapeTypes) {
8726 function validate(props, propName, componentName, location, propFullName) {
8727 var propValue = props[propName];
8728 var propType = getPropType(propValue);
8729 if (propType !== 'object') {
8730 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8731 }
8732 for (var key in shapeTypes) {
8733 var checker = shapeTypes[key];
8734 if (typeof checker !== 'function') {
8735 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8736 }
8737 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8738 if (error) {
8739 return error;
8740 }
8741 }
8742 return null;
8743 }
8744 return createChainableTypeChecker(validate);
8745 }
8746
8747 function createStrictShapeTypeChecker(shapeTypes) {
8748 function validate(props, propName, componentName, location, propFullName) {
8749 var propValue = props[propName];
8750 var propType = getPropType(propValue);
8751 if (propType !== 'object') {
8752 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8753 }
8754 // We need to check all keys in case some are required but missing from props.
8755 var allKeys = assign({}, props[propName], shapeTypes);
8756 for (var key in allKeys) {
8757 var checker = shapeTypes[key];
8758 if (has(shapeTypes, key) && typeof checker !== 'function') {
8759 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8760 }
8761 if (!checker) {
8762 return new PropTypeError(
8763 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
8764 '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
8765 '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
8766 );
8767 }
8768 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8769 if (error) {
8770 return error;
8771 }
8772 }
8773 return null;
8774 }
8775
8776 return createChainableTypeChecker(validate);
8777 }
8778
8779 function isNode(propValue) {
8780 switch (typeof propValue) {
8781 case 'number':
8782 case 'string':
8783 case 'undefined':
8784 return true;
8785 case 'boolean':
8786 return !propValue;
8787 case 'object':
8788 if (Array.isArray(propValue)) {
8789 return propValue.every(isNode);
8790 }
8791 if (propValue === null || isValidElement(propValue)) {
8792 return true;
8793 }
8794
8795 var iteratorFn = getIteratorFn(propValue);
8796 if (iteratorFn) {
8797 var iterator = iteratorFn.call(propValue);
8798 var step;
8799 if (iteratorFn !== propValue.entries) {
8800 while (!(step = iterator.next()).done) {
8801 if (!isNode(step.value)) {
8802 return false;
8803 }
8804 }
8805 } else {
8806 // Iterator will provide entry [k,v] tuples rather than values.
8807 while (!(step = iterator.next()).done) {
8808 var entry = step.value;
8809 if (entry) {
8810 if (!isNode(entry[1])) {
8811 return false;
8812 }
8813 }
8814 }
8815 }
8816 } else {
8817 return false;
8818 }
8819
8820 return true;
8821 default:
8822 return false;
8823 }
8824 }
8825
8826 function isSymbol(propType, propValue) {
8827 // Native Symbol.
8828 if (propType === 'symbol') {
8829 return true;
8830 }
8831
8832 // falsy value can't be a Symbol
8833 if (!propValue) {
8834 return false;
8835 }
8836
8837 // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
8838 if (propValue['@@toStringTag'] === 'Symbol') {
8839 return true;
8840 }
8841
8842 // Fallback for non-spec compliant Symbols which are polyfilled.
8843 if (typeof Symbol === 'function' && propValue instanceof Symbol) {
8844 return true;
8845 }
8846
8847 return false;
8848 }
8849
8850 // Equivalent of `typeof` but with special handling for array and regexp.
8851 function getPropType(propValue) {
8852 var propType = typeof propValue;
8853 if (Array.isArray(propValue)) {
8854 return 'array';
8855 }
8856 if (propValue instanceof RegExp) {
8857 // Old webkits (at least until Android 4.0) return 'function' rather than
8858 // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
8859 // passes PropTypes.object.
8860 return 'object';
8861 }
8862 if (isSymbol(propType, propValue)) {
8863 return 'symbol';
8864 }
8865 return propType;
8866 }
8867
8868 // This handles more types than `getPropType`. Only used for error messages.
8869 // See `createPrimitiveTypeChecker`.
8870 function getPreciseType(propValue) {
8871 if (typeof propValue === 'undefined' || propValue === null) {
8872 return '' + propValue;
8873 }
8874 var propType = getPropType(propValue);
8875 if (propType === 'object') {
8876 if (propValue instanceof Date) {
8877 return 'date';
8878 } else if (propValue instanceof RegExp) {
8879 return 'regexp';
8880 }
8881 }
8882 return propType;
8883 }
8884
8885 // Returns a string that is postfixed to a warning about an invalid type.
8886 // For example, "undefined" or "of type array"
8887 function getPostfixForTypeWarning(value) {
8888 var type = getPreciseType(value);
8889 switch (type) {
8890 case 'array':
8891 case 'object':
8892 return 'an ' + type;
8893 case 'boolean':
8894 case 'date':
8895 case 'regexp':
8896 return 'a ' + type;
8897 default:
8898 return type;
8899 }
8900 }
8901
8902 // Returns class name of the object, if any.
8903 function getClassName(propValue) {
8904 if (!propValue.constructor || !propValue.constructor.name) {
8905 return ANONYMOUS;
8906 }
8907 return propValue.constructor.name;
8908 }
8909
8910 ReactPropTypes.checkPropTypes = checkPropTypes;
8911 ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
8912 ReactPropTypes.PropTypes = ReactPropTypes;
8913
8914 return ReactPropTypes;
8915 };
8916
8917
8918 /***/ }),
8919
8920 /***/ "../node_modules/prop-types/index.js":
8921 /*!*******************************************!*\
8922 !*** ../node_modules/prop-types/index.js ***!
8923 \*******************************************/
8924 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8925
8926 /**
8927 * Copyright (c) 2013-present, Facebook, Inc.
8928 *
8929 * This source code is licensed under the MIT license found in the
8930 * LICENSE file in the root directory of this source tree.
8931 */
8932
8933 if (true) {
8934 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8935
8936 // By explicitly using `prop-types` you are opting into new development behavior.
8937 // http://fb.me/prop-types-in-prod
8938 var throwOnDirectAccess = true;
8939 module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
8940 } else {}
8941
8942
8943 /***/ }),
8944
8945 /***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
8946 /*!**************************************************************!*\
8947 !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
8948 \**************************************************************/
8949 /***/ ((module) => {
8950
8951 "use strict";
8952 /**
8953 * Copyright (c) 2013-present, Facebook, Inc.
8954 *
8955 * This source code is licensed under the MIT license found in the
8956 * LICENSE file in the root directory of this source tree.
8957 */
8958
8959
8960
8961 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
8962
8963 module.exports = ReactPropTypesSecret;
8964
8965
8966 /***/ }),
8967
8968 /***/ "../node_modules/prop-types/lib/has.js":
8969 /*!*********************************************!*\
8970 !*** ../node_modules/prop-types/lib/has.js ***!
8971 \*********************************************/
8972 /***/ ((module) => {
8973
8974 module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
8975
8976
8977 /***/ }),
8978
8979 /***/ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js":
8980 /*!************************************************************************************!*\
8981 !*** ../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
8982 \************************************************************************************/
8983 /***/ ((__unused_webpack_module, exports) => {
8984
8985 "use strict";
8986 /** @license React v16.13.1
8987 * react-is.development.js
8988 *
8989 * Copyright (c) Facebook, Inc. and its affiliates.
8990 *
8991 * This source code is licensed under the MIT license found in the
8992 * LICENSE file in the root directory of this source tree.
8993 */
8994
8995
8996
8997
8998
8999 if (true) {
9000 (function() {
9001 'use strict';
9002
9003 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
9004 // nor polyfill, then a plain number is used for performance.
9005 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
9006 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
9007 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
9008 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
9009 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
9010 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
9011 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
9012 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
9013 // (unstable) APIs that have been removed. Can we remove the symbols?
9014
9015 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
9016 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
9017 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
9018 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
9019 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
9020 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
9021 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
9022 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
9023 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
9024 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
9025 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
9026
9027 function isValidElementType(type) {
9028 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
9029 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);
9030 }
9031
9032 function typeOf(object) {
9033 if (typeof object === 'object' && object !== null) {
9034 var $$typeof = object.$$typeof;
9035
9036 switch ($$typeof) {
9037 case REACT_ELEMENT_TYPE:
9038 var type = object.type;
9039
9040 switch (type) {
9041 case REACT_ASYNC_MODE_TYPE:
9042 case REACT_CONCURRENT_MODE_TYPE:
9043 case REACT_FRAGMENT_TYPE:
9044 case REACT_PROFILER_TYPE:
9045 case REACT_STRICT_MODE_TYPE:
9046 case REACT_SUSPENSE_TYPE:
9047 return type;
9048
9049 default:
9050 var $$typeofType = type && type.$$typeof;
9051
9052 switch ($$typeofType) {
9053 case REACT_CONTEXT_TYPE:
9054 case REACT_FORWARD_REF_TYPE:
9055 case REACT_LAZY_TYPE:
9056 case REACT_MEMO_TYPE:
9057 case REACT_PROVIDER_TYPE:
9058 return $$typeofType;
9059
9060 default:
9061 return $$typeof;
9062 }
9063
9064 }
9065
9066 case REACT_PORTAL_TYPE:
9067 return $$typeof;
9068 }
9069 }
9070
9071 return undefined;
9072 } // AsyncMode is deprecated along with isAsyncMode
9073
9074 var AsyncMode = REACT_ASYNC_MODE_TYPE;
9075 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
9076 var ContextConsumer = REACT_CONTEXT_TYPE;
9077 var ContextProvider = REACT_PROVIDER_TYPE;
9078 var Element = REACT_ELEMENT_TYPE;
9079 var ForwardRef = REACT_FORWARD_REF_TYPE;
9080 var Fragment = REACT_FRAGMENT_TYPE;
9081 var Lazy = REACT_LAZY_TYPE;
9082 var Memo = REACT_MEMO_TYPE;
9083 var Portal = REACT_PORTAL_TYPE;
9084 var Profiler = REACT_PROFILER_TYPE;
9085 var StrictMode = REACT_STRICT_MODE_TYPE;
9086 var Suspense = REACT_SUSPENSE_TYPE;
9087 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
9088
9089 function isAsyncMode(object) {
9090 {
9091 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
9092 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
9093
9094 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.');
9095 }
9096 }
9097
9098 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
9099 }
9100 function isConcurrentMode(object) {
9101 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
9102 }
9103 function isContextConsumer(object) {
9104 return typeOf(object) === REACT_CONTEXT_TYPE;
9105 }
9106 function isContextProvider(object) {
9107 return typeOf(object) === REACT_PROVIDER_TYPE;
9108 }
9109 function isElement(object) {
9110 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
9111 }
9112 function isForwardRef(object) {
9113 return typeOf(object) === REACT_FORWARD_REF_TYPE;
9114 }
9115 function isFragment(object) {
9116 return typeOf(object) === REACT_FRAGMENT_TYPE;
9117 }
9118 function isLazy(object) {
9119 return typeOf(object) === REACT_LAZY_TYPE;
9120 }
9121 function isMemo(object) {
9122 return typeOf(object) === REACT_MEMO_TYPE;
9123 }
9124 function isPortal(object) {
9125 return typeOf(object) === REACT_PORTAL_TYPE;
9126 }
9127 function isProfiler(object) {
9128 return typeOf(object) === REACT_PROFILER_TYPE;
9129 }
9130 function isStrictMode(object) {
9131 return typeOf(object) === REACT_STRICT_MODE_TYPE;
9132 }
9133 function isSuspense(object) {
9134 return typeOf(object) === REACT_SUSPENSE_TYPE;
9135 }
9136
9137 exports.AsyncMode = AsyncMode;
9138 exports.ConcurrentMode = ConcurrentMode;
9139 exports.ContextConsumer = ContextConsumer;
9140 exports.ContextProvider = ContextProvider;
9141 exports.Element = Element;
9142 exports.ForwardRef = ForwardRef;
9143 exports.Fragment = Fragment;
9144 exports.Lazy = Lazy;
9145 exports.Memo = Memo;
9146 exports.Portal = Portal;
9147 exports.Profiler = Profiler;
9148 exports.StrictMode = StrictMode;
9149 exports.Suspense = Suspense;
9150 exports.isAsyncMode = isAsyncMode;
9151 exports.isConcurrentMode = isConcurrentMode;
9152 exports.isContextConsumer = isContextConsumer;
9153 exports.isContextProvider = isContextProvider;
9154 exports.isElement = isElement;
9155 exports.isForwardRef = isForwardRef;
9156 exports.isFragment = isFragment;
9157 exports.isLazy = isLazy;
9158 exports.isMemo = isMemo;
9159 exports.isPortal = isPortal;
9160 exports.isProfiler = isProfiler;
9161 exports.isStrictMode = isStrictMode;
9162 exports.isSuspense = isSuspense;
9163 exports.isValidElementType = isValidElementType;
9164 exports.typeOf = typeOf;
9165 })();
9166 }
9167
9168
9169 /***/ }),
9170
9171 /***/ "../node_modules/prop-types/node_modules/react-is/index.js":
9172 /*!*****************************************************************!*\
9173 !*** ../node_modules/prop-types/node_modules/react-is/index.js ***!
9174 \*****************************************************************/
9175 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9176
9177 "use strict";
9178
9179
9180 if (false) {} else {
9181 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js");
9182 }
9183
9184
9185 /***/ }),
9186
9187 /***/ "../node_modules/react-dom/client.js":
9188 /*!*******************************************!*\
9189 !*** ../node_modules/react-dom/client.js ***!
9190 \*******************************************/
9191 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9192
9193 "use strict";
9194
9195
9196 var m = __webpack_require__(/*! react-dom */ "react-dom");
9197 if (false) {} else {
9198 var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
9199 exports.createRoot = function(c, o) {
9200 i.usingClientEntryPoint = true;
9201 try {
9202 return m.createRoot(c, o);
9203 } finally {
9204 i.usingClientEntryPoint = false;
9205 }
9206 };
9207 exports.hydrateRoot = function(c, h, o) {
9208 i.usingClientEntryPoint = true;
9209 try {
9210 return m.hydrateRoot(c, h, o);
9211 } finally {
9212 i.usingClientEntryPoint = false;
9213 }
9214 };
9215 }
9216
9217
9218 /***/ }),
9219
9220 /***/ "../node_modules/react-draggable/build/cjs/Draggable.js":
9221 /*!**************************************************************!*\
9222 !*** ../node_modules/react-draggable/build/cjs/Draggable.js ***!
9223 \**************************************************************/
9224 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9225
9226 "use strict";
9227
9228
9229 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); }
9230
9231 Object.defineProperty(exports, "__esModule", ({
9232 value: true
9233 }));
9234 Object.defineProperty(exports, "DraggableCore", ({
9235 enumerable: true,
9236 get: function get() {
9237 return _DraggableCore.default;
9238 }
9239 }));
9240 exports["default"] = void 0;
9241
9242 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9243
9244 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9245
9246 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9247
9248 var _clsx2 = _interopRequireDefault(__webpack_require__(/*! clsx */ "../node_modules/clsx/dist/clsx.m.js"));
9249
9250 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9251
9252 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9253
9254 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9255
9256 var _DraggableCore = _interopRequireDefault(__webpack_require__(/*! ./DraggableCore */ "../node_modules/react-draggable/build/cjs/DraggableCore.js"));
9257
9258 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9259
9260 var _excluded = ["axis", "bounds", "children", "defaultPosition", "defaultClassName", "defaultClassNameDragging", "defaultClassNameDragged", "position", "positionOffset", "scale"];
9261
9262 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9263
9264 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); }
9265
9266 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; }
9267
9268 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); }
9269
9270 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; }
9271
9272 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; }
9273
9274 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; }
9275
9276 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; }
9277
9278 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9279
9280 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."); }
9281
9282 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); }
9283
9284 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; }
9285
9286 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; }
9287
9288 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9289
9290 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9291
9292 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); } }
9293
9294 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9295
9296 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); }
9297
9298 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9299
9300 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); }; }
9301
9302 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); }
9303
9304 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9305
9306 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; } }
9307
9308 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9309
9310 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; }
9311
9312 //
9313 // Define <Draggable>
9314 //
9315 var Draggable = /*#__PURE__*/function (_React$Component) {
9316 _inherits(Draggable, _React$Component);
9317
9318 var _super = _createSuper(Draggable);
9319
9320 function Draggable(props
9321 /*: DraggableProps*/
9322 ) {
9323 var _this;
9324
9325 _classCallCheck(this, Draggable);
9326
9327 _this = _super.call(this, props);
9328
9329 _defineProperty(_assertThisInitialized(_this), "onDragStart", function (e, coreData) {
9330 (0, _log.default)('Draggable: onDragStart: %j', coreData); // Short-circuit if user's callback killed it.
9331
9332 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.
9333
9334
9335 if (shouldStart === false) return false;
9336
9337 _this.setState({
9338 dragging: true,
9339 dragged: true
9340 });
9341 });
9342
9343 _defineProperty(_assertThisInitialized(_this), "onDrag", function (e, coreData) {
9344 if (!_this.state.dragging) return false;
9345 (0, _log.default)('Draggable: onDrag: %j', coreData);
9346 var uiData = (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData);
9347 var newState
9348 /*: $Shape<DraggableState>*/
9349 = {
9350 x: uiData.x,
9351 y: uiData.y
9352 }; // Keep within bounds.
9353
9354 if (_this.props.bounds) {
9355 // Save original x and y.
9356 var x = newState.x,
9357 y = newState.y; // Add slack to the values used to calculate bound position. This will ensure that if
9358 // we start removing slack, the element won't react to it right away until it's been
9359 // completely removed.
9360
9361 newState.x += _this.state.slackX;
9362 newState.y += _this.state.slackY; // Get bound position. This will ceil/floor the x and y within the boundaries.
9363
9364 var _getBoundPosition = (0, _positionFns.getBoundPosition)(_assertThisInitialized(_this), newState.x, newState.y),
9365 _getBoundPosition2 = _slicedToArray(_getBoundPosition, 2),
9366 newStateX = _getBoundPosition2[0],
9367 newStateY = _getBoundPosition2[1];
9368
9369 newState.x = newStateX;
9370 newState.y = newStateY; // Recalculate slack by noting how much was shaved by the boundPosition handler.
9371
9372 newState.slackX = _this.state.slackX + (x - newState.x);
9373 newState.slackY = _this.state.slackY + (y - newState.y); // Update the event we fire to reflect what really happened after bounds took effect.
9374
9375 uiData.x = newState.x;
9376 uiData.y = newState.y;
9377 uiData.deltaX = newState.x - _this.state.x;
9378 uiData.deltaY = newState.y - _this.state.y;
9379 } // Short-circuit if user's callback killed it.
9380
9381
9382 var shouldUpdate = _this.props.onDrag(e, uiData);
9383
9384 if (shouldUpdate === false) return false;
9385
9386 _this.setState(newState);
9387 });
9388
9389 _defineProperty(_assertThisInitialized(_this), "onDragStop", function (e, coreData) {
9390 if (!_this.state.dragging) return false; // Short-circuit if user's callback killed it.
9391
9392 var shouldContinue = _this.props.onStop(e, (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData));
9393
9394 if (shouldContinue === false) return false;
9395 (0, _log.default)('Draggable: onDragStop: %j', coreData);
9396 var newState
9397 /*: $Shape<DraggableState>*/
9398 = {
9399 dragging: false,
9400 slackX: 0,
9401 slackY: 0
9402 }; // If this is a controlled component, the result of this operation will be to
9403 // revert back to the old position. We expect a handler on `onDragStop`, at the least.
9404
9405 var controlled = Boolean(_this.props.position);
9406
9407 if (controlled) {
9408 var _this$props$position = _this.props.position,
9409 x = _this$props$position.x,
9410 y = _this$props$position.y;
9411 newState.x = x;
9412 newState.y = y;
9413 }
9414
9415 _this.setState(newState);
9416 });
9417
9418 _this.state = {
9419 // Whether or not we are currently dragging.
9420 dragging: false,
9421 // Whether or not we have been dragged before.
9422 dragged: false,
9423 // Current transform x and y.
9424 x: props.position ? props.position.x : props.defaultPosition.x,
9425 y: props.position ? props.position.y : props.defaultPosition.y,
9426 prevPropsPosition: _objectSpread({}, props.position),
9427 // Used for compensating for out-of-bounds drags
9428 slackX: 0,
9429 slackY: 0,
9430 // Can only determine if SVG after mounting
9431 isElementSVG: false
9432 };
9433
9434 if (props.position && !(props.onDrag || props.onStop)) {
9435 // eslint-disable-next-line no-console
9436 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.');
9437 }
9438
9439 return _this;
9440 }
9441
9442 _createClass(Draggable, [{
9443 key: "componentDidMount",
9444 value: function componentDidMount() {
9445 // Check to see if the element passed is an instanceof SVGElement
9446 if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {
9447 this.setState({
9448 isElementSVG: true
9449 });
9450 }
9451 }
9452 }, {
9453 key: "componentWillUnmount",
9454 value: function componentWillUnmount() {
9455 this.setState({
9456 dragging: false
9457 }); // prevents invariant if unmounted while dragging
9458 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
9459 // the underlying DOM node ourselves. See the README for more information.
9460
9461 }, {
9462 key: "findDOMNode",
9463 value: function findDOMNode()
9464 /*: ?HTMLElement*/
9465 {
9466 var _this$props$nodeRef$c, _this$props, _this$props$nodeRef;
9467
9468 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);
9469 }
9470 }, {
9471 key: "render",
9472 value: function render()
9473 /*: ReactElement<any>*/
9474 {
9475 var _clsx;
9476
9477 var _this$props2 = this.props,
9478 axis = _this$props2.axis,
9479 bounds = _this$props2.bounds,
9480 children = _this$props2.children,
9481 defaultPosition = _this$props2.defaultPosition,
9482 defaultClassName = _this$props2.defaultClassName,
9483 defaultClassNameDragging = _this$props2.defaultClassNameDragging,
9484 defaultClassNameDragged = _this$props2.defaultClassNameDragged,
9485 position = _this$props2.position,
9486 positionOffset = _this$props2.positionOffset,
9487 scale = _this$props2.scale,
9488 draggableCoreProps = _objectWithoutProperties(_this$props2, _excluded);
9489
9490 var style = {};
9491 var svgTransform = null; // If this is controlled, we don't want to move it - unless it's dragging.
9492
9493 var controlled = Boolean(position);
9494 var draggable = !controlled || this.state.dragging;
9495 var validPosition = position || defaultPosition;
9496 var transformOpts = {
9497 // Set left if horizontal drag is enabled
9498 x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,
9499 // Set top if vertical drag is enabled
9500 y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y
9501 }; // If this element was SVG, we use the `transform` attribute.
9502
9503 if (this.state.isElementSVG) {
9504 svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);
9505 } else {
9506 // Add a CSS transform to move the element around. This allows us to move the element around
9507 // without worrying about whether or not it is relatively or absolutely positioned.
9508 // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>
9509 // has a clean slate.
9510 style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);
9511 } // Mark with class while dragging
9512
9513
9514 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
9515 // This makes it flexible to use whatever element is wanted (div, ul, etc)
9516
9517 return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {
9518 onStart: this.onDragStart,
9519 onDrag: this.onDrag,
9520 onStop: this.onDragStop
9521 }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {
9522 className: className,
9523 style: _objectSpread(_objectSpread({}, children.props.style), style),
9524 transform: svgTransform
9525 }));
9526 }
9527 }], [{
9528 key: "getDerivedStateFromProps",
9529 value: // React 16.3+
9530 // Arity (props, state)
9531 function getDerivedStateFromProps(_ref, _ref2)
9532 /*: ?$Shape<DraggableState>*/
9533 {
9534 var position = _ref.position;
9535 var prevPropsPosition = _ref2.prevPropsPosition;
9536
9537 // Set x/y if a new position is provided in props that is different than the previous.
9538 if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {
9539 (0, _log.default)('Draggable: getDerivedStateFromProps %j', {
9540 position: position,
9541 prevPropsPosition: prevPropsPosition
9542 });
9543 return {
9544 x: position.x,
9545 y: position.y,
9546 prevPropsPosition: _objectSpread({}, position)
9547 };
9548 }
9549
9550 return null;
9551 }
9552 }]);
9553
9554 return Draggable;
9555 }(React.Component);
9556
9557 exports["default"] = Draggable;
9558
9559 _defineProperty(Draggable, "displayName", 'Draggable');
9560
9561 _defineProperty(Draggable, "propTypes", _objectSpread(_objectSpread({}, _DraggableCore.default.propTypes), {}, {
9562 /**
9563 * `axis` determines which axis the draggable can move.
9564 *
9565 * Note that all callbacks will still return data as normal. This only
9566 * controls flushing to the DOM.
9567 *
9568 * 'both' allows movement horizontally and vertically.
9569 * 'x' limits movement to horizontal axis.
9570 * 'y' limits movement to vertical axis.
9571 * 'none' limits all movement.
9572 *
9573 * Defaults to 'both'.
9574 */
9575 axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),
9576
9577 /**
9578 * `bounds` determines the range of movement available to the element.
9579 * Available values are:
9580 *
9581 * 'parent' restricts movement within the Draggable's parent node.
9582 *
9583 * Alternatively, pass an object with the following properties, all of which are optional:
9584 *
9585 * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}
9586 *
9587 * All values are in px.
9588 *
9589 * Example:
9590 *
9591 * ```jsx
9592 * let App = React.createClass({
9593 * render: function () {
9594 * return (
9595 * <Draggable bounds={{right: 300, bottom: 300}}>
9596 * <div>Content</div>
9597 * </Draggable>
9598 * );
9599 * }
9600 * });
9601 * ```
9602 */
9603 bounds: _propTypes.default.oneOfType([_propTypes.default.shape({
9604 left: _propTypes.default.number,
9605 right: _propTypes.default.number,
9606 top: _propTypes.default.number,
9607 bottom: _propTypes.default.number
9608 }), _propTypes.default.string, _propTypes.default.oneOf([false])]),
9609 defaultClassName: _propTypes.default.string,
9610 defaultClassNameDragging: _propTypes.default.string,
9611 defaultClassNameDragged: _propTypes.default.string,
9612
9613 /**
9614 * `defaultPosition` specifies the x and y that the dragged item should start at
9615 *
9616 * Example:
9617 *
9618 * ```jsx
9619 * let App = React.createClass({
9620 * render: function () {
9621 * return (
9622 * <Draggable defaultPosition={{x: 25, y: 25}}>
9623 * <div>I start with transformX: 25px and transformY: 25px;</div>
9624 * </Draggable>
9625 * );
9626 * }
9627 * });
9628 * ```
9629 */
9630 defaultPosition: _propTypes.default.shape({
9631 x: _propTypes.default.number,
9632 y: _propTypes.default.number
9633 }),
9634 positionOffset: _propTypes.default.shape({
9635 x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
9636 y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
9637 }),
9638
9639 /**
9640 * `position`, if present, defines the current position of the element.
9641 *
9642 * This is similar to how form elements in React work - if no `position` is supplied, the component
9643 * is uncontrolled.
9644 *
9645 * Example:
9646 *
9647 * ```jsx
9648 * let App = React.createClass({
9649 * render: function () {
9650 * return (
9651 * <Draggable position={{x: 25, y: 25}}>
9652 * <div>I start with transformX: 25px and transformY: 25px;</div>
9653 * </Draggable>
9654 * );
9655 * }
9656 * });
9657 * ```
9658 */
9659 position: _propTypes.default.shape({
9660 x: _propTypes.default.number,
9661 y: _propTypes.default.number
9662 }),
9663
9664 /**
9665 * These properties should be defined on the child, not here.
9666 */
9667 className: _shims.dontSetMe,
9668 style: _shims.dontSetMe,
9669 transform: _shims.dontSetMe
9670 }));
9671
9672 _defineProperty(Draggable, "defaultProps", _objectSpread(_objectSpread({}, _DraggableCore.default.defaultProps), {}, {
9673 axis: 'both',
9674 bounds: false,
9675 defaultClassName: 'react-draggable',
9676 defaultClassNameDragging: 'react-draggable-dragging',
9677 defaultClassNameDragged: 'react-draggable-dragged',
9678 defaultPosition: {
9679 x: 0,
9680 y: 0
9681 },
9682 scale: 1
9683 }));
9684
9685 /***/ }),
9686
9687 /***/ "../node_modules/react-draggable/build/cjs/DraggableCore.js":
9688 /*!******************************************************************!*\
9689 !*** ../node_modules/react-draggable/build/cjs/DraggableCore.js ***!
9690 \******************************************************************/
9691 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9692
9693 "use strict";
9694
9695
9696 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); }
9697
9698 Object.defineProperty(exports, "__esModule", ({
9699 value: true
9700 }));
9701 exports["default"] = void 0;
9702
9703 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9704
9705 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9706
9707 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9708
9709 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9710
9711 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9712
9713 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9714
9715 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9716
9717 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9718
9719 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); }
9720
9721 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; }
9722
9723 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9724
9725 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."); }
9726
9727 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); }
9728
9729 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; }
9730
9731 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; }
9732
9733 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9734
9735 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9736
9737 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); } }
9738
9739 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9740
9741 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); }
9742
9743 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9744
9745 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); }; }
9746
9747 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); }
9748
9749 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9750
9751 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; } }
9752
9753 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9754
9755 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; }
9756
9757 // Simple abstraction for dragging events names.
9758 var eventsFor = {
9759 touch: {
9760 start: 'touchstart',
9761 move: 'touchmove',
9762 stop: 'touchend'
9763 },
9764 mouse: {
9765 start: 'mousedown',
9766 move: 'mousemove',
9767 stop: 'mouseup'
9768 }
9769 }; // Default to mouse events.
9770
9771 var dragEventFor = eventsFor.mouse;
9772 /*:: type DraggableCoreState = {
9773 dragging: boolean,
9774 lastX: number,
9775 lastY: number,
9776 touchIdentifier: ?number
9777 };*/
9778
9779 /*:: export type DraggableData = {
9780 node: HTMLElement,
9781 x: number, y: number,
9782 deltaX: number, deltaY: number,
9783 lastX: number, lastY: number,
9784 };*/
9785
9786 /*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/
9787
9788 /*:: export type ControlPosition = {x: number, y: number};*/
9789
9790 /*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/
9791
9792 /*:: export type DraggableCoreDefaultProps = {
9793 allowAnyClick: boolean,
9794 disabled: boolean,
9795 enableUserSelectHack: boolean,
9796 onStart: DraggableEventHandler,
9797 onDrag: DraggableEventHandler,
9798 onStop: DraggableEventHandler,
9799 onMouseDown: (e: MouseEvent) => void,
9800 scale: number,
9801 };*/
9802
9803 /*:: export type DraggableCoreProps = {
9804 ...DraggableCoreDefaultProps,
9805 cancel: string,
9806 children: ReactElement<any>,
9807 offsetParent: HTMLElement,
9808 grid: [number, number],
9809 handle: string,
9810 nodeRef?: ?React.ElementRef<any>,
9811 };*/
9812
9813 //
9814 // Define <DraggableCore>.
9815 //
9816 // <DraggableCore> is for advanced usage of <Draggable>. It maintains minimal internal state so it can
9817 // work well with libraries that require more control over the element.
9818 //
9819 var DraggableCore = /*#__PURE__*/function (_React$Component) {
9820 _inherits(DraggableCore, _React$Component);
9821
9822 var _super = _createSuper(DraggableCore);
9823
9824 function DraggableCore() {
9825 var _this;
9826
9827 _classCallCheck(this, DraggableCore);
9828
9829 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9830 args[_key] = arguments[_key];
9831 }
9832
9833 _this = _super.call.apply(_super, [this].concat(args));
9834
9835 _defineProperty(_assertThisInitialized(_this), "state", {
9836 dragging: false,
9837 // Used while dragging to determine deltas.
9838 lastX: NaN,
9839 lastY: NaN,
9840 touchIdentifier: null
9841 });
9842
9843 _defineProperty(_assertThisInitialized(_this), "mounted", false);
9844
9845 _defineProperty(_assertThisInitialized(_this), "handleDragStart", function (e) {
9846 // Make it possible to attach event handlers on top of this one.
9847 _this.props.onMouseDown(e); // Only accept left-clicks.
9848
9849
9850 if (!_this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false; // Get nodes. Be sure to grab relative document (could be iframed)
9851
9852 var thisNode = _this.findDOMNode();
9853
9854 if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {
9855 throw new Error('<DraggableCore> not mounted on DragStart!');
9856 }
9857
9858 var ownerDocument = thisNode.ownerDocument; // Short circuit if handle or cancel prop was provided and selector doesn't match.
9859
9860 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)) {
9861 return;
9862 } // Prevent scrolling on mobile devices, like ipad/iphone.
9863 // Important that this is after handle/cancel.
9864
9865
9866 if (e.type === 'touchstart') e.preventDefault(); // Set touch identifier in component state if this is a touch event. This allows us to
9867 // distinguish between individual touches on multitouch screens by identifying which
9868 // touchpoint was set to this element.
9869
9870 var touchIdentifier = (0, _domFns.getTouchIdentifier)(e);
9871
9872 _this.setState({
9873 touchIdentifier: touchIdentifier
9874 }); // Get the current drag point from the event. This is used as the offset.
9875
9876
9877 var position = (0, _positionFns.getControlPosition)(e, touchIdentifier, _assertThisInitialized(_this));
9878 if (position == null) return; // not possible but satisfies flow
9879
9880 var x = position.x,
9881 y = position.y; // Create an event object with all the data parents need to make a decision here.
9882
9883 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9884 (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent); // Call event handler. If it returns explicit false, cancel.
9885
9886 (0, _log.default)('calling', _this.props.onStart);
9887
9888 var shouldUpdate = _this.props.onStart(e, coreEvent);
9889
9890 if (shouldUpdate === false || _this.mounted === false) return; // Add a style to the body to disable user-select. This prevents text from
9891 // being selected all over the page.
9892
9893 if (_this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument); // Initiate dragging. Set the current x and y as offsets
9894 // so we know how much we've moved during the drag. This allows us
9895 // to drag elements around even if they have been moved, without issue.
9896
9897 _this.setState({
9898 dragging: true,
9899 lastX: x,
9900 lastY: y
9901 }); // Add events to the document directly so we catch when the user's mouse/touch moves outside of
9902 // this element. We use different events depending on whether or not we have detected that this
9903 // is a touch-capable device.
9904
9905
9906 (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, _this.handleDrag);
9907 (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, _this.handleDragStop);
9908 });
9909
9910 _defineProperty(_assertThisInitialized(_this), "handleDrag", function (e) {
9911 // Get the current drag point from the event. This is used as the offset.
9912 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9913 if (position == null) return;
9914 var x = position.x,
9915 y = position.y; // Snap to grid if prop has been provided
9916
9917 if (Array.isArray(_this.props.grid)) {
9918 var deltaX = x - _this.state.lastX,
9919 deltaY = y - _this.state.lastY;
9920
9921 var _snapToGrid = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9922
9923 var _snapToGrid2 = _slicedToArray(_snapToGrid, 2);
9924
9925 deltaX = _snapToGrid2[0];
9926 deltaY = _snapToGrid2[1];
9927 if (!deltaX && !deltaY) return; // skip useless drag
9928
9929 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9930 }
9931
9932 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9933 (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent); // Call event handler. If it returns explicit false, trigger end.
9934
9935 var shouldUpdate = _this.props.onDrag(e, coreEvent);
9936
9937 if (shouldUpdate === false || _this.mounted === false) {
9938 try {
9939 // $FlowIgnore
9940 _this.handleDragStop(new MouseEvent('mouseup'));
9941 } catch (err) {
9942 // Old browsers
9943 var event = ((document.createEvent('MouseEvents')
9944 /*: any*/
9945 )
9946 /*: MouseTouchEvent*/
9947 ); // I see why this insanity was deprecated
9948 // $FlowIgnore
9949
9950 event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
9951
9952 _this.handleDragStop(event);
9953 }
9954
9955 return;
9956 }
9957
9958 _this.setState({
9959 lastX: x,
9960 lastY: y
9961 });
9962 });
9963
9964 _defineProperty(_assertThisInitialized(_this), "handleDragStop", function (e) {
9965 if (!_this.state.dragging) return;
9966 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9967 if (position == null) return;
9968 var x = position.x,
9969 y = position.y; // Snap to grid if prop has been provided
9970
9971 if (Array.isArray(_this.props.grid)) {
9972 var deltaX = x - _this.state.lastX || 0;
9973 var deltaY = y - _this.state.lastY || 0;
9974
9975 var _snapToGrid3 = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9976
9977 var _snapToGrid4 = _slicedToArray(_snapToGrid3, 2);
9978
9979 deltaX = _snapToGrid4[0];
9980 deltaY = _snapToGrid4[1];
9981 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9982 }
9983
9984 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y); // Call event handler
9985
9986 var shouldContinue = _this.props.onStop(e, coreEvent);
9987
9988 if (shouldContinue === false || _this.mounted === false) return false;
9989
9990 var thisNode = _this.findDOMNode();
9991
9992 if (thisNode) {
9993 // Remove user-select hack
9994 if (_this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);
9995 }
9996
9997 (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent); // Reset the el.
9998
9999 _this.setState({
10000 dragging: false,
10001 lastX: NaN,
10002 lastY: NaN
10003 });
10004
10005 if (thisNode) {
10006 // Remove event handlers
10007 (0, _log.default)('DraggableCore: Removing handlers');
10008 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, _this.handleDrag);
10009 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, _this.handleDragStop);
10010 }
10011 });
10012
10013 _defineProperty(_assertThisInitialized(_this), "onMouseDown", function (e) {
10014 dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse
10015
10016 return _this.handleDragStart(e);
10017 });
10018
10019 _defineProperty(_assertThisInitialized(_this), "onMouseUp", function (e) {
10020 dragEventFor = eventsFor.mouse;
10021 return _this.handleDragStop(e);
10022 });
10023
10024 _defineProperty(_assertThisInitialized(_this), "onTouchStart", function (e) {
10025 // We're on a touch device now, so change the event handlers
10026 dragEventFor = eventsFor.touch;
10027 return _this.handleDragStart(e);
10028 });
10029
10030 _defineProperty(_assertThisInitialized(_this), "onTouchEnd", function (e) {
10031 // We're on a touch device now, so change the event handlers
10032 dragEventFor = eventsFor.touch;
10033 return _this.handleDragStop(e);
10034 });
10035
10036 return _this;
10037 }
10038
10039 _createClass(DraggableCore, [{
10040 key: "componentDidMount",
10041 value: function componentDidMount() {
10042 this.mounted = true; // Touch handlers must be added with {passive: false} to be cancelable.
10043 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10044
10045 var thisNode = this.findDOMNode();
10046
10047 if (thisNode) {
10048 (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10049 passive: false
10050 });
10051 }
10052 }
10053 }, {
10054 key: "componentWillUnmount",
10055 value: function componentWillUnmount() {
10056 this.mounted = false; // Remove any leftover event handlers. Remove both touch and mouse handlers in case
10057 // some browser quirk caused a touch event to fire during a mouse move, or vice versa.
10058
10059 var thisNode = this.findDOMNode();
10060
10061 if (thisNode) {
10062 var ownerDocument = thisNode.ownerDocument;
10063 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);
10064 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);
10065 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);
10066 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);
10067 (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10068 passive: false
10069 });
10070 if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);
10071 }
10072 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
10073 // the underlying DOM node ourselves. See the README for more information.
10074
10075 }, {
10076 key: "findDOMNode",
10077 value: function findDOMNode()
10078 /*: ?HTMLElement*/
10079 {
10080 var _this$props, _this$props2, _this$props2$nodeRef;
10081
10082 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);
10083 }
10084 }, {
10085 key: "render",
10086 value: function render()
10087 /*: React.Element<any>*/
10088 {
10089 // Reuse the child provided
10090 // This makes it flexible to use whatever element is wanted (div, ul, etc)
10091 return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {
10092 // Note: mouseMove handler is attached to document so it will still function
10093 // when the user drags quickly and leaves the bounds of the element.
10094 onMouseDown: this.onMouseDown,
10095 onMouseUp: this.onMouseUp,
10096 // onTouchStart is added on `componentDidMount` so they can be added with
10097 // {passive: false}, which allows it to cancel. See
10098 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10099 onTouchEnd: this.onTouchEnd
10100 });
10101 }
10102 }]);
10103
10104 return DraggableCore;
10105 }(React.Component);
10106
10107 exports["default"] = DraggableCore;
10108
10109 _defineProperty(DraggableCore, "displayName", 'DraggableCore');
10110
10111 _defineProperty(DraggableCore, "propTypes", {
10112 /**
10113 * `allowAnyClick` allows dragging using any mouse button.
10114 * By default, we only accept the left button.
10115 *
10116 * Defaults to `false`.
10117 */
10118 allowAnyClick: _propTypes.default.bool,
10119
10120 /**
10121 * `disabled`, if true, stops the <Draggable> from dragging. All handlers,
10122 * with the exception of `onMouseDown`, will not fire.
10123 */
10124 disabled: _propTypes.default.bool,
10125
10126 /**
10127 * By default, we add 'user-select:none' attributes to the document body
10128 * to prevent ugly text selection during drag. If this is causing problems
10129 * for your app, set this to `false`.
10130 */
10131 enableUserSelectHack: _propTypes.default.bool,
10132
10133 /**
10134 * `offsetParent`, if set, uses the passed DOM node to compute drag offsets
10135 * instead of using the parent node.
10136 */
10137 offsetParent: function offsetParent(props
10138 /*: DraggableCoreProps*/
10139 , propName
10140 /*: $Keys<DraggableCoreProps>*/
10141 ) {
10142 if (props[propName] && props[propName].nodeType !== 1) {
10143 throw new Error('Draggable\'s offsetParent must be a DOM Node.');
10144 }
10145 },
10146
10147 /**
10148 * `grid` specifies the x and y that dragging should snap to.
10149 */
10150 grid: _propTypes.default.arrayOf(_propTypes.default.number),
10151
10152 /**
10153 * `handle` specifies a selector to be used as the handle that initiates drag.
10154 *
10155 * Example:
10156 *
10157 * ```jsx
10158 * let App = React.createClass({
10159 * render: function () {
10160 * return (
10161 * <Draggable handle=".handle">
10162 * <div>
10163 * <div className="handle">Click me to drag</div>
10164 * <div>This is some other content</div>
10165 * </div>
10166 * </Draggable>
10167 * );
10168 * }
10169 * });
10170 * ```
10171 */
10172 handle: _propTypes.default.string,
10173
10174 /**
10175 * `cancel` specifies a selector to be used to prevent drag initialization.
10176 *
10177 * Example:
10178 *
10179 * ```jsx
10180 * let App = React.createClass({
10181 * render: function () {
10182 * return(
10183 * <Draggable cancel=".cancel">
10184 * <div>
10185 * <div className="cancel">You can't drag from here</div>
10186 * <div>Dragging here works fine</div>
10187 * </div>
10188 * </Draggable>
10189 * );
10190 * }
10191 * });
10192 * ```
10193 */
10194 cancel: _propTypes.default.string,
10195
10196 /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.
10197 * Unfortunately, in order for <Draggable> to work properly, we need raw access
10198 * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`
10199 * as in this example:
10200 *
10201 * function MyComponent() {
10202 * const nodeRef = React.useRef(null);
10203 * return (
10204 * <Draggable nodeRef={nodeRef}>
10205 * <div ref={nodeRef}>Example Target</div>
10206 * </Draggable>
10207 * );
10208 * }
10209 *
10210 * This can be used for arbitrarily nested components, so long as the ref ends up
10211 * pointing to the actual child DOM node and not a custom component.
10212 */
10213 nodeRef: _propTypes.default.object,
10214
10215 /**
10216 * Called when dragging starts.
10217 * If this function returns the boolean false, dragging will be canceled.
10218 */
10219 onStart: _propTypes.default.func,
10220
10221 /**
10222 * Called while dragging.
10223 * If this function returns the boolean false, dragging will be canceled.
10224 */
10225 onDrag: _propTypes.default.func,
10226
10227 /**
10228 * Called when dragging stops.
10229 * If this function returns the boolean false, the drag will remain active.
10230 */
10231 onStop: _propTypes.default.func,
10232
10233 /**
10234 * A workaround option which can be passed if onMouseDown needs to be accessed,
10235 * since it'll always be blocked (as there is internal use of onMouseDown)
10236 */
10237 onMouseDown: _propTypes.default.func,
10238
10239 /**
10240 * `scale`, if set, applies scaling while dragging an element
10241 */
10242 scale: _propTypes.default.number,
10243
10244 /**
10245 * These properties should be defined on the child, not here.
10246 */
10247 className: _shims.dontSetMe,
10248 style: _shims.dontSetMe,
10249 transform: _shims.dontSetMe
10250 });
10251
10252 _defineProperty(DraggableCore, "defaultProps", {
10253 allowAnyClick: false,
10254 // by default only accept left click
10255 disabled: false,
10256 enableUserSelectHack: true,
10257 onStart: function onStart() {},
10258 onDrag: function onDrag() {},
10259 onStop: function onStop() {},
10260 onMouseDown: function onMouseDown() {},
10261 scale: 1
10262 });
10263
10264 /***/ }),
10265
10266 /***/ "../node_modules/react-draggable/build/cjs/cjs.js":
10267 /*!********************************************************!*\
10268 !*** ../node_modules/react-draggable/build/cjs/cjs.js ***!
10269 \********************************************************/
10270 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10271
10272 "use strict";
10273
10274
10275 var _require = __webpack_require__(/*! ./Draggable */ "../node_modules/react-draggable/build/cjs/Draggable.js"),
10276 Draggable = _require.default,
10277 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'.
10278 // See https://github.com/mzabriskie/react-draggable/pull/254
10279 // and https://github.com/mzabriskie/react-draggable/issues/266
10280
10281
10282 module.exports = Draggable;
10283 module.exports["default"] = Draggable;
10284 module.exports.DraggableCore = DraggableCore;
10285
10286 /***/ }),
10287
10288 /***/ "../node_modules/react-draggable/build/cjs/utils/domFns.js":
10289 /*!*****************************************************************!*\
10290 !*** ../node_modules/react-draggable/build/cjs/utils/domFns.js ***!
10291 \*****************************************************************/
10292 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10293
10294 "use strict";
10295
10296
10297 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); }
10298
10299 Object.defineProperty(exports, "__esModule", ({
10300 value: true
10301 }));
10302 exports.addClassName = addClassName;
10303 exports.addEvent = addEvent;
10304 exports.addUserSelectStyles = addUserSelectStyles;
10305 exports.createCSSTransform = createCSSTransform;
10306 exports.createSVGTransform = createSVGTransform;
10307 exports.getTouch = getTouch;
10308 exports.getTouchIdentifier = getTouchIdentifier;
10309 exports.getTranslation = getTranslation;
10310 exports.innerHeight = innerHeight;
10311 exports.innerWidth = innerWidth;
10312 exports.matchesSelector = matchesSelector;
10313 exports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;
10314 exports.offsetXYFromParent = offsetXYFromParent;
10315 exports.outerHeight = outerHeight;
10316 exports.outerWidth = outerWidth;
10317 exports.removeClassName = removeClassName;
10318 exports.removeEvent = removeEvent;
10319 exports.removeUserSelectStyles = removeUserSelectStyles;
10320
10321 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10322
10323 var _getPrefix = _interopRequireWildcard(__webpack_require__(/*! ./getPrefix */ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js"));
10324
10325 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); }
10326
10327 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; }
10328
10329 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; }
10330
10331 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; }
10332
10333 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; }
10334
10335 var matchesSelectorFunc = '';
10336
10337 function matchesSelector(el
10338 /*: Node*/
10339 , selector
10340 /*: string*/
10341 )
10342 /*: boolean*/
10343 {
10344 if (!matchesSelectorFunc) {
10345 matchesSelectorFunc = (0, _shims.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {
10346 // $FlowIgnore: Doesn't think elements are indexable
10347 return (0, _shims.isFunction)(el[method]);
10348 });
10349 } // Might not be found entirely (not an Element?) - in that case, bail
10350 // $FlowIgnore: Doesn't think elements are indexable
10351
10352
10353 if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false; // $FlowIgnore: Doesn't think elements are indexable
10354
10355 return el[matchesSelectorFunc](selector);
10356 } // Works up the tree to the draggable itself attempting to match selector.
10357
10358
10359 function matchesSelectorAndParentsTo(el
10360 /*: Node*/
10361 , selector
10362 /*: string*/
10363 , baseNode
10364 /*: Node*/
10365 )
10366 /*: boolean*/
10367 {
10368 var node = el;
10369
10370 do {
10371 if (matchesSelector(node, selector)) return true;
10372 if (node === baseNode) return false;
10373 node = node.parentNode;
10374 } while (node);
10375
10376 return false;
10377 }
10378
10379 function addEvent(el
10380 /*: ?Node*/
10381 , event
10382 /*: string*/
10383 , handler
10384 /*: Function*/
10385 , inputOptions
10386 /*: Object*/
10387 )
10388 /*: void*/
10389 {
10390 if (!el) return;
10391
10392 var options = _objectSpread({
10393 capture: true
10394 }, inputOptions); // $FlowIgnore[method-unbinding]
10395
10396
10397 if (el.addEventListener) {
10398 el.addEventListener(event, handler, options);
10399 } else if (el.attachEvent) {
10400 el.attachEvent('on' + event, handler);
10401 } else {
10402 // $FlowIgnore: Doesn't think elements are indexable
10403 el['on' + event] = handler;
10404 }
10405 }
10406
10407 function removeEvent(el
10408 /*: ?Node*/
10409 , event
10410 /*: string*/
10411 , handler
10412 /*: Function*/
10413 , inputOptions
10414 /*: Object*/
10415 )
10416 /*: void*/
10417 {
10418 if (!el) return;
10419
10420 var options = _objectSpread({
10421 capture: true
10422 }, inputOptions); // $FlowIgnore[method-unbinding]
10423
10424
10425 if (el.removeEventListener) {
10426 el.removeEventListener(event, handler, options);
10427 } else if (el.detachEvent) {
10428 el.detachEvent('on' + event, handler);
10429 } else {
10430 // $FlowIgnore: Doesn't think elements are indexable
10431 el['on' + event] = null;
10432 }
10433 }
10434
10435 function outerHeight(node
10436 /*: HTMLElement*/
10437 )
10438 /*: number*/
10439 {
10440 // This is deliberately excluding margin for our calculations, since we are using
10441 // offsetTop which is including margin. See getBoundPosition
10442 var height = node.clientHeight;
10443 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10444 height += (0, _shims.int)(computedStyle.borderTopWidth);
10445 height += (0, _shims.int)(computedStyle.borderBottomWidth);
10446 return height;
10447 }
10448
10449 function outerWidth(node
10450 /*: HTMLElement*/
10451 )
10452 /*: number*/
10453 {
10454 // This is deliberately excluding margin for our calculations, since we are using
10455 // offsetLeft which is including margin. See getBoundPosition
10456 var width = node.clientWidth;
10457 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10458 width += (0, _shims.int)(computedStyle.borderLeftWidth);
10459 width += (0, _shims.int)(computedStyle.borderRightWidth);
10460 return width;
10461 }
10462
10463 function innerHeight(node
10464 /*: HTMLElement*/
10465 )
10466 /*: number*/
10467 {
10468 var height = node.clientHeight;
10469 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10470 height -= (0, _shims.int)(computedStyle.paddingTop);
10471 height -= (0, _shims.int)(computedStyle.paddingBottom);
10472 return height;
10473 }
10474
10475 function innerWidth(node
10476 /*: HTMLElement*/
10477 )
10478 /*: number*/
10479 {
10480 var width = node.clientWidth;
10481 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10482 width -= (0, _shims.int)(computedStyle.paddingLeft);
10483 width -= (0, _shims.int)(computedStyle.paddingRight);
10484 return width;
10485 }
10486 /*:: interface EventWithOffset {
10487 clientX: number, clientY: number
10488 }*/
10489
10490
10491 // Get from offsetParent
10492 function offsetXYFromParent(evt
10493 /*: EventWithOffset*/
10494 , offsetParent
10495 /*: HTMLElement*/
10496 , scale
10497 /*: number*/
10498 )
10499 /*: ControlPosition*/
10500 {
10501 var isBody = offsetParent === offsetParent.ownerDocument.body;
10502 var offsetParentRect = isBody ? {
10503 left: 0,
10504 top: 0
10505 } : offsetParent.getBoundingClientRect();
10506 var x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;
10507 var y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;
10508 return {
10509 x: x,
10510 y: y
10511 };
10512 }
10513
10514 function createCSSTransform(controlPos
10515 /*: ControlPosition*/
10516 , positionOffset
10517 /*: PositionOffsetControlPosition*/
10518 )
10519 /*: Object*/
10520 {
10521 var translation = getTranslation(controlPos, positionOffset, 'px');
10522 return _defineProperty({}, (0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default), translation);
10523 }
10524
10525 function createSVGTransform(controlPos
10526 /*: ControlPosition*/
10527 , positionOffset
10528 /*: PositionOffsetControlPosition*/
10529 )
10530 /*: string*/
10531 {
10532 var translation = getTranslation(controlPos, positionOffset, '');
10533 return translation;
10534 }
10535
10536 function getTranslation(_ref2, positionOffset
10537 /*: PositionOffsetControlPosition*/
10538 , unitSuffix
10539 /*: string*/
10540 )
10541 /*: string*/
10542 {
10543 var x = _ref2.x,
10544 y = _ref2.y;
10545 var translation = "translate(".concat(x).concat(unitSuffix, ",").concat(y).concat(unitSuffix, ")");
10546
10547 if (positionOffset) {
10548 var defaultX = "".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);
10549 var defaultY = "".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);
10550 translation = "translate(".concat(defaultX, ", ").concat(defaultY, ")") + translation;
10551 }
10552
10553 return translation;
10554 }
10555
10556 function getTouch(e
10557 /*: MouseTouchEvent*/
10558 , identifier
10559 /*: number*/
10560 )
10561 /*: ?{clientX: number, clientY: number}*/
10562 {
10563 return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, function (t) {
10564 return identifier === t.identifier;
10565 }) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, function (t) {
10566 return identifier === t.identifier;
10567 });
10568 }
10569
10570 function getTouchIdentifier(e
10571 /*: MouseTouchEvent*/
10572 )
10573 /*: ?number*/
10574 {
10575 if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;
10576 if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;
10577 } // User-select Hacks:
10578 //
10579 // Useful for preventing blue highlights all over everything when dragging.
10580 // Note we're passing `document` b/c we could be iframed
10581
10582
10583 function addUserSelectStyles(doc
10584 /*: ?Document*/
10585 ) {
10586 if (!doc) return;
10587 var styleEl = doc.getElementById('react-draggable-style-el');
10588
10589 if (!styleEl) {
10590 styleEl = doc.createElement('style');
10591 styleEl.type = 'text/css';
10592 styleEl.id = 'react-draggable-style-el';
10593 styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n';
10594 styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\n';
10595 doc.getElementsByTagName('head')[0].appendChild(styleEl);
10596 }
10597
10598 if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');
10599 }
10600
10601 function removeUserSelectStyles(doc
10602 /*: ?Document*/
10603 ) {
10604 if (!doc) return;
10605
10606 try {
10607 if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection'); // $FlowIgnore: IE
10608
10609 if (doc.selection) {
10610 // $FlowIgnore: IE
10611 doc.selection.empty();
10612 } else {
10613 // Remove selection caused by scroll, unless it's a focused input
10614 // (we use doc.defaultView in case we're in an iframe)
10615 var selection = (doc.defaultView || window).getSelection();
10616
10617 if (selection && selection.type !== 'Caret') {
10618 selection.removeAllRanges();
10619 }
10620 }
10621 } catch (e) {// probably IE
10622 }
10623 }
10624
10625 function addClassName(el
10626 /*: HTMLElement*/
10627 , className
10628 /*: string*/
10629 ) {
10630 if (el.classList) {
10631 el.classList.add(className);
10632 } else {
10633 if (!el.className.match(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)")))) {
10634 el.className += " ".concat(className);
10635 }
10636 }
10637 }
10638
10639 function removeClassName(el
10640 /*: HTMLElement*/
10641 , className
10642 /*: string*/
10643 ) {
10644 if (el.classList) {
10645 el.classList.remove(className);
10646 } else {
10647 el.className = el.className.replace(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)"), 'g'), '');
10648 }
10649 }
10650
10651 /***/ }),
10652
10653 /***/ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js":
10654 /*!********************************************************************!*\
10655 !*** ../node_modules/react-draggable/build/cjs/utils/getPrefix.js ***!
10656 \********************************************************************/
10657 /***/ ((__unused_webpack_module, exports) => {
10658
10659 "use strict";
10660
10661
10662 Object.defineProperty(exports, "__esModule", ({
10663 value: true
10664 }));
10665 exports.browserPrefixToKey = browserPrefixToKey;
10666 exports.browserPrefixToStyle = browserPrefixToStyle;
10667 exports["default"] = void 0;
10668 exports.getPrefix = getPrefix;
10669 var prefixes = ['Moz', 'Webkit', 'O', 'ms'];
10670
10671 function getPrefix()
10672 /*: string*/
10673 {
10674 var _window$document, _window$document$docu;
10675
10676 var prop
10677 /*: string*/
10678 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';
10679 // Ensure we're running in an environment where there is actually a global
10680 // `window` obj
10681 if (typeof window === 'undefined') return ''; // If we're in a pseudo-browser server-side environment, this access
10682 // path may not exist, so bail out if it doesn't.
10683
10684 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;
10685 if (!style) return '';
10686 if (prop in style) return '';
10687
10688 for (var i = 0; i < prefixes.length; i++) {
10689 if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];
10690 }
10691
10692 return '';
10693 }
10694
10695 function browserPrefixToKey(prop
10696 /*: string*/
10697 , prefix
10698 /*: string*/
10699 )
10700 /*: string*/
10701 {
10702 return prefix ? "".concat(prefix).concat(kebabToTitleCase(prop)) : prop;
10703 }
10704
10705 function browserPrefixToStyle(prop
10706 /*: string*/
10707 , prefix
10708 /*: string*/
10709 )
10710 /*: string*/
10711 {
10712 return prefix ? "-".concat(prefix.toLowerCase(), "-").concat(prop) : prop;
10713 }
10714
10715 function kebabToTitleCase(str
10716 /*: string*/
10717 )
10718 /*: string*/
10719 {
10720 var out = '';
10721 var shouldCapitalize = true;
10722
10723 for (var i = 0; i < str.length; i++) {
10724 if (shouldCapitalize) {
10725 out += str[i].toUpperCase();
10726 shouldCapitalize = false;
10727 } else if (str[i] === '-') {
10728 shouldCapitalize = true;
10729 } else {
10730 out += str[i];
10731 }
10732 }
10733
10734 return out;
10735 } // Default export is the prefix itself, like 'Moz', 'Webkit', etc
10736 // Note that you may have to re-test for certain things; for instance, Chrome 50
10737 // can handle unprefixed `transform`, but not unprefixed `user-select`
10738
10739
10740 var _default = (getPrefix()
10741 /*: string*/
10742 );
10743
10744 exports["default"] = _default;
10745
10746 /***/ }),
10747
10748 /***/ "../node_modules/react-draggable/build/cjs/utils/log.js":
10749 /*!**************************************************************!*\
10750 !*** ../node_modules/react-draggable/build/cjs/utils/log.js ***!
10751 \**************************************************************/
10752 /***/ ((__unused_webpack_module, exports) => {
10753
10754 "use strict";
10755
10756
10757 Object.defineProperty(exports, "__esModule", ({
10758 value: true
10759 }));
10760 exports["default"] = log;
10761
10762 /*eslint no-console:0*/
10763 function log() {
10764 var _console;
10765
10766 if (false) {}
10767 }
10768
10769 /***/ }),
10770
10771 /***/ "../node_modules/react-draggable/build/cjs/utils/positionFns.js":
10772 /*!**********************************************************************!*\
10773 !*** ../node_modules/react-draggable/build/cjs/utils/positionFns.js ***!
10774 \**********************************************************************/
10775 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10776
10777 "use strict";
10778
10779
10780 Object.defineProperty(exports, "__esModule", ({
10781 value: true
10782 }));
10783 exports.canDragX = canDragX;
10784 exports.canDragY = canDragY;
10785 exports.createCoreData = createCoreData;
10786 exports.createDraggableData = createDraggableData;
10787 exports.getBoundPosition = getBoundPosition;
10788 exports.getControlPosition = getControlPosition;
10789 exports.snapToGrid = snapToGrid;
10790
10791 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10792
10793 var _domFns = __webpack_require__(/*! ./domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
10794
10795 function getBoundPosition(draggable
10796 /*: Draggable*/
10797 , x
10798 /*: number*/
10799 , y
10800 /*: number*/
10801 )
10802 /*: [number, number]*/
10803 {
10804 // If no bounds, short-circuit and move on
10805 if (!draggable.props.bounds) return [x, y]; // Clone new bounds
10806
10807 var bounds = draggable.props.bounds;
10808 bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);
10809 var node = findDOMNode(draggable);
10810
10811 if (typeof bounds === 'string') {
10812 var ownerDocument = node.ownerDocument;
10813 var ownerWindow = ownerDocument.defaultView;
10814 var boundNode;
10815
10816 if (bounds === 'parent') {
10817 boundNode = node.parentNode;
10818 } else {
10819 boundNode = ownerDocument.querySelector(bounds);
10820 }
10821
10822 if (!(boundNode instanceof ownerWindow.HTMLElement)) {
10823 throw new Error('Bounds selector "' + bounds + '" could not find an element.');
10824 }
10825
10826 var boundNodeEl
10827 /*: HTMLElement*/
10828 = boundNode; // for Flow, can't seem to refine correctly
10829
10830 var nodeStyle = ownerWindow.getComputedStyle(node);
10831 var boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl); // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.
10832
10833 bounds = {
10834 left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),
10835 top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),
10836 right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),
10837 bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)
10838 };
10839 } // Keep x and y below right and bottom limits...
10840
10841
10842 if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);
10843 if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom); // But above left and top limits.
10844
10845 if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);
10846 if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);
10847 return [x, y];
10848 }
10849
10850 function snapToGrid(grid
10851 /*: [number, number]*/
10852 , pendingX
10853 /*: number*/
10854 , pendingY
10855 /*: number*/
10856 )
10857 /*: [number, number]*/
10858 {
10859 var x = Math.round(pendingX / grid[0]) * grid[0];
10860 var y = Math.round(pendingY / grid[1]) * grid[1];
10861 return [x, y];
10862 }
10863
10864 function canDragX(draggable
10865 /*: Draggable*/
10866 )
10867 /*: boolean*/
10868 {
10869 return draggable.props.axis === 'both' || draggable.props.axis === 'x';
10870 }
10871
10872 function canDragY(draggable
10873 /*: Draggable*/
10874 )
10875 /*: boolean*/
10876 {
10877 return draggable.props.axis === 'both' || draggable.props.axis === 'y';
10878 } // Get {x, y} positions from event.
10879
10880
10881 function getControlPosition(e
10882 /*: MouseTouchEvent*/
10883 , touchIdentifier
10884 /*: ?number*/
10885 , draggableCore
10886 /*: DraggableCore*/
10887 )
10888 /*: ?ControlPosition*/
10889 {
10890 var touchObj = typeof touchIdentifier === 'number' ? (0, _domFns.getTouch)(e, touchIdentifier) : null;
10891 if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch
10892
10893 var node = findDOMNode(draggableCore); // User can provide an offsetParent if desired.
10894
10895 var offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;
10896 return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);
10897 } // Create an data object exposed by <DraggableCore>'s events
10898
10899
10900 function createCoreData(draggable
10901 /*: DraggableCore*/
10902 , x
10903 /*: number*/
10904 , y
10905 /*: number*/
10906 )
10907 /*: DraggableData*/
10908 {
10909 var state = draggable.state;
10910 var isStart = !(0, _shims.isNum)(state.lastX);
10911 var node = findDOMNode(draggable);
10912
10913 if (isStart) {
10914 // If this is our first move, use the x and y as last coords.
10915 return {
10916 node: node,
10917 deltaX: 0,
10918 deltaY: 0,
10919 lastX: x,
10920 lastY: y,
10921 x: x,
10922 y: y
10923 };
10924 } else {
10925 // Otherwise calculate proper values.
10926 return {
10927 node: node,
10928 deltaX: x - state.lastX,
10929 deltaY: y - state.lastY,
10930 lastX: state.lastX,
10931 lastY: state.lastY,
10932 x: x,
10933 y: y
10934 };
10935 }
10936 } // Create an data exposed by <Draggable>'s events
10937
10938
10939 function createDraggableData(draggable
10940 /*: Draggable*/
10941 , coreData
10942 /*: DraggableData*/
10943 )
10944 /*: DraggableData*/
10945 {
10946 var scale = draggable.props.scale;
10947 return {
10948 node: coreData.node,
10949 x: draggable.state.x + coreData.deltaX / scale,
10950 y: draggable.state.y + coreData.deltaY / scale,
10951 deltaX: coreData.deltaX / scale,
10952 deltaY: coreData.deltaY / scale,
10953 lastX: draggable.state.x,
10954 lastY: draggable.state.y
10955 };
10956 } // A lot faster than stringify/parse
10957
10958
10959 function cloneBounds(bounds
10960 /*: Bounds*/
10961 )
10962 /*: Bounds*/
10963 {
10964 return {
10965 left: bounds.left,
10966 top: bounds.top,
10967 right: bounds.right,
10968 bottom: bounds.bottom
10969 };
10970 }
10971
10972 function findDOMNode(draggable
10973 /*: Draggable | DraggableCore*/
10974 )
10975 /*: HTMLElement*/
10976 {
10977 var node = draggable.findDOMNode();
10978
10979 if (!node) {
10980 throw new Error('<DraggableCore>: Unmounted during event!');
10981 } // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME
10982
10983
10984 return node;
10985 }
10986
10987 /***/ }),
10988
10989 /***/ "../node_modules/react-draggable/build/cjs/utils/shims.js":
10990 /*!****************************************************************!*\
10991 !*** ../node_modules/react-draggable/build/cjs/utils/shims.js ***!
10992 \****************************************************************/
10993 /***/ ((__unused_webpack_module, exports) => {
10994
10995 "use strict";
10996
10997
10998 Object.defineProperty(exports, "__esModule", ({
10999 value: true
11000 }));
11001 exports.dontSetMe = dontSetMe;
11002 exports.findInArray = findInArray;
11003 exports.int = int;
11004 exports.isFunction = isFunction;
11005 exports.isNum = isNum;
11006
11007 // @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc
11008 function findInArray(array
11009 /*: Array<any> | TouchList*/
11010 , callback
11011 /*: Function*/
11012 )
11013 /*: any*/
11014 {
11015 for (var i = 0, length = array.length; i < length; i++) {
11016 if (callback.apply(callback, [array[i], i, array])) return array[i];
11017 }
11018 }
11019
11020 function isFunction(func
11021 /*: any*/
11022 )
11023 /*: boolean %checks*/
11024 {
11025 // $FlowIgnore[method-unbinding]
11026 return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';
11027 }
11028
11029 function isNum(num
11030 /*: any*/
11031 )
11032 /*: boolean %checks*/
11033 {
11034 return typeof num === 'number' && !isNaN(num);
11035 }
11036
11037 function int(a
11038 /*: string*/
11039 )
11040 /*: number*/
11041 {
11042 return parseInt(a, 10);
11043 }
11044
11045 function dontSetMe(props
11046 /*: Object*/
11047 , propName
11048 /*: string*/
11049 , componentName
11050 /*: string*/
11051 )
11052 /*: ?Error*/
11053 {
11054 if (props[propName]) {
11055 return new Error("Invalid prop ".concat(propName, " passed to ").concat(componentName, " - do not set this, set it on the child."));
11056 }
11057 }
11058
11059 /***/ }),
11060
11061 /***/ "../node_modules/react-is/cjs/react-is.development.js":
11062 /*!************************************************************!*\
11063 !*** ../node_modules/react-is/cjs/react-is.development.js ***!
11064 \************************************************************/
11065 /***/ ((__unused_webpack_module, exports) => {
11066
11067 "use strict";
11068 /**
11069 * @license React
11070 * react-is.development.js
11071 *
11072 * Copyright (c) Facebook, Inc. and its affiliates.
11073 *
11074 * This source code is licensed under the MIT license found in the
11075 * LICENSE file in the root directory of this source tree.
11076 */
11077
11078
11079
11080 if (true) {
11081 (function() {
11082 'use strict';
11083
11084 // ATTENTION
11085 // When adding new symbols to this file,
11086 // Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'
11087 // The Symbol used to tag the ReactElement-like types.
11088 var REACT_ELEMENT_TYPE = Symbol.for('react.element');
11089 var REACT_PORTAL_TYPE = Symbol.for('react.portal');
11090 var REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');
11091 var REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');
11092 var REACT_PROFILER_TYPE = Symbol.for('react.profiler');
11093 var REACT_PROVIDER_TYPE = Symbol.for('react.provider');
11094 var REACT_CONTEXT_TYPE = Symbol.for('react.context');
11095 var REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_context');
11096 var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');
11097 var REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');
11098 var REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');
11099 var REACT_MEMO_TYPE = Symbol.for('react.memo');
11100 var REACT_LAZY_TYPE = Symbol.for('react.lazy');
11101 var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');
11102
11103 // -----------------------------------------------------------------------------
11104
11105 var enableScopeAPI = false; // Experimental Create Event Handle API.
11106 var enableCacheElement = false;
11107 var enableTransitionTracing = false; // No known bugs, but needs performance testing
11108
11109 var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber
11110 // stuff. Intended to enable React core members to more easily debug scheduling
11111 // issues in DEV builds.
11112
11113 var enableDebugTracing = false; // Track which Fiber(s) schedule render work.
11114
11115 var REACT_MODULE_REFERENCE;
11116
11117 {
11118 REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');
11119 }
11120
11121 function isValidElementType(type) {
11122 if (typeof type === 'string' || typeof type === 'function') {
11123 return true;
11124 } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).
11125
11126
11127 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 ) {
11128 return true;
11129 }
11130
11131 if (typeof type === 'object' && type !== null) {
11132 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
11133 // types supported by any Flight configuration anywhere since
11134 // we don't know which Flight build this will end up being used
11135 // with.
11136 type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {
11137 return true;
11138 }
11139 }
11140
11141 return false;
11142 }
11143
11144 function typeOf(object) {
11145 if (typeof object === 'object' && object !== null) {
11146 var $$typeof = object.$$typeof;
11147
11148 switch ($$typeof) {
11149 case REACT_ELEMENT_TYPE:
11150 var type = object.type;
11151
11152 switch (type) {
11153 case REACT_FRAGMENT_TYPE:
11154 case REACT_PROFILER_TYPE:
11155 case REACT_STRICT_MODE_TYPE:
11156 case REACT_SUSPENSE_TYPE:
11157 case REACT_SUSPENSE_LIST_TYPE:
11158 return type;
11159
11160 default:
11161 var $$typeofType = type && type.$$typeof;
11162
11163 switch ($$typeofType) {
11164 case REACT_SERVER_CONTEXT_TYPE:
11165 case REACT_CONTEXT_TYPE:
11166 case REACT_FORWARD_REF_TYPE:
11167 case REACT_LAZY_TYPE:
11168 case REACT_MEMO_TYPE:
11169 case REACT_PROVIDER_TYPE:
11170 return $$typeofType;
11171
11172 default:
11173 return $$typeof;
11174 }
11175
11176 }
11177
11178 case REACT_PORTAL_TYPE:
11179 return $$typeof;
11180 }
11181 }
11182
11183 return undefined;
11184 }
11185 var ContextConsumer = REACT_CONTEXT_TYPE;
11186 var ContextProvider = REACT_PROVIDER_TYPE;
11187 var Element = REACT_ELEMENT_TYPE;
11188 var ForwardRef = REACT_FORWARD_REF_TYPE;
11189 var Fragment = REACT_FRAGMENT_TYPE;
11190 var Lazy = REACT_LAZY_TYPE;
11191 var Memo = REACT_MEMO_TYPE;
11192 var Portal = REACT_PORTAL_TYPE;
11193 var Profiler = REACT_PROFILER_TYPE;
11194 var StrictMode = REACT_STRICT_MODE_TYPE;
11195 var Suspense = REACT_SUSPENSE_TYPE;
11196 var SuspenseList = REACT_SUSPENSE_LIST_TYPE;
11197 var hasWarnedAboutDeprecatedIsAsyncMode = false;
11198 var hasWarnedAboutDeprecatedIsConcurrentMode = false; // AsyncMode should be deprecated
11199
11200 function isAsyncMode(object) {
11201 {
11202 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
11203 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
11204
11205 console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11206 }
11207 }
11208
11209 return false;
11210 }
11211 function isConcurrentMode(object) {
11212 {
11213 if (!hasWarnedAboutDeprecatedIsConcurrentMode) {
11214 hasWarnedAboutDeprecatedIsConcurrentMode = true; // Using console['warn'] to evade Babel and ESLint
11215
11216 console['warn']('The ReactIs.isConcurrentMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11217 }
11218 }
11219
11220 return false;
11221 }
11222 function isContextConsumer(object) {
11223 return typeOf(object) === REACT_CONTEXT_TYPE;
11224 }
11225 function isContextProvider(object) {
11226 return typeOf(object) === REACT_PROVIDER_TYPE;
11227 }
11228 function isElement(object) {
11229 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
11230 }
11231 function isForwardRef(object) {
11232 return typeOf(object) === REACT_FORWARD_REF_TYPE;
11233 }
11234 function isFragment(object) {
11235 return typeOf(object) === REACT_FRAGMENT_TYPE;
11236 }
11237 function isLazy(object) {
11238 return typeOf(object) === REACT_LAZY_TYPE;
11239 }
11240 function isMemo(object) {
11241 return typeOf(object) === REACT_MEMO_TYPE;
11242 }
11243 function isPortal(object) {
11244 return typeOf(object) === REACT_PORTAL_TYPE;
11245 }
11246 function isProfiler(object) {
11247 return typeOf(object) === REACT_PROFILER_TYPE;
11248 }
11249 function isStrictMode(object) {
11250 return typeOf(object) === REACT_STRICT_MODE_TYPE;
11251 }
11252 function isSuspense(object) {
11253 return typeOf(object) === REACT_SUSPENSE_TYPE;
11254 }
11255 function isSuspenseList(object) {
11256 return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;
11257 }
11258
11259 exports.ContextConsumer = ContextConsumer;
11260 exports.ContextProvider = ContextProvider;
11261 exports.Element = Element;
11262 exports.ForwardRef = ForwardRef;
11263 exports.Fragment = Fragment;
11264 exports.Lazy = Lazy;
11265 exports.Memo = Memo;
11266 exports.Portal = Portal;
11267 exports.Profiler = Profiler;
11268 exports.StrictMode = StrictMode;
11269 exports.Suspense = Suspense;
11270 exports.SuspenseList = SuspenseList;
11271 exports.isAsyncMode = isAsyncMode;
11272 exports.isConcurrentMode = isConcurrentMode;
11273 exports.isContextConsumer = isContextConsumer;
11274 exports.isContextProvider = isContextProvider;
11275 exports.isElement = isElement;
11276 exports.isForwardRef = isForwardRef;
11277 exports.isFragment = isFragment;
11278 exports.isLazy = isLazy;
11279 exports.isMemo = isMemo;
11280 exports.isPortal = isPortal;
11281 exports.isProfiler = isProfiler;
11282 exports.isStrictMode = isStrictMode;
11283 exports.isSuspense = isSuspense;
11284 exports.isSuspenseList = isSuspenseList;
11285 exports.isValidElementType = isValidElementType;
11286 exports.typeOf = typeOf;
11287 })();
11288 }
11289
11290
11291 /***/ }),
11292
11293 /***/ "../node_modules/react-is/index.js":
11294 /*!*****************************************!*\
11295 !*** ../node_modules/react-is/index.js ***!
11296 \*****************************************/
11297 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11298
11299 "use strict";
11300
11301
11302 if (false) {} else {
11303 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
11304 }
11305
11306
11307 /***/ }),
11308
11309 /***/ "../node_modules/shallowequal/index.js":
11310 /*!*********************************************!*\
11311 !*** ../node_modules/shallowequal/index.js ***!
11312 \*********************************************/
11313 /***/ ((module) => {
11314
11315 //
11316
11317 module.exports = function shallowEqual(objA, objB, compare, compareContext) {
11318 var ret = compare ? compare.call(compareContext, objA, objB) : void 0;
11319
11320 if (ret !== void 0) {
11321 return !!ret;
11322 }
11323
11324 if (objA === objB) {
11325 return true;
11326 }
11327
11328 if (typeof objA !== "object" || !objA || typeof objB !== "object" || !objB) {
11329 return false;
11330 }
11331
11332 var keysA = Object.keys(objA);
11333 var keysB = Object.keys(objB);
11334
11335 if (keysA.length !== keysB.length) {
11336 return false;
11337 }
11338
11339 var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);
11340
11341 // Test for A's keys different from B.
11342 for (var idx = 0; idx < keysA.length; idx++) {
11343 var key = keysA[idx];
11344
11345 if (!bHasOwnProperty(key)) {
11346 return false;
11347 }
11348
11349 var valueA = objA[key];
11350 var valueB = objB[key];
11351
11352 ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;
11353
11354 if (ret === false || (ret === void 0 && valueA !== valueB)) {
11355 return false;
11356 }
11357 }
11358
11359 return true;
11360 };
11361
11362
11363 /***/ }),
11364
11365 /***/ "../node_modules/styled-components/dist/styled-components.browser.esm.js":
11366 /*!*******************************************************************************!*\
11367 !*** ../node_modules/styled-components/dist/styled-components.browser.esm.js ***!
11368 \*******************************************************************************/
11369 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11370
11371 "use strict";
11372 __webpack_require__.r(__webpack_exports__);
11373 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11374 /* harmony export */ ServerStyleSheet: () => (/* binding */ Ue),
11375 /* harmony export */ StyleSheetConsumer: () => (/* binding */ ue),
11376 /* harmony export */ StyleSheetContext: () => (/* binding */ ce),
11377 /* harmony export */ StyleSheetManager: () => (/* binding */ me),
11378 /* harmony export */ ThemeConsumer: () => (/* binding */ Ge),
11379 /* harmony export */ ThemeContext: () => (/* binding */ Me),
11380 /* harmony export */ ThemeProvider: () => (/* binding */ Le),
11381 /* harmony export */ __PRIVATE__: () => (/* binding */ Ze),
11382 /* harmony export */ createGlobalStyle: () => (/* binding */ $e),
11383 /* harmony export */ css: () => (/* binding */ Ae),
11384 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
11385 /* harmony export */ isStyledComponent: () => (/* binding */ _),
11386 /* harmony export */ keyframes: () => (/* binding */ We),
11387 /* harmony export */ useTheme: () => (/* binding */ Xe),
11388 /* harmony export */ version: () => (/* binding */ A),
11389 /* harmony export */ withTheme: () => (/* binding */ Je)
11390 /* harmony export */ });
11391 /* harmony import */ var react_is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
11392 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
11393 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
11394 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! shallowequal */ "../node_modules/shallowequal/index.js");
11395 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(shallowequal__WEBPACK_IMPORTED_MODULE_2__);
11396 /* harmony import */ var _emotion_stylis__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @emotion/stylis */ "../node_modules/@emotion/stylis/dist/stylis.browser.esm.js");
11397 /* 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");
11398 /* 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");
11399 /* 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");
11400 /* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6__);
11401 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);
11402 //# sourceMappingURL=styled-components.browser.esm.js.map
11403
11404
11405 /***/ }),
11406
11407 /***/ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js":
11408 /*!*****************************************************************************************************!*\
11409 !*** ../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js ***!
11410 \*****************************************************************************************************/
11411 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11412
11413 "use strict";
11414 __webpack_require__.r(__webpack_exports__);
11415 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11416 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
11417 /* harmony export */ });
11418 var unitlessKeys = {
11419 animationIterationCount: 1,
11420 borderImageOutset: 1,
11421 borderImageSlice: 1,
11422 borderImageWidth: 1,
11423 boxFlex: 1,
11424 boxFlexGroup: 1,
11425 boxOrdinalGroup: 1,
11426 columnCount: 1,
11427 columns: 1,
11428 flex: 1,
11429 flexGrow: 1,
11430 flexPositive: 1,
11431 flexShrink: 1,
11432 flexNegative: 1,
11433 flexOrder: 1,
11434 gridRow: 1,
11435 gridRowEnd: 1,
11436 gridRowSpan: 1,
11437 gridRowStart: 1,
11438 gridColumn: 1,
11439 gridColumnEnd: 1,
11440 gridColumnSpan: 1,
11441 gridColumnStart: 1,
11442 msGridRow: 1,
11443 msGridRowSpan: 1,
11444 msGridColumn: 1,
11445 msGridColumnSpan: 1,
11446 fontWeight: 1,
11447 lineHeight: 1,
11448 opacity: 1,
11449 order: 1,
11450 orphans: 1,
11451 tabSize: 1,
11452 widows: 1,
11453 zIndex: 1,
11454 zoom: 1,
11455 WebkitLineClamp: 1,
11456 // SVG-related properties
11457 fillOpacity: 1,
11458 floodOpacity: 1,
11459 stopOpacity: 1,
11460 strokeDasharray: 1,
11461 strokeDashoffset: 1,
11462 strokeMiterlimit: 1,
11463 strokeOpacity: 1,
11464 strokeWidth: 1
11465 };
11466
11467 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (unitlessKeys);
11468
11469
11470 /***/ }),
11471
11472 /***/ "../node_modules/validator/lib/isFQDN.js":
11473 /*!***********************************************!*\
11474 !*** ../node_modules/validator/lib/isFQDN.js ***!
11475 \***********************************************/
11476 /***/ ((module, exports, __webpack_require__) => {
11477
11478 "use strict";
11479
11480
11481 Object.defineProperty(exports, "__esModule", ({
11482 value: true
11483 }));
11484 exports["default"] = isFQDN;
11485
11486 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11487
11488 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11489
11490 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11491
11492 var default_fqdn_options = {
11493 require_tld: true,
11494 allow_underscores: false,
11495 allow_trailing_dot: false,
11496 allow_numeric_tld: false,
11497 allow_wildcard: false,
11498 ignore_max_length: false
11499 };
11500
11501 function isFQDN(str, options) {
11502 (0, _assertString.default)(str);
11503 options = (0, _merge.default)(options, default_fqdn_options);
11504 /* Remove the optional trailing dot before checking validity */
11505
11506 if (options.allow_trailing_dot && str[str.length - 1] === '.') {
11507 str = str.substring(0, str.length - 1);
11508 }
11509 /* Remove the optional wildcard before checking validity */
11510
11511
11512 if (options.allow_wildcard === true && str.indexOf('*.') === 0) {
11513 str = str.substring(2);
11514 }
11515
11516 var parts = str.split('.');
11517 var tld = parts[parts.length - 1];
11518
11519 if (options.require_tld) {
11520 // disallow fqdns without tld
11521 if (parts.length < 2) {
11522 return false;
11523 }
11524
11525 if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
11526 return false;
11527 } // disallow spaces
11528
11529
11530 if (/\s/.test(tld)) {
11531 return false;
11532 }
11533 } // reject numeric TLDs
11534
11535
11536 if (!options.allow_numeric_tld && /^\d+$/.test(tld)) {
11537 return false;
11538 }
11539
11540 return parts.every(function (part) {
11541 if (part.length > 63 && !options.ignore_max_length) {
11542 return false;
11543 }
11544
11545 if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) {
11546 return false;
11547 } // disallow full-width chars
11548
11549
11550 if (/[\uff01-\uff5e]/.test(part)) {
11551 return false;
11552 } // disallow parts starting or ending with hyphen
11553
11554
11555 if (/^-|-$/.test(part)) {
11556 return false;
11557 }
11558
11559 if (!options.allow_underscores && /_/.test(part)) {
11560 return false;
11561 }
11562
11563 return true;
11564 });
11565 }
11566
11567 module.exports = exports.default;
11568 module.exports["default"] = exports.default;
11569
11570 /***/ }),
11571
11572 /***/ "../node_modules/validator/lib/isIP.js":
11573 /*!*********************************************!*\
11574 !*** ../node_modules/validator/lib/isIP.js ***!
11575 \*********************************************/
11576 /***/ ((module, exports, __webpack_require__) => {
11577
11578 "use strict";
11579
11580
11581 Object.defineProperty(exports, "__esModule", ({
11582 value: true
11583 }));
11584 exports["default"] = isIP;
11585
11586 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11587
11588 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11589
11590 /**
11591 11.3. Examples
11592
11593 The following addresses
11594
11595 fe80::1234 (on the 1st link of the node)
11596 ff02::5678 (on the 5th link of the node)
11597 ff08::9abc (on the 10th organization of the node)
11598
11599 would be represented as follows:
11600
11601 fe80::1234%1
11602 ff02::5678%5
11603 ff08::9abc%10
11604
11605 (Here we assume a natural translation from a zone index to the
11606 <zone_id> part, where the Nth zone of any scope is translated into
11607 "N".)
11608
11609 If we use interface names as <zone_id>, those addresses could also be
11610 represented as follows:
11611
11612 fe80::1234%ne0
11613 ff02::5678%pvc1.3
11614 ff08::9abc%interface10
11615
11616 where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
11617 to the 5th link, and "interface10" belongs to the 10th organization.
11618 * * */
11619 var IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
11620 var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
11621 var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
11622 var IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';
11623 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,})?$');
11624
11625 function isIP(str) {
11626 var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
11627 (0, _assertString.default)(str);
11628 version = String(version);
11629
11630 if (!version) {
11631 return isIP(str, 4) || isIP(str, 6);
11632 }
11633
11634 if (version === '4') {
11635 return IPv4AddressRegExp.test(str);
11636 }
11637
11638 if (version === '6') {
11639 return IPv6AddressRegExp.test(str);
11640 }
11641
11642 return false;
11643 }
11644
11645 module.exports = exports.default;
11646 module.exports["default"] = exports.default;
11647
11648 /***/ }),
11649
11650 /***/ "../node_modules/validator/lib/isURL.js":
11651 /*!**********************************************!*\
11652 !*** ../node_modules/validator/lib/isURL.js ***!
11653 \**********************************************/
11654 /***/ ((module, exports, __webpack_require__) => {
11655
11656 "use strict";
11657
11658
11659 Object.defineProperty(exports, "__esModule", ({
11660 value: true
11661 }));
11662 exports["default"] = isURL;
11663
11664 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11665
11666 var _isFQDN = _interopRequireDefault(__webpack_require__(/*! ./isFQDN */ "../node_modules/validator/lib/isFQDN.js"));
11667
11668 var _isIP = _interopRequireDefault(__webpack_require__(/*! ./isIP */ "../node_modules/validator/lib/isIP.js"));
11669
11670 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11671
11672 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11673
11674 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11675
11676 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."); }
11677
11678 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); }
11679
11680 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; }
11681
11682 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; }
11683
11684 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11685
11686 /*
11687 options for isURL method
11688
11689 require_protocol - if set as true isURL will return false if protocol is not present in the URL
11690 require_valid_protocol - isURL will check if the URL's protocol is present in the protocols option
11691 protocols - valid protocols can be modified with this option
11692 require_host - if set as false isURL will not check if host is present in the URL
11693 require_port - if set as true isURL will check if port is present in the URL
11694 allow_protocol_relative_urls - if set as true protocol relative URLs will be allowed
11695 validate_length - if set as false isURL will skip string length validation (IE maximum is 2083)
11696
11697 */
11698 var default_url_options = {
11699 protocols: ['http', 'https', 'ftp'],
11700 require_tld: true,
11701 require_protocol: false,
11702 require_host: true,
11703 require_port: false,
11704 require_valid_protocol: true,
11705 allow_underscores: false,
11706 allow_trailing_dot: false,
11707 allow_protocol_relative_urls: false,
11708 allow_fragments: true,
11709 allow_query_components: true,
11710 validate_length: true
11711 };
11712 var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
11713
11714 function isRegExp(obj) {
11715 return Object.prototype.toString.call(obj) === '[object RegExp]';
11716 }
11717
11718 function checkHost(host, matches) {
11719 for (var i = 0; i < matches.length; i++) {
11720 var match = matches[i];
11721
11722 if (host === match || isRegExp(match) && match.test(host)) {
11723 return true;
11724 }
11725 }
11726
11727 return false;
11728 }
11729
11730 function isURL(url, options) {
11731 (0, _assertString.default)(url);
11732
11733 if (!url || /[\s<>]/.test(url)) {
11734 return false;
11735 }
11736
11737 if (url.indexOf('mailto:') === 0) {
11738 return false;
11739 }
11740
11741 options = (0, _merge.default)(options, default_url_options);
11742
11743 if (options.validate_length && url.length >= 2083) {
11744 return false;
11745 }
11746
11747 if (!options.allow_fragments && url.includes('#')) {
11748 return false;
11749 }
11750
11751 if (!options.allow_query_components && (url.includes('?') || url.includes('&'))) {
11752 return false;
11753 }
11754
11755 var protocol, auth, host, hostname, port, port_str, split, ipv6;
11756 split = url.split('#');
11757 url = split.shift();
11758 split = url.split('?');
11759 url = split.shift();
11760 split = url.split('://');
11761
11762 if (split.length > 1) {
11763 protocol = split.shift().toLowerCase();
11764
11765 if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
11766 return false;
11767 }
11768 } else if (options.require_protocol) {
11769 return false;
11770 } else if (url.slice(0, 2) === '//') {
11771 if (!options.allow_protocol_relative_urls) {
11772 return false;
11773 }
11774
11775 split[0] = url.slice(2);
11776 }
11777
11778 url = split.join('://');
11779
11780 if (url === '') {
11781 return false;
11782 }
11783
11784 split = url.split('/');
11785 url = split.shift();
11786
11787 if (url === '' && !options.require_host) {
11788 return true;
11789 }
11790
11791 split = url.split('@');
11792
11793 if (split.length > 1) {
11794 if (options.disallow_auth) {
11795 return false;
11796 }
11797
11798 if (split[0] === '') {
11799 return false;
11800 }
11801
11802 auth = split.shift();
11803
11804 if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
11805 return false;
11806 }
11807
11808 var _auth$split = auth.split(':'),
11809 _auth$split2 = _slicedToArray(_auth$split, 2),
11810 user = _auth$split2[0],
11811 password = _auth$split2[1];
11812
11813 if (user === '' && password === '') {
11814 return false;
11815 }
11816 }
11817
11818 hostname = split.join('@');
11819 port_str = null;
11820 ipv6 = null;
11821 var ipv6_match = hostname.match(wrapped_ipv6);
11822
11823 if (ipv6_match) {
11824 host = '';
11825 ipv6 = ipv6_match[1];
11826 port_str = ipv6_match[2] || null;
11827 } else {
11828 split = hostname.split(':');
11829 host = split.shift();
11830
11831 if (split.length) {
11832 port_str = split.join(':');
11833 }
11834 }
11835
11836 if (port_str !== null && port_str.length > 0) {
11837 port = parseInt(port_str, 10);
11838
11839 if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
11840 return false;
11841 }
11842 } else if (options.require_port) {
11843 return false;
11844 }
11845
11846 if (options.host_whitelist) {
11847 return checkHost(host, options.host_whitelist);
11848 }
11849
11850 if (host === '' && !options.require_host) {
11851 return true;
11852 }
11853
11854 if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
11855 return false;
11856 }
11857
11858 host = host || ipv6;
11859
11860 if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
11861 return false;
11862 }
11863
11864 return true;
11865 }
11866
11867 module.exports = exports.default;
11868 module.exports["default"] = exports.default;
11869
11870 /***/ }),
11871
11872 /***/ "../node_modules/validator/lib/util/assertString.js":
11873 /*!**********************************************************!*\
11874 !*** ../node_modules/validator/lib/util/assertString.js ***!
11875 \**********************************************************/
11876 /***/ ((module, exports) => {
11877
11878 "use strict";
11879
11880
11881 Object.defineProperty(exports, "__esModule", ({
11882 value: true
11883 }));
11884 exports["default"] = assertString;
11885
11886 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); }
11887
11888 function assertString(input) {
11889 var isString = typeof input === 'string' || input instanceof String;
11890
11891 if (!isString) {
11892 var invalidType = _typeof(input);
11893
11894 if (input === null) invalidType = 'null';else if (invalidType === 'object') invalidType = input.constructor.name;
11895 throw new TypeError("Expected a string but received a ".concat(invalidType));
11896 }
11897 }
11898
11899 module.exports = exports.default;
11900 module.exports["default"] = exports.default;
11901
11902 /***/ }),
11903
11904 /***/ "../node_modules/validator/lib/util/merge.js":
11905 /*!***************************************************!*\
11906 !*** ../node_modules/validator/lib/util/merge.js ***!
11907 \***************************************************/
11908 /***/ ((module, exports) => {
11909
11910 "use strict";
11911
11912
11913 Object.defineProperty(exports, "__esModule", ({
11914 value: true
11915 }));
11916 exports["default"] = merge;
11917
11918 function merge() {
11919 var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
11920 var defaults = arguments.length > 1 ? arguments[1] : undefined;
11921
11922 for (var key in defaults) {
11923 if (typeof obj[key] === 'undefined') {
11924 obj[key] = defaults[key];
11925 }
11926 }
11927
11928 return obj;
11929 }
11930
11931 module.exports = exports.default;
11932 module.exports["default"] = exports.default;
11933
11934 /***/ }),
11935
11936 /***/ "react":
11937 /*!************************!*\
11938 !*** external "React" ***!
11939 \************************/
11940 /***/ ((module) => {
11941
11942 "use strict";
11943 module.exports = React;
11944
11945 /***/ }),
11946
11947 /***/ "react-dom":
11948 /*!***************************!*\
11949 !*** external "ReactDOM" ***!
11950 \***************************/
11951 /***/ ((module) => {
11952
11953 "use strict";
11954 module.exports = ReactDOM;
11955
11956 /***/ }),
11957
11958 /***/ "@elementor/icons":
11959 /*!************************************!*\
11960 !*** external "elementorV2.icons" ***!
11961 \************************************/
11962 /***/ ((module) => {
11963
11964 "use strict";
11965 module.exports = elementorV2.icons;
11966
11967 /***/ }),
11968
11969 /***/ "@elementor/ui":
11970 /*!*********************************!*\
11971 !*** external "elementorV2.ui" ***!
11972 \*********************************/
11973 /***/ ((module) => {
11974
11975 "use strict";
11976 module.exports = elementorV2.ui;
11977
11978 /***/ }),
11979
11980 /***/ "@wordpress/i18n":
11981 /*!**************************!*\
11982 !*** external "wp.i18n" ***!
11983 \**************************/
11984 /***/ ((module) => {
11985
11986 "use strict";
11987 module.exports = wp.i18n;
11988
11989 /***/ }),
11990
11991 /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
11992 /*!******************************************************************!*\
11993 !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
11994 \******************************************************************/
11995 /***/ ((module) => {
11996
11997 function _arrayLikeToArray(arr, len) {
11998 if (len == null || len > arr.length) len = arr.length;
11999 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
12000 return arr2;
12001 }
12002 module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12003
12004 /***/ }),
12005
12006 /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
12007 /*!****************************************************************!*\
12008 !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
12009 \****************************************************************/
12010 /***/ ((module) => {
12011
12012 function _arrayWithHoles(arr) {
12013 if (Array.isArray(arr)) return arr;
12014 }
12015 module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12016
12017 /***/ }),
12018
12019 /***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
12020 /*!*******************************************************************!*\
12021 !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
12022 \*******************************************************************/
12023 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12024
12025 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12026 function _arrayWithoutHoles(arr) {
12027 if (Array.isArray(arr)) return arrayLikeToArray(arr);
12028 }
12029 module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12030
12031 /***/ }),
12032
12033 /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
12034 /*!***********************************************************************!*\
12035 !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
12036 \***********************************************************************/
12037 /***/ ((module) => {
12038
12039 function _assertThisInitialized(self) {
12040 if (self === void 0) {
12041 throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
12042 }
12043 return self;
12044 }
12045 module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
12046
12047 /***/ }),
12048
12049 /***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js":
12050 /*!******************************************************************!*\
12051 !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
12052 \******************************************************************/
12053 /***/ ((module) => {
12054
12055 function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
12056 try {
12057 var info = gen[key](arg);
12058 var value = info.value;
12059 } catch (error) {
12060 reject(error);
12061 return;
12062 }
12063 if (info.done) {
12064 resolve(value);
12065 } else {
12066 Promise.resolve(value).then(_next, _throw);
12067 }
12068 }
12069 function _asyncToGenerator(fn) {
12070 return function () {
12071 var self = this,
12072 args = arguments;
12073 return new Promise(function (resolve, reject) {
12074 var gen = fn.apply(self, args);
12075 function _next(value) {
12076 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
12077 }
12078 function _throw(err) {
12079 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
12080 }
12081 _next(undefined);
12082 });
12083 };
12084 }
12085 module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
12086
12087 /***/ }),
12088
12089 /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
12090 /*!****************************************************************!*\
12091 !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
12092 \****************************************************************/
12093 /***/ ((module) => {
12094
12095 function _classCallCheck(instance, Constructor) {
12096 if (!(instance instanceof Constructor)) {
12097 throw new TypeError("Cannot call a class as a function");
12098 }
12099 }
12100 module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
12101
12102 /***/ }),
12103
12104 /***/ "../node_modules/@babel/runtime/helpers/createClass.js":
12105 /*!*************************************************************!*\
12106 !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
12107 \*************************************************************/
12108 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12109
12110 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12111 function _defineProperties(target, props) {
12112 for (var i = 0; i < props.length; i++) {
12113 var descriptor = props[i];
12114 descriptor.enumerable = descriptor.enumerable || false;
12115 descriptor.configurable = true;
12116 if ("value" in descriptor) descriptor.writable = true;
12117 Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
12118 }
12119 }
12120 function _createClass(Constructor, protoProps, staticProps) {
12121 if (protoProps) _defineProperties(Constructor.prototype, protoProps);
12122 if (staticProps) _defineProperties(Constructor, staticProps);
12123 Object.defineProperty(Constructor, "prototype", {
12124 writable: false
12125 });
12126 return Constructor;
12127 }
12128 module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
12129
12130 /***/ }),
12131
12132 /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
12133 /*!****************************************************************!*\
12134 !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
12135 \****************************************************************/
12136 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12137
12138 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12139 function _defineProperty(obj, key, value) {
12140 key = toPropertyKey(key);
12141 if (key in obj) {
12142 Object.defineProperty(obj, key, {
12143 value: value,
12144 enumerable: true,
12145 configurable: true,
12146 writable: true
12147 });
12148 } else {
12149 obj[key] = value;
12150 }
12151 return obj;
12152 }
12153 module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
12154
12155 /***/ }),
12156
12157 /***/ "../node_modules/@babel/runtime/helpers/extends.js":
12158 /*!*********************************************************!*\
12159 !*** ../node_modules/@babel/runtime/helpers/extends.js ***!
12160 \*********************************************************/
12161 /***/ ((module) => {
12162
12163 function _extends() {
12164 module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {
12165 for (var i = 1; i < arguments.length; i++) {
12166 var source = arguments[i];
12167 for (var key in source) {
12168 if (Object.prototype.hasOwnProperty.call(source, key)) {
12169 target[key] = source[key];
12170 }
12171 }
12172 }
12173 return target;
12174 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12175 return _extends.apply(this, arguments);
12176 }
12177 module.exports = _extends, module.exports.__esModule = true, module.exports["default"] = module.exports;
12178
12179 /***/ }),
12180
12181 /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
12182 /*!****************************************************************!*\
12183 !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
12184 \****************************************************************/
12185 /***/ ((module) => {
12186
12187 function _getPrototypeOf(o) {
12188 module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
12189 return o.__proto__ || Object.getPrototypeOf(o);
12190 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12191 return _getPrototypeOf(o);
12192 }
12193 module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12194
12195 /***/ }),
12196
12197 /***/ "../node_modules/@babel/runtime/helpers/inherits.js":
12198 /*!**********************************************************!*\
12199 !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
12200 \**********************************************************/
12201 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12202
12203 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
12204 function _inherits(subClass, superClass) {
12205 if (typeof superClass !== "function" && superClass !== null) {
12206 throw new TypeError("Super expression must either be null or a function");
12207 }
12208 subClass.prototype = Object.create(superClass && superClass.prototype, {
12209 constructor: {
12210 value: subClass,
12211 writable: true,
12212 configurable: true
12213 }
12214 });
12215 Object.defineProperty(subClass, "prototype", {
12216 writable: false
12217 });
12218 if (superClass) setPrototypeOf(subClass, superClass);
12219 }
12220 module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
12221
12222 /***/ }),
12223
12224 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
12225 /*!***********************************************************************!*\
12226 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
12227 \***********************************************************************/
12228 /***/ ((module) => {
12229
12230 function _interopRequireDefault(obj) {
12231 return obj && obj.__esModule ? obj : {
12232 "default": obj
12233 };
12234 }
12235 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
12236
12237 /***/ }),
12238
12239 /***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
12240 /*!*****************************************************************!*\
12241 !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
12242 \*****************************************************************/
12243 /***/ ((module) => {
12244
12245 function _iterableToArray(iter) {
12246 if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
12247 }
12248 module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12249
12250 /***/ }),
12251
12252 /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
12253 /*!**********************************************************************!*\
12254 !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
12255 \**********************************************************************/
12256 /***/ ((module) => {
12257
12258 function _iterableToArrayLimit(r, l) {
12259 var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
12260 if (null != t) {
12261 var e,
12262 n,
12263 i,
12264 u,
12265 a = [],
12266 f = !0,
12267 o = !1;
12268 try {
12269 if (i = (t = t.call(r)).next, 0 === l) {
12270 if (Object(t) !== t) return;
12271 f = !1;
12272 } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
12273 } catch (r) {
12274 o = !0, n = r;
12275 } finally {
12276 try {
12277 if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
12278 } finally {
12279 if (o) throw n;
12280 }
12281 }
12282 return a;
12283 }
12284 }
12285 module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
12286
12287 /***/ }),
12288
12289 /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
12290 /*!*****************************************************************!*\
12291 !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
12292 \*****************************************************************/
12293 /***/ ((module) => {
12294
12295 function _nonIterableRest() {
12296 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12297 }
12298 module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
12299
12300 /***/ }),
12301
12302 /***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
12303 /*!*******************************************************************!*\
12304 !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
12305 \*******************************************************************/
12306 /***/ ((module) => {
12307
12308 function _nonIterableSpread() {
12309 throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12310 }
12311 module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
12312
12313 /***/ }),
12314
12315 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
12316 /*!*************************************************************************!*\
12317 !*** ../node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
12318 \*************************************************************************/
12319 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12320
12321 var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose.js */ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");
12322 function _objectWithoutProperties(source, excluded) {
12323 if (source == null) return {};
12324 var target = objectWithoutPropertiesLoose(source, excluded);
12325 var key, i;
12326 if (Object.getOwnPropertySymbols) {
12327 var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
12328 for (i = 0; i < sourceSymbolKeys.length; i++) {
12329 key = sourceSymbolKeys[i];
12330 if (excluded.indexOf(key) >= 0) continue;
12331 if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
12332 target[key] = source[key];
12333 }
12334 }
12335 return target;
12336 }
12337 module.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports["default"] = module.exports;
12338
12339 /***/ }),
12340
12341 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
12342 /*!******************************************************************************!*\
12343 !*** ../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
12344 \******************************************************************************/
12345 /***/ ((module) => {
12346
12347 function _objectWithoutPropertiesLoose(source, excluded) {
12348 if (source == null) return {};
12349 var target = {};
12350 var sourceKeys = Object.keys(source);
12351 var key, i;
12352 for (i = 0; i < sourceKeys.length; i++) {
12353 key = sourceKeys[i];
12354 if (excluded.indexOf(key) >= 0) continue;
12355 target[key] = source[key];
12356 }
12357 return target;
12358 }
12359 module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports["default"] = module.exports;
12360
12361 /***/ }),
12362
12363 /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
12364 /*!***************************************************************************!*\
12365 !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
12366 \***************************************************************************/
12367 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12368
12369 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12370 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
12371 function _possibleConstructorReturn(self, call) {
12372 if (call && (_typeof(call) === "object" || typeof call === "function")) {
12373 return call;
12374 } else if (call !== void 0) {
12375 throw new TypeError("Derived constructors may only return object or undefined");
12376 }
12377 return assertThisInitialized(self);
12378 }
12379 module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
12380
12381 /***/ }),
12382
12383 /***/ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js":
12384 /*!********************************************************************!*\
12385 !*** ../node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
12386 \********************************************************************/
12387 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12388
12389 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12390 function _regeneratorRuntime() {
12391 "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
12392 module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
12393 return e;
12394 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12395 var t,
12396 e = {},
12397 r = Object.prototype,
12398 n = r.hasOwnProperty,
12399 o = Object.defineProperty || function (t, e, r) {
12400 t[e] = r.value;
12401 },
12402 i = "function" == typeof Symbol ? Symbol : {},
12403 a = i.iterator || "@@iterator",
12404 c = i.asyncIterator || "@@asyncIterator",
12405 u = i.toStringTag || "@@toStringTag";
12406 function define(t, e, r) {
12407 return Object.defineProperty(t, e, {
12408 value: r,
12409 enumerable: !0,
12410 configurable: !0,
12411 writable: !0
12412 }), t[e];
12413 }
12414 try {
12415 define({}, "");
12416 } catch (t) {
12417 define = function define(t, e, r) {
12418 return t[e] = r;
12419 };
12420 }
12421 function wrap(t, e, r, n) {
12422 var i = e && e.prototype instanceof Generator ? e : Generator,
12423 a = Object.create(i.prototype),
12424 c = new Context(n || []);
12425 return o(a, "_invoke", {
12426 value: makeInvokeMethod(t, r, c)
12427 }), a;
12428 }
12429 function tryCatch(t, e, r) {
12430 try {
12431 return {
12432 type: "normal",
12433 arg: t.call(e, r)
12434 };
12435 } catch (t) {
12436 return {
12437 type: "throw",
12438 arg: t
12439 };
12440 }
12441 }
12442 e.wrap = wrap;
12443 var h = "suspendedStart",
12444 l = "suspendedYield",
12445 f = "executing",
12446 s = "completed",
12447 y = {};
12448 function Generator() {}
12449 function GeneratorFunction() {}
12450 function GeneratorFunctionPrototype() {}
12451 var p = {};
12452 define(p, a, function () {
12453 return this;
12454 });
12455 var d = Object.getPrototypeOf,
12456 v = d && d(d(values([])));
12457 v && v !== r && n.call(v, a) && (p = v);
12458 var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
12459 function defineIteratorMethods(t) {
12460 ["next", "throw", "return"].forEach(function (e) {
12461 define(t, e, function (t) {
12462 return this._invoke(e, t);
12463 });
12464 });
12465 }
12466 function AsyncIterator(t, e) {
12467 function invoke(r, o, i, a) {
12468 var c = tryCatch(t[r], t, o);
12469 if ("throw" !== c.type) {
12470 var u = c.arg,
12471 h = u.value;
12472 return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
12473 invoke("next", t, i, a);
12474 }, function (t) {
12475 invoke("throw", t, i, a);
12476 }) : e.resolve(h).then(function (t) {
12477 u.value = t, i(u);
12478 }, function (t) {
12479 return invoke("throw", t, i, a);
12480 });
12481 }
12482 a(c.arg);
12483 }
12484 var r;
12485 o(this, "_invoke", {
12486 value: function value(t, n) {
12487 function callInvokeWithMethodAndArg() {
12488 return new e(function (e, r) {
12489 invoke(t, n, e, r);
12490 });
12491 }
12492 return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
12493 }
12494 });
12495 }
12496 function makeInvokeMethod(e, r, n) {
12497 var o = h;
12498 return function (i, a) {
12499 if (o === f) throw new Error("Generator is already running");
12500 if (o === s) {
12501 if ("throw" === i) throw a;
12502 return {
12503 value: t,
12504 done: !0
12505 };
12506 }
12507 for (n.method = i, n.arg = a;;) {
12508 var c = n.delegate;
12509 if (c) {
12510 var u = maybeInvokeDelegate(c, n);
12511 if (u) {
12512 if (u === y) continue;
12513 return u;
12514 }
12515 }
12516 if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
12517 if (o === h) throw o = s, n.arg;
12518 n.dispatchException(n.arg);
12519 } else "return" === n.method && n.abrupt("return", n.arg);
12520 o = f;
12521 var p = tryCatch(e, r, n);
12522 if ("normal" === p.type) {
12523 if (o = n.done ? s : l, p.arg === y) continue;
12524 return {
12525 value: p.arg,
12526 done: n.done
12527 };
12528 }
12529 "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
12530 }
12531 };
12532 }
12533 function maybeInvokeDelegate(e, r) {
12534 var n = r.method,
12535 o = e.iterator[n];
12536 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;
12537 var i = tryCatch(o, e.iterator, r.arg);
12538 if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
12539 var a = i.arg;
12540 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);
12541 }
12542 function pushTryEntry(t) {
12543 var e = {
12544 tryLoc: t[0]
12545 };
12546 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
12547 }
12548 function resetTryEntry(t) {
12549 var e = t.completion || {};
12550 e.type = "normal", delete e.arg, t.completion = e;
12551 }
12552 function Context(t) {
12553 this.tryEntries = [{
12554 tryLoc: "root"
12555 }], t.forEach(pushTryEntry, this), this.reset(!0);
12556 }
12557 function values(e) {
12558 if (e || "" === e) {
12559 var r = e[a];
12560 if (r) return r.call(e);
12561 if ("function" == typeof e.next) return e;
12562 if (!isNaN(e.length)) {
12563 var o = -1,
12564 i = function next() {
12565 for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
12566 return next.value = t, next.done = !0, next;
12567 };
12568 return i.next = i;
12569 }
12570 }
12571 throw new TypeError(_typeof(e) + " is not iterable");
12572 }
12573 return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
12574 value: GeneratorFunctionPrototype,
12575 configurable: !0
12576 }), o(GeneratorFunctionPrototype, "constructor", {
12577 value: GeneratorFunction,
12578 configurable: !0
12579 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
12580 var e = "function" == typeof t && t.constructor;
12581 return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
12582 }, e.mark = function (t) {
12583 return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
12584 }, e.awrap = function (t) {
12585 return {
12586 __await: t
12587 };
12588 }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
12589 return this;
12590 }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
12591 void 0 === i && (i = Promise);
12592 var a = new AsyncIterator(wrap(t, r, n, o), i);
12593 return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
12594 return t.done ? t.value : a.next();
12595 });
12596 }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
12597 return this;
12598 }), define(g, "toString", function () {
12599 return "[object Generator]";
12600 }), e.keys = function (t) {
12601 var e = Object(t),
12602 r = [];
12603 for (var n in e) r.push(n);
12604 return r.reverse(), function next() {
12605 for (; r.length;) {
12606 var t = r.pop();
12607 if (t in e) return next.value = t, next.done = !1, next;
12608 }
12609 return next.done = !0, next;
12610 };
12611 }, e.values = values, Context.prototype = {
12612 constructor: Context,
12613 reset: function reset(e) {
12614 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);
12615 },
12616 stop: function stop() {
12617 this.done = !0;
12618 var t = this.tryEntries[0].completion;
12619 if ("throw" === t.type) throw t.arg;
12620 return this.rval;
12621 },
12622 dispatchException: function dispatchException(e) {
12623 if (this.done) throw e;
12624 var r = this;
12625 function handle(n, o) {
12626 return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
12627 }
12628 for (var o = this.tryEntries.length - 1; o >= 0; --o) {
12629 var i = this.tryEntries[o],
12630 a = i.completion;
12631 if ("root" === i.tryLoc) return handle("end");
12632 if (i.tryLoc <= this.prev) {
12633 var c = n.call(i, "catchLoc"),
12634 u = n.call(i, "finallyLoc");
12635 if (c && u) {
12636 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12637 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12638 } else if (c) {
12639 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12640 } else {
12641 if (!u) throw new Error("try statement without catch or finally");
12642 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12643 }
12644 }
12645 }
12646 },
12647 abrupt: function abrupt(t, e) {
12648 for (var r = this.tryEntries.length - 1; r >= 0; --r) {
12649 var o = this.tryEntries[r];
12650 if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
12651 var i = o;
12652 break;
12653 }
12654 }
12655 i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
12656 var a = i ? i.completion : {};
12657 return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
12658 },
12659 complete: function complete(t, e) {
12660 if ("throw" === t.type) throw t.arg;
12661 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;
12662 },
12663 finish: function finish(t) {
12664 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12665 var r = this.tryEntries[e];
12666 if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
12667 }
12668 },
12669 "catch": function _catch(t) {
12670 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12671 var r = this.tryEntries[e];
12672 if (r.tryLoc === t) {
12673 var n = r.completion;
12674 if ("throw" === n.type) {
12675 var o = n.arg;
12676 resetTryEntry(r);
12677 }
12678 return o;
12679 }
12680 }
12681 throw new Error("illegal catch attempt");
12682 },
12683 delegateYield: function delegateYield(e, r, n) {
12684 return this.delegate = {
12685 iterator: values(e),
12686 resultName: r,
12687 nextLoc: n
12688 }, "next" === this.method && (this.arg = t), y;
12689 }
12690 }, e;
12691 }
12692 module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
12693
12694 /***/ }),
12695
12696 /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
12697 /*!****************************************************************!*\
12698 !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
12699 \****************************************************************/
12700 /***/ ((module) => {
12701
12702 function _setPrototypeOf(o, p) {
12703 module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
12704 o.__proto__ = p;
12705 return o;
12706 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12707 return _setPrototypeOf(o, p);
12708 }
12709 module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12710
12711 /***/ }),
12712
12713 /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
12714 /*!***************************************************************!*\
12715 !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
12716 \***************************************************************/
12717 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12718
12719 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
12720 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
12721 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12722 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
12723 function _slicedToArray(arr, i) {
12724 return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
12725 }
12726 module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12727
12728 /***/ }),
12729
12730 /***/ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js":
12731 /*!***********************************************************************!*\
12732 !*** ../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js ***!
12733 \***********************************************************************/
12734 /***/ ((module) => {
12735
12736 function _taggedTemplateLiteral(strings, raw) {
12737 if (!raw) {
12738 raw = strings.slice(0);
12739 }
12740 return Object.freeze(Object.defineProperties(strings, {
12741 raw: {
12742 value: Object.freeze(raw)
12743 }
12744 }));
12745 }
12746 module.exports = _taggedTemplateLiteral, module.exports.__esModule = true, module.exports["default"] = module.exports;
12747
12748 /***/ }),
12749
12750 /***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
12751 /*!*******************************************************************!*\
12752 !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
12753 \*******************************************************************/
12754 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12755
12756 var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
12757 var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
12758 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12759 var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
12760 function _toConsumableArray(arr) {
12761 return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
12762 }
12763 module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12764
12765 /***/ }),
12766
12767 /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
12768 /*!*************************************************************!*\
12769 !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
12770 \*************************************************************/
12771 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12772
12773 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12774 function toPrimitive(t, r) {
12775 if ("object" != _typeof(t) || !t) return t;
12776 var e = t[Symbol.toPrimitive];
12777 if (void 0 !== e) {
12778 var i = e.call(t, r || "default");
12779 if ("object" != _typeof(i)) return i;
12780 throw new TypeError("@@toPrimitive must return a primitive value.");
12781 }
12782 return ("string" === r ? String : Number)(t);
12783 }
12784 module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
12785
12786 /***/ }),
12787
12788 /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
12789 /*!***************************************************************!*\
12790 !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
12791 \***************************************************************/
12792 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12793
12794 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12795 var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
12796 function toPropertyKey(t) {
12797 var i = toPrimitive(t, "string");
12798 return "symbol" == _typeof(i) ? i : String(i);
12799 }
12800 module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
12801
12802 /***/ }),
12803
12804 /***/ "../node_modules/@babel/runtime/helpers/typeof.js":
12805 /*!********************************************************!*\
12806 !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
12807 \********************************************************/
12808 /***/ ((module) => {
12809
12810 function _typeof(o) {
12811 "@babel/helpers - typeof";
12812
12813 return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
12814 return typeof o;
12815 } : function (o) {
12816 return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
12817 }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
12818 }
12819 module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
12820
12821 /***/ }),
12822
12823 /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
12824 /*!****************************************************************************!*\
12825 !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
12826 \****************************************************************************/
12827 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12828
12829 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12830 function _unsupportedIterableToArray(o, minLen) {
12831 if (!o) return;
12832 if (typeof o === "string") return arrayLikeToArray(o, minLen);
12833 var n = Object.prototype.toString.call(o).slice(8, -1);
12834 if (n === "Object" && o.constructor) n = o.constructor.name;
12835 if (n === "Map" || n === "Set") return Array.from(o);
12836 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
12837 }
12838 module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12839
12840 /***/ }),
12841
12842 /***/ "../node_modules/@babel/runtime/regenerator/index.js":
12843 /*!***********************************************************!*\
12844 !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
12845 \***********************************************************/
12846 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12847
12848 // TODO(Babel 8): Remove this file.
12849
12850 var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js")();
12851 module.exports = runtime;
12852
12853 // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
12854 try {
12855 regeneratorRuntime = runtime;
12856 } catch (accidentalStrictMode) {
12857 if (typeof globalThis === "object") {
12858 globalThis.regeneratorRuntime = runtime;
12859 } else {
12860 Function("r", "regeneratorRuntime = r")(runtime);
12861 }
12862 }
12863
12864
12865 /***/ })
12866
12867 /******/ });
12868 /************************************************************************/
12869 /******/ // The module cache
12870 /******/ var __webpack_module_cache__ = {};
12871 /******/
12872 /******/ // The require function
12873 /******/ function __webpack_require__(moduleId) {
12874 /******/ // Check if module is in cache
12875 /******/ var cachedModule = __webpack_module_cache__[moduleId];
12876 /******/ if (cachedModule !== undefined) {
12877 /******/ return cachedModule.exports;
12878 /******/ }
12879 /******/ // Create a new module (and put it into the cache)
12880 /******/ var module = __webpack_module_cache__[moduleId] = {
12881 /******/ // no module.id needed
12882 /******/ // no module.loaded needed
12883 /******/ exports: {}
12884 /******/ };
12885 /******/
12886 /******/ // Execute the module function
12887 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
12888 /******/
12889 /******/ // Return the exports of the module
12890 /******/ return module.exports;
12891 /******/ }
12892 /******/
12893 /************************************************************************/
12894 /******/ /* webpack/runtime/compat get default export */
12895 /******/ (() => {
12896 /******/ // getDefaultExport function for compatibility with non-harmony modules
12897 /******/ __webpack_require__.n = (module) => {
12898 /******/ var getter = module && module.__esModule ?
12899 /******/ () => (module['default']) :
12900 /******/ () => (module);
12901 /******/ __webpack_require__.d(getter, { a: getter });
12902 /******/ return getter;
12903 /******/ };
12904 /******/ })();
12905 /******/
12906 /******/ /* webpack/runtime/define property getters */
12907 /******/ (() => {
12908 /******/ // define getter functions for harmony exports
12909 /******/ __webpack_require__.d = (exports, definition) => {
12910 /******/ for(var key in definition) {
12911 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
12912 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
12913 /******/ }
12914 /******/ }
12915 /******/ };
12916 /******/ })();
12917 /******/
12918 /******/ /* webpack/runtime/hasOwnProperty shorthand */
12919 /******/ (() => {
12920 /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
12921 /******/ })();
12922 /******/
12923 /******/ /* webpack/runtime/make namespace object */
12924 /******/ (() => {
12925 /******/ // define __esModule on exports
12926 /******/ __webpack_require__.r = (exports) => {
12927 /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
12928 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
12929 /******/ }
12930 /******/ Object.defineProperty(exports, '__esModule', { value: true });
12931 /******/ };
12932 /******/ })();
12933 /******/
12934 /******/ /* webpack/runtime/nonce */
12935 /******/ (() => {
12936 /******/ __webpack_require__.nc = undefined;
12937 /******/ })();
12938 /******/
12939 /************************************************************************/
12940 var __webpack_exports__ = {};
12941 // This entry need to be wrapped in an IIFE because it need to be in strict mode.
12942 (() => {
12943 "use strict";
12944 var exports = __webpack_exports__;
12945 /*!*******************************************************!*\
12946 !*** ../modules/ai/assets/js/editor/layout-module.js ***!
12947 \*******************************************************/
12948
12949
12950 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
12951 Object.defineProperty(exports, "__esModule", ({
12952 value: true
12953 }));
12954 exports["default"] = exports.AI_ATTACHMENT = void 0;
12955 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
12956 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
12957 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
12958 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
12959 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
12960 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
12961 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
12962 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
12963 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
12964 var _aiLayoutBehavior = _interopRequireDefault(__webpack_require__(/*! ./ai-layout-behavior */ "../modules/ai/assets/js/editor/ai-layout-behavior.js"));
12965 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
12966 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
12967 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
12968 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"));
12969 var _attachments = __webpack_require__(/*! ./pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
12970 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); }; }
12971 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; } }
12972 var AI_ATTACHMENT = 'ai-attachment';
12973 exports.AI_ATTACHMENT = AI_ATTACHMENT;
12974 var Module = /*#__PURE__*/function (_elementorModules$edi) {
12975 (0, _inherits2.default)(Module, _elementorModules$edi);
12976 var _super = _createSuper(Module);
12977 function Module() {
12978 var _this;
12979 (0, _classCallCheck2.default)(this, Module);
12980 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12981 args[_key] = arguments[_key];
12982 }
12983 _this = _super.call.apply(_super, [this].concat(args));
12984 (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "registerVariationsContextMenu", function (groups, currentElement) {
12985 var _ElementorAiConfig, _ElementorAiConfig$us;
12986 var saveGroup = groups.find(function (group) {
12987 return 'save' === group.name;
12988 });
12989 if (!saveGroup) {
12990 return groups;
12991 }
12992 var contextMenu = {
12993 name: 'ai',
12994 icon: 'eicon-ai',
12995 isEnabled: function isEnabled() {
12996 return 0 !== currentElement.getContainer().children.length;
12997 },
12998 title: (0, _i18n.__)('Generate variations with AI', 'elementor'),
12999 callback: function () {
13000 var _callback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
13001 var container, json, attachments;
13002 return _regenerator.default.wrap(function _callee$(_context) {
13003 while (1) switch (_context.prev = _context.next) {
13004 case 0:
13005 container = currentElement.getContainer();
13006 json = container.model.toJSON({
13007 remove: ['default']
13008 });
13009 attachments = [{
13010 type: 'json',
13011 previewHTML: '',
13012 content: json,
13013 label: container.model.get('title'),
13014 source: _attachments.USER_VARIATION_SOURCE
13015 }];
13016 (0, _editorIntegration.renderLayoutApp)({
13017 parentContainer: container.parent,
13018 mode: _config.MODE_VARIATION,
13019 at: container.view._index,
13020 attachments: attachments,
13021 onSelect: function onSelect() {
13022 container.view.$el.hide();
13023 },
13024 onClose: function onClose() {
13025 container.view.$el.show();
13026 },
13027 onInsert: function onInsert(template) {
13028 (0, _editorIntegration.importToEditor)({
13029 parentContainer: container.parent,
13030 at: container.view._index,
13031 template: template,
13032 historyTitle: (0, _i18n.__)('AI Variation', 'elementor'),
13033 replace: true
13034 });
13035 }
13036 });
13037 case 4:
13038 case "end":
13039 return _context.stop();
13040 }
13041 }, _callee);
13042 }));
13043 function callback() {
13044 return _callback.apply(this, arguments);
13045 }
13046 return callback;
13047 }()
13048 };
13049 if (!((_ElementorAiConfig = ElementorAiConfig) !== null && _ElementorAiConfig !== void 0 && (_ElementorAiConfig$us = _ElementorAiConfig.usage) !== null && _ElementorAiConfig$us !== void 0 && _ElementorAiConfig$us.hasAiSubscription)) {
13050 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>";
13051 contextMenu.shortcut = "<div class=\"elementor-context-menu-list__item__ai-badge\">".concat(svg, "</div>");
13052 }
13053
13054 // Add on top of save group actions
13055 saveGroup.actions.unshift(contextMenu);
13056 return groups;
13057 });
13058 return _this;
13059 }
13060 (0, _createClass2.default)(Module, [{
13061 key: "onElementorInit",
13062 value: function onElementorInit() {
13063 var _this2 = this;
13064 elementor.hooks.addFilter('views/add-section/behaviors', this.registerAiLayoutBehavior);
13065 elementor.hooks.addFilter('elements/container/contextMenuGroups', this.registerVariationsContextMenu);
13066 elementor.hooks.addFilter('elementor/editor/template-library/template/behaviors', this.registerLibraryActionButtonBehavior);
13067 elementor.hooks.addFilter('elementor/editor/template-library/template/action-button', this.filterLibraryActionButtonTemplate, 11);
13068 $e.commands.register('library', 'generate-ai-variation', function (args) {
13069 return _this2.applyTemplate(args);
13070 });
13071 }
13072 }, {
13073 key: "applyTemplate",
13074 value: function applyTemplate(args) {
13075 window.postMessage({
13076 type: 'library/attach:start'
13077 });
13078 $e.components.get('library').downloadTemplate(args, function (data) {
13079 var model = args.model;
13080 window.postMessage({
13081 type: 'library/attach',
13082 json: data.content[0],
13083 html: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
13084 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
13085 source: _attachments.ELEMENTOR_LIBRARY_SOURCE
13086 }, window.location.origin);
13087 });
13088 }
13089 }, {
13090 key: "registerLibraryActionButtonBehavior",
13091 value: function registerLibraryActionButtonBehavior(behaviors) {
13092 behaviors.applyAiTemplate = {
13093 behaviorClass: _applyTemplateForAiBehavior.default
13094 };
13095 return behaviors;
13096 }
13097 }, {
13098 key: "registerAiLayoutBehavior",
13099 value: function registerAiLayoutBehavior(behaviors) {
13100 behaviors.ai = {
13101 behaviorClass: _aiLayoutBehavior.default,
13102 context: {
13103 documentType: window.elementor.documents.getCurrent().config.type
13104 }
13105 };
13106 return behaviors;
13107 }
13108 }, {
13109 key: "filterLibraryActionButtonTemplate",
13110 value: function filterLibraryActionButtonTemplate(viewId) {
13111 var modalConfig = $e.components.get('library').manager.modalConfig;
13112 var originalCoreViewId = '#tmpl-elementor-template-library-insert-button';
13113 if (originalCoreViewId !== viewId) {
13114 return viewId;
13115 }
13116 if ($e.routes.current.library !== 'library/templates/blocks') {
13117 return viewId;
13118 }
13119 if (AI_ATTACHMENT === modalConfig.mode) {
13120 viewId = '#tmpl-elementor-template-library-apply-ai-button';
13121 } else {
13122 viewId = '#tmpl-elementor-template-library-insert-and-ai-variations-buttons';
13123 }
13124 return viewId;
13125 }
13126 }]);
13127 return Module;
13128 }(elementorModules.editor.utils.Module);
13129 exports["default"] = Module;
13130 new Module();
13131 })();
13132
13133 /******/ })()
13134 ;
13135 //# sourceMappingURL=ai-layout.js.map