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

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

12,987 lines 576.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*! elementor - v3.20.0 - 13-03-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 /***/ "../modules/ai/assets/js/editor/ai-layout-behavior.js":
691 /*!************************************************************!*\
692 !*** ../modules/ai/assets/js/editor/ai-layout-behavior.js ***!
693 \************************************************************/
694 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
695
696 "use strict";
697
698
699 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
700 Object.defineProperty(exports, "__esModule", ({
701 value: true
702 }));
703 exports["default"] = void 0;
704 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
705 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
706 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
707 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
708 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
709 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
710 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
711 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
712 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
713 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
714 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); }; }
715 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; } }
716 var AiLayoutBehavior = /*#__PURE__*/function (_Marionette$Behavior) {
717 (0, _inherits2.default)(AiLayoutBehavior, _Marionette$Behavior);
718 var _super = _createSuper(AiLayoutBehavior);
719 function AiLayoutBehavior() {
720 var _this;
721 (0, _classCallCheck2.default)(this, AiLayoutBehavior);
722 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
723 args[_key] = arguments[_key];
724 }
725 _this = _super.call.apply(_super, [this].concat(args));
726 (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "previewContainer", null);
727 return _this;
728 }
729 (0, _createClass2.default)(AiLayoutBehavior, [{
730 key: "ui",
731 value: function ui() {
732 return {
733 aiButton: '.e-ai-layout-button',
734 addTemplateButton: '.elementor-add-template-button'
735 };
736 }
737 }, {
738 key: "events",
739 value: function events() {
740 return {
741 'click @ui.aiButton': 'onAiButtonClick'
742 };
743 }
744 }, {
745 key: "onAiButtonClick",
746 value: function onAiButtonClick(e) {
747 e.stopPropagation();
748 (0, _editorIntegration.renderLayoutApp)({
749 parentContainer: elementor.getPreviewContainer(),
750 mode: _config.MODE_LAYOUT,
751 at: this.view.getOption('at'),
752 onInsert: this.onInsert.bind(this),
753 onRenderApp: function onRenderApp(args) {
754 args.previewContainer.init();
755 },
756 onGenerate: function onGenerate(args) {
757 args.previewContainer.reset();
758 }
759 });
760 }
761 }, {
762 key: "hideDropArea",
763 value: function hideDropArea() {
764 this.view.onCloseButtonClick();
765 }
766 }, {
767 key: "onInsert",
768 value: function onInsert(template) {
769 this.hideDropArea();
770 (0, _editorIntegration.importToEditor)({
771 parentContainer: elementor.getPreviewContainer(),
772 at: this.view.getOption('at'),
773 template: template,
774 historyTitle: (0, _i18n.__)('AI Layout', 'elementor')
775 });
776 }
777 }, {
778 key: "onRender",
779 value: function onRender() {
780 var $button = jQuery('<div>', {
781 class: 'e-ai-layout-button elementor-add-section-area-button e-button-primary',
782 title: (0, _i18n.__)('Build with AI', 'elementor'),
783 role: 'button'
784 });
785 $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");
786 this.ui.addTemplateButton.after($button);
787 }
788 }]);
789 return AiLayoutBehavior;
790 }(Marionette.Behavior);
791 exports["default"] = AiLayoutBehavior;
792
793 /***/ }),
794
795 /***/ "../modules/ai/assets/js/editor/api/index.js":
796 /*!***************************************************!*\
797 !*** ../modules/ai/assets/js/editor/api/index.js ***!
798 \***************************************************/
799 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
800
801 "use strict";
802
803
804 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
805 Object.defineProperty(exports, "__esModule", ({
806 value: true
807 }));
808 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;
809 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
810 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; }
811 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; }
812 var request = function request(endpoint) {
813 var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
814 var immediately = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
815 var signal = arguments.length > 3 ? arguments[3] : undefined;
816 if (Object.keys(data).length) {
817 data.context = window.elementorAiCurrentContext;
818 }
819 return new Promise(function (resolve, reject) {
820 var ajaxData = elementorCommon.ajax.addRequest(endpoint, {
821 success: resolve,
822 error: reject,
823 data: data
824 }, immediately);
825 if (signal && ajaxData.jqXhr) {
826 signal.addEventListener('abort', ajaxData.jqXhr.abort);
827 }
828 });
829 };
830 var getUserInformation = function getUserInformation() {
831 return request('ai_get_user_information');
832 };
833 exports.getUserInformation = getUserInformation;
834 var getRemoteConfig = function getRemoteConfig() {
835 return request('ai_get_remote_config');
836 };
837 exports.getRemoteConfig = getRemoteConfig;
838 var getCompletionText = function getCompletionText(payload) {
839 return request('ai_get_completion_text', {
840 payload: payload
841 });
842 };
843 exports.getCompletionText = getCompletionText;
844 var getEditText = function getEditText(payload) {
845 return request('ai_get_edit_text', {
846 payload: payload
847 });
848 };
849 exports.getEditText = getEditText;
850 var getCustomCode = function getCustomCode(payload) {
851 return request('ai_get_custom_code', {
852 payload: payload
853 });
854 };
855 exports.getCustomCode = getCustomCode;
856 var getCustomCSS = function getCustomCSS(payload) {
857 return request('ai_get_custom_css', {
858 payload: payload
859 });
860 };
861 exports.getCustomCSS = getCustomCSS;
862 var setGetStarted = function setGetStarted() {
863 return request('ai_set_get_started');
864 };
865 exports.setGetStarted = setGetStarted;
866 var setStatusFeedback = function setStatusFeedback(responseId) {
867 return request('ai_set_status_feedback', {
868 response_id: responseId
869 });
870 };
871 exports.setStatusFeedback = setStatusFeedback;
872 var getTextToImageGeneration = function getTextToImageGeneration(payload) {
873 return request('ai_get_text_to_image', {
874 payload: payload
875 });
876 };
877 exports.getTextToImageGeneration = getTextToImageGeneration;
878 var getImageToImageGeneration = function getImageToImageGeneration(payload) {
879 return request('ai_get_image_to_image', {
880 payload: payload
881 });
882 };
883 exports.getImageToImageGeneration = getImageToImageGeneration;
884 var getImageToImageMaskGeneration = function getImageToImageMaskGeneration(payload) {
885 return request('ai_get_image_to_image_mask', {
886 payload: payload
887 });
888 };
889 exports.getImageToImageMaskGeneration = getImageToImageMaskGeneration;
890 var getImageToImageOutPainting = function getImageToImageOutPainting(payload) {
891 return request('ai_get_image_to_image_outpainting', {
892 payload: payload
893 });
894 };
895 exports.getImageToImageOutPainting = getImageToImageOutPainting;
896 var getImageToImageUpscale = function getImageToImageUpscale(payload) {
897 return request('ai_get_image_to_image_upscale', {
898 payload: payload
899 });
900 };
901 exports.getImageToImageUpscale = getImageToImageUpscale;
902 var getImageToImageRemoveBackground = function getImageToImageRemoveBackground(payload) {
903 return request('ai_get_image_to_image_remove_background', {
904 payload: payload
905 });
906 };
907 exports.getImageToImageRemoveBackground = getImageToImageRemoveBackground;
908 var getImageToImageReplaceBackground = function getImageToImageReplaceBackground(payload) {
909 return request('ai_get_image_to_image_replace_background', {
910 payload: payload
911 });
912 };
913 exports.getImageToImageReplaceBackground = getImageToImageReplaceBackground;
914 var getImageToImageRemoveText = function getImageToImageRemoveText(image) {
915 return request('ai_get_image_to_image_remove_text', {
916 image: image
917 });
918 };
919 exports.getImageToImageRemoveText = getImageToImageRemoveText;
920 var getImagePromptEnhanced = function getImagePromptEnhanced(prompt) {
921 return request('ai_get_image_prompt_enhancer', {
922 prompt: prompt
923 });
924 };
925 exports.getImagePromptEnhanced = getImagePromptEnhanced;
926 var uploadImage = function uploadImage(image) {
927 return request('ai_upload_image', _objectSpread({}, image));
928 };
929
930 /**
931 * @typedef {Object} AttachmentPropType - See ./types/attachment.js
932 * @typedef {Object} requestBody
933 * @property {string} prompt - Prompt to generate the layout from.
934 * @property {0|1|2} [variationType] - Type of the layout to generate (actually it's a position).
935 * @property {string[]} [prevGeneratedIds] - Previously generated ids for exclusion on regeneration.
936 * @property {AttachmentPropType[]} [attachments] - Attachments to use for the generation. currently only `json` type is supported - a container JSON to generate variations from.
937 */
938
939 /**
940 * @param {requestBody} requestBody
941 * @param {AbortSignal} [signal]
942 */
943 exports.uploadImage = uploadImage;
944 var generateLayout = function generateLayout(requestBody, signal) {
945 return request('ai_generate_layout', requestBody, true, signal);
946 };
947 exports.generateLayout = generateLayout;
948 var getLayoutPromptEnhanced = function getLayoutPromptEnhanced(prompt, enhanceType) {
949 return request('ai_get_layout_prompt_enhancer', {
950 prompt: prompt,
951 enhance_type: enhanceType
952 });
953 };
954 exports.getLayoutPromptEnhanced = getLayoutPromptEnhanced;
955 var getHistory = function getHistory(type, page, limit) {
956 return request('ai_get_history', {
957 type: type,
958 page: page,
959 limit: limit
960 });
961 };
962 exports.getHistory = getHistory;
963 var deleteHistoryItem = function deleteHistoryItem(id) {
964 return request('ai_delete_history_item', {
965 id: id
966 });
967 };
968 exports.deleteHistoryItem = deleteHistoryItem;
969 var toggleFavoriteHistoryItem = function toggleFavoriteHistoryItem(id) {
970 return request('ai_toggle_favorite_history_item', {
971 id: id
972 });
973 };
974 exports.toggleFavoriteHistoryItem = toggleFavoriteHistoryItem;
975
976 /***/ }),
977
978 /***/ "../modules/ai/assets/js/editor/components/alert-dialog.js":
979 /*!*****************************************************************!*\
980 !*** ../modules/ai/assets/js/editor/components/alert-dialog.js ***!
981 \*****************************************************************/
982 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
983
984 "use strict";
985
986
987 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
988 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
989 Object.defineProperty(exports, "__esModule", ({
990 value: true
991 }));
992 exports.AlertDialog = void 0;
993 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
994 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
995 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
996 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
997 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
998 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); }
999 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; }
1000 var AlertDialog = function AlertDialog(props) {
1001 var _useState = (0, _react.useState)(true),
1002 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1003 isShown = _useState2[0],
1004 setIsShown = _useState2[1];
1005 if (!isShown) {
1006 return null;
1007 }
1008 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1009 open: true,
1010 maxWidth: "lg"
1011 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
1012 sx: {
1013 padding: 0
1014 }
1015 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1016 sx: {
1017 textAlign: 'center',
1018 padding: 3
1019 }
1020 }, props.message), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1021 alignItems: "center",
1022 spacing: 2,
1023 marginBottom: 2
1024 }, /*#__PURE__*/_react.default.createElement(_ui.Button, {
1025 variant: "contained",
1026 type: "button",
1027 color: "primary",
1028 onClick: function onClick() {
1029 var _props$onClose;
1030 setIsShown(false);
1031 (_props$onClose = props.onClose) === null || _props$onClose === void 0 ? void 0 : _props$onClose.call(props);
1032 }
1033 }, (0, _i18n.__)('Close', 'elementor')))));
1034 };
1035 exports.AlertDialog = AlertDialog;
1036 AlertDialog.propTypes = {
1037 message: _propTypes.default.string.isRequired,
1038 onClose: _propTypes.default.func
1039 };
1040
1041 /***/ }),
1042
1043 /***/ "../modules/ai/assets/js/editor/components/dialog-header.js":
1044 /*!******************************************************************!*\
1045 !*** ../modules/ai/assets/js/editor/components/dialog-header.js ***!
1046 \******************************************************************/
1047 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1048
1049 "use strict";
1050
1051
1052 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1053 Object.defineProperty(exports, "__esModule", ({
1054 value: true
1055 }));
1056 exports["default"] = void 0;
1057 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1058 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1059 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1060 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1061 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1062 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1063 var ElementorLogo = function ElementorLogo(props) {
1064 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1065 viewBox: "0 0 32 32"
1066 }, props), /*#__PURE__*/_react.default.createElement("path", {
1067 fillRule: "evenodd",
1068 clipRule: "evenodd",
1069 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"
1070 }));
1071 };
1072 var StyledElementorLogo = (0, _ui.styled)(ElementorLogo)(function (_ref) {
1073 var theme = _ref.theme;
1074 return {
1075 width: theme.spacing(3),
1076 height: theme.spacing(3),
1077 '& path': {
1078 fill: theme.palette.text.primary
1079 }
1080 };
1081 });
1082 var DialogHeader = function DialogHeader(props) {
1083 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
1084 sx: {
1085 fontWeight: 'normal'
1086 },
1087 color: "transparent",
1088 position: "relative"
1089 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
1090 variant: "dense"
1091 }, /*#__PURE__*/_react.default.createElement(StyledElementorLogo, {
1092 sx: {
1093 mr: 1
1094 }
1095 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1096 component: "span",
1097 variant: "subtitle2",
1098 sx: {
1099 fontWeight: 'bold',
1100 textTransform: 'uppercase'
1101 }
1102 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
1103 label: (0, _i18n.__)('Beta', 'elementor'),
1104 color: "default",
1105 size: "small",
1106 sx: {
1107 ml: 1
1108 }
1109 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1110 direction: "row",
1111 spacing: 1,
1112 alignItems: "center",
1113 sx: {
1114 ml: 'auto'
1115 }
1116 }, props.children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
1117 size: "small",
1118 "aria-label": "close",
1119 onClick: props.onClose,
1120 sx: {
1121 '&.MuiButtonBase-root': {
1122 mr: -1
1123 }
1124 }
1125 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
1126 };
1127 DialogHeader.propTypes = {
1128 onClose: _propTypes.default.func.isRequired,
1129 children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node])
1130 };
1131 var _default = DialogHeader;
1132 exports["default"] = _default;
1133
1134 /***/ }),
1135
1136 /***/ "../modules/ai/assets/js/editor/components/loader.js":
1137 /*!***********************************************************!*\
1138 !*** ../modules/ai/assets/js/editor/components/loader.js ***!
1139 \***********************************************************/
1140 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1141
1142 "use strict";
1143
1144
1145 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1146 Object.defineProperty(exports, "__esModule", ({
1147 value: true
1148 }));
1149 exports["default"] = void 0;
1150 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1151 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1152 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1153 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1154 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1155 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1156 var _excluded = ["sx", "BoxProps"];
1157 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; }
1158 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; }
1159 var Loader = function Loader(_ref) {
1160 var _ref$sx = _ref.sx,
1161 sx = _ref$sx === void 0 ? {} : _ref$sx,
1162 _ref$BoxProps = _ref.BoxProps,
1163 BoxProps = _ref$BoxProps === void 0 ? {} : _ref$BoxProps,
1164 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1165 return /*#__PURE__*/_react.default.createElement(_ui.Box, (0, _extends2.default)({
1166 width: "100%",
1167 display: "flex",
1168 alignItems: "center"
1169 }, BoxProps, {
1170 sx: _objectSpread({
1171 px: 1.5,
1172 minHeight: function minHeight(theme) {
1173 return theme.spacing(5);
1174 }
1175 }, BoxProps.sx || {})
1176 }), /*#__PURE__*/_react.default.createElement(_ui.LinearProgress, (0, _extends2.default)({
1177 color: "secondary"
1178 }, props, {
1179 sx: _objectSpread({
1180 width: '100%'
1181 }, sx)
1182 })));
1183 };
1184 Loader.propTypes = {
1185 sx: _propTypes.default.object,
1186 BoxProps: _propTypes.default.object
1187 };
1188 var _default = Loader;
1189 exports["default"] = _default;
1190
1191 /***/ }),
1192
1193 /***/ "../modules/ai/assets/js/editor/components/prompt-dialog.js":
1194 /*!******************************************************************!*\
1195 !*** ../modules/ai/assets/js/editor/components/prompt-dialog.js ***!
1196 \******************************************************************/
1197 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1198
1199 "use strict";
1200
1201
1202 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1203 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1204 Object.defineProperty(exports, "__esModule", ({
1205 value: true
1206 }));
1207 exports["default"] = void 0;
1208 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1209 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1210 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1211 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1212 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1213 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1214 var _reactDraggable = _interopRequireDefault(__webpack_require__(/*! react-draggable */ "../node_modules/react-draggable/build/cjs/cjs.js"));
1215 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1216 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); }
1217 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; }
1218 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; }
1219 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; }
1220 var DraggablePaper = function DraggablePaper(props) {
1221 var _useState = (0, _react.useState)({
1222 x: 0,
1223 y: 0
1224 }),
1225 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1226 position = _useState2[0],
1227 setPosition = _useState2[1];
1228 var paperRef = (0, _react.useRef)(null);
1229 var timeout = (0, _react.useRef)(null);
1230 var onDrag = function onDrag(_e, _ref) {
1231 var x = _ref.x,
1232 y = _ref.y;
1233 return setPosition({
1234 x: x,
1235 y: y
1236 });
1237 };
1238 var handlePositionBoundaries = function handlePositionBoundaries() {
1239 clearTimeout(timeout.current);
1240
1241 // Ensuring the dialog header, which is used as the dialog dragging handle, does not exceed the screen.
1242 timeout.current = setTimeout(function () {
1243 var _paperRef$current;
1244 var dialogTop = (_paperRef$current = paperRef.current) === null || _paperRef$current === void 0 ? void 0 : _paperRef$current.getBoundingClientRect().top;
1245 if (dialogTop < 0) {
1246 setPosition(function (prev) {
1247 return _objectSpread(_objectSpread({}, prev), {}, {
1248 y: prev.y - dialogTop
1249 });
1250 });
1251 }
1252 }, 50);
1253 };
1254 (0, _react.useEffect)(function () {
1255 var resizeObserver = new ResizeObserver(handlePositionBoundaries);
1256 resizeObserver.observe(paperRef.current);
1257 return function () {
1258 resizeObserver.disconnect();
1259 };
1260 }, []);
1261 return /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
1262 position: position,
1263 onDrag: onDrag,
1264 handle: ".MuiAppBar-root",
1265 cancel: '[class*="MuiDialogContent-root"]',
1266 bounds: "parent"
1267 }, /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
1268 ref: paperRef
1269 })));
1270 };
1271 var PromptDialog = function PromptDialog(props) {
1272 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
1273 scroll: "paper",
1274 open: true,
1275 fullWidth: true,
1276 hideBackdrop: true,
1277 PaperComponent: DraggablePaper,
1278 disableScrollLock: true,
1279 sx: {
1280 '& .MuiDialog-container': {
1281 alignItems: 'flex-start',
1282 mt: '18vh'
1283 }
1284 },
1285 PaperProps: {
1286 sx: {
1287 m: 0,
1288 maxHeight: '76vh'
1289 }
1290 }
1291 }, props), props.children);
1292 };
1293 PromptDialog.propTypes = {
1294 onClose: _propTypes.default.func.isRequired,
1295 children: _propTypes.default.node,
1296 maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false])
1297 };
1298 PromptDialog.Header = _dialogHeader.default;
1299 PromptDialog.Content = _ui.DialogContent;
1300 var _default = PromptDialog;
1301 exports["default"] = _default;
1302
1303 /***/ }),
1304
1305 /***/ "../modules/ai/assets/js/editor/components/prompt-error-message.js":
1306 /*!*************************************************************************!*\
1307 !*** ../modules/ai/assets/js/editor/components/prompt-error-message.js ***!
1308 \*************************************************************************/
1309 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1310
1311 "use strict";
1312
1313
1314 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1315 Object.defineProperty(exports, "__esModule", ({
1316 value: true
1317 }));
1318 exports["default"] = void 0;
1319 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1320 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1321 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1322 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1323 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1324 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1325 var _excluded = ["error", "onRetry", "actionPosition"];
1326 var PromptErrorMessage = function PromptErrorMessage(_ref) {
1327 var error = _ref.error,
1328 _ref$onRetry = _ref.onRetry,
1329 onRetry = _ref$onRetry === void 0 ? function () {} : _ref$onRetry,
1330 _ref$actionPosition = _ref.actionPosition,
1331 actionPosition = _ref$actionPosition === void 0 ? 'default' : _ref$actionPosition,
1332 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1333 var messages = {
1334 default: {
1335 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Unknown error. Please try again later.', 'elementor')),
1336 description: (0, _i18n.__)('Error code:', 'elementor') + ' ' + error,
1337 buttonText: (0, _i18n.__)('Try Again', 'elementor'),
1338 buttonAction: onRetry
1339 },
1340 service_outage_internal: {
1341 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Elementor AI is temporarily unavailable', 'elementor')),
1342 description: (0, _i18n.__)('Seems like we are experiencing technical difficulty. We should be up and running shortly.', 'elementor'),
1343 buttonText: (0, _i18n.__)('Try Again', 'elementor'),
1344 buttonAction: onRetry
1345 },
1346 invalid_connect_data: {
1347 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Reconnect your account', 'elementor')),
1348 description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _i18n.__)('We couldn\'t connect to your account due to technical difficulties on our end. Reconnect your account to continue.', 'elementor'), ' ', /*#__PURE__*/_react.default.createElement("a", {
1349 href: "https://elementor.com/help/disconnecting-reconnecting-your-elementor-account/",
1350 target: "_blank",
1351 rel: "noreferrer"
1352 }, (0, _i18n.__)('Show me how', 'elementor'))),
1353 buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1354 buttonAction: function buttonAction() {
1355 return window.open(window.ElementorAiConfig.connect_url);
1356 }
1357 },
1358 not_connected: {
1359 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('You aren\'t connected to Elementor AI.', 'elementor')),
1360 description: (0, _i18n.__)('Elementor AI is just a few clicks away. Connect your account to instantly create texts and custom code.', 'elementor'),
1361 buttonText: (0, _i18n.__)('Connect', 'elementor'),
1362 buttonAction: function buttonAction() {
1363 return window.open(window.ElementorAiConfig.connect_url);
1364 }
1365 },
1366 quota_reached_trail: {
1367 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('It\'s time to upgrade.', 'elementor')),
1368 description: (0, _i18n.__)('Enjoy the free trial? Upgrade now for unlimited access to built-in image, text and custom code generators.', 'elementor'),
1369 buttonText: (0, _i18n.__)('Upgrade', 'elementor'),
1370 buttonAction: function buttonAction() {
1371 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1372 }
1373 },
1374 quota_reached_subscription: {
1375 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('It\'s time to upgrade.', 'elementor')),
1376 description: (0, _i18n.__)('Love Elementor AI? Upgrade to continue creating with built-in image, text and custom code generators.', 'elementor'),
1377 buttonText: (0, _i18n.__)('Upgrade', 'elementor'),
1378 buttonAction: function buttonAction() {
1379 return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1380 }
1381 },
1382 rate_limit_network: {
1383 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Whoa! Slow down there.', 'elementor')),
1384 description: (0, _i18n.__)('We can’t process that many requests so fast. Try again in 15 minutes.', 'elementor')
1385 },
1386 invalid_prompts: {
1387 text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('We were unable to generate that prompt.', 'elementor')),
1388 description: (0, _i18n.__)('Seems like the prompt contains words that could generate harmful content. Write a different prompt to continue.', 'elementor')
1389 }
1390 };
1391 var message = messages[error] || messages.default;
1392 var action = (message === null || message === void 0 ? void 0 : message.buttonText) && /*#__PURE__*/_react.default.createElement(_ui.Button, {
1393 color: "inherit",
1394 size: "small",
1395 variant: "outlined",
1396 onClick: message.buttonAction
1397 }, message.buttonText);
1398 return /*#__PURE__*/_react.default.createElement(_ui.Alert, (0, _extends2.default)({
1399 severity: message.severity || 'error',
1400 action: 'default' === actionPosition && action
1401 }, props), message.text, message.description, 'bottom' === actionPosition && /*#__PURE__*/_react.default.createElement(_ui.Box, {
1402 sx: {
1403 mt: 1
1404 }
1405 }, action));
1406 };
1407 PromptErrorMessage.propTypes = {
1408 error: _propTypes.default.string,
1409 onRetry: _propTypes.default.func,
1410 actionPosition: _propTypes.default.oneOf(['default', 'bottom'])
1411 };
1412 var _default = PromptErrorMessage;
1413 exports["default"] = _default;
1414
1415 /***/ }),
1416
1417 /***/ "../modules/ai/assets/js/editor/components/prompt-library-link.js":
1418 /*!************************************************************************!*\
1419 !*** ../modules/ai/assets/js/editor/components/prompt-library-link.js ***!
1420 \************************************************************************/
1421 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1422
1423 "use strict";
1424
1425
1426 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1427 Object.defineProperty(exports, "__esModule", ({
1428 value: true
1429 }));
1430 exports["default"] = void 0;
1431 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1432 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1433 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1434 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1435 var PromptLibraryLink = function PromptLibraryLink(props) {
1436 return /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1437 variant: "body2",
1438 color: "text.secondary"
1439 }, (0, _i18n.__)('For more suggestions, explore our'), ' ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
1440 href: props.libraryLink,
1441 className: "elementor-clickable",
1442 target: "_blank"
1443 }, (0, _i18n.__)('prompt library')));
1444 };
1445 PromptLibraryLink.propTypes = {
1446 libraryLink: _propTypes.default.string
1447 };
1448 var _default = PromptLibraryLink;
1449 exports["default"] = _default;
1450
1451 /***/ }),
1452
1453 /***/ "../modules/ai/assets/js/editor/components/upgrade-chip.js":
1454 /*!*****************************************************************!*\
1455 !*** ../modules/ai/assets/js/editor/components/upgrade-chip.js ***!
1456 \*****************************************************************/
1457 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1458
1459 "use strict";
1460
1461
1462 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1463 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1464 Object.defineProperty(exports, "__esModule", ({
1465 value: true
1466 }));
1467 exports["default"] = void 0;
1468 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1469 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1470 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1471 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1472 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1473 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1474 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); }
1475 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; }
1476 var popoverId = 'e-ai-upgrade-popover';
1477 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
1478 var theme = _ref.theme;
1479 return {
1480 position: 'relative',
1481 '[data-popper-placement="top"] &': {
1482 marginBottom: theme.spacing(2.5)
1483 },
1484 '[data-popper-placement="bottom"] &': {
1485 marginTop: theme.spacing(2.5)
1486 },
1487 padding: theme.spacing(3),
1488 boxShadow: theme.shadows[4],
1489 zIndex: '9999'
1490 };
1491 });
1492 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
1493 var theme = _ref2.theme;
1494 return {
1495 width: theme.spacing(5),
1496 height: theme.spacing(2.5),
1497 position: 'absolute',
1498 overflow: 'hidden',
1499 // Override Popper inline styles.
1500 left: '50% !important',
1501 transform: 'translateX(-50%) rotate(var(--rotate, 0deg)) !important',
1502 '[data-popper-placement="top"] &': {
1503 top: '100%'
1504 },
1505 '[data-popper-placement="bottom"] &': {
1506 '--rotate': '180deg',
1507 top: "calc(".concat(theme.spacing(2.5), " * -1)")
1508 },
1509 '&::after': {
1510 backgroundColor: theme.palette.background.paper,
1511 content: '""',
1512 display: 'block',
1513 position: 'absolute',
1514 width: theme.spacing(2.5),
1515 height: theme.spacing(2.5),
1516 top: 0,
1517 left: '50%',
1518 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
1519 boxShadow: '1px 1px 5px 0px rgba(0, 0, 0, 0.2)',
1520 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
1521 }
1522 };
1523 });
1524 var upgradeBullets = [(0, _i18n.__)('Let AI build your container layouts and content with ease and radically transform the way you create websites.', 'elementor'), (0, _i18n.__)('Generate your website\'s text or create custom code without having to write a single line yourself.', 'elementor'), (0, _i18n.__)('Effortlessly create or enhance stunning images and bring your ideas to life.', 'elementor'), (0, _i18n.__)('Access 30-days of AI History with the AI Starter plan and 90-days with the Power plan.', 'elementor')];
1525 var Chip = (0, _ui.styled)(_ui.Chip)(function () {
1526 return {
1527 '& .MuiChip-label': {
1528 lineHeight: 1.5
1529 },
1530 '& .MuiSvgIcon-root.MuiChip-icon': {
1531 fontSize: '1.25rem'
1532 }
1533 };
1534 });
1535 var UpgradeChip = function UpgradeChip(_ref3) {
1536 var _ref3$hasSubscription = _ref3.hasSubscription,
1537 hasSubscription = _ref3$hasSubscription === void 0 ? false : _ref3$hasSubscription,
1538 _ref3$usagePercentage = _ref3.usagePercentage,
1539 usagePercentage = _ref3$usagePercentage === void 0 ? 0 : _ref3$usagePercentage;
1540 var _useState = (0, _react.useState)(false),
1541 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1542 isPopoverOpen = _useState2[0],
1543 setIsPopoverOpen = _useState2[1];
1544 var anchorEl = (0, _react.useRef)(null);
1545 var arrowEl = (0, _react.useRef)(null);
1546 var showPopover = function showPopover() {
1547 return setIsPopoverOpen(true);
1548 };
1549 var hidePopover = function hidePopover() {
1550 return setIsPopoverOpen(false);
1551 };
1552 var actionUrl = 'https://go.elementor.com/ai-popup-purchase-dropdown/';
1553 if (hasSubscription) {
1554 actionUrl = usagePercentage >= 100 ? 'https://go.elementor.com/ai-popup-upgrade-limit-reached/' : 'https://go.elementor.com/ai-popup-upgrade-limit-reached-80-percent/';
1555 }
1556 var actionLabel = hasSubscription ? (0, _i18n.__)('Upgrade Elementor AI', 'elementor') : (0, _i18n.__)('Get Elementor AI', 'elementor');
1557 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1558 component: "span",
1559 "aria-owns": isPopoverOpen ? popoverId : undefined,
1560 "aria-haspopup": "true",
1561 onMouseEnter: showPopover,
1562 onMouseLeave: hidePopover,
1563 ref: anchorEl,
1564 display: "flex",
1565 alignItems: "center"
1566 }, /*#__PURE__*/_react.default.createElement(Chip, {
1567 color: "accent",
1568 label: (0, _i18n.__)('Upgrade', 'elementor'),
1569 icon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1570 size: "small"
1571 }), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
1572 open: isPopoverOpen,
1573 anchorEl: anchorEl.current,
1574 sx: {
1575 zIndex: '9999',
1576 maxWidth: 300
1577 },
1578 modifiers: [{
1579 name: 'arrow',
1580 enabled: true,
1581 options: {
1582 element: arrowEl.current
1583 }
1584 }]
1585 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
1586 ref: arrowEl
1587 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1588 variant: "h5",
1589 color: "text.primary"
1590 }, (0, _i18n.__)('Maximize Your Access to Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.List, {
1591 sx: {
1592 mb: 1
1593 }
1594 }, upgradeBullets.map(function (bullet, index) {
1595 return /*#__PURE__*/_react.default.createElement(_ui.ListItem, {
1596 key: index,
1597 disableGutters: true,
1598 sx: {
1599 alignItems: 'flex-start'
1600 }
1601 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(_icons.CheckedCircleIcon, null)), /*#__PURE__*/_react.default.createElement(_ui.ListItemText, {
1602 sx: {
1603 m: 0
1604 }
1605 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1606 variant: "body2"
1607 }, bullet)));
1608 })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
1609 variant: "contained",
1610 color: "accent",
1611 size: "small",
1612 href: actionUrl,
1613 target: "_blank",
1614 startIcon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1615 sx: {
1616 '&:hover': {
1617 color: 'accent.contrastText'
1618 }
1619 }
1620 }, actionLabel))));
1621 };
1622 var _default = UpgradeChip;
1623 exports["default"] = _default;
1624 UpgradeChip.propTypes = {
1625 hasSubscription: _propTypes.default.bool,
1626 usagePercentage: _propTypes.default.number
1627 };
1628
1629 /***/ }),
1630
1631 /***/ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js":
1632 /*!**************************************************************************!*\
1633 !*** ../modules/ai/assets/js/editor/components/voice-promotion-alert.js ***!
1634 \**************************************************************************/
1635 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1636
1637 "use strict";
1638 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
1639 /* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
1640
1641
1642 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1643 Object.defineProperty(exports, "__esModule", ({
1644 value: true
1645 }));
1646 exports["default"] = exports.VoicePromotionAlert = void 0;
1647 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1648 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1649 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1650 var _bulbIcon = _interopRequireDefault(__webpack_require__(/*! ../icons/bulb-icon */ "../modules/ai/assets/js/editor/icons/bulb-icon.js"));
1651 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
1652 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; }
1653 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; }
1654 var VoicePromotionAlert = function VoicePromotionAlert(props) {
1655 var _useIntroduction = (0, _useIntroduction2.default)(props.introductionKey),
1656 isViewed = _useIntroduction.isViewed,
1657 markAsViewed = _useIntroduction.markAsViewed;
1658 if (!isViewed) {
1659 return null;
1660 }
1661 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1662 sx: _objectSpread({
1663 mt: 2
1664 }, props.sx),
1665 alignItems: "top"
1666 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
1667 severity: "info",
1668 variant: "standard",
1669 icon: /*#__PURE__*/_react.default.createElement(_bulbIcon.default, {
1670 sx: {
1671 alignSelf: 'flex-start'
1672 }
1673 }),
1674 onClose: markAsViewed
1675 }, __('Get improved results from AI by adding some personal context. Go to Site Settings > AI Context to get started.')));
1676 };
1677 exports.VoicePromotionAlert = VoicePromotionAlert;
1678 VoicePromotionAlert.propTypes = {
1679 sx: PropTypes.object,
1680 introductionKey: PropTypes.string
1681 };
1682 var _default = VoicePromotionAlert;
1683 exports["default"] = _default;
1684
1685 /***/ }),
1686
1687 /***/ "../modules/ai/assets/js/editor/components/wizard-dialog.js":
1688 /*!******************************************************************!*\
1689 !*** ../modules/ai/assets/js/editor/components/wizard-dialog.js ***!
1690 \******************************************************************/
1691 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1692
1693 "use strict";
1694
1695
1696 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1697 Object.defineProperty(exports, "__esModule", ({
1698 value: true
1699 }));
1700 exports["default"] = void 0;
1701 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1702 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1703 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1704 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1705 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1706 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1707 var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1708 var _excluded = ["sx"];
1709 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; }
1710 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; }
1711 var WizardDialog = function WizardDialog(props) {
1712 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1713 open: true,
1714 onClose: props.onClose,
1715 fullWidth: true,
1716 hideBackdrop: true,
1717 maxWidth: "lg",
1718 PaperProps: {
1719 sx: {
1720 height: '88vh'
1721 }
1722 },
1723 sx: {
1724 zIndex: 9999
1725 }
1726 }, props.children);
1727 };
1728 WizardDialog.propTypes = {
1729 onClose: _propTypes.default.func.isRequired,
1730 children: _propTypes.default.node.isRequired
1731 };
1732 var WizardDialogContent = function WizardDialogContent(_ref) {
1733 var _ref$sx = _ref.sx,
1734 sx = _ref$sx === void 0 ? {} : _ref$sx,
1735 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1736 return /*#__PURE__*/_react.default.createElement(_ui.DialogContent, (0, _extends2.default)({}, props, {
1737 sx: _objectSpread({
1738 display: 'flex',
1739 flexDirection: 'column',
1740 justifyContent: 'center'
1741 }, sx)
1742 }));
1743 };
1744 WizardDialogContent.propTypes = {
1745 sx: _propTypes.default.object
1746 };
1747 WizardDialog.Header = _dialogHeader.default;
1748 WizardDialog.Content = WizardDialogContent;
1749 var _default = WizardDialog;
1750 exports["default"] = _default;
1751
1752 /***/ }),
1753
1754 /***/ "../modules/ai/assets/js/editor/context/requests-ids.js":
1755 /*!**************************************************************!*\
1756 !*** ../modules/ai/assets/js/editor/context/requests-ids.js ***!
1757 \**************************************************************/
1758 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1759
1760 "use strict";
1761
1762
1763 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1764 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1765 Object.defineProperty(exports, "__esModule", ({
1766 value: true
1767 }));
1768 exports["default"] = exports.RequestIdsProvider = void 0;
1769 exports.generateIds = generateIds;
1770 exports.useRequestIds = exports.getUniqueId = void 0;
1771 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1772 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1773 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); }
1774 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; }
1775 var Context = (0, _react.createContext)({});
1776 var useRequestIds = function useRequestIds() {
1777 var context = (0, _react.useContext)(Context);
1778 if (!context) {
1779 throw new Error('useRequestIds must be used within a RequestIdsProvider');
1780 }
1781 return context;
1782 };
1783 exports.useRequestIds = useRequestIds;
1784 var getUniqueId = function getUniqueId(prefix) {
1785 return prefix + '-' + Math.random().toString(16).substr(2, 7);
1786 };
1787 exports.getUniqueId = getUniqueId;
1788 window.EDITOR_SESSION_ID = window.EDITOR_SESSION_ID || getUniqueId('editor-session');
1789 function generateIds(template) {
1790 var _template$elements;
1791 template.id = getUniqueId().toString();
1792 if ((_template$elements = template.elements) !== null && _template$elements !== void 0 && _template$elements.length) {
1793 template.elements.map(function (child) {
1794 return generateIds(child);
1795 });
1796 }
1797 return template;
1798 }
1799 var RequestIdsProvider = function RequestIdsProvider(props) {
1800 var editorSessionId = (0, _react.useRef)(window.EDITOR_SESSION_ID);
1801 var sessionId = (0, _react.useRef)('');
1802 var generateId = (0, _react.useRef)('');
1803 var batchId = (0, _react.useRef)('');
1804 var requestId = (0, _react.useRef)('');
1805 sessionId.current = getUniqueId('session');
1806 var setGenerate = function setGenerate() {
1807 generateId.current = getUniqueId('generate');
1808 return generateId;
1809 };
1810 var setBatch = function setBatch() {
1811 batchId.current = getUniqueId('batch');
1812 return batchId;
1813 };
1814 var setRequest = function setRequest() {
1815 requestId.current = getUniqueId('request');
1816 return requestId;
1817 };
1818 return /*#__PURE__*/_react.default.createElement(Context.Provider, {
1819 value: {
1820 editorSessionId: editorSessionId,
1821 sessionId: sessionId,
1822 generateId: generateId,
1823 batchId: batchId,
1824 requestId: requestId,
1825 setGenerate: setGenerate,
1826 setBatch: setBatch,
1827 setRequest: setRequest
1828 }
1829 }, props.children);
1830 };
1831 exports.RequestIdsProvider = RequestIdsProvider;
1832 RequestIdsProvider.propTypes = {
1833 children: _propTypes.default.node.isRequired
1834 };
1835 var _default = Context;
1836 exports["default"] = _default;
1837
1838 /***/ }),
1839
1840 /***/ "../modules/ai/assets/js/editor/hooks/use-introduction.js":
1841 /*!****************************************************************!*\
1842 !*** ../modules/ai/assets/js/editor/hooks/use-introduction.js ***!
1843 \****************************************************************/
1844 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1845
1846 "use strict";
1847
1848
1849 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1850 Object.defineProperty(exports, "__esModule", ({
1851 value: true
1852 }));
1853 exports["default"] = useIntroduction;
1854 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1855 var _react = __webpack_require__(/*! react */ "react");
1856 function useIntroduction(key) {
1857 var _window$elementor$con, _window$elementorAdmi, _window$elementorAdmi2, _globalConfig$introdu;
1858 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;
1859 var _useState = (0, _react.useState)(!!(globalConfig !== null && globalConfig !== void 0 && (_globalConfig$introdu = globalConfig.introduction) !== null && _globalConfig$introdu !== void 0 && _globalConfig$introdu[key])),
1860 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1861 isViewed = _useState2[0],
1862 setIsViewed = _useState2[1];
1863 function markAsViewed() {
1864 if (!key) {
1865 return Promise.reject();
1866 }
1867 return new Promise(function (resolve, reject) {
1868 if (isViewed) {
1869 reject();
1870 }
1871 setIsViewed(true);
1872 elementorCommon.ajax.addRequest('introduction_viewed', {
1873 data: {
1874 introductionKey: key
1875 },
1876 error: function error() {
1877 setIsViewed(false);
1878 reject();
1879 },
1880 success: function success() {
1881 setIsViewed(true);
1882 if (globalConfig !== null && globalConfig !== void 0 && globalConfig.introduction) {
1883 globalConfig.introduction[key] = true;
1884 }
1885 resolve();
1886 }
1887 });
1888 });
1889 }
1890 return {
1891 isViewed: isViewed,
1892 markAsViewed: markAsViewed
1893 };
1894 }
1895
1896 /***/ }),
1897
1898 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js":
1899 /*!*******************************************************************!*\
1900 !*** ../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js ***!
1901 \*******************************************************************/
1902 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1903
1904 "use strict";
1905
1906
1907 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1908 Object.defineProperty(exports, "__esModule", ({
1909 value: true
1910 }));
1911 exports["default"] = void 0;
1912 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
1913 var _usePrompt2 = _interopRequireDefault(__webpack_require__(/*! ./use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
1914 var _config = __webpack_require__(/*! ../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
1915 var enhancePromptMap = new Map([['media', _api.getImagePromptEnhanced], ['layout', _api.getLayoutPromptEnhanced]]);
1916 var getResult = function getResult(prompt, type, enhanceType) {
1917 if (!enhancePromptMap.has(type)) {
1918 throw new Error("Invalid prompt type: ".concat(type));
1919 }
1920 return enhancePromptMap.get(type)(prompt, enhanceType);
1921 };
1922
1923 /**
1924 * Hook to enhance a prompt.
1925 *
1926 * @param {string} prompt
1927 * @param {'media' | 'layout'} type
1928 * @return {{enhancedPrompt: string | undefined, isEnhancing: boolean, enhance: (function(...[*]): Promise)}}
1929 */
1930 var usePromptEnhancer = function usePromptEnhancer(prompt, type) {
1931 var _useConfig = (0, _config.useConfig)(),
1932 mode = _useConfig.mode;
1933 var _usePrompt = (0, _usePrompt2.default)(function () {
1934 return getResult(prompt, type, mode);
1935 }, prompt),
1936 enhancedData = _usePrompt.data,
1937 isEnhancing = _usePrompt.isLoading,
1938 enhance = _usePrompt.send;
1939 return {
1940 enhance: enhance,
1941 isEnhancing: isEnhancing,
1942 enhancedPrompt: enhancedData === null || enhancedData === void 0 ? void 0 : enhancedData.result
1943 };
1944 };
1945 var _default = usePromptEnhancer;
1946 exports["default"] = _default;
1947
1948 /***/ }),
1949
1950 /***/ "../modules/ai/assets/js/editor/hooks/use-prompt.js":
1951 /*!**********************************************************!*\
1952 !*** ../modules/ai/assets/js/editor/hooks/use-prompt.js ***!
1953 \**********************************************************/
1954 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1955
1956 "use strict";
1957
1958
1959 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1960 Object.defineProperty(exports, "__esModule", ({
1961 value: true
1962 }));
1963 exports["default"] = void 0;
1964 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
1965 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1966 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
1967 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1968 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1969 var _react = __webpack_require__(/*! react */ "react");
1970 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
1971 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
1972 var _excluded = ["text", "response_id", "usage", "images"];
1973 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; }
1974 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; }
1975 var normalizeResponse = function normalizeResponse(_ref) {
1976 var text = _ref.text,
1977 responseId = _ref.response_id,
1978 usage = _ref.usage,
1979 images = _ref.images,
1980 optional = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1981 var creditsData = usage ? usage.quota - usage.usedQuota : 0;
1982 var credits = Math.max(creditsData, 0);
1983 var result = text || images;
1984 var normalized = {
1985 result: result,
1986 responseId: responseId,
1987 credits: credits
1988 };
1989 if (optional.base_template_id) {
1990 normalized.baseTemplateId = optional.base_template_id;
1991 }
1992 normalized.type = optional.template_type;
1993 return normalized;
1994 };
1995 var usePrompt = function usePrompt(fetchData, initialState) {
1996 var _useState = (0, _react.useState)(false),
1997 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1998 isLoading = _useState2[0],
1999 setIsLoading = _useState2[1];
2000 var _useState3 = (0, _react.useState)(''),
2001 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2002 error = _useState4[0],
2003 setError = _useState4[1];
2004 var _useState5 = (0, _react.useState)(initialState),
2005 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2006 data = _useState6[0],
2007 setData = _useState6[1];
2008 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
2009 setRequest = _useRequestIds.setRequest,
2010 editorSessionId = _useRequestIds.editorSessionId,
2011 sessionId = _useRequestIds.sessionId,
2012 generateId = _useRequestIds.generateId,
2013 batchId = _useRequestIds.batchId;
2014 var send = /*#__PURE__*/function () {
2015 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(payload) {
2016 return _regenerator.default.wrap(function _callee$(_context) {
2017 while (1) switch (_context.prev = _context.next) {
2018 case 0:
2019 return _context.abrupt("return", new Promise(function (resolve, reject) {
2020 setError('');
2021 setIsLoading(true);
2022 var requestId = setRequest();
2023 var requestIds = {
2024 editorSessionId: editorSessionId.current,
2025 sessionId: sessionId.current,
2026 generateId: generateId.current,
2027 batchId: batchId.current,
2028 requestId: requestId.current
2029 };
2030 payload = _objectSpread(_objectSpread({}, payload), {}, {
2031 requestIds: requestIds
2032 });
2033 fetchData(payload).then(function (result) {
2034 var normalizedData = normalizeResponse(result);
2035 setData(normalizedData);
2036 resolve(normalizedData);
2037 }).catch(function (err) {
2038 var finalError = (err === null || err === void 0 ? void 0 : err.responseText) || err;
2039 setError(finalError);
2040 reject(finalError);
2041 }).finally(function () {
2042 return setIsLoading(false);
2043 });
2044 }));
2045 case 1:
2046 case "end":
2047 return _context.stop();
2048 }
2049 }, _callee);
2050 }));
2051 return function send(_x) {
2052 return _ref2.apply(this, arguments);
2053 };
2054 }();
2055 var sendUsageData = function sendUsageData() {
2056 var usageData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : data;
2057 return usageData.responseId && (0, _api.setStatusFeedback)(usageData.responseId);
2058 };
2059 var reset = function reset() {
2060 setData(function (_ref3) {
2061 var credits = _ref3.credits;
2062 return {
2063 credits: credits,
2064 result: '',
2065 responseId: ''
2066 };
2067 });
2068 setError('');
2069 setIsLoading(false);
2070 };
2071 var setResult = function setResult(result) {
2072 var responseId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
2073 var updatedResult = _objectSpread({}, data);
2074 updatedResult.result = result;
2075 if (responseId) {
2076 updatedResult.responseId = responseId;
2077 }
2078 setData(updatedResult);
2079 };
2080 return {
2081 isLoading: isLoading,
2082 error: error,
2083 data: data,
2084 setResult: setResult,
2085 reset: reset,
2086 send: send,
2087 sendUsageData: sendUsageData
2088 };
2089 };
2090 var _default = usePrompt;
2091 exports["default"] = _default;
2092
2093 /***/ }),
2094
2095 /***/ "../modules/ai/assets/js/editor/hooks/use-timeout.js":
2096 /*!***********************************************************!*\
2097 !*** ../modules/ai/assets/js/editor/hooks/use-timeout.js ***!
2098 \***********************************************************/
2099 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2100
2101 "use strict";
2102
2103
2104 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2105 Object.defineProperty(exports, "__esModule", ({
2106 value: true
2107 }));
2108 exports.useTimeout = void 0;
2109 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2110 var _react = __webpack_require__(/*! react */ "react");
2111 var useTimeout = function useTimeout(delay) {
2112 var _useState = (0, _react.useState)(false),
2113 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2114 isTimeout = _useState2[0],
2115 setIsTimeout = _useState2[1];
2116 var timeoutIdRef = (0, _react.useRef)(null);
2117 var turnOffTimeout = function turnOffTimeout() {
2118 clearTimeout(timeoutIdRef.current);
2119 setIsTimeout(false);
2120 };
2121 (0, _react.useEffect)(function () {
2122 timeoutIdRef.current = setTimeout(function () {
2123 setIsTimeout(true);
2124 }, delay);
2125 return function () {
2126 clearTimeout(timeoutIdRef.current);
2127 };
2128 }, [delay]);
2129 return [isTimeout, turnOffTimeout];
2130 };
2131 exports.useTimeout = useTimeout;
2132
2133 /***/ }),
2134
2135 /***/ "../modules/ai/assets/js/editor/hooks/use-user-info.js":
2136 /*!*************************************************************!*\
2137 !*** ../modules/ai/assets/js/editor/hooks/use-user-info.js ***!
2138 \*************************************************************/
2139 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2140
2141 "use strict";
2142
2143
2144 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2145 Object.defineProperty(exports, "__esModule", ({
2146 value: true
2147 }));
2148 exports["default"] = void 0;
2149 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2150 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2151 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2152 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2153 var _react = __webpack_require__(/*! react */ "react");
2154 var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2155 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; }
2156 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; }
2157 var useUserInfo = function useUserInfo() {
2158 var _useState = (0, _react.useState)(false),
2159 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2160 isLoaded = _useState2[0],
2161 setIsLoaded = _useState2[1];
2162 var _useState3 = (0, _react.useState)(false),
2163 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2164 isLoading = _useState4[0],
2165 setIsLoading = _useState4[1];
2166 var _useState5 = (0, _react.useState)({
2167 is_connected: false,
2168 is_get_started: false,
2169 connect_url: '',
2170 usage: {
2171 hasAiSubscription: false,
2172 quota: 0,
2173 usedQuota: 0
2174 }
2175 }),
2176 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2177 userInfo = _useState6[0],
2178 setUserInfo = _useState6[1];
2179 var credits = userInfo.usage.quota - userInfo.usage.usedQuota;
2180 var usagePercentage = userInfo.usage.usedQuota / userInfo.usage.quota * 100;
2181 var fetchData = /*#__PURE__*/function () {
2182 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
2183 var userInfoResult;
2184 return _regenerator.default.wrap(function _callee$(_context) {
2185 while (1) switch (_context.prev = _context.next) {
2186 case 0:
2187 setIsLoading(true);
2188 _context.next = 3;
2189 return (0, _api.getUserInformation)();
2190 case 3:
2191 userInfoResult = _context.sent;
2192 setUserInfo(function (prevState) {
2193 return _objectSpread(_objectSpread({}, prevState), userInfoResult);
2194 });
2195 setIsLoaded(true);
2196 setIsLoading(false);
2197 case 7:
2198 case "end":
2199 return _context.stop();
2200 }
2201 }, _callee);
2202 }));
2203 return function fetchData() {
2204 return _ref.apply(this, arguments);
2205 };
2206 }();
2207 if (!isLoaded && !isLoading) {
2208 fetchData();
2209 }
2210 return {
2211 isLoading: isLoading,
2212 isLoaded: isLoaded,
2213 isConnected: userInfo.is_connected,
2214 isGetStarted: userInfo.is_get_started,
2215 connectUrl: userInfo.connect_url,
2216 builderUrl: userInfo.usage.builderUrl,
2217 hasSubscription: userInfo.usage.hasAiSubscription,
2218 credits: credits < 0 ? 0 : credits,
2219 usagePercentage: Math.round(usagePercentage),
2220 fetchData: fetchData
2221 };
2222 };
2223 var _default = useUserInfo;
2224 exports["default"] = _default;
2225
2226 /***/ }),
2227
2228 /***/ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js":
2229 /*!***************************************************************!*\
2230 !*** ../modules/ai/assets/js/editor/icons/arrow-left-icon.js ***!
2231 \***************************************************************/
2232 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2233
2234 "use strict";
2235
2236
2237 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2238 Object.defineProperty(exports, "__esModule", ({
2239 value: true
2240 }));
2241 exports["default"] = void 0;
2242 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2243 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2244 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2245 var ArrowLeftIcon = _react.default.forwardRef(function (props, ref) {
2246 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2247 viewBox: "0 0 24 24"
2248 }, props, {
2249 ref: ref
2250 }), /*#__PURE__*/_react.default.createElement("path", {
2251 fillRule: "evenodd",
2252 clipRule: "evenodd",
2253 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"
2254 }));
2255 });
2256 var _default = ArrowLeftIcon;
2257 exports["default"] = _default;
2258
2259 /***/ }),
2260
2261 /***/ "../modules/ai/assets/js/editor/icons/bulb-icon.js":
2262 /*!*********************************************************!*\
2263 !*** ../modules/ai/assets/js/editor/icons/bulb-icon.js ***!
2264 \*********************************************************/
2265 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2266
2267 "use strict";
2268
2269
2270 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2271 Object.defineProperty(exports, "__esModule", ({
2272 value: true
2273 }));
2274 exports["default"] = void 0;
2275 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2276 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2277 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2278 var BulbIcon = _react.default.forwardRef(function (props, ref) {
2279 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({}, props, {
2280 ref: ref
2281 }), /*#__PURE__*/_react.default.createElement("svg", {
2282 width: "22",
2283 height: "22",
2284 viewBox: "0 0 22 22",
2285 fill: "none",
2286 xmlns: "http://www.w3.org/2000/svg"
2287 }, /*#__PURE__*/_react.default.createElement("g", {
2288 clipPath: "url(#clip0_10743_8902)"
2289 }, /*#__PURE__*/_react.default.createElement("path", {
2290 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",
2291 stroke: "#2563EB",
2292 strokeWidth: "1.5",
2293 strokeLinecap: "round",
2294 strokeLinejoin: "round"
2295 }), /*#__PURE__*/_react.default.createElement("path", {
2296 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",
2297 stroke: "#2563EB",
2298 strokeWidth: "1.5",
2299 strokeLinecap: "round",
2300 strokeLinejoin: "round"
2301 }), /*#__PURE__*/_react.default.createElement("path", {
2302 d: "M10.0833 16.5H11.9166",
2303 stroke: "#2563EB",
2304 strokeWidth: "1.5",
2305 strokeLinecap: "round",
2306 strokeLinejoin: "round"
2307 })), /*#__PURE__*/_react.default.createElement("defs", null, /*#__PURE__*/_react.default.createElement("clipPath", {
2308 id: "clip0_10743_8902"
2309 }, /*#__PURE__*/_react.default.createElement("rect", {
2310 width: "22",
2311 height: "22",
2312 fill: "white"
2313 })))));
2314 });
2315 var _default = BulbIcon;
2316 exports["default"] = _default;
2317
2318 /***/ }),
2319
2320 /***/ "../modules/ai/assets/js/editor/icons/copy-page-icon.js":
2321 /*!**************************************************************!*\
2322 !*** ../modules/ai/assets/js/editor/icons/copy-page-icon.js ***!
2323 \**************************************************************/
2324 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2325
2326 "use strict";
2327
2328
2329 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2330 Object.defineProperty(exports, "__esModule", ({
2331 value: true
2332 }));
2333 exports["default"] = void 0;
2334 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2335 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2336 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2337 var CopyPageIcon = _react.default.forwardRef(function (props, ref) {
2338 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2339 viewBox: "0 0 24 24"
2340 }, props, {
2341 ref: ref
2342 }), /*#__PURE__*/_react.default.createElement("path", {
2343 fillRule: "evenodd",
2344 clipRule: "evenodd",
2345 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"
2346 }));
2347 });
2348 var _default = CopyPageIcon;
2349 exports["default"] = _default;
2350
2351 /***/ }),
2352
2353 /***/ "../modules/ai/assets/js/editor/icons/edit-icon.js":
2354 /*!*********************************************************!*\
2355 !*** ../modules/ai/assets/js/editor/icons/edit-icon.js ***!
2356 \*********************************************************/
2357 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2358
2359 "use strict";
2360
2361
2362 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2363 Object.defineProperty(exports, "__esModule", ({
2364 value: true
2365 }));
2366 exports["default"] = void 0;
2367 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2368 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2369 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2370 var EditIcon = _react.default.forwardRef(function (props, ref) {
2371 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2372 viewBox: "0 0 24 24"
2373 }, props, {
2374 ref: ref
2375 }), /*#__PURE__*/_react.default.createElement("path", {
2376 fillRule: "evenodd",
2377 clipRule: "evenodd",
2378 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"
2379 }), /*#__PURE__*/_react.default.createElement("path", {
2380 fillRule: "evenodd",
2381 clipRule: "evenodd",
2382 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"
2383 }));
2384 });
2385 var _default = EditIcon;
2386 exports["default"] = _default;
2387
2388 /***/ }),
2389
2390 /***/ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js":
2391 /*!********************************************************************!*\
2392 !*** ../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js ***!
2393 \********************************************************************/
2394 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2395
2396 "use strict";
2397
2398
2399 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2400 Object.defineProperty(exports, "__esModule", ({
2401 value: true
2402 }));
2403 exports["default"] = void 0;
2404 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2405 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2406 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2407 var ExpandDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2408 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2409 viewBox: "0 0 24 24"
2410 }, props, {
2411 ref: ref
2412 }), /*#__PURE__*/_react.default.createElement("path", {
2413 fillRule: "evenodd",
2414 clipRule: "evenodd",
2415 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"
2416 }));
2417 });
2418 var _default = ExpandDiagonalIcon;
2419 exports["default"] = _default;
2420
2421 /***/ }),
2422
2423 /***/ "../modules/ai/assets/js/editor/icons/lock-icon.js":
2424 /*!*********************************************************!*\
2425 !*** ../modules/ai/assets/js/editor/icons/lock-icon.js ***!
2426 \*********************************************************/
2427 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2428
2429 "use strict";
2430
2431
2432 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2433 Object.defineProperty(exports, "__esModule", ({
2434 value: true
2435 }));
2436 exports["default"] = void 0;
2437 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2438 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2439 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2440 var LockIcon = _react.default.forwardRef(function (props, ref) {
2441 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2442 viewBox: "0 0 24 24"
2443 }, props, {
2444 ref: ref
2445 }), /*#__PURE__*/_react.default.createElement("path", {
2446 fillRule: "evenodd",
2447 clipRule: "evenodd",
2448 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"
2449 }), /*#__PURE__*/_react.default.createElement("path", {
2450 fillRule: "evenodd",
2451 clipRule: "evenodd",
2452 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"
2453 }), /*#__PURE__*/_react.default.createElement("path", {
2454 d: "M6 12H19V20H6V12Z"
2455 }));
2456 });
2457 var _default = LockIcon;
2458 exports["default"] = _default;
2459
2460 /***/ }),
2461
2462 /***/ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js":
2463 /*!**********************************************************************!*\
2464 !*** ../modules/ai/assets/js/editor/icons/minimize-diagonal-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 MinimizeDiagonalIcon = _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: "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"
2488 }));
2489 });
2490 var _default = MinimizeDiagonalIcon;
2491 exports["default"] = _default;
2492
2493 /***/ }),
2494
2495 /***/ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js":
2496 /*!****************************************************************!*\
2497 !*** ../modules/ai/assets/js/editor/icons/plus-circle-icon.js ***!
2498 \****************************************************************/
2499 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2500
2501 "use strict";
2502
2503
2504 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2505 Object.defineProperty(exports, "__esModule", ({
2506 value: true
2507 }));
2508 exports["default"] = void 0;
2509 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2510 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2511 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2512 var PlusCircleIcon = _react.default.forwardRef(function (props, ref) {
2513 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2514 viewBox: "0 0 24 24"
2515 }, props, {
2516 ref: ref
2517 }), /*#__PURE__*/_react.default.createElement("path", {
2518 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"
2519 }));
2520 });
2521 var _default = PlusCircleIcon;
2522 exports["default"] = _default;
2523
2524 /***/ }),
2525
2526 /***/ "../modules/ai/assets/js/editor/icons/refresh-icon.js":
2527 /*!************************************************************!*\
2528 !*** ../modules/ai/assets/js/editor/icons/refresh-icon.js ***!
2529 \************************************************************/
2530 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2531
2532 "use strict";
2533
2534
2535 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2536 Object.defineProperty(exports, "__esModule", ({
2537 value: true
2538 }));
2539 exports["default"] = void 0;
2540 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2541 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2542 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2543 var RefreshIcon = _react.default.forwardRef(function (props, ref) {
2544 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2545 viewBox: "0 0 24 24"
2546 }, props, {
2547 ref: ref
2548 }), /*#__PURE__*/_react.default.createElement("path", {
2549 fillRule: "evenodd",
2550 clipRule: "evenodd",
2551 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"
2552 }), /*#__PURE__*/_react.default.createElement("path", {
2553 fillRule: "evenodd",
2554 clipRule: "evenodd",
2555 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"
2556 }));
2557 });
2558 var _default = RefreshIcon;
2559 exports["default"] = _default;
2560
2561 /***/ }),
2562
2563 /***/ "../modules/ai/assets/js/editor/icons/wand-icon.js":
2564 /*!*********************************************************!*\
2565 !*** ../modules/ai/assets/js/editor/icons/wand-icon.js ***!
2566 \*********************************************************/
2567 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2568
2569 "use strict";
2570
2571
2572 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2573 Object.defineProperty(exports, "__esModule", ({
2574 value: true
2575 }));
2576 exports["default"] = void 0;
2577 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2578 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2579 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2580 var WandIcon = _react.default.forwardRef(function (props, ref) {
2581 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2582 viewBox: "0 0 24 24"
2583 }, props, {
2584 ref: ref
2585 }), /*#__PURE__*/_react.default.createElement("path", {
2586 fillRule: "evenodd",
2587 clipRule: "evenodd",
2588 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"
2589 }), /*#__PURE__*/_react.default.createElement("path", {
2590 fillRule: "evenodd",
2591 clipRule: "evenodd",
2592 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"
2593 }), /*#__PURE__*/_react.default.createElement("path", {
2594 fillRule: "evenodd",
2595 clipRule: "evenodd",
2596 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"
2597 }));
2598 });
2599 var _default = WandIcon;
2600 exports["default"] = _default;
2601
2602 /***/ }),
2603
2604 /***/ "../modules/ai/assets/js/editor/icons/website-icon.js":
2605 /*!************************************************************!*\
2606 !*** ../modules/ai/assets/js/editor/icons/website-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 WebsiteIcon = _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 fillRule: "evenodd",
2628 clipRule: "evenodd",
2629 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"
2630 }));
2631 });
2632 var _default = WebsiteIcon;
2633 exports["default"] = _default;
2634
2635 /***/ }),
2636
2637 /***/ "../modules/ai/assets/js/editor/icons/x-circle-icon.js":
2638 /*!*************************************************************!*\
2639 !*** ../modules/ai/assets/js/editor/icons/x-circle-icon.js ***!
2640 \*************************************************************/
2641 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2642
2643 "use strict";
2644
2645
2646 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2647 Object.defineProperty(exports, "__esModule", ({
2648 value: true
2649 }));
2650 exports["default"] = void 0;
2651 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2652 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2653 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2654 var XCircleIcon = _react.default.forwardRef(function (props, ref) {
2655 return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2656 viewBox: "0 0 24 24"
2657 }, props, {
2658 ref: ref
2659 }), /*#__PURE__*/_react.default.createElement("path", {
2660 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"
2661 }));
2662 });
2663 var _default = XCircleIcon;
2664 exports["default"] = _default;
2665
2666 /***/ }),
2667
2668 /***/ "../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js":
2669 /*!********************************************************************************************!*\
2670 !*** ../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js ***!
2671 \********************************************************************************************/
2672 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2673
2674 "use strict";
2675
2676
2677 var _require = __webpack_require__(/*! ../../utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js"),
2678 renderLayoutApp = _require.renderLayoutApp,
2679 importToEditor = _require.importToEditor;
2680 var _require2 = __webpack_require__(/*! ../../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js"),
2681 MODE_VARIATION = _require2.MODE_VARIATION;
2682 var _require3 = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"),
2683 __ = _require3.__;
2684 var _require4 = __webpack_require__(/*! ../../pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"),
2685 ATTACHMENT_TYPE_JSON = _require4.ATTACHMENT_TYPE_JSON,
2686 ELEMENTOR_LIBRARY_SOURCE = _require4.ELEMENTOR_LIBRARY_SOURCE;
2687 var ApplyTemplateForAiBehavior;
2688 ApplyTemplateForAiBehavior = Marionette.Behavior.extend({
2689 ui: {
2690 applyButton: '.elementor-template-library-template-apply-ai',
2691 generateVariation: '.elementor-template-library-template-generate-variation'
2692 },
2693 events: {
2694 'click @ui.applyButton': 'onApplyButtonClick',
2695 'click @ui.generateVariation': 'onGenerateVariationClick'
2696 },
2697 onGenerateVariationClick: function onGenerateVariationClick() {
2698 var _libraryComponent$man, _libraryComponent$man2;
2699 var args = {
2700 model: this.view.model
2701 };
2702 var libraryComponent = $e.components.get('library');
2703 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;
2704 libraryComponent.downloadTemplate(args, function (data) {
2705 var model = args.model;
2706 var attachment = {
2707 type: ATTACHMENT_TYPE_JSON,
2708 previewHTML: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
2709 content: data.content[0],
2710 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
2711 source: ELEMENTOR_LIBRARY_SOURCE
2712 };
2713 renderLayoutApp({
2714 parentContainer: elementor.getPreviewContainer(),
2715 mode: MODE_VARIATION,
2716 at: at,
2717 attachments: [attachment],
2718 onInsert: function onInsert(template) {
2719 importToEditor({
2720 parentContainer: elementor.getPreviewContainer(),
2721 at: at,
2722 template: template,
2723 historyTitle: __('AI Variation from library', 'elementor')
2724 });
2725 }
2726 });
2727 $e.run('library/close');
2728 });
2729 },
2730 onApplyButtonClick: function onApplyButtonClick() {
2731 var args = {
2732 model: this.view.model
2733 };
2734 this.ui.applyButton.addClass('elementor-disabled');
2735 if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
2736 $e.route('library/connect', args);
2737 return;
2738 }
2739 $e.run('library/generate-ai-variation', args);
2740 }
2741 });
2742 module.exports = ApplyTemplateForAiBehavior;
2743
2744 /***/ }),
2745
2746 /***/ "../modules/ai/assets/js/editor/layout-app-wrapper.js":
2747 /*!************************************************************!*\
2748 !*** ../modules/ai/assets/js/editor/layout-app-wrapper.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 _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2761 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2762 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2763 var LayoutAppWrapper = function LayoutAppWrapper(props) {
2764 return /*#__PURE__*/_react.default.createElement(_ui.DirectionProvider, {
2765 rtl: props.isRTL
2766 }, /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, {
2767 colorScheme: props.colorScheme
2768 }, props.children));
2769 };
2770 LayoutAppWrapper.propTypes = {
2771 children: _propTypes.default.node,
2772 isRTL: _propTypes.default.bool,
2773 colorScheme: _propTypes.default.oneOf(['auto', 'light', 'dark'])
2774 };
2775 var _default = LayoutAppWrapper;
2776 exports["default"] = _default;
2777
2778 /***/ }),
2779
2780 /***/ "../modules/ai/assets/js/editor/layout-app.js":
2781 /*!****************************************************!*\
2782 !*** ../modules/ai/assets/js/editor/layout-app.js ***!
2783 \****************************************************/
2784 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2785
2786 "use strict";
2787
2788
2789 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2790 Object.defineProperty(exports, "__esModule", ({
2791 value: true
2792 }));
2793 exports["default"] = void 0;
2794 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2795 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2796 var _layoutContent = _interopRequireDefault(__webpack_require__(/*! ./layout-content */ "../modules/ai/assets/js/editor/layout-content.js"));
2797 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2798 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2799 var _remoteConfig = __webpack_require__(/*! ./pages/form-layout/context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
2800 var _requestsIds = __webpack_require__(/*! ./context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2801 var LayoutApp = function LayoutApp(props) {
2802 return /*#__PURE__*/_react.default.createElement(_remoteConfig.RemoteConfigProvider, {
2803 onError: props.onClose
2804 }, /*#__PURE__*/_react.default.createElement(_requestsIds.RequestIdsProvider, null, /*#__PURE__*/_react.default.createElement(_config.ConfigProvider, {
2805 mode: props.mode,
2806 attachmentsTypes: props.attachmentsTypes,
2807 onClose: props.onClose,
2808 onConnect: props.onConnect,
2809 onData: props.onData,
2810 onInsert: props.onInsert,
2811 onSelect: props.onSelect,
2812 onGenerate: props.onGenerate,
2813 currentContext: props.currentContext,
2814 hasPro: props.hasPro
2815 }, /*#__PURE__*/_react.default.createElement(_layoutContent.default, {
2816 attachments: props.attachments
2817 }))));
2818 };
2819 LayoutApp.propTypes = {
2820 mode: _propTypes.default.oneOf(_config.LAYOUT_APP_MODES).isRequired,
2821 attachmentsTypes: _attachment.AttachmentsTypesPropType,
2822 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
2823 onClose: _propTypes.default.func.isRequired,
2824 onConnect: _propTypes.default.func.isRequired,
2825 onData: _propTypes.default.func.isRequired,
2826 onInsert: _propTypes.default.func.isRequired,
2827 onSelect: _propTypes.default.func.isRequired,
2828 onGenerate: _propTypes.default.func.isRequired,
2829 currentContext: _propTypes.default.object,
2830 hasPro: _propTypes.default.bool
2831 };
2832 var _default = LayoutApp;
2833 exports["default"] = _default;
2834
2835 /***/ }),
2836
2837 /***/ "../modules/ai/assets/js/editor/layout-content.js":
2838 /*!********************************************************!*\
2839 !*** ../modules/ai/assets/js/editor/layout-content.js ***!
2840 \********************************************************/
2841 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2842
2843 "use strict";
2844
2845
2846 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2847 Object.defineProperty(exports, "__esModule", ({
2848 value: true
2849 }));
2850 exports["default"] = void 0;
2851 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2852 var _connect = _interopRequireDefault(__webpack_require__(/*! ./pages/connect */ "../modules/ai/assets/js/editor/pages/connect/index.js"));
2853 var _formLayout = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout */ "../modules/ai/assets/js/editor/pages/form-layout/index.js"));
2854 var _getStarted = _interopRequireDefault(__webpack_require__(/*! ./pages/get-started */ "../modules/ai/assets/js/editor/pages/get-started/index.js"));
2855 var _loader = _interopRequireDefault(__webpack_require__(/*! ./components/loader */ "../modules/ai/assets/js/editor/components/loader.js"));
2856 var _upgradeChip = _interopRequireDefault(__webpack_require__(/*! ./components/upgrade-chip */ "../modules/ai/assets/js/editor/components/upgrade-chip.js"));
2857 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
2858 var _wizardDialog = _interopRequireDefault(__webpack_require__(/*! ./components/wizard-dialog */ "../modules/ai/assets/js/editor/components/wizard-dialog.js"));
2859 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout/components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
2860 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2861 var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2862 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2863 var LayoutContent = function LayoutContent(props) {
2864 var _useUserInfo = (0, _useUserInfo2.default)(),
2865 isLoading = _useUserInfo.isLoading,
2866 isConnected = _useUserInfo.isConnected,
2867 isGetStarted = _useUserInfo.isGetStarted,
2868 connectUrl = _useUserInfo.connectUrl,
2869 fetchData = _useUserInfo.fetchData,
2870 hasSubscription = _useUserInfo.hasSubscription,
2871 usagePercentage = _useUserInfo.usagePercentage;
2872 var _useConfig = (0, _config.useConfig)(),
2873 onClose = _useConfig.onClose,
2874 onConnect = _useConfig.onConnect;
2875 if (isLoading) {
2876 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2877 onClose: onClose
2878 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, {
2879 onClose: onClose
2880 }), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, {
2881 dividers: true
2882 }, /*#__PURE__*/_react.default.createElement(_loader.default, {
2883 BoxProps: {
2884 sx: {
2885 px: 3
2886 }
2887 }
2888 })));
2889 }
2890 if (!isConnected) {
2891 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
2892 onClose: onClose
2893 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2894 onClose: onClose
2895 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
2896 dividers: true
2897 }, /*#__PURE__*/_react.default.createElement(_connect.default, {
2898 connectUrl: connectUrl,
2899 onSuccess: function onSuccess(data) {
2900 onConnect(data);
2901 fetchData();
2902 }
2903 })));
2904 }
2905 if (!isGetStarted) {
2906 return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
2907 onClose: onClose
2908 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2909 onClose: onClose
2910 }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
2911 dividers: true
2912 }, /*#__PURE__*/_react.default.createElement(_getStarted.default, {
2913 onSuccess: fetchData
2914 })));
2915 }
2916 var showUpgradeChip = !hasSubscription || 80 <= usagePercentage;
2917 return /*#__PURE__*/_react.default.createElement(_formLayout.default, {
2918 attachments: props.attachments,
2919 DialogHeaderProps: {
2920 children: showUpgradeChip && /*#__PURE__*/_react.default.createElement(_upgradeChip.default, {
2921 hasSubscription: hasSubscription,
2922 usagePercentage: usagePercentage
2923 })
2924 }
2925 });
2926 };
2927 LayoutContent.propTypes = {
2928 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
2929 };
2930 var _default = LayoutContent;
2931 exports["default"] = _default;
2932
2933 /***/ }),
2934
2935 /***/ "../modules/ai/assets/js/editor/pages/connect/index.js":
2936 /*!*************************************************************!*\
2937 !*** ../modules/ai/assets/js/editor/pages/connect/index.js ***!
2938 \*************************************************************/
2939 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2940
2941 "use strict";
2942
2943
2944 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2945 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
2946 Object.defineProperty(exports, "__esModule", ({
2947 value: true
2948 }));
2949 exports["default"] = void 0;
2950 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
2951 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2952 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
2953 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2954 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
2955 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); }
2956 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; }
2957 var Connect = function Connect(_ref) {
2958 var connectUrl = _ref.connectUrl,
2959 onSuccess = _ref.onSuccess;
2960 var approveButtonRef = (0, _react.useRef)();
2961 (0, _react.useEffect)(function () {
2962 // On local dev (as a standalone app), the connect lib is not loaded.
2963 if (!jQuery.fn.elementorConnect) {
2964 return;
2965 }
2966 jQuery(approveButtonRef.current).elementorConnect({
2967 success: function success(_, data) {
2968 return onSuccess(data);
2969 },
2970 error: function error() {
2971 throw new Error('Elementor AI: Failed to connect.');
2972 }
2973 });
2974 }, []);
2975 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
2976 alignItems: "center",
2977 gap: 2
2978 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
2979 sx: {
2980 color: 'text.primary',
2981 fontSize: '60px',
2982 mb: 1
2983 }
2984 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2985 variant: "h4",
2986 sx: {
2987 color: 'text.primary'
2988 }
2989 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2990 variant: "body2"
2991 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
2992 variant: "caption",
2993 sx: {
2994 maxWidth: 520,
2995 textAlign: 'center'
2996 }
2997 }, (0, _i18n.__)('By clicking "Connect", I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
2998 href: "https://go.elementor.com/ai-terms/",
2999 target: "_blank",
3000 color: "info.main"
3001 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
3002 href: "https://go.elementor.com/ai-privacy-policy/",
3003 target: "_blank",
3004 color: "info.main"
3005 }, (0, _i18n.__)('Privacy Policy', 'elementor')), (0, _i18n.__)(' of the Elementor AI service.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
3006 ref: approveButtonRef,
3007 href: connectUrl,
3008 variant: "contained",
3009 sx: {
3010 mt: 1,
3011 '&:hover': {
3012 color: 'primary.contrastText'
3013 }
3014 }
3015 }, (0, _i18n.__)('Connect', 'elementor')));
3016 };
3017 Connect.propTypes = {
3018 connectUrl: _propTypes.default.string.isRequired,
3019 onSuccess: _propTypes.default.func.isRequired
3020 };
3021 var _default = Connect;
3022 exports["default"] = _default;
3023
3024 /***/ }),
3025
3026 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js":
3027 /*!**********************************************************************************!*\
3028 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js ***!
3029 \**********************************************************************************/
3030 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3031
3032 "use strict";
3033
3034
3035 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3036 Object.defineProperty(exports, "__esModule", ({
3037 value: true
3038 }));
3039 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;
3040 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3041 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3042 var _menu = __webpack_require__(/*! ./attachments/menu */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js");
3043 var _thumbnailJson = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-json */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js"));
3044 var _thumbnailUrl = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-url */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js"));
3045 var _websiteIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/website-icon */ "../modules/ai/assets/js/editor/icons/website-icon.js"));
3046 var _copyPageIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/copy-page-icon */ "../modules/ai/assets/js/editor/icons/copy-page-icon.js"));
3047 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3048 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3049 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3050 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3051 var ATTACHMENT_TYPE_JSON = 'json';
3052 exports.ATTACHMENT_TYPE_JSON = ATTACHMENT_TYPE_JSON;
3053 var ATTACHMENT_TYPE_URL = 'url';
3054 exports.ATTACHMENT_TYPE_URL = ATTACHMENT_TYPE_URL;
3055 var MENU_TYPE_LIBRARY = 'library';
3056 exports.MENU_TYPE_LIBRARY = MENU_TYPE_LIBRARY;
3057 var USER_VARIATION_SOURCE = 'user-variation';
3058 exports.USER_VARIATION_SOURCE = USER_VARIATION_SOURCE;
3059 var ELEMENTOR_LIBRARY_SOURCE = 'elementor-library';
3060 exports.ELEMENTOR_LIBRARY_SOURCE = ELEMENTOR_LIBRARY_SOURCE;
3061 var USER_URL_SOURCE = 'user-url';
3062 exports.USER_URL_SOURCE = USER_URL_SOURCE;
3063 var Attachments = function Attachments(props) {
3064 if (!props.attachments.length) {
3065 return /*#__PURE__*/_react.default.createElement(_menu.Menu, {
3066 disabled: props.disabled,
3067 onAttach: props.onAttach,
3068 items: [{
3069 title: (0, _i18n.__)('Reference a website', 'elementor'),
3070 icon: _websiteIcon.default,
3071 type: ATTACHMENT_TYPE_URL
3072 }, {
3073 title: (0, _i18n.__)('Create variations from Template Library', 'elementor'),
3074 icon: _copyPageIcon.default,
3075 type: MENU_TYPE_LIBRARY
3076 }]
3077 });
3078 }
3079 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3080 direction: "row",
3081 spacing: 1
3082 }, props.attachments.map(function (attachment, index) {
3083 switch (attachment.type) {
3084 case ATTACHMENT_TYPE_JSON:
3085 return /*#__PURE__*/_react.default.createElement(_thumbnailJson.default, (0, _extends2.default)({
3086 key: index
3087 }, props));
3088 case ATTACHMENT_TYPE_URL:
3089 return /*#__PURE__*/_react.default.createElement(_thumbnailUrl.default, (0, _extends2.default)({
3090 key: index
3091 }, props));
3092 default:
3093 return null;
3094 }
3095 }));
3096 };
3097 Attachments.propTypes = {
3098 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3099 onAttach: _propTypes.default.func.isRequired,
3100 onDetach: _propTypes.default.func,
3101 disabled: _propTypes.default.bool
3102 };
3103 var _default = Attachments;
3104 exports["default"] = _default;
3105
3106 /***/ }),
3107
3108 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js":
3109 /*!************************************************************************************************!*\
3110 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js ***!
3111 \************************************************************************************************/
3112 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3113
3114 "use strict";
3115
3116
3117 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3118 Object.defineProperty(exports, "__esModule", ({
3119 value: true
3120 }));
3121 exports["default"] = exports.AttachDialog = void 0;
3122 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3123 var _urlDialog = __webpack_require__(/*! ./url-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js");
3124 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3125 var _libraryDialog = __webpack_require__(/*! ./library-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js");
3126 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3127 var AttachDialog = function AttachDialog(props) {
3128 var type = props.type;
3129 var url = props.url;
3130 switch (type) {
3131 case _attachments.ATTACHMENT_TYPE_URL:
3132 return /*#__PURE__*/_react.default.createElement(_urlDialog.UrlDialog, {
3133 url: url,
3134 onAttach: props.onAttach,
3135 onClose: props.onClose
3136 });
3137 case _attachments.MENU_TYPE_LIBRARY:
3138 return /*#__PURE__*/_react.default.createElement(_libraryDialog.LibraryDialog, {
3139 onAttach: props.onAttach,
3140 onClose: props.onClose
3141 });
3142 }
3143 return null;
3144 };
3145 exports.AttachDialog = AttachDialog;
3146 AttachDialog.propTypes = {
3147 type: _propTypes.default.string,
3148 onAttach: _propTypes.default.func,
3149 onClose: _propTypes.default.func,
3150 url: _propTypes.default.string
3151 };
3152 var _default = AttachDialog;
3153 exports["default"] = _default;
3154
3155 /***/ }),
3156
3157 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js":
3158 /*!*************************************************************************************************!*\
3159 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js ***!
3160 \*************************************************************************************************/
3161 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3162
3163 "use strict";
3164
3165
3166 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3167 Object.defineProperty(exports, "__esModule", ({
3168 value: true
3169 }));
3170 exports.LibraryDialog = void 0;
3171 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3172 var _react = __webpack_require__(/*! react */ "react");
3173 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3174 var LibraryDialog = function LibraryDialog(props) {
3175 var isApplyingTemplate = (0, _react.useRef)(false);
3176 (0, _react.useEffect)(function () {
3177 var onLibraryHide = function onLibraryHide() {
3178 if (isApplyingTemplate.current) {
3179 return;
3180 }
3181 props.onClose();
3182 };
3183 $e.components.get('library').layout.getModal().on('hide', onLibraryHide);
3184 return function () {
3185 $e.components.get('library').layout.getModal().off('hide', onLibraryHide);
3186 };
3187 }, [props]);
3188 (0, _react.useEffect)(function () {
3189 var onMessage = function onMessage(event) {
3190 var _event$data = event.data,
3191 type = _event$data.type,
3192 json = _event$data.json,
3193 html = _event$data.html,
3194 label = _event$data.label,
3195 source = _event$data.source;
3196 switch (type) {
3197 case 'library/attach:start':
3198 isApplyingTemplate.current = true;
3199 break;
3200 case 'library/attach':
3201 props.onAttach([{
3202 type: _attachments.ATTACHMENT_TYPE_JSON,
3203 previewHTML: html,
3204 content: json,
3205 label: label,
3206 source: source
3207 }]);
3208 isApplyingTemplate.current = false;
3209 props.onClose();
3210 break;
3211 }
3212 };
3213 window.addEventListener('message', onMessage);
3214 return function () {
3215 window.removeEventListener('message', onMessage);
3216 };
3217 });
3218 $e.run('library/open', {
3219 toDefault: true,
3220 mode: 'ai-attachment'
3221 });
3222 isApplyingTemplate.current = false;
3223 return null;
3224 };
3225 exports.LibraryDialog = LibraryDialog;
3226 LibraryDialog.propTypes = {
3227 onAttach: _propTypes.default.func.isRequired,
3228 onClose: _propTypes.default.func.isRequired
3229 };
3230
3231 /***/ }),
3232
3233 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js":
3234 /*!***************************************************************************************!*\
3235 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js ***!
3236 \***************************************************************************************/
3237 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3238
3239 "use strict";
3240
3241
3242 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3243 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3244 Object.defineProperty(exports, "__esModule", ({
3245 value: true
3246 }));
3247 exports.Menu = void 0;
3248 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3249 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3250 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3251 var _xCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/x-circle-icon */ "../modules/ai/assets/js/editor/icons/x-circle-icon.js"));
3252 var _plusCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/plus-circle-icon */ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js"));
3253 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3254 var _attachDialog = __webpack_require__(/*! ./attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js");
3255 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3256 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); }
3257 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; }
3258 var Menu = function Menu(props) {
3259 var _useState = (0, _react.useState)(false),
3260 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3261 isOpen = _useState2[0],
3262 setIsOpen = _useState2[1];
3263 var _useState3 = (0, _react.useState)(null),
3264 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
3265 selectedType = _useState4[0],
3266 setSelectedType = _useState4[1];
3267 var _useTheme = (0, _ui.useTheme)(),
3268 direction = _useTheme.direction;
3269 var anchorRef = (0, _react.useRef)(null);
3270 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-attachment-badge'),
3271 isViewed = _useIntroduction.isViewed,
3272 markAsViewed = _useIntroduction.markAsViewed;
3273 return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3274 size: "small",
3275 ref: anchorRef,
3276 disabled: props.disabled,
3277 onClick: function onClick() {
3278 setIsOpen(true);
3279 markAsViewed();
3280 },
3281 color: "secondary"
3282 }, function () {
3283 if (isOpen) {
3284 return /*#__PURE__*/_react.default.createElement(_xCircleIcon.default, {
3285 fontSize: "small"
3286 });
3287 } else if (isViewed) {
3288 return /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3289 fontSize: "small"
3290 });
3291 }
3292 return /*#__PURE__*/_react.default.createElement(_ui.Badge, {
3293 color: "primary",
3294 badgeContent: " ",
3295 variant: "dot"
3296 }, /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3297 fontSize: "small"
3298 }));
3299 }()), /*#__PURE__*/_react.default.createElement(_ui.Popover, {
3300 open: isOpen,
3301 anchorEl: anchorRef.current,
3302 onClose: function onClose() {
3303 return setIsOpen(false);
3304 },
3305 anchorOrigin: {
3306 vertical: 'bottom',
3307 horizontal: 'rtl' === direction ? 'right' : 'left'
3308 },
3309 transformOrigin: {
3310 vertical: 'top',
3311 horizontal: 'rtl' === direction ? 'right' : 'left'
3312 }
3313 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3314 sx: {
3315 width: 440
3316 }
3317 }, props.items.map(function (item) {
3318 var IconComponent = item.icon;
3319 return /*#__PURE__*/_react.default.createElement(_ui.MenuItem, {
3320 key: item.type,
3321 onClick: function onClick() {
3322 setSelectedType(item.type);
3323 setIsOpen(false);
3324 }
3325 }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(IconComponent, null)), item.title);
3326 }))), /*#__PURE__*/_react.default.createElement(_attachDialog.AttachDialog, {
3327 type: selectedType,
3328 onAttach: props.onAttach,
3329 onClose: function onClose() {
3330 setIsOpen(false);
3331 setSelectedType(null);
3332 }
3333 }));
3334 };
3335 exports.Menu = Menu;
3336 Menu.propTypes = {
3337 items: _propTypes.default.arrayOf(_propTypes.default.shape({
3338 title: _propTypes.default.string.isRequired,
3339 type: _propTypes.default.string.isRequired,
3340 icon: _propTypes.default.elementType
3341 })).isRequired,
3342 onAttach: _propTypes.default.func.isRequired,
3343 disabled: _propTypes.default.bool
3344 };
3345
3346 /***/ }),
3347
3348 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js":
3349 /*!******************************************************************************************************!*\
3350 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js ***!
3351 \******************************************************************************************************/
3352 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3353
3354 "use strict";
3355
3356
3357 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3358 Object.defineProperty(exports, "__esModule", ({
3359 value: true
3360 }));
3361 exports.PromptPowerNotice = void 0;
3362 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3363 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3364 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3365 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3366 var PromptPowerNotice = function PromptPowerNotice() {
3367 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-attachments-power'),
3368 isViewed = _useIntroduction.isViewed,
3369 markAsViewed = _useIntroduction.markAsViewed;
3370 if (isViewed) {
3371 return null;
3372 }
3373 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3374 sx: {
3375 pt: 2,
3376 px: 2,
3377 pb: 0
3378 }
3379 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
3380 severity: "info",
3381 onClose: function onClose() {
3382 return markAsViewed();
3383 }
3384 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3385 variant: "body2",
3386 display: "inline-block",
3387 sx: {
3388 paddingInlineEnd: 1
3389 }
3390 }, (0, _i18n.__)('You’ve got the power.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3391 variant: "body2",
3392 display: "inline-block"
3393 }, (0, _i18n.__)('Craft your prompt to affect content, images and/or colors - whichever you decide.', 'elementor'))));
3394 };
3395 exports.PromptPowerNotice = PromptPowerNotice;
3396
3397 /***/ }),
3398
3399 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js":
3400 /*!*************************************************************************************************!*\
3401 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js ***!
3402 \*************************************************************************************************/
3403 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3404
3405 "use strict";
3406
3407
3408 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3409 Object.defineProperty(exports, "__esModule", ({
3410 value: true
3411 }));
3412 exports["default"] = exports.ThumbnailJson = void 0;
3413 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3414 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3415 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3416 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3417 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3418 var ThumbnailJson = function ThumbnailJson(props) {
3419 var _props$attachments;
3420 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3421 return 'json' === item.type;
3422 });
3423 if (!attachment) {
3424 return null;
3425 }
3426 if (!attachment.previewHTML) {
3427 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
3428 animation: "wave",
3429 variant: "rounded",
3430 width: 60,
3431 height: 60
3432 });
3433 }
3434 return /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3435 html: attachment.previewHTML,
3436 disabled: props.disabled
3437 });
3438 };
3439 exports.ThumbnailJson = ThumbnailJson;
3440 ThumbnailJson.propTypes = {
3441 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3442 disabled: _propTypes.default.bool
3443 };
3444 var _default = ThumbnailJson;
3445 exports["default"] = _default;
3446
3447 /***/ }),
3448
3449 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js":
3450 /*!************************************************************************************************!*\
3451 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js ***!
3452 \************************************************************************************************/
3453 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3454
3455 "use strict";
3456
3457
3458 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3459 Object.defineProperty(exports, "__esModule", ({
3460 value: true
3461 }));
3462 exports["default"] = exports.ThumbnailUrl = void 0;
3463 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3464 var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3465 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3466 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3467 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3468 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3469 var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3470 var ThumbnailUrl = function ThumbnailUrl(props) {
3471 var _props$attachments;
3472 var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3473 return 'url' === item.type;
3474 });
3475 if (!attachment) {
3476 return null;
3477 }
3478 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3479 sx: {
3480 position: 'relative',
3481 '&:hover::before': {
3482 content: '""',
3483 position: 'absolute',
3484 userSelect: 'none',
3485 inset: 0,
3486 backgroundColor: 'rgba(0,0,0,0.6)',
3487 borderRadius: 1,
3488 zIndex: 1
3489 },
3490 '&:hover .remove-attachment': {
3491 display: 'flex'
3492 }
3493 }
3494 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3495 className: "remove-attachment",
3496 size: "small",
3497 "aria-label": (0, _i18n.__)('Remove', 'elementor'),
3498 disabled: props.disabled,
3499 onClick: function onClick(event) {
3500 event.stopPropagation();
3501 props.onDetach();
3502 },
3503 sx: {
3504 display: 'none',
3505 position: 'absolute',
3506 insetInlineEnd: 4,
3507 insetBlockStart: 4,
3508 backgroundColor: 'secondary.main',
3509 zIndex: 1,
3510 borderRadius: 1,
3511 p: '3px',
3512 '&:hover': {
3513 backgroundColor: 'secondary.dark'
3514 }
3515 }
3516 }, /*#__PURE__*/_react.default.createElement(_icons.TrashIcon, {
3517 sx: {
3518 fontSize: '1.125rem',
3519 color: 'common.white'
3520 }
3521 })), /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3522 disabled: props.disabled,
3523 html: attachment.previewHTML
3524 }));
3525 };
3526 exports.ThumbnailUrl = ThumbnailUrl;
3527 ThumbnailUrl.propTypes = {
3528 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3529 disabled: _propTypes.default.bool,
3530 onDetach: _propTypes.default.func
3531 };
3532 var _default = ThumbnailUrl;
3533 exports["default"] = _default;
3534
3535 /***/ }),
3536
3537 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js":
3538 /*!********************************************************************************************!*\
3539 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js ***!
3540 \********************************************************************************************/
3541 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3542
3543 "use strict";
3544
3545
3546 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3547 Object.defineProperty(exports, "__esModule", ({
3548 value: true
3549 }));
3550 exports.Thumbnail = exports.THUMBNAIL_SIZE = void 0;
3551 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3552 var _taggedTemplateLiteral2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js"));
3553 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3554 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3555 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3556 var _styledComponents = _interopRequireDefault(__webpack_require__(/*! styled-components */ "../node_modules/styled-components/dist/styled-components.browser.esm.js"));
3557 var _templateObject;
3558 var THUMBNAIL_SIZE = 64;
3559 exports.THUMBNAIL_SIZE = THUMBNAIL_SIZE;
3560 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);
3561 var Thumbnail = function Thumbnail(props) {
3562 var _props$html$match, _props$html$match$gro, _props$html$match2, _props$html$match2$gr;
3563 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;
3564 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;
3565 var width = dataWidth ? parseInt(dataWidth) : THUMBNAIL_SIZE;
3566 var height = dataHeight ? parseInt(dataHeight) : THUMBNAIL_SIZE;
3567 var scaleFactor = Math.min(height, width);
3568 var scale = THUMBNAIL_SIZE / scaleFactor;
3569
3570 // Center the preview
3571 var top = height > width ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (height / width)) / 2 : 0;
3572 var left = width > height ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (width / height)) / 2 : 0;
3573 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3574 dir: "ltr",
3575 sx: {
3576 position: 'relative',
3577 cursor: 'default',
3578 overflow: 'hidden',
3579 border: '1px solid',
3580 borderColor: 'grey.300',
3581 borderRadius: 1,
3582 boxSizing: 'border-box',
3583 width: THUMBNAIL_SIZE,
3584 height: THUMBNAIL_SIZE,
3585 opacity: props.disabled ? 0.5 : 1
3586 }
3587 }, /*#__PURE__*/_react.default.createElement("iframe", {
3588 title: (0, _i18n.__)('Preview', 'elementor'),
3589 sandbox: "",
3590 srcDoc: "<style>" + StyledBody.componentStyle.rules.join('') + "</style>" + props.html,
3591 style: {
3592 border: 'none',
3593 overflow: 'hidden',
3594 width: width,
3595 height: height,
3596 transform: "scale(".concat(scale, ")"),
3597 transformOrigin: "".concat(left, "px ").concat(top, "px")
3598 }
3599 }));
3600 };
3601 exports.Thumbnail = Thumbnail;
3602 Thumbnail.propTypes = {
3603 html: _propTypes.default.string.isRequired,
3604 disabled: _propTypes.default.bool
3605 };
3606
3607 /***/ }),
3608
3609 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js":
3610 /*!*********************************************************************************************!*\
3611 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js ***!
3612 \*********************************************************************************************/
3613 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3614
3615 "use strict";
3616
3617
3618 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3619 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3620 Object.defineProperty(exports, "__esModule", ({
3621 value: true
3622 }));
3623 exports.UrlDialog = void 0;
3624 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3625 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3626 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3627 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3628 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3629 var _useAttachUrlService2 = __webpack_require__(/*! ../../hooks/use-attach-url-service */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js");
3630 var _alertDialog = __webpack_require__(/*! ../../../../components/alert-dialog */ "../modules/ai/assets/js/editor/components/alert-dialog.js");
3631 var _useTimeout3 = __webpack_require__(/*! ../../../../hooks/use-timeout */ "../modules/ai/assets/js/editor/hooks/use-timeout.js");
3632 var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3633 var _remoteConfig = __webpack_require__(/*! ../../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
3634 var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
3635 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); }
3636 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; }
3637 var UrlDialog = function UrlDialog(props) {
3638 var iframeRef = (0, _react.useRef)(null);
3639 var _useAttachUrlService = (0, _useAttachUrlService2.useAttachUrlService)({
3640 targetUrl: props.url
3641 }),
3642 iframeSource = _useAttachUrlService.iframeSource;
3643 var iframeOrigin = iframeSource ? new URL(iframeSource).origin : '';
3644 var _useTimeout = (0, _useTimeout3.useTimeout)(10000),
3645 _useTimeout2 = (0, _slicedToArray2.default)(_useTimeout, 2),
3646 isTimeout = _useTimeout2[0],
3647 turnOffTimeout = _useTimeout2[1];
3648 var _useUserInfo = (0, _useUserInfo2.default)(),
3649 isConnected = _useUserInfo.isConnected,
3650 hasSubscription = _useUserInfo.hasSubscription,
3651 credits = _useUserInfo.credits,
3652 usagePercentage = _useUserInfo.usagePercentage;
3653 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
3654 isLoaded = _useRemoteConfig.isLoaded,
3655 isError = _useRemoteConfig.isError,
3656 remoteConfig = _useRemoteConfig.remoteConfig;
3657 (0, _react.useEffect)(function () {
3658 var onMessage = function onMessage(event) {
3659 if (event.origin !== iframeOrigin) {
3660 return;
3661 }
3662 var _event$data = event.data,
3663 type = _event$data.type,
3664 html = _event$data.html,
3665 url = _event$data.url;
3666 switch (type) {
3667 case 'element-selector/close':
3668 props.onClose();
3669 break;
3670 case 'element-selector/loaded':
3671 turnOffTimeout();
3672 break;
3673 case 'element-selector/attach':
3674 props.onAttach([{
3675 type: 'url',
3676 previewHTML: html,
3677 content: html,
3678 label: url ? new URL(url).host : '',
3679 source: _attachments.USER_URL_SOURCE
3680 }]);
3681 break;
3682 }
3683 };
3684 window.addEventListener('message', onMessage);
3685 return function () {
3686 window.removeEventListener('message', onMessage);
3687 };
3688 }, [iframeOrigin, iframeSource, props, turnOffTimeout]);
3689 if (!iframeSource) {
3690 return /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3691 message: (0, _i18n.__)('The app is not available. Please try again later.', 'elementor'),
3692 onClose: props.onClose
3693 });
3694 }
3695 if (!isLoaded || isError) {
3696 return null;
3697 }
3698 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
3699 open: true,
3700 fullScreen: true,
3701 hideBackdrop: true,
3702 maxWidth: "md",
3703 sx: {
3704 '& .MuiPaper-root': {
3705 backgroundColor: 'transparent'
3706 }
3707 }
3708 }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
3709 sx: {
3710 padding: 0
3711 }
3712 }, isTimeout && /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3713 message: (0, _i18n.__)('The app is not responding. Please try again later.', 'elementor'),
3714 onClose: props.onClose
3715 }), !isTimeout && /*#__PURE__*/_react.default.createElement("iframe", {
3716 ref: iframeRef,
3717 title: (0, _i18n.__)('URL as a reference', 'elementor'),
3718 src: iframeSource,
3719 onLoad: function onLoad() {
3720 var _window$elementorAppC = window.elementorAppConfig['kit-library'],
3721 accessLevel = _window$elementorAppC.access_level,
3722 accessTier = _window$elementorAppC.access_tier,
3723 isPro = _window$elementorAppC.is_pro;
3724 iframeRef.current.contentWindow.postMessage({
3725 type: 'referrer/info',
3726 info: {
3727 page: {
3728 url: window.location.href
3729 },
3730 authToken: remoteConfig[_remoteConfig.CONFIG_KEYS.AUTH_TOKEN] || '',
3731 products: {
3732 core: {
3733 version: window.elementor.config.version
3734 },
3735 pro: {
3736 isPro: isPro,
3737 accessLevel: accessLevel,
3738 accessTier: accessTier
3739 },
3740 ai: {
3741 isConnected: isConnected,
3742 hasSubscription: hasSubscription,
3743 credits: credits,
3744 usagePercentage: usagePercentage
3745 }
3746 },
3747 user: {
3748 isAdmin: window.elementor.config.user.is_administrator
3749 }
3750 }
3751 }, iframeOrigin);
3752 },
3753 style: {
3754 border: 'none',
3755 overflow: 'scroll',
3756 width: '100%',
3757 height: '100%',
3758 backgroundColor: 'rgba(255,255,255,0.6)'
3759 }
3760 })));
3761 };
3762 exports.UrlDialog = UrlDialog;
3763 UrlDialog.propTypes = {
3764 onAttach: _propTypes.default.func.isRequired,
3765 onClose: _propTypes.default.func.isRequired,
3766 url: _propTypes.default.string
3767 };
3768
3769 /***/ }),
3770
3771 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js":
3772 /*!************************************************************************************!*\
3773 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js ***!
3774 \************************************************************************************/
3775 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3776
3777 "use strict";
3778
3779
3780 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3781 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3782 Object.defineProperty(exports, "__esModule", ({
3783 value: true
3784 }));
3785 exports["default"] = void 0;
3786 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3787 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3788 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3789 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3790 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3791 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3792 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3793 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3794 var _promptDialog = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-dialog */ "../modules/ai/assets/js/editor/components/prompt-dialog.js"));
3795 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3796 var _excluded = ["sx", "PaperProps"];
3797 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); }
3798 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; }
3799 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; }
3800 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; }
3801 var StyledDialog = (0, _ui.styled)(_promptDialog.default)(function () {
3802 return {
3803 '& .MuiDialog-container': {
3804 marginTop: 0,
3805 alignItems: 'flex-end',
3806 paddingBottom: '16vh'
3807 },
3808 '& .MuiPaper-root': {
3809 margin: 0,
3810 maxHeight: '55vh'
3811 }
3812 };
3813 });
3814 var DialogHeader = function DialogHeader(_ref) {
3815 var onClose = _ref.onClose,
3816 children = _ref.children;
3817 return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
3818 sx: {
3819 fontWeight: 'normal'
3820 },
3821 color: "transparent",
3822 position: "relative"
3823 }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
3824 variant: "dense"
3825 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3826 sx: {
3827 mr: 1
3828 }
3829 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3830 component: "span",
3831 variant: "subtitle2",
3832 sx: {
3833 fontWeight: 'bold',
3834 textTransform: 'uppercase'
3835 }
3836 }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
3837 label: (0, _i18n.__)('Beta', 'elementor'),
3838 color: "default",
3839 size: "small",
3840 sx: {
3841 ml: 1
3842 }
3843 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3844 direction: "row",
3845 spacing: 1,
3846 alignItems: "center",
3847 sx: {
3848 ml: 'auto'
3849 }
3850 }, children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3851 size: "small",
3852 "aria-label": "close",
3853 onClick: onClose,
3854 sx: {
3855 '&.MuiButtonBase-root': {
3856 mr: -1
3857 }
3858 }
3859 }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
3860 };
3861 DialogHeader.propTypes = {
3862 children: _propTypes.default.node,
3863 onClose: _propTypes.default.func.isRequired
3864 };
3865 var StyledDialogContent = (0, _ui.styled)(_promptDialog.default.Content)(function () {
3866 return {
3867 '&.MuiDialogContent-root': {
3868 padding: 0
3869 }
3870 };
3871 });
3872 var LayoutDialog = function LayoutDialog(_ref2) {
3873 var _ref2$sx = _ref2.sx,
3874 sx = _ref2$sx === void 0 ? {} : _ref2$sx,
3875 _ref2$PaperProps = _ref2.PaperProps,
3876 PaperProps = _ref2$PaperProps === void 0 ? {} : _ref2$PaperProps,
3877 props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
3878 var _useState = (0, _react.useState)({
3879 pointerEvents: 'none'
3880 }),
3881 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3882 sxStyle = _useState2[0],
3883 setSxStyle = _useState2[1];
3884 var timeoutRef = (0, _react.useRef)(null);
3885
3886 /**
3887 * The PromptDialog is using disableScrollLock in order to allow scrolling the page when the Dialog is opened.
3888 * When using the react-draggable library inside the editor, the background page scroll is not working smoothly.
3889 * Therefore, we need to delay the pointerEvents: none, which allowing to scroll the page content.
3890 */
3891 return /*#__PURE__*/_react.default.createElement(StyledDialog, (0, _extends2.default)({
3892 maxWidth: "md",
3893 PaperProps: _objectSpread({
3894 sx: {
3895 pointerEvents: 'auto'
3896 },
3897 onMouseEnter: function onMouseEnter() {
3898 clearTimeout(timeoutRef.current);
3899 setSxStyle({
3900 pointerEvents: 'all'
3901 });
3902 },
3903 onMouseLeave: function onMouseLeave() {
3904 clearTimeout(timeoutRef.current);
3905 timeoutRef.current = setTimeout(function () {
3906 setSxStyle({
3907 pointerEvents: 'none'
3908 });
3909 }, 200);
3910 }
3911 }, PaperProps)
3912 }, props, {
3913 sx: _objectSpread(_objectSpread({}, sxStyle), sx)
3914 }));
3915 };
3916 LayoutDialog.propTypes = {
3917 sx: _propTypes.default.object,
3918 PaperProps: _propTypes.default.object
3919 };
3920 LayoutDialog.Header = DialogHeader;
3921 LayoutDialog.Content = StyledDialogContent;
3922 var _default = LayoutDialog;
3923 exports["default"] = _default;
3924
3925 /***/ }),
3926
3927 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js":
3928 /*!*********************************************************************************************!*\
3929 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js ***!
3930 \*********************************************************************************************/
3931 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3932
3933 "use strict";
3934
3935
3936 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3937 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3938 Object.defineProperty(exports, "__esModule", ({
3939 value: true
3940 }));
3941 exports.ProTemplateIndicator = void 0;
3942 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3943 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3944 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3945 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3946 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
3947 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); }
3948 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; }
3949 var popoverId = 'e-pro-upgrade-popover';
3950 var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
3951 var theme = _ref.theme;
3952 return {
3953 position: 'relative',
3954 padding: theme.spacing(3),
3955 boxShadow: theme.shadows[4],
3956 zIndex: '9999'
3957 };
3958 });
3959 var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
3960 var theme = _ref2.theme;
3961 return {
3962 position: 'absolute',
3963 width: theme.spacing(5),
3964 height: theme.spacing(5),
3965 overflow: 'hidden',
3966 // Override Popper inline styles.
3967 left: '100% !important',
3968 transform: 'translateX(-50%) translateY(-50%) rotate(var(--rotate, 0deg)) !important',
3969 '&::after': {
3970 backgroundColor: theme.palette.background.paper,
3971 content: '""',
3972 display: 'block',
3973 position: 'absolute',
3974 width: theme.spacing(2.5),
3975 height: theme.spacing(2.5),
3976 top: '50%',
3977 left: '50%',
3978 transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
3979 boxShadow: '5px -5px 5px 0px rgba(0, 0, 0, 0.2)',
3980 backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
3981 }
3982 };
3983 });
3984 var ProTemplateIndicator = function ProTemplateIndicator() {
3985 var actionUrl = 'https://go.elementor.com/go-pro-ai/';
3986 var actionLabel = (0, _i18n.__)('Go Pro', 'elementor');
3987 var _useState = (0, _react.useState)(false),
3988 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3989 isPopoverOpen = _useState2[0],
3990 setIsPopoverOpen = _useState2[1];
3991 var anchorEl = (0, _react.useRef)(null);
3992 var arrowEl = (0, _react.useRef)(null);
3993 var showPopover = function showPopover() {
3994 return setIsPopoverOpen(true);
3995 };
3996 var hidePopover = function hidePopover() {
3997 return setIsPopoverOpen(false);
3998 };
3999 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4000 flexDirection: "row-reverse",
4001 component: "span",
4002 display: "flex",
4003 onMouseLeave: hidePopover,
4004 alignItems: "center"
4005 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
4006 ref: anchorEl,
4007 onMouseEnter: showPopover,
4008 onClick: function onClick(e) {
4009 return e.stopPropagation();
4010 } /* Do nothing */,
4011 "aria-owns": isPopoverOpen ? popoverId : undefined,
4012 "aria-haspopup": "true",
4013 sx: {
4014 m: 1,
4015 '&:hover': {
4016 backgroundColor: 'action.selected'
4017 }
4018 }
4019 }, /*#__PURE__*/_react.default.createElement(_lockIcon.default, {
4020 sx: {
4021 color: 'text.primary'
4022 }
4023 })), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
4024 open: isPopoverOpen,
4025 popperOptions: {
4026 placement: 'left-start',
4027 modifiers: [{
4028 name: 'arrow',
4029 enabled: true,
4030 options: {
4031 element: arrowEl.current,
4032 padding: 5
4033 }
4034 }, {
4035 name: 'offset',
4036 options: {
4037 offset: [0, 10]
4038 }
4039 }]
4040 },
4041 anchorEl: anchorEl.current,
4042 sx: {
4043 zIndex: '9999',
4044 maxWidth: 300
4045 }
4046 }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
4047 ref: arrowEl
4048 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4049 alignItems: "start",
4050 spacing: 2
4051 }, /*#__PURE__*/_react.default.createElement(_ui.Chip, {
4052 color: "accent",
4053 variant: "outlined",
4054 size: "small",
4055 label: (0, _i18n.__)('Pro', 'elementor'),
4056 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null)
4057 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4058 variant: "body2"
4059 }, (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, {
4060 variant: "contained",
4061 color: "accent",
4062 size: "small",
4063 href: actionUrl,
4064 target: "_blank",
4065 sx: {
4066 alignSelf: 'flex-end'
4067 }
4068 }, actionLabel)))));
4069 };
4070 exports.ProTemplateIndicator = ProTemplateIndicator;
4071
4072 /***/ }),
4073
4074 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js":
4075 /*!*****************************************************************************************!*\
4076 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js ***!
4077 \*****************************************************************************************/
4078 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4079
4080 "use strict";
4081
4082
4083 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4084 Object.defineProperty(exports, "__esModule", ({
4085 value: true
4086 }));
4087 exports.ProWidgetsNotice = void 0;
4088 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4089 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4090 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4091 var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4092 var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
4093 var ProWidgetsNotice = function ProWidgetsNotice() {
4094 var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-pro-widget'),
4095 isViewed = _useIntroduction.isViewed,
4096 markAsViewed = _useIntroduction.markAsViewed;
4097 if (isViewed) {
4098 return null;
4099 }
4100 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4101 sx: {
4102 pt: 2,
4103 px: 2,
4104 pb: 0
4105 }
4106 }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
4107 severity: "info",
4108 variant: "filled",
4109 color: "accent",
4110 onClose: function onClose() {
4111 return markAsViewed();
4112 },
4113 icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null),
4114 sx: {
4115 '& .MuiAlert-message': {
4116 width: '100%'
4117 }
4118 }
4119 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4120 flexDirection: "row",
4121 alignItems: "baseline",
4122 justifyContent: "space-between"
4123 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4124 variant: "body2",
4125 component: "span",
4126 sx: {
4127 paddingInlineEnd: 0.5
4128 }
4129 }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4130 variant: "subtitle2",
4131 component: "span",
4132 sx: {
4133 paddingInlineEnd: 1
4134 }
4135 }, (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, {
4136 variant: "outlined",
4137 size: "small",
4138 onClick: function onClick() {
4139 return window.open('https://go.elementor.com/upgrade-pro/', '_blank');
4140 },
4141 color: "inherit"
4142 }, (0, _i18n.__)('Go Pro', 'elementor')))));
4143 };
4144 exports.ProWidgetsNotice = ProWidgetsNotice;
4145
4146 /***/ }),
4147
4148 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js":
4149 /*!******************************************************************************************!*\
4150 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js ***!
4151 \******************************************************************************************/
4152 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4153
4154 "use strict";
4155
4156
4157 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4158 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4159 Object.defineProperty(exports, "__esModule", ({
4160 value: true
4161 }));
4162 exports["default"] = void 0;
4163 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4164 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4165 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4166 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4167 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4168 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4169 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4170 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4171 var _promptLibraryLink = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-library-link */ "../modules/ai/assets/js/editor/components/prompt-library-link.js"));
4172 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4173 var _excluded = ["onSubmit"];
4174 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); }
4175 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; }
4176 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; }
4177 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; }
4178 var TextInput = (0, _react.forwardRef)(function (props, ref) {
4179 return /*#__PURE__*/_react.default.createElement(_ui.TextField
4180 // eslint-disable-next-line jsx-a11y/no-autofocus
4181 , (0, _extends2.default)({
4182 autoFocus: true,
4183 multiline: true,
4184 size: "small",
4185 maxRows: 3,
4186 color: "secondary",
4187 variant: "standard"
4188 }, props, {
4189 inputRef: ref,
4190 InputProps: _objectSpread(_objectSpread({}, props.InputProps), {}, {
4191 type: 'search',
4192 sx: {
4193 pt: 0
4194 }
4195 })
4196 }));
4197 });
4198 TextInput.propTypes = {
4199 InputProps: _propTypes.default.object
4200 };
4201 var PaperComponent = function PaperComponent(props) {
4202 var _useConfig = (0, _config.useConfig)(),
4203 mode = _useConfig.mode;
4204 var libraryLink = _config.MODE_VARIATION === mode ? 'https://go.elementor.com/ai-prompt-library-variations/' : 'https://go.elementor.com/ai-prompt-library-containers/';
4205 return /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
4206 elevation: 8,
4207 sx: {
4208 borderRadius: 2
4209 }
4210 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4211 component: _ui.Box,
4212 color: function color(theme) {
4213 return theme.palette.text.tertiary;
4214 },
4215 variant: "caption",
4216 paddingX: 2,
4217 paddingY: 1
4218 }, (0, _i18n.__)('Suggested Prompts', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Divider, null), props.children, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4219 sx: {
4220 m: 2
4221 }
4222 }, /*#__PURE__*/_react.default.createElement(_promptLibraryLink.default, {
4223 libraryLink: libraryLink
4224 })));
4225 };
4226 PaperComponent.propTypes = {
4227 children: _propTypes.default.node
4228 };
4229 var PromptAutocomplete = function PromptAutocomplete(_ref) {
4230 var onSubmit = _ref.onSubmit,
4231 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4232 var _useState = (0, _react.useState)(false),
4233 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4234 showSuggestions = _useState2[0],
4235 setShowSuggestions = _useState2[1];
4236 var theme = (0, _ui.useTheme)();
4237 var itemHeight = parseInt(theme.spacing(4));
4238 var maxItems = 5;
4239 return /*#__PURE__*/_react.default.createElement(_ui.Autocomplete, (0, _extends2.default)({
4240 PaperComponent: PaperComponent,
4241 ListboxProps: {
4242 sx: {
4243 maxHeight: maxItems * itemHeight
4244 }
4245 },
4246 renderOption: function renderOption(optionProps, option) {
4247 return /*#__PURE__*/_react.default.createElement(_ui.Typography, (0, _extends2.default)({}, optionProps, {
4248 title: option.text,
4249 noWrap: true,
4250 variant: "body2",
4251 component: _ui.Box,
4252 sx: {
4253 '&.MuiAutocomplete-option': {
4254 display: 'block',
4255 minHeight: itemHeight
4256 }
4257 }
4258 }), option.text);
4259 },
4260 freeSolo: true,
4261 fullWidth: true,
4262 disableClearable: true,
4263 open: showSuggestions,
4264 onClose: function onClose(e) {
4265 var _e$relatedTarget;
4266 return setShowSuggestions('A' === ((_e$relatedTarget = e.relatedTarget) === null || _e$relatedTarget === void 0 ? void 0 : _e$relatedTarget.tagName));
4267 },
4268 onKeyDown: function onKeyDown(e) {
4269 if ('Enter' === e.key && !e.shiftKey && !showSuggestions) {
4270 onSubmit(e);
4271 } else if ('/' === e.key && '' === e.target.value) {
4272 e.preventDefault();
4273 setShowSuggestions(true);
4274 }
4275 }
4276 }, props));
4277 };
4278 PromptAutocomplete.propTypes = {
4279 onSubmit: _propTypes.default.func.isRequired
4280 };
4281 PromptAutocomplete.TextInput = TextInput;
4282 var _default = PromptAutocomplete;
4283 exports["default"] = _default;
4284
4285 /***/ }),
4286
4287 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js":
4288 /*!**********************************************************************************!*\
4289 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js ***!
4290 \**********************************************************************************/
4291 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4292
4293 "use strict";
4294
4295
4296 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4297 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4298 Object.defineProperty(exports, "__esModule", ({
4299 value: true
4300 }));
4301 exports["default"] = void 0;
4302 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4303 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4304 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4305 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4306 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4307 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4308 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4309 var _promptAutocomplete = _interopRequireDefault(__webpack_require__(/*! ./prompt-autocomplete */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js"));
4310 var _enhanceButton = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/enhance-button */ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js"));
4311 var _generateSubmit = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/generate-submit */ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js"));
4312 var _arrowLeftIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/arrow-left-icon */ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js"));
4313 var _editIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/edit-icon */ "../modules/ai/assets/js/editor/icons/edit-icon.js"));
4314 var _usePromptEnhancer2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt-enhancer */ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js"));
4315 var _attachments = _interopRequireDefault(__webpack_require__(/*! ./attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"));
4316 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4317 var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
4318 var _excluded = ["tooltip"];
4319 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); }
4320 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; }
4321 var PROMPT_SUGGESTIONS = Object.freeze([{
4322 text: (0, _i18n.__)('Services section with list layout, icons, and service descriptions for [topic]', 'elementor')
4323 }, {
4324 text: (0, _i18n.__)('Accordion-style FAQ block with clickable questions about [topic]', 'elementor')
4325 }, {
4326 text: (0, _i18n.__)('Hero section with image, heading, subheading, and CTA button about [topic]', 'elementor')
4327 }, {
4328 text: (0, _i18n.__)('Full-width call-to-action with background image and overlay text about [topic]', 'elementor')
4329 }, {
4330 text: (0, _i18n.__)('Carousel testimonial block with user images, names, and feedback about [topic]', 'elementor')
4331 }, {
4332 text: (0, _i18n.__)('Features block showcasing feature title and brief description about [topic]', 'elementor')
4333 }, {
4334 text: (0, _i18n.__)('Multi-column minimalistic About Us section with icons for [topic]', 'elementor')
4335 }, {
4336 text: (0, _i18n.__)('Section with contact form and social media icons for [topic]', 'elementor')
4337 }, {
4338 text: (0, _i18n.__)('Statistics display in a 3-column layout with numbers and icons for [topic]', 'elementor')
4339 }, {
4340 text: (0, _i18n.__)('Pricing table section with highlighted option for [topic]', 'elementor')
4341 }, {
4342 text: (0, _i18n.__)('About Us section combining company history and values for [topic]', 'elementor')
4343 }]);
4344 var IconButtonWithTooltip = function IconButtonWithTooltip(_ref) {
4345 var tooltip = _ref.tooltip,
4346 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4347 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
4348 title: tooltip
4349 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
4350 component: "span",
4351 sx: {
4352 cursor: props.disabled ? 'default' : 'pointer'
4353 }
4354 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, props)));
4355 };
4356 IconButtonWithTooltip.propTypes = {
4357 tooltip: _propTypes.default.string,
4358 disabled: _propTypes.default.bool
4359 };
4360 var BackButton = function BackButton(props) {
4361 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4362 size: "small",
4363 color: "secondary",
4364 tooltip: (0, _i18n.__)('Back to results', 'elementor')
4365 }, props), /*#__PURE__*/_react.default.createElement(_arrowLeftIcon.default, null));
4366 };
4367 var EditButton = function EditButton(props) {
4368 return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4369 size: "small",
4370 color: "primary",
4371 tooltip: (0, _i18n.__)('Edit prompt', 'elementor')
4372 }, props), /*#__PURE__*/_react.default.createElement(_editIcon.default, null));
4373 };
4374 var GenerateButton = function GenerateButton(props) {
4375 return /*#__PURE__*/_react.default.createElement(_generateSubmit.default, (0, _extends2.default)({
4376 size: "small",
4377 fullWidth: false
4378 }, props), (0, _i18n.__)('Generate', 'elementor'));
4379 };
4380 var PromptForm = (0, _react.forwardRef)(function (_ref2, ref) {
4381 var _attachments$;
4382 var attachments = _ref2.attachments,
4383 isActive = _ref2.isActive,
4384 isLoading = _ref2.isLoading,
4385 _ref2$showActions = _ref2.showActions,
4386 showActions = _ref2$showActions === void 0 ? false : _ref2$showActions,
4387 onAttach = _ref2.onAttach,
4388 onDetach = _ref2.onDetach,
4389 _onSubmit = _ref2.onSubmit,
4390 onBack = _ref2.onBack,
4391 onEdit = _ref2.onEdit,
4392 _ref2$shouldResetProm = _ref2.shouldResetPrompt,
4393 shouldResetPrompt = _ref2$shouldResetProm === void 0 ? false : _ref2$shouldResetProm;
4394 var _useState = (0, _react.useState)(''),
4395 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4396 prompt = _useState2[0],
4397 setPrompt = _useState2[1];
4398 (0, _react.useEffect)(function () {
4399 if (shouldResetPrompt) {
4400 setPrompt('');
4401 }
4402 }, [shouldResetPrompt]);
4403 var _usePromptEnhancer = (0, _usePromptEnhancer2.default)(prompt, 'layout'),
4404 isEnhancing = _usePromptEnhancer.isEnhancing,
4405 enhance = _usePromptEnhancer.enhance;
4406 var previousPrompt = (0, _react.useRef)('');
4407 var _useConfig = (0, _config.useConfig)(),
4408 attachmentsTypes = _useConfig.attachmentsTypes;
4409 var isInputDisabled = isLoading || isEnhancing || !isActive;
4410 var isInputEmpty = '' === prompt && !attachments.length;
4411 var isGenerateDisabled = isInputDisabled || isInputEmpty;
4412 var attachmentsType = ((_attachments$ = attachments[0]) === null || _attachments$ === void 0 ? void 0 : _attachments$.type) || '';
4413 var attachmentsConfig = attachmentsTypes[attachmentsType];
4414 var promptSuggestions = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptSuggestions) || PROMPT_SUGGESTIONS;
4415 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');
4416 var handleBack = function handleBack() {
4417 setPrompt(previousPrompt.current);
4418 onBack();
4419 };
4420 var handleEdit = function handleEdit() {
4421 previousPrompt.current = prompt;
4422 onEdit();
4423 };
4424 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4425 component: "form",
4426 onSubmit: function onSubmit(e) {
4427 return _onSubmit(e, prompt);
4428 },
4429 direction: "row",
4430 sx: {
4431 p: 3
4432 },
4433 alignItems: "start",
4434 gap: 1
4435 }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4436 direction: "row",
4437 alignItems: "start",
4438 flexGrow: 1,
4439 spacing: 2
4440 }, showActions && (isActive ? /*#__PURE__*/_react.default.createElement(BackButton, {
4441 disabled: isLoading || isEnhancing,
4442 onClick: handleBack
4443 }) : /*#__PURE__*/_react.default.createElement(EditButton, {
4444 disabled: isLoading,
4445 onClick: handleEdit
4446 })), /*#__PURE__*/_react.default.createElement(_attachments.default, {
4447 attachments: attachments,
4448 onAttach: onAttach,
4449 onDetach: onDetach,
4450 disabled: isInputDisabled
4451 }), /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default, {
4452 value: prompt,
4453 disabled: isInputDisabled,
4454 onSubmit: function onSubmit(e) {
4455 return _onSubmit(e, prompt);
4456 },
4457 options: promptSuggestions,
4458 onChange: function onChange(_, selectedValue) {
4459 return setPrompt(selectedValue.text + ' ');
4460 },
4461 renderInput: function renderInput(params) {
4462 return /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default.TextInput, (0, _extends2.default)({}, params, {
4463 ref: ref,
4464 onChange: function onChange(e) {
4465 return setPrompt(e.target.value);
4466 },
4467 placeholder: promptPlaceholder
4468 }));
4469 }
4470 })), /*#__PURE__*/_react.default.createElement(_enhanceButton.default, {
4471 size: "small",
4472 disabled: isGenerateDisabled || '' === prompt,
4473 isLoading: isEnhancing,
4474 onClick: function onClick() {
4475 return enhance().then(function (_ref3) {
4476 var result = _ref3.result;
4477 return setPrompt(result);
4478 });
4479 }
4480 }), /*#__PURE__*/_react.default.createElement(GenerateButton, {
4481 disabled: isGenerateDisabled
4482 }));
4483 });
4484 PromptForm.propTypes = {
4485 isActive: _propTypes.default.bool,
4486 onAttach: _propTypes.default.func,
4487 onDetach: _propTypes.default.func,
4488 isLoading: _propTypes.default.bool,
4489 showActions: _propTypes.default.bool,
4490 onSubmit: _propTypes.default.func.isRequired,
4491 onBack: _propTypes.default.func.isRequired,
4492 onEdit: _propTypes.default.func.isRequired,
4493 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
4494 shouldResetPrompt: _propTypes.default.bool
4495 };
4496 var _default = PromptForm;
4497 exports["default"] = _default;
4498
4499 /***/ }),
4500
4501 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js":
4502 /*!*******************************************************************************************!*\
4503 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js ***!
4504 \*******************************************************************************************/
4505 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4506
4507 "use strict";
4508
4509
4510 Object.defineProperty(exports, "__esModule", ({
4511 value: true
4512 }));
4513 exports["default"] = void 0;
4514 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4515 var ScreenshotContainer = (0, _ui.styled)(_ui.Box, {
4516 shouldForwardProp: function shouldForwardProp(prop) {
4517 return prop !== 'outlineOffset';
4518 }
4519 })(function (_ref) {
4520 var theme = _ref.theme,
4521 selected = _ref.selected,
4522 height = _ref.height,
4523 disabled = _ref.disabled,
4524 _ref$outlineOffset = _ref.outlineOffset,
4525 outlineOffset = _ref$outlineOffset === void 0 ? '0px' : _ref$outlineOffset;
4526 var outlineColor = selected ? theme.palette.text.primary : theme.palette.text.disabled;
4527 var outline = "2px solid ".concat(outlineColor);
4528 return {
4529 height: height,
4530 cursor: disabled ? 'default' : 'pointer',
4531 overflow: 'hidden',
4532 boxSizing: 'border-box',
4533 backgroundPosition: 'top center',
4534 backgroundSize: '100% auto',
4535 backgroundRepeat: 'no-repeat',
4536 backgroundColor: theme.palette.common.white,
4537 borderRadius: theme.shape.borderRadius * 0.5,
4538 outlineOffset: outlineOffset,
4539 outline: outline,
4540 opacity: disabled ? '0.4' : '1',
4541 transition: "all 50ms linear",
4542 '&:hover': disabled ? {} : {
4543 outlineColor: theme.palette.text.primary
4544 }
4545 };
4546 });
4547 var _default = ScreenshotContainer;
4548 exports["default"] = _default;
4549
4550 /***/ }),
4551
4552 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js":
4553 /*!*********************************************************************************************!*\
4554 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js ***!
4555 \*********************************************************************************************/
4556 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4557
4558 "use strict";
4559
4560
4561 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4562 Object.defineProperty(exports, "__esModule", ({
4563 value: true
4564 }));
4565 exports["default"] = ScreenshotUnavailable;
4566 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4567 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4568 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4569 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4570 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4571 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4572 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; }
4573 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; }
4574 function ScreenshotUnavailable(props) {
4575 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, (0, _extends2.default)({}, props, {
4576 sx: _objectSpread(_objectSpread({}, props.sx || {}), {}, {
4577 display: 'flex',
4578 alignItems: 'center',
4579 justifyContent: 'center',
4580 backgroundColor: 'background.paper',
4581 color: 'text.tertiary',
4582 fontStyle: 'italic',
4583 fontSize: '12px',
4584 paddingInline: 12,
4585 textAlign: 'center',
4586 lineHeight: 1.5
4587 })
4588 }), (0, _i18n.__)('Preview unavailable', 'elementor'));
4589 }
4590 ScreenshotUnavailable.propTypes = {
4591 sx: _propTypes.default.object
4592 };
4593
4594 /***/ }),
4595
4596 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js":
4597 /*!*********************************************************************************!*\
4598 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js ***!
4599 \*********************************************************************************/
4600 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4601
4602 "use strict";
4603
4604
4605 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4606 Object.defineProperty(exports, "__esModule", ({
4607 value: true
4608 }));
4609 exports["default"] = void 0;
4610 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4611 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4612 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4613 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4614 var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4615 var _screenshotUnavailable = _interopRequireDefault(__webpack_require__(/*! ./screenshot-unavailable */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js"));
4616 var _templateBadge = _interopRequireDefault(__webpack_require__(/*! ./template-badge */ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js"));
4617 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; }
4618 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; }
4619 var SCREENSHOT_HEIGHT = '138px';
4620 var Screenshot = function Screenshot(_ref) {
4621 var url = _ref.url,
4622 type = _ref.type,
4623 _ref$isLoading = _ref.isLoading,
4624 isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
4625 _ref$isSelected = _ref.isSelected,
4626 isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
4627 isPlaceholder = _ref.isPlaceholder,
4628 disabled = _ref.disabled,
4629 onClick = _ref.onClick,
4630 _ref$sx = _ref.sx,
4631 sx = _ref$sx === void 0 ? {} : _ref$sx,
4632 outlineOffset = _ref.outlineOffset;
4633 if (isPlaceholder) {
4634 return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4635 sx: _objectSpread({
4636 height: SCREENSHOT_HEIGHT
4637 }, sx)
4638 });
4639 }
4640 if (isLoading) {
4641 return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
4642 width: "100%",
4643 animation: "wave",
4644 variant: "rounded",
4645 height: SCREENSHOT_HEIGHT,
4646 sx: sx
4647 });
4648 }
4649 if (!url) {
4650 return /*#__PURE__*/_react.default.createElement(_screenshotUnavailable.default, {
4651 selected: isSelected,
4652 disabled: disabled,
4653 sx: sx,
4654 onClick: onClick,
4655 height: SCREENSHOT_HEIGHT,
4656 outlineOffset: outlineOffset
4657 });
4658 }
4659 return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, {
4660 selected: isSelected,
4661 disabled: disabled,
4662 sx: _objectSpread({
4663 backgroundImage: "url('".concat(url, "')")
4664 }, sx),
4665 onClick: onClick,
4666 height: SCREENSHOT_HEIGHT,
4667 outlineOffset: outlineOffset
4668 }, /*#__PURE__*/_react.default.createElement(_templateBadge.default, {
4669 type: type
4670 }));
4671 };
4672 Screenshot.propTypes = {
4673 isSelected: _propTypes.default.bool,
4674 isLoading: _propTypes.default.bool,
4675 isPlaceholder: _propTypes.default.bool,
4676 disabled: _propTypes.default.bool,
4677 onClick: _propTypes.default.func.isRequired,
4678 url: _propTypes.default.string,
4679 type: _propTypes.default.string,
4680 sx: _propTypes.default.object,
4681 outlineOffset: _propTypes.default.string
4682 };
4683 var _default = Screenshot;
4684 exports["default"] = _default;
4685
4686 /***/ }),
4687
4688 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js":
4689 /*!*************************************************************************************!*\
4690 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js ***!
4691 \*************************************************************************************/
4692 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4693
4694 "use strict";
4695
4696
4697 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4698 Object.defineProperty(exports, "__esModule", ({
4699 value: true
4700 }));
4701 exports["default"] = void 0;
4702 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4703 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4704 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4705 var _proTemplateIndicator = __webpack_require__(/*! ./pro-template-indicator */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js");
4706 var TemplateBadge = function TemplateBadge(props) {
4707 var _useConfig = (0, _config.useConfig)(),
4708 hasPro = _useConfig.hasPro;
4709 if ('Pro' === props.type && !hasPro) {
4710 return /*#__PURE__*/_react.default.createElement(_proTemplateIndicator.ProTemplateIndicator, null);
4711 }
4712 return null;
4713 };
4714 var _default = TemplateBadge;
4715 exports["default"] = _default;
4716 TemplateBadge.propTypes = {
4717 type: _propTypes.default.string
4718 };
4719
4720 /***/ }),
4721
4722 /***/ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js":
4723 /*!********************************************************************************************!*\
4724 !*** ../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js ***!
4725 \********************************************************************************************/
4726 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4727
4728 "use strict";
4729
4730
4731 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4732 Object.defineProperty(exports, "__esModule", ({
4733 value: true
4734 }));
4735 exports["default"] = void 0;
4736 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4737 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4738 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4739 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4740 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4741 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4742 var _excluded = ["onClose", "onCancel", "title", "text"];
4743 var UnsavedChangesAlert = function UnsavedChangesAlert(_ref) {
4744 var onClose = _ref.onClose,
4745 onCancel = _ref.onCancel,
4746 title = _ref.title,
4747 text = _ref.text,
4748 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4749 return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
4750 "aria-labelledby": "unsaved-changes-alert-title",
4751 "aria-describedby": "unsaved-changes-alert-description"
4752 }, props), /*#__PURE__*/_react.default.createElement(_ui.DialogTitle, {
4753 id: "unsaved-changes-alert-title"
4754 }, title), /*#__PURE__*/_react.default.createElement(_ui.DialogContent, null, /*#__PURE__*/_react.default.createElement(_ui.DialogContentText, {
4755 id: "unsaved-changes-alert-description"
4756 }, text)), /*#__PURE__*/_react.default.createElement(_ui.DialogActions, null, /*#__PURE__*/_react.default.createElement(_ui.Button, {
4757 onClick: onCancel,
4758 color: "secondary"
4759 }, (0, _i18n.__)('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
4760 onClick: onClose,
4761 color: "error",
4762 variant: "contained"
4763 }, (0, _i18n.__)('Yes, leave', 'elementor'))));
4764 };
4765 UnsavedChangesAlert.propTypes = {
4766 title: _propTypes.default.string,
4767 text: _propTypes.default.string,
4768 onCancel: _propTypes.default.func,
4769 onClose: _propTypes.default.func
4770 };
4771 var _default = UnsavedChangesAlert;
4772 exports["default"] = _default;
4773
4774 /***/ }),
4775
4776 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js":
4777 /*!**************************************************************************!*\
4778 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/config.js ***!
4779 \**************************************************************************/
4780 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4781
4782 "use strict";
4783
4784
4785 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4786 Object.defineProperty(exports, "__esModule", ({
4787 value: true
4788 }));
4789 exports.useConfig = exports["default"] = exports.MODE_VARIATION = exports.MODE_LAYOUT = exports.LAYOUT_APP_MODES = exports.ConfigProvider = void 0;
4790 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4791 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4792 var MODE_LAYOUT = 'layout';
4793 exports.MODE_LAYOUT = MODE_LAYOUT;
4794 var MODE_VARIATION = 'variation';
4795 exports.MODE_VARIATION = MODE_VARIATION;
4796 var LAYOUT_APP_MODES = [MODE_LAYOUT, MODE_VARIATION];
4797 exports.LAYOUT_APP_MODES = LAYOUT_APP_MODES;
4798 var ConfigContext = _react.default.createContext({});
4799 var useConfig = function useConfig() {
4800 return _react.default.useContext(ConfigContext);
4801 };
4802 exports.useConfig = useConfig;
4803 var ConfigProvider = function ConfigProvider(props) {
4804 return /*#__PURE__*/_react.default.createElement(ConfigContext.Provider, {
4805 value: {
4806 mode: props.mode,
4807 attachmentsTypes: props.attachmentsTypes,
4808 onClose: props.onClose,
4809 onConnect: props.onConnect,
4810 onData: props.onData,
4811 onInsert: props.onInsert,
4812 onSelect: props.onSelect,
4813 onGenerate: props.onGenerate,
4814 currentContext: props.currentContext,
4815 hasPro: props.hasPro
4816 }
4817 }, props.children);
4818 };
4819 exports.ConfigProvider = ConfigProvider;
4820 ConfigProvider.propTypes = {
4821 mode: _propTypes.default.oneOf(LAYOUT_APP_MODES).isRequired,
4822 children: _propTypes.default.node.isRequired,
4823 attachmentsTypes: _propTypes.default.object.isRequired,
4824 onClose: _propTypes.default.func.isRequired,
4825 onConnect: _propTypes.default.func.isRequired,
4826 onData: _propTypes.default.func.isRequired,
4827 onInsert: _propTypes.default.func.isRequired,
4828 onSelect: _propTypes.default.func.isRequired,
4829 onGenerate: _propTypes.default.func.isRequired,
4830 currentContext: _propTypes.default.object,
4831 hasPro: _propTypes.default.bool
4832 };
4833 var _default = ConfigContext;
4834 exports["default"] = _default;
4835
4836 /***/ }),
4837
4838 /***/ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js":
4839 /*!*********************************************************************************!*\
4840 !*** ../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js ***!
4841 \*********************************************************************************/
4842 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4843
4844 "use strict";
4845
4846
4847 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4848 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4849 Object.defineProperty(exports, "__esModule", ({
4850 value: true
4851 }));
4852 exports.useRemoteConfig = exports.RemoteConfigProvider = exports.CONFIG_KEYS = void 0;
4853 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4854 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4855 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4856 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4857 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4858 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
4859 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); }
4860 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; }
4861 var RemoteConfigContext = _react.default.createContext({});
4862 var useRemoteConfig = function useRemoteConfig() {
4863 return _react.default.useContext(RemoteConfigContext);
4864 };
4865 exports.useRemoteConfig = useRemoteConfig;
4866 var CONFIG_KEYS = {
4867 WEB_BASED_BUILDER_URL: 'webBasedBuilderUrl',
4868 AUTH_TOKEN: 'jwt'
4869 };
4870 exports.CONFIG_KEYS = CONFIG_KEYS;
4871 var RemoteConfigProvider = function RemoteConfigProvider(props) {
4872 var _useState = (0, _react.useState)(false),
4873 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4874 isLoading = _useState2[0],
4875 setIsLoading = _useState2[1];
4876 var _useState3 = (0, _react.useState)(false),
4877 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
4878 isLoaded = _useState4[0],
4879 setIsLoaded = _useState4[1];
4880 var _useState5 = (0, _react.useState)(false),
4881 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
4882 isError = _useState6[0],
4883 setIsError = _useState6[1];
4884 var _useState7 = (0, _react.useState)({}),
4885 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
4886 remoteConfig = _useState8[0],
4887 setRemoteConfig = _useState8[1];
4888 var fetchData = /*#__PURE__*/function () {
4889 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
4890 var result;
4891 return _regenerator.default.wrap(function _callee$(_context) {
4892 while (1) switch (_context.prev = _context.next) {
4893 case 0:
4894 setIsLoading(true);
4895 _context.prev = 1;
4896 _context.next = 4;
4897 return (0, _api.getRemoteConfig)().finally(function () {
4898 setIsLoaded(true);
4899 setIsLoading(false);
4900 });
4901 case 4:
4902 result = _context.sent;
4903 if (result.config) {
4904 _context.next = 7;
4905 break;
4906 }
4907 throw new Error('Invalid remote config');
4908 case 7:
4909 setRemoteConfig(result.config);
4910 _context.next = 15;
4911 break;
4912 case 10:
4913 _context.prev = 10;
4914 _context.t0 = _context["catch"](1);
4915 setIsError(true);
4916 setIsLoaded(true);
4917 setIsLoading(false);
4918 case 15:
4919 case "end":
4920 return _context.stop();
4921 }
4922 }, _callee, null, [[1, 10]]);
4923 }));
4924 return function fetchData() {
4925 return _ref.apply(this, arguments);
4926 };
4927 }();
4928 if (!isLoaded && !isLoading) {
4929 fetchData();
4930 }
4931 return /*#__PURE__*/_react.default.createElement(RemoteConfigContext.Provider, {
4932 value: {
4933 isLoading: isLoading,
4934 isLoaded: isLoaded,
4935 isError: isError,
4936 remoteConfig: remoteConfig
4937 }
4938 }, props.children);
4939 };
4940 exports.RemoteConfigProvider = RemoteConfigProvider;
4941 RemoteConfigProvider.propTypes = {
4942 children: _propTypes.default.node.isRequired,
4943 onError: _propTypes.default.func.isRequired
4944 };
4945
4946 /***/ }),
4947
4948 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js":
4949 /*!****************************************************************************************!*\
4950 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js ***!
4951 \****************************************************************************************/
4952 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4953
4954 "use strict";
4955
4956
4957 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4958 Object.defineProperty(exports, "__esModule", ({
4959 value: true
4960 }));
4961 exports.useAttachUrlService = void 0;
4962 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4963 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4964 var _react = __webpack_require__(/*! react */ "react");
4965 var _remoteConfig = __webpack_require__(/*! ../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
4966 var useAttachUrlService = function useAttachUrlService(args) {
4967 var _window$elementorComm, _window$elementorComm2;
4968 var _useState = (0, _react.useState)(args.targetUrl),
4969 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4970 currentUrl = _useState2[0],
4971 setCurrentUrl = _useState2[1];
4972 var theme = (0, _ui.useTheme)();
4973 var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
4974 isLoaded = _useRemoteConfig.isLoaded,
4975 isError = _useRemoteConfig.isError,
4976 remoteConfig = _useRemoteConfig.remoteConfig;
4977 if (!isLoaded || isError || !remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]) {
4978 return {
4979 iframeSource: '',
4980 currentUrl: currentUrl,
4981 setCurrentUrl: setCurrentUrl
4982 };
4983 }
4984 var urlObject = new URL(remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]);
4985 urlObject.searchParams.append('colorScheme', theme.palette.mode);
4986 urlObject.searchParams.append('isRTL', 'rtl' === theme.direction ? 'true' : 'false');
4987 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);
4988 if (currentUrl) {
4989 urlObject.searchParams.append('url', currentUrl);
4990 }
4991 return {
4992 iframeSource: urlObject.toString(),
4993 currentUrl: currentUrl,
4994 setCurrentUrl: setCurrentUrl
4995 };
4996 };
4997 exports.useAttachUrlService = useAttachUrlService;
4998
4999 /***/ }),
5000
5001 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js":
5002 /*!***********************************************************************************!*\
5003 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js ***!
5004 \***********************************************************************************/
5005 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5006
5007 "use strict";
5008
5009
5010 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5011 Object.defineProperty(exports, "__esModule", ({
5012 value: true
5013 }));
5014 exports["default"] = void 0;
5015 var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
5016 var _usePrompt = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
5017 var useLayoutPrompt = function useLayoutPrompt(type, initialValue) {
5018 return (0, _usePrompt.default)(function (requestBody, signal) {
5019 requestBody.variationType = type;
5020 return (0, _api.generateLayout)(requestBody, signal);
5021 }, initialValue);
5022 };
5023 var _default = useLayoutPrompt;
5024 exports["default"] = _default;
5025
5026 /***/ }),
5027
5028 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js":
5029 /*!********************************************************************************!*\
5030 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js ***!
5031 \********************************************************************************/
5032 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5033
5034 "use strict";
5035
5036
5037 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5038 Object.defineProperty(exports, "__esModule", ({
5039 value: true
5040 }));
5041 exports["default"] = void 0;
5042 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5043 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5044 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5045 var _react = __webpack_require__(/*! react */ "react");
5046 var _useLayoutPrompt = _interopRequireDefault(__webpack_require__(/*! ./use-layout-prompt */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js"));
5047 var ERROR_INITIAL_VALUE = '';
5048 var useScreenshot = function useScreenshot(type, onData) {
5049 var _useState = (0, _react.useState)(ERROR_INITIAL_VALUE),
5050 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5051 error = _useState2[0],
5052 setError = _useState2[1];
5053 var _useState3 = (0, _react.useState)(false),
5054 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5055 isLoading = _useState4[0],
5056 setIsLoading = _useState4[1];
5057 var layoutData = (0, _useLayoutPrompt.default)(type, null);
5058 var generate = function generate(requestBody, signal) {
5059 setIsLoading(true);
5060 setError(ERROR_INITIAL_VALUE);
5061 return layoutData.send(requestBody, signal).then( /*#__PURE__*/function () {
5062 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(data) {
5063 var createdScreenshot;
5064 return _regenerator.default.wrap(function _callee$(_context) {
5065 while (1) switch (_context.prev = _context.next) {
5066 case 0:
5067 _context.next = 2;
5068 return onData(data.result);
5069 case 2:
5070 createdScreenshot = _context.sent;
5071 createdScreenshot.sendUsageData = function () {
5072 return layoutData.sendUsageData(data);
5073 };
5074 createdScreenshot.baseTemplateId = data.baseTemplateId;
5075 createdScreenshot.type = data.type;
5076 return _context.abrupt("return", createdScreenshot);
5077 case 7:
5078 case "end":
5079 return _context.stop();
5080 }
5081 }, _callee);
5082 }));
5083 return function (_x) {
5084 return _ref.apply(this, arguments);
5085 };
5086 }()).catch(function (err) {
5087 setError(err.message || err);
5088 throw err;
5089 }).finally(function () {
5090 return setIsLoading(false);
5091 });
5092 };
5093 return {
5094 generate: generate,
5095 error: error,
5096 isLoading: isLoading
5097 };
5098 };
5099 var _default = useScreenshot;
5100 exports["default"] = _default;
5101
5102 /***/ }),
5103
5104 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js":
5105 /*!*********************************************************************************!*\
5106 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js ***!
5107 \*********************************************************************************/
5108 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5109
5110 "use strict";
5111
5112
5113 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5114 Object.defineProperty(exports, "__esModule", ({
5115 value: true
5116 }));
5117 exports["default"] = void 0;
5118 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5119 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5120 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5121 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5122 var _react = __webpack_require__(/*! react */ "react");
5123 var _useScreenshot = _interopRequireDefault(__webpack_require__(/*! ./use-screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js"));
5124 var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5125 var _requestsIds = __webpack_require__(/*! ../../../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5126 var PENDING_VALUE = {
5127 isPending: true
5128 };
5129 var useScreenshots = function useScreenshots(_ref) {
5130 var onData = _ref.onData;
5131 var _useState = (0, _react.useState)([]),
5132 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5133 screenshots = _useState2[0],
5134 setScreenshots = _useState2[1];
5135
5136 /**
5137 * The ids for each request are:
5138 * - editorSessionId: a unique id for each editor opening
5139 * - sessionId: a unique id for each session. (open the AI builder)
5140 * - generateId: a unique id for each generate request. (prompt change)
5141 * - batchId: a unique id for each batch of generate requests. (generate, regenerate)
5142 * - requestId: a unique id for each generate request.
5143 */
5144
5145 var _useConfig = (0, _config.useConfig)(),
5146 currentContext = _useConfig.currentContext;
5147 var _useRequestIds = (0, _requestsIds.useRequestIds)(),
5148 editorSessionId = _useRequestIds.editorSessionId,
5149 sessionId = _useRequestIds.sessionId,
5150 setRequest = _useRequestIds.setRequest,
5151 setBatch = _useRequestIds.setBatch,
5152 setGenerate = _useRequestIds.setGenerate;
5153 var generateIdRef = (0, _react.useRef)('');
5154 var batchId = setBatch();
5155 var screenshotsData = [(0, _useScreenshot.default)(0, onData), (0, _useScreenshot.default)(1, onData), (0, _useScreenshot.default)(2, onData)];
5156 var screenshotsGroupCount = screenshotsData.length;
5157 var error = screenshotsData.every(function (s) {
5158 return s === null || s === void 0 ? void 0 : s.error;
5159 }) ? screenshotsData[0].error : '';
5160 var isLoading = screenshotsData.some(function (s) {
5161 return s === null || s === void 0 ? void 0 : s.isLoading;
5162 });
5163 var abortController = (0, _react.useRef)(null);
5164 var abort = function abort() {
5165 var _abortController$curr;
5166 return (_abortController$curr = abortController.current) === null || _abortController$curr === void 0 ? void 0 : _abortController$curr.abort();
5167 };
5168 var createScreenshots = /*#__PURE__*/function () {
5169 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(prompt, attachments) {
5170 var onGenerate, onError, promises, results, isAllFailed;
5171 return _regenerator.default.wrap(function _callee$(_context) {
5172 while (1) switch (_context.prev = _context.next) {
5173 case 0:
5174 abortController.current = new AbortController();
5175 onGenerate = function onGenerate(screenshot) {
5176 setScreenshots(function (prev) {
5177 var updatedData = (0, _toConsumableArray2.default)(prev);
5178 var pendingIndex = updatedData.indexOf(PENDING_VALUE);
5179 updatedData[pendingIndex] = screenshot;
5180 return updatedData;
5181 });
5182 return true;
5183 };
5184 onError = function onError() {
5185 setScreenshots(function (prev) {
5186 var updatedData = (0, _toConsumableArray2.default)(prev);
5187 var pendingIndex = updatedData.lastIndexOf(PENDING_VALUE);
5188 updatedData[pendingIndex] = {
5189 isError: true
5190 };
5191 return updatedData;
5192 });
5193 return false;
5194 };
5195 promises = screenshotsData.map(function (_ref3) {
5196 var generate = _ref3.generate;
5197 var prevGeneratedIds = screenshots.map(function (screenshot) {
5198 return screenshot.baseTemplateId || '';
5199 });
5200 var requestBody = {
5201 prompt: prompt,
5202 prevGeneratedIds: prevGeneratedIds,
5203 currentContext: currentContext,
5204 ids: {
5205 editorSessionId: editorSessionId.current,
5206 sessionId: sessionId.current,
5207 generateId: generateIdRef.current,
5208 batchId: batchId.current,
5209 requestId: setRequest().current
5210 },
5211 attachments: attachments.map(function (_ref4) {
5212 var type = _ref4.type,
5213 content = _ref4.content,
5214 label = _ref4.label,
5215 source = _ref4.source;
5216 // Send only the data that is needed for the generation.
5217 return {
5218 type: type,
5219 content: content,
5220 label: label,
5221 source: source
5222 };
5223 })
5224 };
5225 return generate(requestBody, abortController.current.signal).then(onGenerate).catch(onError);
5226 });
5227 _context.next = 6;
5228 return Promise.all(promises);
5229 case 6:
5230 results = _context.sent;
5231 isAllFailed = results.every(function (value) {
5232 return false === value;
5233 });
5234 if (isAllFailed) {
5235 setScreenshots(function (prev) {
5236 var updatedData = (0, _toConsumableArray2.default)(prev);
5237 updatedData.splice(screenshotsGroupCount * -1);
5238 return updatedData;
5239 });
5240 }
5241 case 9:
5242 case "end":
5243 return _context.stop();
5244 }
5245 }, _callee);
5246 }));
5247 return function createScreenshots(_x, _x2) {
5248 return _ref2.apply(this, arguments);
5249 };
5250 }();
5251 var generate = function generate(prompt, attachments) {
5252 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5253 generateIdRef.current = setGenerate().current;
5254 setScreenshots(placeholders);
5255 createScreenshots(prompt, attachments);
5256 };
5257 var regenerate = function regenerate(prompt, attachments) {
5258 var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5259 setScreenshots(function (prev) {
5260 return [].concat((0, _toConsumableArray2.default)(prev), (0, _toConsumableArray2.default)(placeholders));
5261 });
5262 createScreenshots(prompt, attachments);
5263 };
5264 return {
5265 generate: generate,
5266 regenerate: regenerate,
5267 screenshots: screenshots,
5268 isLoading: isLoading,
5269 error: error,
5270 abort: abort
5271 };
5272 };
5273 var _default = useScreenshots;
5274 exports["default"] = _default;
5275
5276 /***/ }),
5277
5278 /***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js":
5279 /*!****************************************************************************!*\
5280 !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js ***!
5281 \****************************************************************************/
5282 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5283
5284 "use strict";
5285
5286
5287 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5288 Object.defineProperty(exports, "__esModule", ({
5289 value: true
5290 }));
5291 exports["default"] = exports.SCREENSHOTS_PER_PAGE = exports.MAX_PAGES = void 0;
5292 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5293 var _react = __webpack_require__(/*! react */ "react");
5294 var SCREENSHOTS_PER_PAGE = 3;
5295 exports.SCREENSHOTS_PER_PAGE = SCREENSHOTS_PER_PAGE;
5296 var MAX_PAGES = 5;
5297 exports.MAX_PAGES = MAX_PAGES;
5298 var useSlider = function useSlider() {
5299 var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
5300 _ref$slidesCount = _ref.slidesCount,
5301 slidesCount = _ref$slidesCount === void 0 ? 0 : _ref$slidesCount,
5302 _ref$slidesPerPage = _ref.slidesPerPage,
5303 slidesPerPage = _ref$slidesPerPage === void 0 ? SCREENSHOTS_PER_PAGE : _ref$slidesPerPage,
5304 _ref$gapPercentage = _ref.gapPercentage,
5305 gapPercentage = _ref$gapPercentage === void 0 ? 2 : _ref$gapPercentage;
5306 var _useState = (0, _react.useState)(1),
5307 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5308 currentPage = _useState2[0],
5309 setCurrentPage = _useState2[1];
5310 var gapsCount = slidesPerPage - 1;
5311 var slideWidthPercentage = (100 - gapPercentage * gapsCount) / slidesPerPage;
5312 var offsetXPercentage = (slideWidthPercentage + gapPercentage) * slidesPerPage * (currentPage - 1) * -1;
5313 var pagesCount = Math.ceil(slidesCount / slidesPerPage);
5314 (0, _react.useEffect)(function () {
5315 // In cases when the slidesCount value was reduced, we need to navigate to the last page.
5316 if (currentPage > 1 && currentPage > pagesCount) {
5317 setCurrentPage(pagesCount);
5318 }
5319 }, [pagesCount]);
5320 return {
5321 currentPage: currentPage,
5322 setCurrentPage: setCurrentPage,
5323 pagesCount: pagesCount,
5324 slidesPerPage: slidesPerPage,
5325 gapPercentage: gapPercentage,
5326 offsetXPercentage: offsetXPercentage,
5327 slideWidthPercentage: slideWidthPercentage
5328 };
5329 };
5330 var _default = useSlider;
5331 exports["default"] = _default;
5332
5333 /***/ }),
5334
5335 /***/ "../modules/ai/assets/js/editor/pages/form-layout/index.js":
5336 /*!*****************************************************************!*\
5337 !*** ../modules/ai/assets/js/editor/pages/form-layout/index.js ***!
5338 \*****************************************************************/
5339 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5340
5341 "use strict";
5342
5343
5344 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5345 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5346 Object.defineProperty(exports, "__esModule", ({
5347 value: true
5348 }));
5349 exports["default"] = void 0;
5350 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5351 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5352 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5353 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5354 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5355 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5356 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5357 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5358 var _promptErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../../components/prompt-error-message */ "../modules/ai/assets/js/editor/components/prompt-error-message.js"));
5359 var _unsavedChangesAlert = _interopRequireDefault(__webpack_require__(/*! ./components/unsaved-changes-alert */ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js"));
5360 var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
5361 var _promptForm = _interopRequireDefault(__webpack_require__(/*! ./components/prompt-form */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js"));
5362 var _refreshIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/refresh-icon */ "../modules/ai/assets/js/editor/icons/refresh-icon.js"));
5363 var _screenshot = _interopRequireDefault(__webpack_require__(/*! ./components/screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js"));
5364 var _useScreenshots2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-screenshots */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js"));
5365 var _useSlider2 = _interopRequireWildcard(__webpack_require__(/*! ./hooks/use-slider */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js"));
5366 var _minimizeDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/minimize-diagonal-icon */ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js"));
5367 var _expandDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/expand-diagonal-icon */ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js"));
5368 var _config = __webpack_require__(/*! ./context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5369 var _attachment = __webpack_require__(/*! ../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
5370 var _promptPowerNotice = __webpack_require__(/*! ./components/attachments/prompt-power-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js");
5371 var _proWidgetsNotice = __webpack_require__(/*! ./components/pro-widgets-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js");
5372 var _attachments = __webpack_require__(/*! ./components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
5373 var _attachDialog = _interopRequireDefault(__webpack_require__(/*! ./components/attachments/attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js"));
5374 var _isURL = _interopRequireDefault(__webpack_require__(/*! validator/lib/isURL */ "../node_modules/validator/lib/isURL.js"));
5375 var _voicePromotionAlert = __webpack_require__(/*! ../../components/voice-promotion-alert */ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js");
5376 var _excluded = ["children"];
5377 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); }
5378 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; }
5379 var DirectionalMinimizeDiagonalIcon = (0, _ui.withDirection)(_minimizeDiagonalIcon.default);
5380 var DirectionalExpandDiagonalIcon = (0, _ui.withDirection)(_expandDiagonalIcon.default);
5381
5382 /**
5383 * @typedef {Object} Attachment
5384 * @property {('json')} type - The type of the attachment, currently only `json` is supported.
5385 * @property {string} previewHTML - HTML content as a string, representing a preview.
5386 * @property {string} content - Actual content of the attachment as a string.
5387 * @property {string} label - Label for the attachment.
5388 */
5389
5390 var RegenerateButton = function RegenerateButton(props) {
5391 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5392 size: "small",
5393 color: "secondary",
5394 startIcon: /*#__PURE__*/_react.default.createElement(_refreshIcon.default, null)
5395 }, props), (0, _i18n.__)('Regenerate', 'elementor'));
5396 };
5397 var UseLayoutButton = function UseLayoutButton(props) {
5398 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5399 size: "small",
5400 variant: "contained"
5401 }, props), (0, _i18n.__)('Use Layout', 'elementor'));
5402 };
5403 UseLayoutButton.propTypes = {
5404 sx: _propTypes.default.object
5405 };
5406 var isRegenerateButtonDisabled = function isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive) {
5407 if (isLoading || isPromptFormActive) {
5408 return true;
5409 }
5410 return screenshots.length >= _useSlider2.SCREENSHOTS_PER_PAGE * _useSlider2.MAX_PAGES;
5411 };
5412 var FormLayout = function FormLayout(_ref) {
5413 var _screenshots$selected, _screenshots$2;
5414 var _ref$DialogHeaderProp = _ref.DialogHeaderProps,
5415 DialogHeaderProps = _ref$DialogHeaderProp === void 0 ? {} : _ref$DialogHeaderProp,
5416 _ref$DialogContentPro = _ref.DialogContentProps,
5417 DialogContentProps = _ref$DialogContentPro === void 0 ? {} : _ref$DialogContentPro,
5418 initialAttachments = _ref.attachments;
5419 var _useConfig = (0, _config.useConfig)(),
5420 attachmentsTypes = _useConfig.attachmentsTypes,
5421 onData = _useConfig.onData,
5422 onInsert = _useConfig.onInsert,
5423 onSelect = _useConfig.onSelect,
5424 onClose = _useConfig.onClose,
5425 onGenerate = _useConfig.onGenerate,
5426 hasPro = _useConfig.hasPro;
5427 var _useScreenshots = (0, _useScreenshots2.default)({
5428 onData: onData
5429 }),
5430 screenshots = _useScreenshots.screenshots,
5431 generate = _useScreenshots.generate,
5432 regenerate = _useScreenshots.regenerate,
5433 isLoading = _useScreenshots.isLoading,
5434 error = _useScreenshots.error,
5435 abort = _useScreenshots.abort;
5436 var screenshotOutlineOffset = '2px';
5437 var _useSlider = (0, _useSlider2.default)({
5438 slidesCount: screenshots.length
5439 }),
5440 currentPage = _useSlider.currentPage,
5441 setCurrentPage = _useSlider.setCurrentPage,
5442 pagesCount = _useSlider.pagesCount,
5443 gapPercentage = _useSlider.gapPercentage,
5444 slidesPerPage = _useSlider.slidesPerPage,
5445 offsetXPercentage = _useSlider.offsetXPercentage,
5446 slideWidthPercentage = _useSlider.slideWidthPercentage;
5447 var _useState = (0, _react.useState)(-1),
5448 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5449 selectedScreenshotIndex = _useState2[0],
5450 setSelectedScreenshotIndex = _useState2[1];
5451 var _useState3 = (0, _react.useState)(false),
5452 _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5453 showUnsavedChangesAlert = _useState4[0],
5454 setShowUnsavedChangesAlert = _useState4[1];
5455 var _useState5 = (0, _react.useState)(true),
5456 _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
5457 isPromptEditable = _useState6[0],
5458 setIsPromptEditable = _useState6[1];
5459 var _useState7 = (0, _react.useState)([]),
5460 _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
5461 attachments = _useState8[0],
5462 setAttachments = _useState8[1];
5463 var _useState9 = (0, _react.useState)(false),
5464 _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
5465 shouldRenderWebApp = _useState10[0],
5466 setShouldRenderWebApp = _useState10[1];
5467 var _useState11 = (0, _react.useState)(false),
5468 _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
5469 isMinimized = _useState12[0],
5470 setIsMinimized = _useState12[1];
5471 var lastRun = (0, _react.useRef)(function () {});
5472 var promptInputRef = (0, _react.useRef)(null);
5473 var selectedTemplate = (_screenshots$selected = screenshots[selectedScreenshotIndex]) === null || _screenshots$selected === void 0 ? void 0 : _screenshots$selected.template;
5474 var dialogContentChildren = DialogContentProps.children,
5475 dialogContentProps = (0, _objectWithoutProperties2.default)(DialogContentProps, _excluded);
5476
5477 // When there are no screenshots the prompt field should be editable.
5478 var shouldFallbackToEditPrompt = !!(error && 0 === screenshots.length);
5479 var isPromptFormActive = isPromptEditable || shouldFallbackToEditPrompt;
5480 var mayContainProWidgets = 0 === attachments.length || attachments.some(function (attachment) {
5481 return _attachments.ATTACHMENT_TYPE_URL === attachment.type;
5482 });
5483 var abortAndClose = function abortAndClose() {
5484 abort();
5485 onClose();
5486 };
5487 var onCloseIntent = function onCloseIntent() {
5488 var hasUnsavedChanges = promptInputRef.current.value.trim() !== '' || screenshots.length > 0;
5489 if (hasUnsavedChanges) {
5490 return setShowUnsavedChangesAlert(true);
5491 }
5492 abortAndClose();
5493 };
5494 var handleGenerate = function handleGenerate(event, prompt) {
5495 event.preventDefault();
5496 if ('' === prompt.trim() && 0 === attachments.length) {
5497 return;
5498 }
5499 if ((0, _isURL.default)(prompt)) {
5500 setShouldRenderWebApp(true);
5501 return;
5502 }
5503 onGenerate();
5504 lastRun.current = function () {
5505 setSelectedScreenshotIndex(-1);
5506 generate(prompt, attachments);
5507 };
5508 lastRun.current();
5509 setIsPromptEditable(false);
5510 setCurrentPage(1);
5511 };
5512 var handleRegenerate = function handleRegenerate() {
5513 lastRun.current = function () {
5514 regenerate(promptInputRef.current.value, attachments);
5515 // Changing the current page to the next page number.
5516 setCurrentPage(pagesCount + 1);
5517 };
5518 lastRun.current();
5519 };
5520 var applyTemplate = function applyTemplate() {
5521 onInsert(selectedTemplate);
5522 screenshots[selectedScreenshotIndex].sendUsageData();
5523 abortAndClose();
5524 };
5525 var handleScreenshotClick = function handleScreenshotClick(index, template) {
5526 return function () {
5527 if (isPromptFormActive) {
5528 return;
5529 }
5530 setSelectedScreenshotIndex(index);
5531 onSelect(template);
5532 };
5533 };
5534
5535 /**
5536 * @param {Attachment[]} items
5537 */
5538 var onAttach = function onAttach(items) {
5539 items.forEach(function (item) {
5540 if (!attachmentsTypes[item.type]) {
5541 throw new Error("Invalid attachment type: ".concat(item.type));
5542 }
5543 var typeConfig = attachmentsTypes[item.type];
5544 if (!item.previewHTML && typeConfig.previewGenerator) {
5545 typeConfig.previewGenerator(item.content).then(function (html) {
5546 item.previewHTML = html;
5547 setAttachments(function (prev) {
5548 // Replace the attachment with the updated one.
5549 return prev.map(function (attachment) {
5550 if (attachment.content === item.content) {
5551 return item;
5552 }
5553 return attachment;
5554 });
5555 });
5556 });
5557 }
5558 });
5559 setAttachments(items);
5560 setShouldRenderWebApp(false);
5561 setIsPromptEditable(true);
5562 };
5563 (0, _react.useEffect)(function () {
5564 var _screenshots$;
5565 var isFirstTemplateExist = (_screenshots$ = screenshots[0]) === null || _screenshots$ === void 0 ? void 0 : _screenshots$.template;
5566 if (isFirstTemplateExist) {
5567 onSelect(screenshots[0].template);
5568 setSelectedScreenshotIndex(0);
5569 }
5570 }, [(_screenshots$2 = screenshots[0]) === null || _screenshots$2 === void 0 ? void 0 : _screenshots$2.template]);
5571 (0, _react.useEffect)(function () {
5572 if (initialAttachments !== null && initialAttachments !== void 0 && initialAttachments.length) {
5573 onAttach(initialAttachments);
5574 }
5575 }, []);
5576 return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
5577 onClose: onCloseIntent
5578 }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, (0, _extends2.default)({
5579 onClose: onCloseIntent
5580 }, DialogHeaderProps), DialogHeaderProps.children, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5581 title: isMinimized ? (0, _i18n.__)('Expand', 'elementor') : (0, _i18n.__)('Minimize', 'elementor')
5582 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
5583 size: "small",
5584 "aria-label": "minimize",
5585 onClick: function onClick() {
5586 return setIsMinimized(function (prev) {
5587 return !prev;
5588 });
5589 }
5590 }, isMinimized ? /*#__PURE__*/_react.default.createElement(DirectionalExpandDiagonalIcon, null) : /*#__PURE__*/_react.default.createElement(DirectionalMinimizeDiagonalIcon, null)))), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, (0, _extends2.default)({
5591 dividers: true
5592 }, dialogContentProps), /*#__PURE__*/_react.default.createElement(_ui.Collapse, {
5593 in: !isMinimized
5594 }, dialogContentChildren && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5595 sx: {
5596 pt: 2,
5597 px: 2,
5598 pb: 0
5599 }
5600 }, 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, {
5601 sx: {
5602 pt: 2,
5603 px: 2,
5604 pb: 0
5605 }
5606 }, /*#__PURE__*/_react.default.createElement(_promptErrorMessage.default, {
5607 error: error,
5608 onRetry: lastRun.current
5609 })), showUnsavedChangesAlert && /*#__PURE__*/_react.default.createElement(_unsavedChangesAlert.default, {
5610 open: showUnsavedChangesAlert,
5611 title: (0, _i18n.__)('Leave Elementor AI?', 'elementor'),
5612 text: (0, _i18n.__)("Your progress will be deleted, and can't be recovered.", 'elementor'),
5613 onClose: abortAndClose,
5614 onCancel: function onCancel() {
5615 return setShowUnsavedChangesAlert(false);
5616 }
5617 }), shouldRenderWebApp && /*#__PURE__*/_react.default.createElement(_attachDialog.default, {
5618 type: _attachments.ATTACHMENT_TYPE_URL,
5619 url: promptInputRef.current.value,
5620 onAttach: onAttach,
5621 onClose: function onClose() {
5622 setShouldRenderWebApp(false);
5623 }
5624 }), /*#__PURE__*/_react.default.createElement(_promptForm.default, {
5625 shouldResetPrompt: shouldRenderWebApp,
5626 ref: promptInputRef,
5627 isActive: isPromptFormActive,
5628 isLoading: isLoading,
5629 showActions: screenshots.length > 0 || isLoading,
5630 attachmentsTypes: attachmentsTypes,
5631 attachments: attachments,
5632 onAttach: onAttach,
5633 onDetach: function onDetach(index) {
5634 setAttachments(function (prev) {
5635 var newAttachments = (0, _toConsumableArray2.default)(prev);
5636 newAttachments.splice(index, 1);
5637 return newAttachments;
5638 });
5639 setIsPromptEditable(true);
5640 },
5641 onSubmit: handleGenerate,
5642 onBack: function onBack() {
5643 return setIsPromptEditable(false);
5644 },
5645 onEdit: function onEdit() {
5646 return setIsPromptEditable(true);
5647 }
5648 }), (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, {
5649 sx: {
5650 p: 1.5
5651 }
5652 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5653 sx: {
5654 overflow: 'hidden',
5655 p: 0.5
5656 }
5657 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5658 sx: {
5659 display: 'flex',
5660 transition: 'all 0.4s ease',
5661 gap: "".concat(gapPercentage, "%"),
5662 transform: "translateX(".concat(offsetXPercentage, "%)")
5663 }
5664 }, screenshots.map(function (_ref2, index) {
5665 var screenshot = _ref2.screenshot,
5666 type = _ref2.type,
5667 template = _ref2.template,
5668 isError = _ref2.isError,
5669 isPending = _ref2.isPending;
5670 return /*#__PURE__*/_react.default.createElement(_screenshot.default, {
5671 key: index,
5672 url: screenshot,
5673 type: type,
5674 disabled: isPromptFormActive,
5675 isPlaceholder: isError,
5676 isLoading: isPending,
5677 isSelected: selectedScreenshotIndex === index,
5678 onClick: handleScreenshotClick(index, template),
5679 outlineOffset: screenshotOutlineOffset,
5680 sx: {
5681 flex: "0 0 ".concat(slideWidthPercentage, "%")
5682 }
5683 });
5684 }))), /*#__PURE__*/_react.default.createElement(_voicePromotionAlert.VoicePromotionAlert, {
5685 introductionKey: "ai-context-layout-promotion"
5686 })), screenshots.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5687 sx: {
5688 pt: 0,
5689 px: 2,
5690 pb: 2
5691 },
5692 display: "grid",
5693 gridTemplateColumns: "repeat(3, 1fr)",
5694 justifyItems: "center"
5695 }, /*#__PURE__*/_react.default.createElement(RegenerateButton, {
5696 onClick: handleRegenerate,
5697 disabled: isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive),
5698 sx: {
5699 justifySelf: 'start'
5700 }
5701 }), screenshots.length > slidesPerPage && /*#__PURE__*/_react.default.createElement(_ui.Pagination, {
5702 page: currentPage,
5703 count: pagesCount,
5704 disabled: isPromptFormActive,
5705 onChange: function onChange(_, page) {
5706 return setCurrentPage(page);
5707 }
5708 }), /*#__PURE__*/_react.default.createElement(UseLayoutButton, {
5709 onClick: applyTemplate,
5710 disabled: isPromptFormActive || -1 === selectedScreenshotIndex,
5711 sx: {
5712 justifySelf: 'end',
5713 gridColumn: 3
5714 }
5715 }))))));
5716 };
5717 FormLayout.propTypes = {
5718 DialogHeaderProps: _propTypes.default.object,
5719 DialogContentProps: _propTypes.default.object,
5720 attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
5721 };
5722 var _default = FormLayout;
5723 exports["default"] = _default;
5724
5725 /***/ }),
5726
5727 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js":
5728 /*!************************************************************************************!*\
5729 !*** ../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js ***!
5730 \************************************************************************************/
5731 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5732
5733 "use strict";
5734
5735
5736 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5737 Object.defineProperty(exports, "__esModule", ({
5738 value: true
5739 }));
5740 exports["default"] = void 0;
5741 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5742 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5743 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5744 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5745 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5746 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5747 var _wandIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/wand-icon */ "../modules/ai/assets/js/editor/icons/wand-icon.js"));
5748 var _excluded = ["isLoading"];
5749 var StyledWandIcon = (0, _ui.withDirection)(_wandIcon.default);
5750 var EnhanceButton = function EnhanceButton(_ref) {
5751 var isLoading = _ref.isLoading,
5752 props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
5753 return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5754 title: (0, _i18n.__)('Enhance prompt', 'elementor')
5755 }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5756 component: "span",
5757 sx: {
5758 cursor: props.disabled ? 'default' : 'pointer'
5759 }
5760 }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, (0, _extends2.default)({
5761 size: "small",
5762 color: "secondary"
5763 }, props), isLoading ? /*#__PURE__*/_react.default.createElement(_ui.CircularProgress, {
5764 color: "secondary",
5765 size: 20
5766 }) : /*#__PURE__*/_react.default.createElement(StyledWandIcon, {
5767 fontSize: "small"
5768 }))));
5769 };
5770 EnhanceButton.propTypes = {
5771 disabled: _propTypes.default.bool,
5772 isLoading: _propTypes.default.bool
5773 };
5774 var _default = EnhanceButton;
5775 exports["default"] = _default;
5776
5777 /***/ }),
5778
5779 /***/ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js":
5780 /*!*************************************************************************************!*\
5781 !*** ../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js ***!
5782 \*************************************************************************************/
5783 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5784
5785 "use strict";
5786
5787
5788 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5789 Object.defineProperty(exports, "__esModule", ({
5790 value: true
5791 }));
5792 exports["default"] = void 0;
5793 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5794 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5795 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5796 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5797 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5798 var GenerateSubmit = function GenerateSubmit(props) {
5799 return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5800 fullWidth: true,
5801 size: "medium",
5802 type: "submit",
5803 variant: "contained"
5804 }, props), props.children || (0, _i18n.__)('Generate', 'elementor'));
5805 };
5806 GenerateSubmit.propTypes = {
5807 children: _propTypes.default.node
5808 };
5809 var _default = GenerateSubmit;
5810 exports["default"] = _default;
5811
5812 /***/ }),
5813
5814 /***/ "../modules/ai/assets/js/editor/pages/get-started/index.js":
5815 /*!*****************************************************************!*\
5816 !*** ../modules/ai/assets/js/editor/pages/get-started/index.js ***!
5817 \*****************************************************************/
5818 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5819
5820 "use strict";
5821
5822
5823 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5824 var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5825 Object.defineProperty(exports, "__esModule", ({
5826 value: true
5827 }));
5828 exports["default"] = void 0;
5829 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5830 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5831 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5832 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5833 var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5834 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5835 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5836 var _api = __webpack_require__(/*! ../../api */ "../modules/ai/assets/js/editor/api/index.js");
5837 var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
5838 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); }
5839 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; }
5840 var GetStarted = function GetStarted(_ref) {
5841 var onSuccess = _ref.onSuccess;
5842 var _useState = (0, _react.useState)(false),
5843 _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5844 isTermsChecked = _useState2[0],
5845 setIsTermsChecked = _useState2[1];
5846 var onGetStartedClick = /*#__PURE__*/function () {
5847 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5848 return _regenerator.default.wrap(function _callee$(_context) {
5849 while (1) switch (_context.prev = _context.next) {
5850 case 0:
5851 _context.next = 2;
5852 return (0, _api.setGetStarted)();
5853 case 2:
5854 onSuccess();
5855 case 3:
5856 case "end":
5857 return _context.stop();
5858 }
5859 }, _callee);
5860 }));
5861 return function onGetStartedClick() {
5862 return _ref2.apply(this, arguments);
5863 };
5864 }();
5865 return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5866 alignItems: "center",
5867 gap: 1.5
5868 }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
5869 sx: {
5870 color: 'text.primary',
5871 fontSize: '60px',
5872 mb: 1
5873 }
5874 }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5875 variant: "h4",
5876 sx: {
5877 color: 'text.primary'
5878 }
5879 }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5880 variant: "body2"
5881 }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5882 direction: "row",
5883 gap: 1.5,
5884 alignItems: "flex-start"
5885 }, /*#__PURE__*/_react.default.createElement(_ui.Checkbox, {
5886 id: "e-ai-terms-approval",
5887 color: "secondary",
5888 sx: {
5889 p: 0
5890 },
5891 onChange: function onChange() {
5892 return setIsTermsChecked(function (prevState) {
5893 return !prevState;
5894 });
5895 }
5896 }), /*#__PURE__*/_react.default.createElement(_ui.Stack, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
5897 variant: "caption",
5898 sx: {
5899 maxWidth: 520
5900 },
5901 component: "label",
5902 htmlFor: "e-ai-terms-approval"
5903 }, (0, _i18n.__)('I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
5904 href: "https://go.elementor.com/ai-terms/",
5905 target: "_blank",
5906 color: "info.main"
5907 }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
5908 href: "https://go.elementor.com/ai-privacy-policy/",
5909 target: "_blank",
5910 color: "info.main"
5911 }, (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, {
5912 disabled: !isTermsChecked,
5913 variant: "contained",
5914 onClick: onGetStartedClick,
5915 sx: {
5916 mt: 1,
5917 '&:hover': {
5918 color: 'primary.contrastText'
5919 }
5920 }
5921 }, (0, _i18n.__)('Get Started', 'elementor')));
5922 };
5923 GetStarted.propTypes = {
5924 onSuccess: _propTypes.default.func.isRequired
5925 };
5926 var _default = GetStarted;
5927 exports["default"] = _default;
5928
5929 /***/ }),
5930
5931 /***/ "../modules/ai/assets/js/editor/types/attachment.js":
5932 /*!**********************************************************!*\
5933 !*** ../modules/ai/assets/js/editor/types/attachment.js ***!
5934 \**********************************************************/
5935 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5936
5937 "use strict";
5938
5939
5940 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5941 Object.defineProperty(exports, "__esModule", ({
5942 value: true
5943 }));
5944 exports.AttachmentsTypesPropType = exports.AttachmentPropType = void 0;
5945 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5946 var AttachmentPropType = _propTypes.default.shape({
5947 type: _propTypes.default.string,
5948 previewHTML: _propTypes.default.string,
5949 content: _propTypes.default.string,
5950 label: _propTypes.default.string,
5951 source: _propTypes.default.string
5952 });
5953 exports.AttachmentPropType = AttachmentPropType;
5954 var AttachmentsTypesPropType = _propTypes.default.shape({
5955 type: _propTypes.default.shape({
5956 promptPlaceholder: _propTypes.default.string,
5957 promptSuggestions: _propTypes.default.arrayOf(_propTypes.default.shape({
5958 text: _propTypes.default.string.isRequired
5959 })),
5960 previewGenerator: _propTypes.default.func
5961 })
5962 });
5963 exports.AttachmentsTypesPropType = AttachmentsTypesPropType;
5964
5965 /***/ }),
5966
5967 /***/ "../modules/ai/assets/js/editor/utils/editor-integration.js":
5968 /*!******************************************************************!*\
5969 !*** ../modules/ai/assets/js/editor/utils/editor-integration.js ***!
5970 \******************************************************************/
5971 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5972
5973 "use strict";
5974 /* provided dependency */ var ReactDOM = __webpack_require__(/*! react-dom */ "react-dom");
5975
5976
5977 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5978 Object.defineProperty(exports, "__esModule", ({
5979 value: true
5980 }));
5981 exports.renderLayoutApp = exports.openPanel = exports.onConnect = exports.importToEditor = exports.getUiConfig = exports.closePanel = void 0;
5982 var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5983 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5984 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5985 var _previewContainer = __webpack_require__(/*! ./preview-container */ "../modules/ai/assets/js/editor/utils/preview-container.js");
5986 var _layoutApp = _interopRequireDefault(__webpack_require__(/*! ../layout-app */ "../modules/ai/assets/js/editor/layout-app.js"));
5987 var _screenshot = __webpack_require__(/*! ./screenshot */ "../modules/ai/assets/js/editor/utils/screenshot.js");
5988 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
5989 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5990 var _layoutAppWrapper = _interopRequireDefault(__webpack_require__(/*! ../layout-app-wrapper */ "../modules/ai/assets/js/editor/layout-app-wrapper.js"));
5991 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5992 var closePanel = function closePanel() {
5993 $e.run('panel/close');
5994 $e.components.get('panel').blockUserInteractions();
5995 };
5996 exports.closePanel = closePanel;
5997 var openPanel = function openPanel() {
5998 $e.run('panel/open');
5999 $e.components.get('panel').unblockUserInteractions();
6000 };
6001 exports.openPanel = openPanel;
6002 var onConnect = function onConnect(data) {
6003 elementorCommon.config.library_connect.is_connected = true;
6004 elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0;
6005 elementorCommon.config.library_connect.current_access_tier = data.access_tier;
6006 };
6007 exports.onConnect = onConnect;
6008 var getUiConfig = function getUiConfig() {
6009 var _elementor, _elementor$getPrefere;
6010 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';
6011 var isRTL = elementorCommon.config.isRTL;
6012 return {
6013 colorScheme: colorScheme,
6014 isRTL: isRTL
6015 };
6016 };
6017 exports.getUiConfig = getUiConfig;
6018 var VARIATIONS_PROMPTS = [{
6019 text: (0, _i18n.__)('Minimalist design with bold typography about', 'elementor')
6020 }, {
6021 text: (0, _i18n.__)('Elegant style with serif fonts discussing', 'elementor')
6022 }, {
6023 text: (0, _i18n.__)('Retro vibe with muted colors and classic fonts about', 'elementor')
6024 }, {
6025 text: (0, _i18n.__)('Futuristic design with neon accents about', 'elementor')
6026 }, {
6027 text: (0, _i18n.__)('Professional look with clean lines for', 'elementor')
6028 }, {
6029 text: (0, _i18n.__)('Earthy tones and organic shapes featuring', 'elementor')
6030 }, {
6031 text: (0, _i18n.__)('Luxurious theme with rich colors discussing', 'elementor')
6032 }, {
6033 text: (0, _i18n.__)('Tech-inspired style with modern fonts about', 'elementor')
6034 }, {
6035 text: (0, _i18n.__)('Warm hues with comforting visuals about', 'elementor')
6036 }];
6037 var PROMPT_PLACEHOLDER = (0, _i18n.__)("Press '/' for suggestions or describe the changes you want to apply (optional)...", 'elementor');
6038 var renderLayoutApp = function renderLayoutApp() {
6039 var _options$onRenderApp;
6040 var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
6041 parentContainer: null,
6042 mode: '',
6043 at: null,
6044 onClose: null,
6045 onGenerate: null,
6046 onInsert: null,
6047 onRenderApp: null,
6048 onSelect: null,
6049 attachments: []
6050 };
6051 closePanel();
6052 var previewContainer = (0, _previewContainer.createPreviewContainer)(options.parentContainer, {
6053 // Create the container at the "drag widget here" area position.
6054 at: options.at
6055 });
6056 var _getUiConfig = getUiConfig(),
6057 colorScheme = _getUiConfig.colorScheme,
6058 isRTL = _getUiConfig.isRTL;
6059 var rootElement = document.createElement('div');
6060 document.body.append(rootElement);
6061 var bodyStyle = window.elementorFrontend.elements.$window[0].getComputedStyle(window.elementorFrontend.elements.$body[0]);
6062 ReactDOM.render( /*#__PURE__*/_react.default.createElement(_layoutAppWrapper.default, {
6063 isRTL: isRTL,
6064 colorScheme: colorScheme
6065 }, /*#__PURE__*/_react.default.createElement(_layoutApp.default, {
6066 mode: options.mode,
6067 currentContext: {
6068 body: {
6069 backgroundColor: bodyStyle.backgroundColor,
6070 backgroundImage: bodyStyle.backgroundImage
6071 }
6072 },
6073 attachmentsTypes: {
6074 json: {
6075 promptSuggestions: VARIATIONS_PROMPTS,
6076 promptPlaceholder: PROMPT_PLACEHOLDER,
6077 previewGenerator: function () {
6078 var _previewGenerator = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(json) {
6079 var screenshot;
6080 return _regenerator.default.wrap(function _callee$(_context) {
6081 while (1) switch (_context.prev = _context.next) {
6082 case 0:
6083 _context.next = 2;
6084 return (0, _screenshot.takeScreenshot)(json);
6085 case 2:
6086 screenshot = _context.sent;
6087 return _context.abrupt("return", "<img src=\"".concat(screenshot, "\" />"));
6088 case 4:
6089 case "end":
6090 return _context.stop();
6091 }
6092 }, _callee);
6093 }));
6094 function previewGenerator(_x) {
6095 return _previewGenerator.apply(this, arguments);
6096 }
6097 return previewGenerator;
6098 }()
6099 },
6100 url: {
6101 promptPlaceholder: PROMPT_PLACEHOLDER,
6102 promptSuggestions: VARIATIONS_PROMPTS
6103 }
6104 },
6105 attachments: options.attachments || [],
6106 onClose: function onClose() {
6107 var _options$onClose;
6108 previewContainer.destroy();
6109 (_options$onClose = options.onClose) === null || _options$onClose === void 0 ? void 0 : _options$onClose.call(options);
6110 ReactDOM.unmountComponentAtNode(rootElement);
6111 rootElement.remove();
6112 openPanel();
6113 },
6114 onConnect: onConnect,
6115 onGenerate: function onGenerate() {
6116 var _options$onGenerate;
6117 (_options$onGenerate = options.onGenerate) === null || _options$onGenerate === void 0 ? void 0 : _options$onGenerate.call(options, {
6118 previewContainer: previewContainer
6119 });
6120 },
6121 onData: /*#__PURE__*/function () {
6122 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(template) {
6123 var screenshot;
6124 return _regenerator.default.wrap(function _callee2$(_context2) {
6125 while (1) switch (_context2.prev = _context2.next) {
6126 case 0:
6127 _context2.next = 2;
6128 return (0, _screenshot.takeScreenshot)(template);
6129 case 2:
6130 screenshot = _context2.sent;
6131 return _context2.abrupt("return", {
6132 screenshot: screenshot,
6133 template: template
6134 });
6135 case 4:
6136 case "end":
6137 return _context2.stop();
6138 }
6139 }, _callee2);
6140 }));
6141 return function (_x2) {
6142 return _ref.apply(this, arguments);
6143 };
6144 }(),
6145 onSelect: function onSelect(template) {
6146 var _options$onSelect;
6147 (_options$onSelect = options.onSelect) === null || _options$onSelect === void 0 ? void 0 : _options$onSelect.call(options);
6148 previewContainer.setContent(template);
6149 },
6150 onInsert: options.onInsert,
6151 hasPro: elementor.helpers.hasPro()
6152 })), rootElement);
6153 (_options$onRenderApp = options.onRenderApp) === null || _options$onRenderApp === void 0 ? void 0 : _options$onRenderApp.call(options, {
6154 previewContainer: previewContainer
6155 });
6156 };
6157 exports.renderLayoutApp = renderLayoutApp;
6158 var importToEditor = function importToEditor(_ref2) {
6159 var parentContainer = _ref2.parentContainer,
6160 at = _ref2.at,
6161 template = _ref2.template,
6162 historyTitle = _ref2.historyTitle,
6163 _ref2$replace = _ref2.replace,
6164 replace = _ref2$replace === void 0 ? false : _ref2$replace;
6165 var endHistoryLog = (0, _history.startHistoryLog)({
6166 type: 'import',
6167 title: historyTitle
6168 });
6169 if (replace) {
6170 $e.run('document/elements/delete', {
6171 container: parentContainer.children.at(at)
6172 });
6173 }
6174 $e.run('document/elements/create', {
6175 container: parentContainer,
6176 model: (0, _requestsIds.generateIds)(template),
6177 options: {
6178 at: at,
6179 edit: true
6180 }
6181 });
6182 endHistoryLog();
6183 };
6184 exports.importToEditor = importToEditor;
6185
6186 /***/ }),
6187
6188 /***/ "../modules/ai/assets/js/editor/utils/history.js":
6189 /*!*******************************************************!*\
6190 !*** ../modules/ai/assets/js/editor/utils/history.js ***!
6191 \*******************************************************/
6192 /***/ ((__unused_webpack_module, exports) => {
6193
6194 "use strict";
6195
6196
6197 Object.defineProperty(exports, "__esModule", ({
6198 value: true
6199 }));
6200 exports.startHistoryLog = startHistoryLog;
6201 exports.toggleHistory = toggleHistory;
6202 function toggleHistory(isActive) {
6203 elementor.documents.getCurrent().history.setActive(isActive);
6204 }
6205
6206 /**
6207 * @param {Object} options
6208 * @param { 'add' | 'change' | 'disable' | 'duplicate' | 'enable' | 'import' | 'move' | 'paste' | 'paste_style' | 'remove' | 'reset_settings' | 'reset_style' | 'selected' } options.type
6209 * @param { string } options.title
6210 *
6211 * @return {*}
6212 */
6213 function startHistoryLog(_ref) {
6214 var type = _ref.type,
6215 title = _ref.title;
6216 var id = $e.internal('document/history/start-log', {
6217 type: type,
6218 title: title
6219 });
6220 return function () {
6221 return $e.internal('document/history/end-log', {
6222 id: id
6223 });
6224 };
6225 }
6226
6227 /***/ }),
6228
6229 /***/ "../modules/ai/assets/js/editor/utils/preview-container.js":
6230 /*!*****************************************************************!*\
6231 !*** ../modules/ai/assets/js/editor/utils/preview-container.js ***!
6232 \*****************************************************************/
6233 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6234
6235 "use strict";
6236
6237
6238 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6239 Object.defineProperty(exports, "__esModule", ({
6240 value: true
6241 }));
6242 exports.createPreviewContainer = createPreviewContainer;
6243 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
6244 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6245 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6246 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; }
6247 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; }
6248 /**
6249 * @typedef {import('elementor/assets/dev/js/editor/container/container')} Container
6250 */
6251
6252 var PREFIX = 'e-ai-preview-container';
6253 var CLASS_HIDDEN = PREFIX + '--hidden';
6254 var CLASS_IDLE = PREFIX + '--idle';
6255
6256 /**
6257 * @param {Container} parentContainer
6258 * @param {{}} containerOptions
6259 * @return {{init, setContent, reset, destroy}}
6260 */
6261
6262 function createPreviewContainer(parentContainer) {
6263 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6264 var createdContainers = new Map();
6265 var idleContainer = createIdleContainer(parentContainer, containerOptions);
6266 function init() {
6267 showContainer(idleContainer);
6268 }
6269 function getAllContainers() {
6270 return [].concat((0, _toConsumableArray2.default)(createdContainers.values()), [idleContainer]);
6271 }
6272 function reset() {
6273 deleteContainers((0, _toConsumableArray2.default)(createdContainers.values()));
6274 createdContainers.clear();
6275 showContainer(idleContainer);
6276 }
6277 function setContent(template) {
6278 if (!template) {
6279 return;
6280 }
6281 hideContainers(getAllContainers());
6282 if (!createdContainers.has(template)) {
6283 var newContainer = createContainer(parentContainer, template, containerOptions);
6284 createdContainers.set(template, newContainer);
6285 }
6286 showContainer(createdContainers.get(template));
6287 }
6288 function destroy() {
6289 deleteContainers(getAllContainers());
6290 createdContainers.clear();
6291 }
6292 return {
6293 init: init,
6294 reset: reset,
6295 setContent: setContent,
6296 destroy: destroy
6297 };
6298 }
6299
6300 /**
6301 * @param {Container} parentContainer
6302 * @param {{}} model
6303 * @param {{}} options
6304 * @return {*}
6305 */
6306 function createContainer(parentContainer, model) {
6307 var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6308 (0, _history.toggleHistory)(false);
6309 var container = $e.run('document/elements/create', {
6310 container: parentContainer,
6311 model: _objectSpread(_objectSpread({}, model), {}, {
6312 id: "".concat(PREFIX, "-").concat(elementorCommon.helpers.getUniqueId().toString())
6313 }),
6314 options: _objectSpread(_objectSpread({}, options), {}, {
6315 edit: false
6316 })
6317 });
6318 (0, _history.toggleHistory)(true);
6319 container.view.$el.addClass(CLASS_HIDDEN);
6320 return container;
6321 }
6322
6323 /**
6324 * @param {Container} parentContainer
6325 * @param {{}} containerOptions
6326 * @return {*}
6327 */
6328 function createIdleContainer(parentContainer) {
6329 var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6330 // Create an empty container that'll be used of UI purposes.
6331 var container = createContainer(parentContainer, {
6332 elType: 'container'
6333 }, containerOptions);
6334 container.view.$el.addClass(CLASS_IDLE);
6335 return container;
6336 }
6337 function hideContainers(containers) {
6338 containers.forEach(function (container) {
6339 container.view.$el.addClass(CLASS_HIDDEN);
6340 });
6341 }
6342 function showContainer(container) {
6343 container.view.$el.removeClass(CLASS_HIDDEN);
6344
6345 // Delay the scroll to avoid UI jumps when toggling between containers.
6346 setTimeout(function () {
6347 container.view.$el[0].scrollIntoView({
6348 behavior: 'smooth',
6349 block: 'start'
6350 });
6351 });
6352 }
6353 function deleteContainers(containers) {
6354 (0, _history.toggleHistory)(false);
6355 $e.run('document/elements/delete', {
6356 containers: containers
6357 });
6358 (0, _history.toggleHistory)(true);
6359 }
6360
6361 /***/ }),
6362
6363 /***/ "../modules/ai/assets/js/editor/utils/screenshot.js":
6364 /*!**********************************************************!*\
6365 !*** ../modules/ai/assets/js/editor/utils/screenshot.js ***!
6366 \**********************************************************/
6367 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6368
6369 "use strict";
6370
6371
6372 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6373 Object.defineProperty(exports, "__esModule", ({
6374 value: true
6375 }));
6376 exports.takeScreenshot = void 0;
6377 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6378 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6379 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6380 var _htmlToImage = __webpack_require__(/*! html-to-image */ "../node_modules/html-to-image/es/index.js");
6381 var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6382 var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6383 var takeScreenshot = /*#__PURE__*/function () {
6384 var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(template) {
6385 var hiddenWrapper, container, screenshot;
6386 return _regenerator.default.wrap(function _callee$(_context) {
6387 while (1) switch (_context.prev = _context.next) {
6388 case 0:
6389 if (template) {
6390 _context.next = 2;
6391 break;
6392 }
6393 return _context.abrupt("return", '');
6394 case 2:
6395 // Disable history so the Editor won't show our hidden container as a user action.
6396 (0, _history.toggleHistory)(false);
6397 hiddenWrapper = createHiddenWrapper();
6398 container = createContainer(template);
6399 wrapContainer(container, hiddenWrapper);
6400 elementor.getPreviewView().$childViewContainer[0].appendChild(hiddenWrapper);
6401
6402 // Wait for the container to render.
6403 _context.next = 9;
6404 return waitForContainer(container.id);
6405 case 9:
6406 if (!template.elements.length) {
6407 _context.next = 12;
6408 break;
6409 }
6410 _context.next = 12;
6411 return Promise.all(template.elements.map(function (child) {
6412 return waitForContainer(child.id);
6413 }));
6414 case 12:
6415 _context.prev = 12;
6416 _context.next = 15;
6417 return screenshotNode(container.view.$el[0]);
6418 case 15:
6419 screenshot = _context.sent;
6420 _context.next = 21;
6421 break;
6422 case 18:
6423 _context.prev = 18;
6424 _context.t0 = _context["catch"](12);
6425 // Return an empty image url if the screenshot failed.
6426 screenshot = '';
6427 case 21:
6428 deleteContainer(container);
6429 hiddenWrapper.remove();
6430 (0, _history.toggleHistory)(true);
6431 return _context.abrupt("return", screenshot);
6432 case 25:
6433 case "end":
6434 return _context.stop();
6435 }
6436 }, _callee, null, [[12, 18]]);
6437 }));
6438 return function takeScreenshot(_x) {
6439 return _ref.apply(this, arguments);
6440 };
6441 }();
6442 exports.takeScreenshot = takeScreenshot;
6443 function screenshotNode(node) {
6444 return toWebp(node, {
6445 quality: 0.01,
6446 // Transparent 1x1 pixel.
6447 imagePlaceholder: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII='
6448 });
6449 }
6450 function toWebp(_x2) {
6451 return _toWebp.apply(this, arguments);
6452 }
6453 function _toWebp() {
6454 _toWebp = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(node) {
6455 var _options$quality;
6456 var options,
6457 canvas,
6458 _args3 = arguments;
6459 return _regenerator.default.wrap(function _callee3$(_context3) {
6460 while (1) switch (_context3.prev = _context3.next) {
6461 case 0:
6462 options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
6463 _context3.next = 3;
6464 return (0, _htmlToImage.toCanvas)(node, options);
6465 case 3:
6466 canvas = _context3.sent;
6467 return _context3.abrupt("return", canvas.toDataURL('image/webp', (_options$quality = options.quality) !== null && _options$quality !== void 0 ? _options$quality : 1));
6468 case 5:
6469 case "end":
6470 return _context3.stop();
6471 }
6472 }, _callee3);
6473 }));
6474 return _toWebp.apply(this, arguments);
6475 }
6476 function createHiddenWrapper() {
6477 var wrapper = document.createElement('div');
6478 wrapper.style.position = 'fixed';
6479 wrapper.style.opacity = '0';
6480 wrapper.style.inset = '0';
6481 return wrapper;
6482 }
6483 function createContainer(template) {
6484 var model = (0, _requestsIds.generateIds)(template);
6485
6486 // Set a custom ID, so it can be used later on in the backend.
6487 model.id = "e-ai-screenshot-container-".concat(model.id);
6488 return $e.run('document/elements/create', {
6489 container: elementor.getPreviewContainer(),
6490 model: model,
6491 options: {
6492 edit: false
6493 }
6494 });
6495 }
6496 function deleteContainer(container) {
6497 return $e.run('document/elements/delete', {
6498 container: container
6499 });
6500 }
6501 function waitForContainer(id) {
6502 var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
6503 var timeoutPromise = sleep(timeout);
6504 var waitPromise = new Promise(function (resolve) {
6505 elementorFrontend.hooks.addAction('frontend/element_ready/global', /*#__PURE__*/function () {
6506 var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2($element) {
6507 var images;
6508 return _regenerator.default.wrap(function _callee2$(_context2) {
6509 while (1) switch (_context2.prev = _context2.next) {
6510 case 0:
6511 if (!($element.data('id') === id)) {
6512 _context2.next = 5;
6513 break;
6514 }
6515 images = (0, _toConsumableArray2.default)($element[0].querySelectorAll('img')); // Wait for all images to load.
6516 _context2.next = 4;
6517 return Promise.all(images.map(waitForImage));
6518 case 4:
6519 resolve();
6520 case 5:
6521 case "end":
6522 return _context2.stop();
6523 }
6524 }, _callee2);
6525 }));
6526 return function (_x3) {
6527 return _ref2.apply(this, arguments);
6528 };
6529 }());
6530 });
6531 return Promise.any([timeoutPromise, waitPromise]);
6532 }
6533 function waitForImage(image) {
6534 if (image.complete) {
6535 return Promise.resolve();
6536 }
6537 return new Promise(function (resolve) {
6538 image.addEventListener('load', resolve);
6539 image.addEventListener('error', function () {
6540 // Remove the image to make sure it won't break the screenshot.
6541 image.remove();
6542 resolve();
6543 });
6544 });
6545 }
6546 function sleep(ms) {
6547 return new Promise(function (resolve) {
6548 return setTimeout(resolve, ms);
6549 });
6550 }
6551 function wrapContainer(container, wrapper) {
6552 var el = container.view.$el[0];
6553 el.parentNode.insertBefore(wrapper, el);
6554 wrapper.appendChild(el);
6555 }
6556
6557 /***/ }),
6558
6559 /***/ "../node_modules/clsx/dist/clsx.m.js":
6560 /*!*******************************************!*\
6561 !*** ../node_modules/clsx/dist/clsx.m.js ***!
6562 \*******************************************/
6563 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6564
6565 "use strict";
6566 __webpack_require__.r(__webpack_exports__);
6567 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6568 /* harmony export */ clsx: () => (/* binding */ clsx),
6569 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
6570 /* harmony export */ });
6571 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);
6572
6573 /***/ }),
6574
6575 /***/ "../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js":
6576 /*!***********************************************************************************!*\
6577 !*** ../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js ***!
6578 \***********************************************************************************/
6579 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6580
6581 "use strict";
6582
6583
6584 var reactIs = __webpack_require__(/*! react-is */ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js");
6585
6586 /**
6587 * Copyright 2015, Yahoo! Inc.
6588 * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
6589 */
6590 var REACT_STATICS = {
6591 childContextTypes: true,
6592 contextType: true,
6593 contextTypes: true,
6594 defaultProps: true,
6595 displayName: true,
6596 getDefaultProps: true,
6597 getDerivedStateFromError: true,
6598 getDerivedStateFromProps: true,
6599 mixins: true,
6600 propTypes: true,
6601 type: true
6602 };
6603 var KNOWN_STATICS = {
6604 name: true,
6605 length: true,
6606 prototype: true,
6607 caller: true,
6608 callee: true,
6609 arguments: true,
6610 arity: true
6611 };
6612 var FORWARD_REF_STATICS = {
6613 '$$typeof': true,
6614 render: true,
6615 defaultProps: true,
6616 displayName: true,
6617 propTypes: true
6618 };
6619 var MEMO_STATICS = {
6620 '$$typeof': true,
6621 compare: true,
6622 defaultProps: true,
6623 displayName: true,
6624 propTypes: true,
6625 type: true
6626 };
6627 var TYPE_STATICS = {};
6628 TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
6629 TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
6630
6631 function getStatics(component) {
6632 // React v16.11 and below
6633 if (reactIs.isMemo(component)) {
6634 return MEMO_STATICS;
6635 } // React v16.12 and above
6636
6637
6638 return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
6639 }
6640
6641 var defineProperty = Object.defineProperty;
6642 var getOwnPropertyNames = Object.getOwnPropertyNames;
6643 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
6644 var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
6645 var getPrototypeOf = Object.getPrototypeOf;
6646 var objectPrototype = Object.prototype;
6647 function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
6648 if (typeof sourceComponent !== 'string') {
6649 // don't hoist over string (html) components
6650 if (objectPrototype) {
6651 var inheritedComponent = getPrototypeOf(sourceComponent);
6652
6653 if (inheritedComponent && inheritedComponent !== objectPrototype) {
6654 hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
6655 }
6656 }
6657
6658 var keys = getOwnPropertyNames(sourceComponent);
6659
6660 if (getOwnPropertySymbols) {
6661 keys = keys.concat(getOwnPropertySymbols(sourceComponent));
6662 }
6663
6664 var targetStatics = getStatics(targetComponent);
6665 var sourceStatics = getStatics(sourceComponent);
6666
6667 for (var i = 0; i < keys.length; ++i) {
6668 var key = keys[i];
6669
6670 if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
6671 var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
6672
6673 try {
6674 // Avoid failures from read-only properties
6675 defineProperty(targetComponent, key, descriptor);
6676 } catch (e) {}
6677 }
6678 }
6679 }
6680
6681 return targetComponent;
6682 }
6683
6684 module.exports = hoistNonReactStatics;
6685
6686
6687 /***/ }),
6688
6689 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js":
6690 /*!*************************************************************************************************!*\
6691 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js ***!
6692 \*************************************************************************************************/
6693 /***/ ((__unused_webpack_module, exports) => {
6694
6695 "use strict";
6696 /** @license React v16.13.1
6697 * react-is.development.js
6698 *
6699 * Copyright (c) Facebook, Inc. and its affiliates.
6700 *
6701 * This source code is licensed under the MIT license found in the
6702 * LICENSE file in the root directory of this source tree.
6703 */
6704
6705
6706
6707
6708
6709 if (true) {
6710 (function() {
6711 'use strict';
6712
6713 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
6714 // nor polyfill, then a plain number is used for performance.
6715 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
6716 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
6717 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
6718 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
6719 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
6720 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
6721 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
6722 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
6723 // (unstable) APIs that have been removed. Can we remove the symbols?
6724
6725 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
6726 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
6727 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
6728 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
6729 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
6730 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
6731 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
6732 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
6733 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
6734 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
6735 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
6736
6737 function isValidElementType(type) {
6738 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
6739 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);
6740 }
6741
6742 function typeOf(object) {
6743 if (typeof object === 'object' && object !== null) {
6744 var $$typeof = object.$$typeof;
6745
6746 switch ($$typeof) {
6747 case REACT_ELEMENT_TYPE:
6748 var type = object.type;
6749
6750 switch (type) {
6751 case REACT_ASYNC_MODE_TYPE:
6752 case REACT_CONCURRENT_MODE_TYPE:
6753 case REACT_FRAGMENT_TYPE:
6754 case REACT_PROFILER_TYPE:
6755 case REACT_STRICT_MODE_TYPE:
6756 case REACT_SUSPENSE_TYPE:
6757 return type;
6758
6759 default:
6760 var $$typeofType = type && type.$$typeof;
6761
6762 switch ($$typeofType) {
6763 case REACT_CONTEXT_TYPE:
6764 case REACT_FORWARD_REF_TYPE:
6765 case REACT_LAZY_TYPE:
6766 case REACT_MEMO_TYPE:
6767 case REACT_PROVIDER_TYPE:
6768 return $$typeofType;
6769
6770 default:
6771 return $$typeof;
6772 }
6773
6774 }
6775
6776 case REACT_PORTAL_TYPE:
6777 return $$typeof;
6778 }
6779 }
6780
6781 return undefined;
6782 } // AsyncMode is deprecated along with isAsyncMode
6783
6784 var AsyncMode = REACT_ASYNC_MODE_TYPE;
6785 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
6786 var ContextConsumer = REACT_CONTEXT_TYPE;
6787 var ContextProvider = REACT_PROVIDER_TYPE;
6788 var Element = REACT_ELEMENT_TYPE;
6789 var ForwardRef = REACT_FORWARD_REF_TYPE;
6790 var Fragment = REACT_FRAGMENT_TYPE;
6791 var Lazy = REACT_LAZY_TYPE;
6792 var Memo = REACT_MEMO_TYPE;
6793 var Portal = REACT_PORTAL_TYPE;
6794 var Profiler = REACT_PROFILER_TYPE;
6795 var StrictMode = REACT_STRICT_MODE_TYPE;
6796 var Suspense = REACT_SUSPENSE_TYPE;
6797 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
6798
6799 function isAsyncMode(object) {
6800 {
6801 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
6802 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
6803
6804 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.');
6805 }
6806 }
6807
6808 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
6809 }
6810 function isConcurrentMode(object) {
6811 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
6812 }
6813 function isContextConsumer(object) {
6814 return typeOf(object) === REACT_CONTEXT_TYPE;
6815 }
6816 function isContextProvider(object) {
6817 return typeOf(object) === REACT_PROVIDER_TYPE;
6818 }
6819 function isElement(object) {
6820 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
6821 }
6822 function isForwardRef(object) {
6823 return typeOf(object) === REACT_FORWARD_REF_TYPE;
6824 }
6825 function isFragment(object) {
6826 return typeOf(object) === REACT_FRAGMENT_TYPE;
6827 }
6828 function isLazy(object) {
6829 return typeOf(object) === REACT_LAZY_TYPE;
6830 }
6831 function isMemo(object) {
6832 return typeOf(object) === REACT_MEMO_TYPE;
6833 }
6834 function isPortal(object) {
6835 return typeOf(object) === REACT_PORTAL_TYPE;
6836 }
6837 function isProfiler(object) {
6838 return typeOf(object) === REACT_PROFILER_TYPE;
6839 }
6840 function isStrictMode(object) {
6841 return typeOf(object) === REACT_STRICT_MODE_TYPE;
6842 }
6843 function isSuspense(object) {
6844 return typeOf(object) === REACT_SUSPENSE_TYPE;
6845 }
6846
6847 exports.AsyncMode = AsyncMode;
6848 exports.ConcurrentMode = ConcurrentMode;
6849 exports.ContextConsumer = ContextConsumer;
6850 exports.ContextProvider = ContextProvider;
6851 exports.Element = Element;
6852 exports.ForwardRef = ForwardRef;
6853 exports.Fragment = Fragment;
6854 exports.Lazy = Lazy;
6855 exports.Memo = Memo;
6856 exports.Portal = Portal;
6857 exports.Profiler = Profiler;
6858 exports.StrictMode = StrictMode;
6859 exports.Suspense = Suspense;
6860 exports.isAsyncMode = isAsyncMode;
6861 exports.isConcurrentMode = isConcurrentMode;
6862 exports.isContextConsumer = isContextConsumer;
6863 exports.isContextProvider = isContextProvider;
6864 exports.isElement = isElement;
6865 exports.isForwardRef = isForwardRef;
6866 exports.isFragment = isFragment;
6867 exports.isLazy = isLazy;
6868 exports.isMemo = isMemo;
6869 exports.isPortal = isPortal;
6870 exports.isProfiler = isProfiler;
6871 exports.isStrictMode = isStrictMode;
6872 exports.isSuspense = isSuspense;
6873 exports.isValidElementType = isValidElementType;
6874 exports.typeOf = typeOf;
6875 })();
6876 }
6877
6878
6879 /***/ }),
6880
6881 /***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js":
6882 /*!******************************************************************************!*\
6883 !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/index.js ***!
6884 \******************************************************************************/
6885 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6886
6887 "use strict";
6888
6889
6890 if (false) {} else {
6891 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js");
6892 }
6893
6894
6895 /***/ }),
6896
6897 /***/ "../node_modules/html-to-image/es/apply-style.js":
6898 /*!*******************************************************!*\
6899 !*** ../node_modules/html-to-image/es/apply-style.js ***!
6900 \*******************************************************/
6901 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6902
6903 "use strict";
6904 __webpack_require__.r(__webpack_exports__);
6905 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6906 /* harmony export */ applyStyle: () => (/* binding */ applyStyle)
6907 /* harmony export */ });
6908 function applyStyle(node, options) {
6909 const { style } = node;
6910 if (options.backgroundColor) {
6911 style.backgroundColor = options.backgroundColor;
6912 }
6913 if (options.width) {
6914 style.width = `${options.width}px`;
6915 }
6916 if (options.height) {
6917 style.height = `${options.height}px`;
6918 }
6919 const manual = options.style;
6920 if (manual != null) {
6921 Object.keys(manual).forEach((key) => {
6922 style[key] = manual[key];
6923 });
6924 }
6925 return node;
6926 }
6927 //# sourceMappingURL=apply-style.js.map
6928
6929 /***/ }),
6930
6931 /***/ "../node_modules/html-to-image/es/clone-node.js":
6932 /*!******************************************************!*\
6933 !*** ../node_modules/html-to-image/es/clone-node.js ***!
6934 \******************************************************/
6935 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6936
6937 "use strict";
6938 __webpack_require__.r(__webpack_exports__);
6939 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
6940 /* harmony export */ cloneNode: () => (/* binding */ cloneNode)
6941 /* harmony export */ });
6942 /* harmony import */ var _clone_pseudos__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-pseudos */ "../node_modules/html-to-image/es/clone-pseudos.js");
6943 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
6944 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
6945 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
6946
6947
6948
6949
6950 async function cloneCanvasElement(canvas) {
6951 const dataURL = canvas.toDataURL();
6952 if (dataURL === 'data:,') {
6953 return canvas.cloneNode(false);
6954 }
6955 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
6956 }
6957 async function cloneVideoElement(video, options) {
6958 if (video.currentSrc) {
6959 const canvas = document.createElement('canvas');
6960 const ctx = canvas.getContext('2d');
6961 canvas.width = video.clientWidth;
6962 canvas.height = video.clientHeight;
6963 ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
6964 const dataURL = canvas.toDataURL();
6965 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
6966 }
6967 const poster = video.poster;
6968 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_2__.getMimeType)(poster);
6969 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_3__.resourceToDataURL)(poster, contentType, options);
6970 return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
6971 }
6972 async function cloneIFrameElement(iframe) {
6973 var _a;
6974 try {
6975 if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) {
6976 return (await cloneNode(iframe.contentDocument.body, {}, true));
6977 }
6978 }
6979 catch (_b) {
6980 // Failed to clone iframe
6981 }
6982 return iframe.cloneNode(false);
6983 }
6984 async function cloneSingleNode(node, options) {
6985 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLCanvasElement)) {
6986 return cloneCanvasElement(node);
6987 }
6988 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLVideoElement)) {
6989 return cloneVideoElement(node, options);
6990 }
6991 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLIFrameElement)) {
6992 return cloneIFrameElement(node);
6993 }
6994 return node.cloneNode(false);
6995 }
6996 const isSlotElement = (node) => node.tagName != null && node.tagName.toUpperCase() === 'SLOT';
6997 async function cloneChildren(nativeNode, clonedNode, options) {
6998 var _a, _b;
6999 let children = [];
7000 if (isSlotElement(nativeNode) && nativeNode.assignedNodes) {
7001 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.assignedNodes());
7002 }
7003 else if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7004 ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {
7005 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.contentDocument.body.childNodes);
7006 }
7007 else {
7008 children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);
7009 }
7010 if (children.length === 0 ||
7011 (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLVideoElement)) {
7012 return clonedNode;
7013 }
7014 await children.reduce((deferred, child) => deferred
7015 .then(() => cloneNode(child, options))
7016 .then((clonedChild) => {
7017 if (clonedChild) {
7018 clonedNode.appendChild(clonedChild);
7019 }
7020 }), Promise.resolve());
7021 return clonedNode;
7022 }
7023 function cloneCSSStyle(nativeNode, clonedNode) {
7024 const targetStyle = clonedNode.style;
7025 if (!targetStyle) {
7026 return;
7027 }
7028 const sourceStyle = window.getComputedStyle(nativeNode);
7029 if (sourceStyle.cssText) {
7030 targetStyle.cssText = sourceStyle.cssText;
7031 targetStyle.transformOrigin = sourceStyle.transformOrigin;
7032 }
7033 else {
7034 (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(sourceStyle).forEach((name) => {
7035 let value = sourceStyle.getPropertyValue(name);
7036 if (name === 'font-size' && value.endsWith('px')) {
7037 const reducedFont = Math.floor(parseFloat(value.substring(0, value.length - 2))) - 0.1;
7038 value = `${reducedFont}px`;
7039 }
7040 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7041 name === 'display' &&
7042 value === 'inline') {
7043 value = 'block';
7044 }
7045 if (name === 'd' && clonedNode.getAttribute('d')) {
7046 value = `path(${clonedNode.getAttribute('d')})`;
7047 }
7048 targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));
7049 });
7050 }
7051 }
7052 function cloneInputValue(nativeNode, clonedNode) {
7053 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLTextAreaElement)) {
7054 clonedNode.innerHTML = nativeNode.value;
7055 }
7056 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLInputElement)) {
7057 clonedNode.setAttribute('value', nativeNode.value);
7058 }
7059 }
7060 function cloneSelectValue(nativeNode, clonedNode) {
7061 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLSelectElement)) {
7062 const clonedSelect = clonedNode;
7063 const selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute('value'));
7064 if (selectedOption) {
7065 selectedOption.setAttribute('selected', '');
7066 }
7067 }
7068 }
7069 function decorate(nativeNode, clonedNode) {
7070 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7071 cloneCSSStyle(nativeNode, clonedNode);
7072 (0,_clone_pseudos__WEBPACK_IMPORTED_MODULE_0__.clonePseudoElements)(nativeNode, clonedNode);
7073 cloneInputValue(nativeNode, clonedNode);
7074 cloneSelectValue(nativeNode, clonedNode);
7075 }
7076 return clonedNode;
7077 }
7078 async function ensureSVGSymbols(clone, options) {
7079 const uses = clone.querySelectorAll ? clone.querySelectorAll('use') : [];
7080 if (uses.length === 0) {
7081 return clone;
7082 }
7083 const processedDefs = {};
7084 for (let i = 0; i < uses.length; i++) {
7085 const use = uses[i];
7086 const id = use.getAttribute('xlink:href');
7087 if (id) {
7088 const exist = clone.querySelector(id);
7089 const definition = document.querySelector(id);
7090 if (!exist && definition && !processedDefs[id]) {
7091 // eslint-disable-next-line no-await-in-loop
7092 processedDefs[id] = (await cloneNode(definition, options, true));
7093 }
7094 }
7095 }
7096 const nodes = Object.values(processedDefs);
7097 if (nodes.length) {
7098 const ns = 'http://www.w3.org/1999/xhtml';
7099 const svg = document.createElementNS(ns, 'svg');
7100 svg.setAttribute('xmlns', ns);
7101 svg.style.position = 'absolute';
7102 svg.style.width = '0';
7103 svg.style.height = '0';
7104 svg.style.overflow = 'hidden';
7105 svg.style.display = 'none';
7106 const defs = document.createElementNS(ns, 'defs');
7107 svg.appendChild(defs);
7108 for (let i = 0; i < nodes.length; i++) {
7109 defs.appendChild(nodes[i]);
7110 }
7111 clone.appendChild(svg);
7112 }
7113 return clone;
7114 }
7115 async function cloneNode(node, options, isRoot) {
7116 if (!isRoot && options.filter && !options.filter(node)) {
7117 return null;
7118 }
7119 return Promise.resolve(node)
7120 .then((clonedNode) => cloneSingleNode(clonedNode, options))
7121 .then((clonedNode) => cloneChildren(node, clonedNode, options))
7122 .then((clonedNode) => decorate(node, clonedNode))
7123 .then((clonedNode) => ensureSVGSymbols(clonedNode, options));
7124 }
7125 //# sourceMappingURL=clone-node.js.map
7126
7127 /***/ }),
7128
7129 /***/ "../node_modules/html-to-image/es/clone-pseudos.js":
7130 /*!*********************************************************!*\
7131 !*** ../node_modules/html-to-image/es/clone-pseudos.js ***!
7132 \*********************************************************/
7133 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7134
7135 "use strict";
7136 __webpack_require__.r(__webpack_exports__);
7137 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7138 /* harmony export */ clonePseudoElements: () => (/* binding */ clonePseudoElements)
7139 /* harmony export */ });
7140 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7141
7142 function formatCSSText(style) {
7143 const content = style.getPropertyValue('content');
7144 return `${style.cssText} content: '${content.replace(/'|"/g, '')}';`;
7145 }
7146 function formatCSSProperties(style) {
7147 return (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(style)
7148 .map((name) => {
7149 const value = style.getPropertyValue(name);
7150 const priority = style.getPropertyPriority(name);
7151 return `${name}: ${value}${priority ? ' !important' : ''};`;
7152 })
7153 .join(' ');
7154 }
7155 function getPseudoElementStyle(className, pseudo, style) {
7156 const selector = `.${className}:${pseudo}`;
7157 const cssText = style.cssText
7158 ? formatCSSText(style)
7159 : formatCSSProperties(style);
7160 return document.createTextNode(`${selector}{${cssText}}`);
7161 }
7162 function clonePseudoElement(nativeNode, clonedNode, pseudo) {
7163 const style = window.getComputedStyle(nativeNode, pseudo);
7164 const content = style.getPropertyValue('content');
7165 if (content === '' || content === 'none') {
7166 return;
7167 }
7168 const className = (0,_util__WEBPACK_IMPORTED_MODULE_0__.uuid)();
7169 try {
7170 clonedNode.className = `${clonedNode.className} ${className}`;
7171 }
7172 catch (err) {
7173 return;
7174 }
7175 const styleElement = document.createElement('style');
7176 styleElement.appendChild(getPseudoElementStyle(className, pseudo, style));
7177 clonedNode.appendChild(styleElement);
7178 }
7179 function clonePseudoElements(nativeNode, clonedNode) {
7180 clonePseudoElement(nativeNode, clonedNode, ':before');
7181 clonePseudoElement(nativeNode, clonedNode, ':after');
7182 }
7183 //# sourceMappingURL=clone-pseudos.js.map
7184
7185 /***/ }),
7186
7187 /***/ "../node_modules/html-to-image/es/dataurl.js":
7188 /*!***************************************************!*\
7189 !*** ../node_modules/html-to-image/es/dataurl.js ***!
7190 \***************************************************/
7191 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7192
7193 "use strict";
7194 __webpack_require__.r(__webpack_exports__);
7195 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7196 /* harmony export */ fetchAsDataURL: () => (/* binding */ fetchAsDataURL),
7197 /* harmony export */ isDataUrl: () => (/* binding */ isDataUrl),
7198 /* harmony export */ makeDataUrl: () => (/* binding */ makeDataUrl),
7199 /* harmony export */ resourceToDataURL: () => (/* binding */ resourceToDataURL)
7200 /* harmony export */ });
7201 function getContentFromDataUrl(dataURL) {
7202 return dataURL.split(/,/)[1];
7203 }
7204 function isDataUrl(url) {
7205 return url.search(/^(data:)/) !== -1;
7206 }
7207 function makeDataUrl(content, mimeType) {
7208 return `data:${mimeType};base64,${content}`;
7209 }
7210 async function fetchAsDataURL(url, init, process) {
7211 const res = await fetch(url, init);
7212 if (res.status === 404) {
7213 throw new Error(`Resource "${res.url}" not found`);
7214 }
7215 const blob = await res.blob();
7216 return new Promise((resolve, reject) => {
7217 const reader = new FileReader();
7218 reader.onerror = reject;
7219 reader.onloadend = () => {
7220 try {
7221 resolve(process({ res, result: reader.result }));
7222 }
7223 catch (error) {
7224 reject(error);
7225 }
7226 };
7227 reader.readAsDataURL(blob);
7228 });
7229 }
7230 const cache = {};
7231 function getCacheKey(url, contentType, includeQueryParams) {
7232 let key = url.replace(/\?.*/, '');
7233 if (includeQueryParams) {
7234 key = url;
7235 }
7236 // font resource
7237 if (/ttf|otf|eot|woff2?/i.test(key)) {
7238 key = key.replace(/.*\//, '');
7239 }
7240 return contentType ? `[${contentType}]${key}` : key;
7241 }
7242 async function resourceToDataURL(resourceUrl, contentType, options) {
7243 const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);
7244 if (cache[cacheKey] != null) {
7245 return cache[cacheKey];
7246 }
7247 // ref: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache
7248 if (options.cacheBust) {
7249 // eslint-disable-next-line no-param-reassign
7250 resourceUrl += (/\?/.test(resourceUrl) ? '&' : '?') + new Date().getTime();
7251 }
7252 let dataURL;
7253 try {
7254 const content = await fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result }) => {
7255 if (!contentType) {
7256 // eslint-disable-next-line no-param-reassign
7257 contentType = res.headers.get('Content-Type') || '';
7258 }
7259 return getContentFromDataUrl(result);
7260 });
7261 dataURL = makeDataUrl(content, contentType);
7262 }
7263 catch (error) {
7264 dataURL = options.imagePlaceholder || '';
7265 let msg = `Failed to fetch resource: ${resourceUrl}`;
7266 if (error) {
7267 msg = typeof error === 'string' ? error : error.message;
7268 }
7269 if (msg) {
7270 console.warn(msg);
7271 }
7272 }
7273 cache[cacheKey] = dataURL;
7274 return dataURL;
7275 }
7276 //# sourceMappingURL=dataurl.js.map
7277
7278 /***/ }),
7279
7280 /***/ "../node_modules/html-to-image/es/embed-images.js":
7281 /*!********************************************************!*\
7282 !*** ../node_modules/html-to-image/es/embed-images.js ***!
7283 \********************************************************/
7284 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7285
7286 "use strict";
7287 __webpack_require__.r(__webpack_exports__);
7288 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7289 /* harmony export */ embedImages: () => (/* binding */ embedImages)
7290 /* harmony export */ });
7291 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7292 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7293 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7294 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7295
7296
7297
7298
7299 async function embedProp(propName, node, options) {
7300 var _a;
7301 const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);
7302 if (propValue) {
7303 const cssString = await (0,_embed_resources__WEBPACK_IMPORTED_MODULE_0__.embedResources)(propValue, null, options);
7304 node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));
7305 return true;
7306 }
7307 return false;
7308 }
7309 async function embedBackground(clonedNode, options) {
7310 if (!(await embedProp('background', clonedNode, options))) {
7311 await embedProp('background-image', clonedNode, options);
7312 }
7313 if (!(await embedProp('mask', clonedNode, options))) {
7314 await embedProp('mask-image', clonedNode, options);
7315 }
7316 }
7317 async function embedImageNode(clonedNode, options) {
7318 const isImageElement = (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, HTMLImageElement);
7319 if (!(isImageElement && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.src)) &&
7320 !((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, SVGImageElement) &&
7321 !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.href.baseVal))) {
7322 return;
7323 }
7324 const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;
7325 const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(url, (0,_mimes__WEBPACK_IMPORTED_MODULE_3__.getMimeType)(url), options);
7326 await new Promise((resolve, reject) => {
7327 clonedNode.onload = resolve;
7328 clonedNode.onerror = reject;
7329 const image = clonedNode;
7330 if (image.decode) {
7331 image.decode = resolve;
7332 }
7333 if (image.loading === 'lazy') {
7334 image.loading = 'eager';
7335 }
7336 if (isImageElement) {
7337 clonedNode.srcset = '';
7338 clonedNode.src = dataURL;
7339 }
7340 else {
7341 clonedNode.href.baseVal = dataURL;
7342 }
7343 });
7344 }
7345 async function embedChildren(clonedNode, options) {
7346 const children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(clonedNode.childNodes);
7347 const deferreds = children.map((child) => embedImages(child, options));
7348 await Promise.all(deferreds).then(() => clonedNode);
7349 }
7350 async function embedImages(clonedNode, options) {
7351 if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7352 await embedBackground(clonedNode, options);
7353 await embedImageNode(clonedNode, options);
7354 await embedChildren(clonedNode, options);
7355 }
7356 }
7357 //# sourceMappingURL=embed-images.js.map
7358
7359 /***/ }),
7360
7361 /***/ "../node_modules/html-to-image/es/embed-resources.js":
7362 /*!***********************************************************!*\
7363 !*** ../node_modules/html-to-image/es/embed-resources.js ***!
7364 \***********************************************************/
7365 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7366
7367 "use strict";
7368 __webpack_require__.r(__webpack_exports__);
7369 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7370 /* harmony export */ embed: () => (/* binding */ embed),
7371 /* harmony export */ embedResources: () => (/* binding */ embedResources),
7372 /* harmony export */ parseURLs: () => (/* binding */ parseURLs),
7373 /* harmony export */ shouldEmbed: () => (/* binding */ shouldEmbed)
7374 /* harmony export */ });
7375 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7376 /* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7377 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7378
7379
7380
7381 const URL_REGEX = /url\((['"]?)([^'"]+?)\1\)/g;
7382 const URL_WITH_FORMAT_REGEX = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
7383 const FONT_SRC_REGEX = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
7384 function toRegex(url) {
7385 // eslint-disable-next-line no-useless-escape
7386 const escaped = url.replace(/([.*+?^${}()|\[\]\/\\])/g, '\\$1');
7387 return new RegExp(`(url\\(['"]?)(${escaped})(['"]?\\))`, 'g');
7388 }
7389 function parseURLs(cssText) {
7390 const urls = [];
7391 cssText.replace(URL_REGEX, (raw, quotation, url) => {
7392 urls.push(url);
7393 return raw;
7394 });
7395 return urls.filter((url) => !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(url));
7396 }
7397 async function embed(cssText, resourceURL, baseURL, options, getContentFromUrl) {
7398 try {
7399 const resolvedURL = baseURL ? (0,_util__WEBPACK_IMPORTED_MODULE_0__.resolveUrl)(resourceURL, baseURL) : resourceURL;
7400 const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_1__.getMimeType)(resourceURL);
7401 let dataURL;
7402 if (getContentFromUrl) {
7403 const content = await getContentFromUrl(resolvedURL);
7404 dataURL = (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.makeDataUrl)(content, contentType);
7405 }
7406 else {
7407 dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(resolvedURL, contentType, options);
7408 }
7409 return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);
7410 }
7411 catch (error) {
7412 // pass
7413 }
7414 return cssText;
7415 }
7416 function filterPreferredFontFormat(str, { preferredFontFormat }) {
7417 return !preferredFontFormat
7418 ? str
7419 : str.replace(FONT_SRC_REGEX, (match) => {
7420 // eslint-disable-next-line no-constant-condition
7421 while (true) {
7422 const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];
7423 if (!format) {
7424 return '';
7425 }
7426 if (format === preferredFontFormat) {
7427 return `src: ${src};`;
7428 }
7429 }
7430 });
7431 }
7432 function shouldEmbed(url) {
7433 return url.search(URL_REGEX) !== -1;
7434 }
7435 async function embedResources(cssText, baseUrl, options) {
7436 if (!shouldEmbed(cssText)) {
7437 return cssText;
7438 }
7439 const filteredCSSText = filterPreferredFontFormat(cssText, options);
7440 const urls = parseURLs(filteredCSSText);
7441 return urls.reduce((deferred, url) => deferred.then((css) => embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));
7442 }
7443 //# sourceMappingURL=embed-resources.js.map
7444
7445 /***/ }),
7446
7447 /***/ "../node_modules/html-to-image/es/embed-webfonts.js":
7448 /*!**********************************************************!*\
7449 !*** ../node_modules/html-to-image/es/embed-webfonts.js ***!
7450 \**********************************************************/
7451 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7452
7453 "use strict";
7454 __webpack_require__.r(__webpack_exports__);
7455 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7456 /* harmony export */ embedWebFonts: () => (/* binding */ embedWebFonts),
7457 /* harmony export */ getWebFontCSS: () => (/* binding */ getWebFontCSS)
7458 /* harmony export */ });
7459 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7460 /* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7461 /* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7462
7463
7464
7465 const cssFetchCache = {};
7466 async function fetchCSS(url) {
7467 let cache = cssFetchCache[url];
7468 if (cache != null) {
7469 return cache;
7470 }
7471 const res = await fetch(url);
7472 const cssText = await res.text();
7473 cache = { url, cssText };
7474 cssFetchCache[url] = cache;
7475 return cache;
7476 }
7477 async function embedFonts(data, options) {
7478 let cssText = data.cssText;
7479 const regexUrl = /url\(["']?([^"')]+)["']?\)/g;
7480 const fontLocs = cssText.match(/url\([^)]+\)/g) || [];
7481 const loadFonts = fontLocs.map(async (loc) => {
7482 let url = loc.replace(regexUrl, '$1');
7483 if (!url.startsWith('https://')) {
7484 url = new URL(url, data.url).href;
7485 }
7486 return (0,_dataurl__WEBPACK_IMPORTED_MODULE_1__.fetchAsDataURL)(url, options.fetchRequestInit, ({ result }) => {
7487 cssText = cssText.replace(loc, `url(${result})`);
7488 return [loc, result];
7489 });
7490 });
7491 return Promise.all(loadFonts).then(() => cssText);
7492 }
7493 function parseCSS(source) {
7494 if (source == null) {
7495 return [];
7496 }
7497 const result = [];
7498 const commentsRegex = /(\/\*[\s\S]*?\*\/)/gi;
7499 // strip out comments
7500 let cssText = source.replace(commentsRegex, '');
7501 // eslint-disable-next-line prefer-regex-literals
7502 const keyframesRegex = new RegExp('((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})', 'gi');
7503 // eslint-disable-next-line no-constant-condition
7504 while (true) {
7505 const matches = keyframesRegex.exec(cssText);
7506 if (matches === null) {
7507 break;
7508 }
7509 result.push(matches[0]);
7510 }
7511 cssText = cssText.replace(keyframesRegex, '');
7512 const importRegex = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi;
7513 // to match css & media queries together
7514 const combinedCSSRegex = '((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]' +
7515 '*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})';
7516 // unified regex
7517 const unifiedRegex = new RegExp(combinedCSSRegex, 'gi');
7518 // eslint-disable-next-line no-constant-condition
7519 while (true) {
7520 let matches = importRegex.exec(cssText);
7521 if (matches === null) {
7522 matches = unifiedRegex.exec(cssText);
7523 if (matches === null) {
7524 break;
7525 }
7526 else {
7527 importRegex.lastIndex = unifiedRegex.lastIndex;
7528 }
7529 }
7530 else {
7531 unifiedRegex.lastIndex = importRegex.lastIndex;
7532 }
7533 result.push(matches[0]);
7534 }
7535 return result;
7536 }
7537 async function getCSSRules(styleSheets, options) {
7538 const ret = [];
7539 const deferreds = [];
7540 // First loop inlines imports
7541 styleSheets.forEach((sheet) => {
7542 if ('cssRules' in sheet) {
7543 try {
7544 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item, index) => {
7545 if (item.type === CSSRule.IMPORT_RULE) {
7546 let importIndex = index + 1;
7547 const url = item.href;
7548 const deferred = fetchCSS(url)
7549 .then((metadata) => embedFonts(metadata, options))
7550 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7551 try {
7552 sheet.insertRule(rule, rule.startsWith('@import')
7553 ? (importIndex += 1)
7554 : sheet.cssRules.length);
7555 }
7556 catch (error) {
7557 console.error('Error inserting rule from remote css', {
7558 rule,
7559 error,
7560 });
7561 }
7562 }))
7563 .catch((e) => {
7564 console.error('Error loading remote css', e.toString());
7565 });
7566 deferreds.push(deferred);
7567 }
7568 });
7569 }
7570 catch (e) {
7571 const inline = styleSheets.find((a) => a.href == null) || document.styleSheets[0];
7572 if (sheet.href != null) {
7573 deferreds.push(fetchCSS(sheet.href)
7574 .then((metadata) => embedFonts(metadata, options))
7575 .then((cssText) => parseCSS(cssText).forEach((rule) => {
7576 inline.insertRule(rule, sheet.cssRules.length);
7577 }))
7578 .catch((err) => {
7579 console.error('Error loading remote stylesheet', err);
7580 }));
7581 }
7582 console.error('Error inlining remote css file', e);
7583 }
7584 }
7585 });
7586 return Promise.all(deferreds).then(() => {
7587 // Second loop parses rules
7588 styleSheets.forEach((sheet) => {
7589 if ('cssRules' in sheet) {
7590 try {
7591 (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item) => {
7592 ret.push(item);
7593 });
7594 }
7595 catch (e) {
7596 console.error(`Error while reading CSS rules from ${sheet.href}`, e);
7597 }
7598 }
7599 });
7600 return ret;
7601 });
7602 }
7603 function getWebFontRules(cssRules) {
7604 return cssRules
7605 .filter((rule) => rule.type === CSSRule.FONT_FACE_RULE)
7606 .filter((rule) => (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.shouldEmbed)(rule.style.getPropertyValue('src')));
7607 }
7608 async function parseWebFontRules(node, options) {
7609 if (node.ownerDocument == null) {
7610 throw new Error('Provided element is not within a Document');
7611 }
7612 const styleSheets = (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(node.ownerDocument.styleSheets);
7613 const cssRules = await getCSSRules(styleSheets, options);
7614 return getWebFontRules(cssRules);
7615 }
7616 async function getWebFontCSS(node, options) {
7617 const rules = await parseWebFontRules(node, options);
7618 const cssTexts = await Promise.all(rules.map((rule) => {
7619 const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;
7620 return (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.embedResources)(rule.cssText, baseUrl, options);
7621 }));
7622 return cssTexts.join('\n');
7623 }
7624 async function embedWebFonts(clonedNode, options) {
7625 const cssText = options.fontEmbedCSS != null
7626 ? options.fontEmbedCSS
7627 : options.skipFonts
7628 ? null
7629 : await getWebFontCSS(clonedNode, options);
7630 if (cssText) {
7631 const styleNode = document.createElement('style');
7632 const sytleContent = document.createTextNode(cssText);
7633 styleNode.appendChild(sytleContent);
7634 if (clonedNode.firstChild) {
7635 clonedNode.insertBefore(styleNode, clonedNode.firstChild);
7636 }
7637 else {
7638 clonedNode.appendChild(styleNode);
7639 }
7640 }
7641 }
7642 //# sourceMappingURL=embed-webfonts.js.map
7643
7644 /***/ }),
7645
7646 /***/ "../node_modules/html-to-image/es/index.js":
7647 /*!*************************************************!*\
7648 !*** ../node_modules/html-to-image/es/index.js ***!
7649 \*************************************************/
7650 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7651
7652 "use strict";
7653 __webpack_require__.r(__webpack_exports__);
7654 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7655 /* harmony export */ getFontEmbedCSS: () => (/* binding */ getFontEmbedCSS),
7656 /* harmony export */ toBlob: () => (/* binding */ toBlob),
7657 /* harmony export */ toCanvas: () => (/* binding */ toCanvas),
7658 /* harmony export */ toJpeg: () => (/* binding */ toJpeg),
7659 /* harmony export */ toPixelData: () => (/* binding */ toPixelData),
7660 /* harmony export */ toPng: () => (/* binding */ toPng),
7661 /* harmony export */ toSvg: () => (/* binding */ toSvg)
7662 /* harmony export */ });
7663 /* harmony import */ var _clone_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-node */ "../node_modules/html-to-image/es/clone-node.js");
7664 /* harmony import */ var _embed_images__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./embed-images */ "../node_modules/html-to-image/es/embed-images.js");
7665 /* harmony import */ var _apply_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apply-style */ "../node_modules/html-to-image/es/apply-style.js");
7666 /* harmony import */ var _embed_webfonts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./embed-webfonts */ "../node_modules/html-to-image/es/embed-webfonts.js");
7667 /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7668
7669
7670
7671
7672
7673 async function toSvg(node, options = {}) {
7674 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7675 const clonedNode = (await (0,_clone_node__WEBPACK_IMPORTED_MODULE_0__.cloneNode)(node, options, true));
7676 await (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.embedWebFonts)(clonedNode, options);
7677 await (0,_embed_images__WEBPACK_IMPORTED_MODULE_1__.embedImages)(clonedNode, options);
7678 (0,_apply_style__WEBPACK_IMPORTED_MODULE_2__.applyStyle)(clonedNode, options);
7679 const datauri = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.nodeToDataURL)(clonedNode, width, height);
7680 return datauri;
7681 }
7682 async function toCanvas(node, options = {}) {
7683 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7684 const svg = await toSvg(node, options);
7685 const img = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.createImage)(svg);
7686 const canvas = document.createElement('canvas');
7687 const context = canvas.getContext('2d');
7688 const ratio = options.pixelRatio || (0,_util__WEBPACK_IMPORTED_MODULE_4__.getPixelRatio)();
7689 const canvasWidth = options.canvasWidth || width;
7690 const canvasHeight = options.canvasHeight || height;
7691 canvas.width = canvasWidth * ratio;
7692 canvas.height = canvasHeight * ratio;
7693 if (!options.skipAutoScale) {
7694 (0,_util__WEBPACK_IMPORTED_MODULE_4__.checkCanvasDimensions)(canvas);
7695 }
7696 canvas.style.width = `${canvasWidth}`;
7697 canvas.style.height = `${canvasHeight}`;
7698 if (options.backgroundColor) {
7699 context.fillStyle = options.backgroundColor;
7700 context.fillRect(0, 0, canvas.width, canvas.height);
7701 }
7702 context.drawImage(img, 0, 0, canvas.width, canvas.height);
7703 return canvas;
7704 }
7705 async function toPixelData(node, options = {}) {
7706 const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7707 const canvas = await toCanvas(node, options);
7708 const ctx = canvas.getContext('2d');
7709 return ctx.getImageData(0, 0, width, height).data;
7710 }
7711 async function toPng(node, options = {}) {
7712 const canvas = await toCanvas(node, options);
7713 return canvas.toDataURL();
7714 }
7715 async function toJpeg(node, options = {}) {
7716 const canvas = await toCanvas(node, options);
7717 return canvas.toDataURL('image/jpeg', options.quality || 1);
7718 }
7719 async function toBlob(node, options = {}) {
7720 const canvas = await toCanvas(node, options);
7721 const blob = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.canvasToBlob)(canvas);
7722 return blob;
7723 }
7724 async function getFontEmbedCSS(node, options = {}) {
7725 return (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.getWebFontCSS)(node, options);
7726 }
7727 //# sourceMappingURL=index.js.map
7728
7729 /***/ }),
7730
7731 /***/ "../node_modules/html-to-image/es/mimes.js":
7732 /*!*************************************************!*\
7733 !*** ../node_modules/html-to-image/es/mimes.js ***!
7734 \*************************************************/
7735 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7736
7737 "use strict";
7738 __webpack_require__.r(__webpack_exports__);
7739 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7740 /* harmony export */ getMimeType: () => (/* binding */ getMimeType)
7741 /* harmony export */ });
7742 const WOFF = 'application/font-woff';
7743 const JPEG = 'image/jpeg';
7744 const mimes = {
7745 woff: WOFF,
7746 woff2: WOFF,
7747 ttf: 'application/font-truetype',
7748 eot: 'application/vnd.ms-fontobject',
7749 png: 'image/png',
7750 jpg: JPEG,
7751 jpeg: JPEG,
7752 gif: 'image/gif',
7753 tiff: 'image/tiff',
7754 svg: 'image/svg+xml',
7755 webp: 'image/webp',
7756 };
7757 function getExtension(url) {
7758 const match = /\.([^./]*?)$/g.exec(url);
7759 return match ? match[1] : '';
7760 }
7761 function getMimeType(url) {
7762 const extension = getExtension(url).toLowerCase();
7763 return mimes[extension] || '';
7764 }
7765 //# sourceMappingURL=mimes.js.map
7766
7767 /***/ }),
7768
7769 /***/ "../node_modules/html-to-image/es/util.js":
7770 /*!************************************************!*\
7771 !*** ../node_modules/html-to-image/es/util.js ***!
7772 \************************************************/
7773 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7774
7775 "use strict";
7776 __webpack_require__.r(__webpack_exports__);
7777 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7778 /* harmony export */ canvasToBlob: () => (/* binding */ canvasToBlob),
7779 /* harmony export */ checkCanvasDimensions: () => (/* binding */ checkCanvasDimensions),
7780 /* harmony export */ createImage: () => (/* binding */ createImage),
7781 /* harmony export */ delay: () => (/* binding */ delay),
7782 /* harmony export */ getImageSize: () => (/* binding */ getImageSize),
7783 /* harmony export */ getPixelRatio: () => (/* binding */ getPixelRatio),
7784 /* harmony export */ isInstanceOfElement: () => (/* binding */ isInstanceOfElement),
7785 /* harmony export */ nodeToDataURL: () => (/* binding */ nodeToDataURL),
7786 /* harmony export */ resolveUrl: () => (/* binding */ resolveUrl),
7787 /* harmony export */ svgToDataURL: () => (/* binding */ svgToDataURL),
7788 /* harmony export */ toArray: () => (/* binding */ toArray),
7789 /* harmony export */ uuid: () => (/* binding */ uuid)
7790 /* harmony export */ });
7791 function resolveUrl(url, baseUrl) {
7792 // url is absolute already
7793 if (url.match(/^[a-z]+:\/\//i)) {
7794 return url;
7795 }
7796 // url is absolute already, without protocol
7797 if (url.match(/^\/\//)) {
7798 return window.location.protocol + url;
7799 }
7800 // dataURI, mailto:, tel:, etc.
7801 if (url.match(/^[a-z]+:/i)) {
7802 return url;
7803 }
7804 const doc = document.implementation.createHTMLDocument();
7805 const base = doc.createElement('base');
7806 const a = doc.createElement('a');
7807 doc.head.appendChild(base);
7808 doc.body.appendChild(a);
7809 if (baseUrl) {
7810 base.href = baseUrl;
7811 }
7812 a.href = url;
7813 return a.href;
7814 }
7815 const uuid = (() => {
7816 // generate uuid for className of pseudo elements.
7817 // We should not use GUIDs, otherwise pseudo elements sometimes cannot be captured.
7818 let counter = 0;
7819 // ref: http://stackoverflow.com/a/6248722/2519373
7820 const random = () =>
7821 // eslint-disable-next-line no-bitwise
7822 `0000${((Math.random() * 36 ** 4) << 0).toString(36)}`.slice(-4);
7823 return () => {
7824 counter += 1;
7825 return `u${random()}${counter}`;
7826 };
7827 })();
7828 function delay(ms) {
7829 return (args) => new Promise((resolve) => {
7830 setTimeout(() => resolve(args), ms);
7831 });
7832 }
7833 function toArray(arrayLike) {
7834 const arr = [];
7835 for (let i = 0, l = arrayLike.length; i < l; i++) {
7836 arr.push(arrayLike[i]);
7837 }
7838 return arr;
7839 }
7840 function px(node, styleProperty) {
7841 const win = node.ownerDocument.defaultView || window;
7842 const val = win.getComputedStyle(node).getPropertyValue(styleProperty);
7843 return val ? parseFloat(val.replace('px', '')) : 0;
7844 }
7845 function getNodeWidth(node) {
7846 const leftBorder = px(node, 'border-left-width');
7847 const rightBorder = px(node, 'border-right-width');
7848 return node.clientWidth + leftBorder + rightBorder;
7849 }
7850 function getNodeHeight(node) {
7851 const topBorder = px(node, 'border-top-width');
7852 const bottomBorder = px(node, 'border-bottom-width');
7853 return node.clientHeight + topBorder + bottomBorder;
7854 }
7855 function getImageSize(targetNode, options = {}) {
7856 const width = options.width || getNodeWidth(targetNode);
7857 const height = options.height || getNodeHeight(targetNode);
7858 return { width, height };
7859 }
7860 function getPixelRatio() {
7861 let ratio;
7862 let FINAL_PROCESS;
7863 try {
7864 FINAL_PROCESS = process;
7865 }
7866 catch (e) {
7867 // pass
7868 }
7869 const val = FINAL_PROCESS && FINAL_PROCESS.env
7870 ? FINAL_PROCESS.env.devicePixelRatio
7871 : null;
7872 if (val) {
7873 ratio = parseInt(val, 10);
7874 if (Number.isNaN(ratio)) {
7875 ratio = 1;
7876 }
7877 }
7878 return ratio || window.devicePixelRatio || 1;
7879 }
7880 // @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas#maximum_canvas_size
7881 const canvasDimensionLimit = 16384;
7882 function checkCanvasDimensions(canvas) {
7883 if (canvas.width > canvasDimensionLimit ||
7884 canvas.height > canvasDimensionLimit) {
7885 if (canvas.width > canvasDimensionLimit &&
7886 canvas.height > canvasDimensionLimit) {
7887 if (canvas.width > canvas.height) {
7888 canvas.height *= canvasDimensionLimit / canvas.width;
7889 canvas.width = canvasDimensionLimit;
7890 }
7891 else {
7892 canvas.width *= canvasDimensionLimit / canvas.height;
7893 canvas.height = canvasDimensionLimit;
7894 }
7895 }
7896 else if (canvas.width > canvasDimensionLimit) {
7897 canvas.height *= canvasDimensionLimit / canvas.width;
7898 canvas.width = canvasDimensionLimit;
7899 }
7900 else {
7901 canvas.width *= canvasDimensionLimit / canvas.height;
7902 canvas.height = canvasDimensionLimit;
7903 }
7904 }
7905 }
7906 function canvasToBlob(canvas, options = {}) {
7907 if (canvas.toBlob) {
7908 return new Promise((resolve) => {
7909 canvas.toBlob(resolve, options.type ? options.type : 'image/png', options.quality ? options.quality : 1);
7910 });
7911 }
7912 return new Promise((resolve) => {
7913 const binaryString = window.atob(canvas
7914 .toDataURL(options.type ? options.type : undefined, options.quality ? options.quality : undefined)
7915 .split(',')[1]);
7916 const len = binaryString.length;
7917 const binaryArray = new Uint8Array(len);
7918 for (let i = 0; i < len; i += 1) {
7919 binaryArray[i] = binaryString.charCodeAt(i);
7920 }
7921 resolve(new Blob([binaryArray], {
7922 type: options.type ? options.type : 'image/png',
7923 }));
7924 });
7925 }
7926 function createImage(url) {
7927 return new Promise((resolve, reject) => {
7928 const img = new Image();
7929 img.decode = () => resolve(img);
7930 img.onload = () => resolve(img);
7931 img.onerror = reject;
7932 img.crossOrigin = 'anonymous';
7933 img.decoding = 'async';
7934 img.src = url;
7935 });
7936 }
7937 async function svgToDataURL(svg) {
7938 return Promise.resolve()
7939 .then(() => new XMLSerializer().serializeToString(svg))
7940 .then(encodeURIComponent)
7941 .then((html) => `data:image/svg+xml;charset=utf-8,${html}`);
7942 }
7943 async function nodeToDataURL(node, width, height) {
7944 const xmlns = 'http://www.w3.org/2000/svg';
7945 const svg = document.createElementNS(xmlns, 'svg');
7946 const foreignObject = document.createElementNS(xmlns, 'foreignObject');
7947 svg.setAttribute('width', `${width}`);
7948 svg.setAttribute('height', `${height}`);
7949 svg.setAttribute('viewBox', `0 0 ${width} ${height}`);
7950 foreignObject.setAttribute('width', '100%');
7951 foreignObject.setAttribute('height', '100%');
7952 foreignObject.setAttribute('x', '0');
7953 foreignObject.setAttribute('y', '0');
7954 foreignObject.setAttribute('externalResourcesRequired', 'true');
7955 svg.appendChild(foreignObject);
7956 foreignObject.appendChild(node);
7957 return svgToDataURL(svg);
7958 }
7959 const isInstanceOfElement = (node, instance) => {
7960 if (node instanceof instance)
7961 return true;
7962 const nodePrototype = Object.getPrototypeOf(node);
7963 if (nodePrototype === null)
7964 return false;
7965 return (nodePrototype.constructor.name === instance.name ||
7966 isInstanceOfElement(nodePrototype, instance));
7967 };
7968 //# sourceMappingURL=util.js.map
7969
7970 /***/ }),
7971
7972 /***/ "../node_modules/object-assign/index.js":
7973 /*!**********************************************!*\
7974 !*** ../node_modules/object-assign/index.js ***!
7975 \**********************************************/
7976 /***/ ((module) => {
7977
7978 "use strict";
7979 /*
7980 object-assign
7981 (c) Sindre Sorhus
7982 @license MIT
7983 */
7984
7985
7986 /* eslint-disable no-unused-vars */
7987 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
7988 var hasOwnProperty = Object.prototype.hasOwnProperty;
7989 var propIsEnumerable = Object.prototype.propertyIsEnumerable;
7990
7991 function toObject(val) {
7992 if (val === null || val === undefined) {
7993 throw new TypeError('Object.assign cannot be called with null or undefined');
7994 }
7995
7996 return Object(val);
7997 }
7998
7999 function shouldUseNative() {
8000 try {
8001 if (!Object.assign) {
8002 return false;
8003 }
8004
8005 // Detect buggy property enumeration order in older V8 versions.
8006
8007 // https://bugs.chromium.org/p/v8/issues/detail?id=4118
8008 var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
8009 test1[5] = 'de';
8010 if (Object.getOwnPropertyNames(test1)[0] === '5') {
8011 return false;
8012 }
8013
8014 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8015 var test2 = {};
8016 for (var i = 0; i < 10; i++) {
8017 test2['_' + String.fromCharCode(i)] = i;
8018 }
8019 var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
8020 return test2[n];
8021 });
8022 if (order2.join('') !== '0123456789') {
8023 return false;
8024 }
8025
8026 // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8027 var test3 = {};
8028 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
8029 test3[letter] = letter;
8030 });
8031 if (Object.keys(Object.assign({}, test3)).join('') !==
8032 'abcdefghijklmnopqrst') {
8033 return false;
8034 }
8035
8036 return true;
8037 } catch (err) {
8038 // We don't expect any of the above to throw, but better to be safe.
8039 return false;
8040 }
8041 }
8042
8043 module.exports = shouldUseNative() ? Object.assign : function (target, source) {
8044 var from;
8045 var to = toObject(target);
8046 var symbols;
8047
8048 for (var s = 1; s < arguments.length; s++) {
8049 from = Object(arguments[s]);
8050
8051 for (var key in from) {
8052 if (hasOwnProperty.call(from, key)) {
8053 to[key] = from[key];
8054 }
8055 }
8056
8057 if (getOwnPropertySymbols) {
8058 symbols = getOwnPropertySymbols(from);
8059 for (var i = 0; i < symbols.length; i++) {
8060 if (propIsEnumerable.call(from, symbols[i])) {
8061 to[symbols[i]] = from[symbols[i]];
8062 }
8063 }
8064 }
8065 }
8066
8067 return to;
8068 };
8069
8070
8071 /***/ }),
8072
8073 /***/ "../node_modules/prop-types/checkPropTypes.js":
8074 /*!****************************************************!*\
8075 !*** ../node_modules/prop-types/checkPropTypes.js ***!
8076 \****************************************************/
8077 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8078
8079 "use strict";
8080 /**
8081 * Copyright (c) 2013-present, Facebook, Inc.
8082 *
8083 * This source code is licensed under the MIT license found in the
8084 * LICENSE file in the root directory of this source tree.
8085 */
8086
8087
8088
8089 var printWarning = function() {};
8090
8091 if (true) {
8092 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8093 var loggedTypeFailures = {};
8094 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8095
8096 printWarning = function(text) {
8097 var message = 'Warning: ' + text;
8098 if (typeof console !== 'undefined') {
8099 console.error(message);
8100 }
8101 try {
8102 // --- Welcome to debugging React ---
8103 // This error was thrown as a convenience so that you can use this stack
8104 // to find the callsite that caused this warning to fire.
8105 throw new Error(message);
8106 } catch (x) { /**/ }
8107 };
8108 }
8109
8110 /**
8111 * Assert that the values match with the type specs.
8112 * Error messages are memorized and will only be shown once.
8113 *
8114 * @param {object} typeSpecs Map of name to a ReactPropType
8115 * @param {object} values Runtime values that need to be type-checked
8116 * @param {string} location e.g. "prop", "context", "child context"
8117 * @param {string} componentName Name of the component for error messages.
8118 * @param {?Function} getStack Returns the component stack.
8119 * @private
8120 */
8121 function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
8122 if (true) {
8123 for (var typeSpecName in typeSpecs) {
8124 if (has(typeSpecs, typeSpecName)) {
8125 var error;
8126 // Prop type validation may throw. In case they do, we don't want to
8127 // fail the render phase where it didn't fail before. So we log it.
8128 // After these have been cleaned up, we'll let them throw.
8129 try {
8130 // This is intentionally an invariant that gets caught. It's the same
8131 // behavior as without this statement except with a better message.
8132 if (typeof typeSpecs[typeSpecName] !== 'function') {
8133 var err = Error(
8134 (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
8135 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
8136 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
8137 );
8138 err.name = 'Invariant Violation';
8139 throw err;
8140 }
8141 error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
8142 } catch (ex) {
8143 error = ex;
8144 }
8145 if (error && !(error instanceof Error)) {
8146 printWarning(
8147 (componentName || 'React class') + ': type specification of ' +
8148 location + ' `' + typeSpecName + '` is invalid; the type checker ' +
8149 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
8150 'You may have forgotten to pass an argument to the type checker ' +
8151 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
8152 'shape all require an argument).'
8153 );
8154 }
8155 if (error instanceof Error && !(error.message in loggedTypeFailures)) {
8156 // Only monitor this failure once because there tends to be a lot of the
8157 // same error.
8158 loggedTypeFailures[error.message] = true;
8159
8160 var stack = getStack ? getStack() : '';
8161
8162 printWarning(
8163 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
8164 );
8165 }
8166 }
8167 }
8168 }
8169 }
8170
8171 /**
8172 * Resets warning cache when testing.
8173 *
8174 * @private
8175 */
8176 checkPropTypes.resetWarningCache = function() {
8177 if (true) {
8178 loggedTypeFailures = {};
8179 }
8180 }
8181
8182 module.exports = checkPropTypes;
8183
8184
8185 /***/ }),
8186
8187 /***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
8188 /*!*************************************************************!*\
8189 !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
8190 \*************************************************************/
8191 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8192
8193 "use strict";
8194 /**
8195 * Copyright (c) 2013-present, Facebook, Inc.
8196 *
8197 * This source code is licensed under the MIT license found in the
8198 * LICENSE file in the root directory of this source tree.
8199 */
8200
8201
8202
8203 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8204 var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
8205
8206 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8207 var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8208 var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
8209
8210 var printWarning = function() {};
8211
8212 if (true) {
8213 printWarning = function(text) {
8214 var message = 'Warning: ' + text;
8215 if (typeof console !== 'undefined') {
8216 console.error(message);
8217 }
8218 try {
8219 // --- Welcome to debugging React ---
8220 // This error was thrown as a convenience so that you can use this stack
8221 // to find the callsite that caused this warning to fire.
8222 throw new Error(message);
8223 } catch (x) {}
8224 };
8225 }
8226
8227 function emptyFunctionThatReturnsNull() {
8228 return null;
8229 }
8230
8231 module.exports = function(isValidElement, throwOnDirectAccess) {
8232 /* global Symbol */
8233 var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
8234 var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
8235
8236 /**
8237 * Returns the iterator method function contained on the iterable object.
8238 *
8239 * Be sure to invoke the function with the iterable as context:
8240 *
8241 * var iteratorFn = getIteratorFn(myIterable);
8242 * if (iteratorFn) {
8243 * var iterator = iteratorFn.call(myIterable);
8244 * ...
8245 * }
8246 *
8247 * @param {?object} maybeIterable
8248 * @return {?function}
8249 */
8250 function getIteratorFn(maybeIterable) {
8251 var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
8252 if (typeof iteratorFn === 'function') {
8253 return iteratorFn;
8254 }
8255 }
8256
8257 /**
8258 * Collection of methods that allow declaration and validation of props that are
8259 * supplied to React components. Example usage:
8260 *
8261 * var Props = require('ReactPropTypes');
8262 * var MyArticle = React.createClass({
8263 * propTypes: {
8264 * // An optional string prop named "description".
8265 * description: Props.string,
8266 *
8267 * // A required enum prop named "category".
8268 * category: Props.oneOf(['News','Photos']).isRequired,
8269 *
8270 * // A prop named "dialog" that requires an instance of Dialog.
8271 * dialog: Props.instanceOf(Dialog).isRequired
8272 * },
8273 * render: function() { ... }
8274 * });
8275 *
8276 * A more formal specification of how these methods are used:
8277 *
8278 * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
8279 * decl := ReactPropTypes.{type}(.isRequired)?
8280 *
8281 * Each and every declaration produces a function with the same signature. This
8282 * allows the creation of custom validation functions. For example:
8283 *
8284 * var MyLink = React.createClass({
8285 * propTypes: {
8286 * // An optional string or URI prop named "href".
8287 * href: function(props, propName, componentName) {
8288 * var propValue = props[propName];
8289 * if (propValue != null && typeof propValue !== 'string' &&
8290 * !(propValue instanceof URI)) {
8291 * return new Error(
8292 * 'Expected a string or an URI for ' + propName + ' in ' +
8293 * componentName
8294 * );
8295 * }
8296 * }
8297 * },
8298 * render: function() {...}
8299 * });
8300 *
8301 * @internal
8302 */
8303
8304 var ANONYMOUS = '<<anonymous>>';
8305
8306 // Important!
8307 // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
8308 var ReactPropTypes = {
8309 array: createPrimitiveTypeChecker('array'),
8310 bigint: createPrimitiveTypeChecker('bigint'),
8311 bool: createPrimitiveTypeChecker('boolean'),
8312 func: createPrimitiveTypeChecker('function'),
8313 number: createPrimitiveTypeChecker('number'),
8314 object: createPrimitiveTypeChecker('object'),
8315 string: createPrimitiveTypeChecker('string'),
8316 symbol: createPrimitiveTypeChecker('symbol'),
8317
8318 any: createAnyTypeChecker(),
8319 arrayOf: createArrayOfTypeChecker,
8320 element: createElementTypeChecker(),
8321 elementType: createElementTypeTypeChecker(),
8322 instanceOf: createInstanceTypeChecker,
8323 node: createNodeChecker(),
8324 objectOf: createObjectOfTypeChecker,
8325 oneOf: createEnumTypeChecker,
8326 oneOfType: createUnionTypeChecker,
8327 shape: createShapeTypeChecker,
8328 exact: createStrictShapeTypeChecker,
8329 };
8330
8331 /**
8332 * inlined Object.is polyfill to avoid requiring consumers ship their own
8333 * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
8334 */
8335 /*eslint-disable no-self-compare*/
8336 function is(x, y) {
8337 // SameValue algorithm
8338 if (x === y) {
8339 // Steps 1-5, 7-10
8340 // Steps 6.b-6.e: +0 != -0
8341 return x !== 0 || 1 / x === 1 / y;
8342 } else {
8343 // Step 6.a: NaN == NaN
8344 return x !== x && y !== y;
8345 }
8346 }
8347 /*eslint-enable no-self-compare*/
8348
8349 /**
8350 * We use an Error-like object for backward compatibility as people may call
8351 * PropTypes directly and inspect their output. However, we don't use real
8352 * Errors anymore. We don't inspect their stack anyway, and creating them
8353 * is prohibitively expensive if they are created too often, such as what
8354 * happens in oneOfType() for any type before the one that matched.
8355 */
8356 function PropTypeError(message, data) {
8357 this.message = message;
8358 this.data = data && typeof data === 'object' ? data: {};
8359 this.stack = '';
8360 }
8361 // Make `instanceof Error` still work for returned errors.
8362 PropTypeError.prototype = Error.prototype;
8363
8364 function createChainableTypeChecker(validate) {
8365 if (true) {
8366 var manualPropTypeCallCache = {};
8367 var manualPropTypeWarningCount = 0;
8368 }
8369 function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
8370 componentName = componentName || ANONYMOUS;
8371 propFullName = propFullName || propName;
8372
8373 if (secret !== ReactPropTypesSecret) {
8374 if (throwOnDirectAccess) {
8375 // New behavior only for users of `prop-types` package
8376 var err = new Error(
8377 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
8378 'Use `PropTypes.checkPropTypes()` to call them. ' +
8379 'Read more at http://fb.me/use-check-prop-types'
8380 );
8381 err.name = 'Invariant Violation';
8382 throw err;
8383 } else if ( true && typeof console !== 'undefined') {
8384 // Old behavior for people using React.PropTypes
8385 var cacheKey = componentName + ':' + propName;
8386 if (
8387 !manualPropTypeCallCache[cacheKey] &&
8388 // Avoid spamming the console because they are often not actionable except for lib authors
8389 manualPropTypeWarningCount < 3
8390 ) {
8391 printWarning(
8392 'You are manually calling a React.PropTypes validation ' +
8393 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
8394 'and will throw in the standalone `prop-types` package. ' +
8395 'You may be seeing this warning due to a third-party PropTypes ' +
8396 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
8397 );
8398 manualPropTypeCallCache[cacheKey] = true;
8399 manualPropTypeWarningCount++;
8400 }
8401 }
8402 }
8403 if (props[propName] == null) {
8404 if (isRequired) {
8405 if (props[propName] === null) {
8406 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
8407 }
8408 return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
8409 }
8410 return null;
8411 } else {
8412 return validate(props, propName, componentName, location, propFullName);
8413 }
8414 }
8415
8416 var chainedCheckType = checkType.bind(null, false);
8417 chainedCheckType.isRequired = checkType.bind(null, true);
8418
8419 return chainedCheckType;
8420 }
8421
8422 function createPrimitiveTypeChecker(expectedType) {
8423 function validate(props, propName, componentName, location, propFullName, secret) {
8424 var propValue = props[propName];
8425 var propType = getPropType(propValue);
8426 if (propType !== expectedType) {
8427 // `propValue` being instance of, say, date/regexp, pass the 'object'
8428 // check, but we can offer a more precise error message here rather than
8429 // 'of type `object`'.
8430 var preciseType = getPreciseType(propValue);
8431
8432 return new PropTypeError(
8433 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),
8434 {expectedType: expectedType}
8435 );
8436 }
8437 return null;
8438 }
8439 return createChainableTypeChecker(validate);
8440 }
8441
8442 function createAnyTypeChecker() {
8443 return createChainableTypeChecker(emptyFunctionThatReturnsNull);
8444 }
8445
8446 function createArrayOfTypeChecker(typeChecker) {
8447 function validate(props, propName, componentName, location, propFullName) {
8448 if (typeof typeChecker !== 'function') {
8449 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
8450 }
8451 var propValue = props[propName];
8452 if (!Array.isArray(propValue)) {
8453 var propType = getPropType(propValue);
8454 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
8455 }
8456 for (var i = 0; i < propValue.length; i++) {
8457 var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
8458 if (error instanceof Error) {
8459 return error;
8460 }
8461 }
8462 return null;
8463 }
8464 return createChainableTypeChecker(validate);
8465 }
8466
8467 function createElementTypeChecker() {
8468 function validate(props, propName, componentName, location, propFullName) {
8469 var propValue = props[propName];
8470 if (!isValidElement(propValue)) {
8471 var propType = getPropType(propValue);
8472 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
8473 }
8474 return null;
8475 }
8476 return createChainableTypeChecker(validate);
8477 }
8478
8479 function createElementTypeTypeChecker() {
8480 function validate(props, propName, componentName, location, propFullName) {
8481 var propValue = props[propName];
8482 if (!ReactIs.isValidElementType(propValue)) {
8483 var propType = getPropType(propValue);
8484 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
8485 }
8486 return null;
8487 }
8488 return createChainableTypeChecker(validate);
8489 }
8490
8491 function createInstanceTypeChecker(expectedClass) {
8492 function validate(props, propName, componentName, location, propFullName) {
8493 if (!(props[propName] instanceof expectedClass)) {
8494 var expectedClassName = expectedClass.name || ANONYMOUS;
8495 var actualClassName = getClassName(props[propName]);
8496 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
8497 }
8498 return null;
8499 }
8500 return createChainableTypeChecker(validate);
8501 }
8502
8503 function createEnumTypeChecker(expectedValues) {
8504 if (!Array.isArray(expectedValues)) {
8505 if (true) {
8506 if (arguments.length > 1) {
8507 printWarning(
8508 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
8509 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
8510 );
8511 } else {
8512 printWarning('Invalid argument supplied to oneOf, expected an array.');
8513 }
8514 }
8515 return emptyFunctionThatReturnsNull;
8516 }
8517
8518 function validate(props, propName, componentName, location, propFullName) {
8519 var propValue = props[propName];
8520 for (var i = 0; i < expectedValues.length; i++) {
8521 if (is(propValue, expectedValues[i])) {
8522 return null;
8523 }
8524 }
8525
8526 var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
8527 var type = getPreciseType(value);
8528 if (type === 'symbol') {
8529 return String(value);
8530 }
8531 return value;
8532 });
8533 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
8534 }
8535 return createChainableTypeChecker(validate);
8536 }
8537
8538 function createObjectOfTypeChecker(typeChecker) {
8539 function validate(props, propName, componentName, location, propFullName) {
8540 if (typeof typeChecker !== 'function') {
8541 return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
8542 }
8543 var propValue = props[propName];
8544 var propType = getPropType(propValue);
8545 if (propType !== 'object') {
8546 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
8547 }
8548 for (var key in propValue) {
8549 if (has(propValue, key)) {
8550 var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8551 if (error instanceof Error) {
8552 return error;
8553 }
8554 }
8555 }
8556 return null;
8557 }
8558 return createChainableTypeChecker(validate);
8559 }
8560
8561 function createUnionTypeChecker(arrayOfTypeCheckers) {
8562 if (!Array.isArray(arrayOfTypeCheckers)) {
8563 true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
8564 return emptyFunctionThatReturnsNull;
8565 }
8566
8567 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8568 var checker = arrayOfTypeCheckers[i];
8569 if (typeof checker !== 'function') {
8570 printWarning(
8571 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
8572 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
8573 );
8574 return emptyFunctionThatReturnsNull;
8575 }
8576 }
8577
8578 function validate(props, propName, componentName, location, propFullName) {
8579 var expectedTypes = [];
8580 for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8581 var checker = arrayOfTypeCheckers[i];
8582 var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
8583 if (checkerResult == null) {
8584 return null;
8585 }
8586 if (checkerResult.data && has(checkerResult.data, 'expectedType')) {
8587 expectedTypes.push(checkerResult.data.expectedType);
8588 }
8589 }
8590 var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';
8591 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));
8592 }
8593 return createChainableTypeChecker(validate);
8594 }
8595
8596 function createNodeChecker() {
8597 function validate(props, propName, componentName, location, propFullName) {
8598 if (!isNode(props[propName])) {
8599 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
8600 }
8601 return null;
8602 }
8603 return createChainableTypeChecker(validate);
8604 }
8605
8606 function invalidValidatorError(componentName, location, propFullName, key, type) {
8607 return new PropTypeError(
8608 (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +
8609 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'
8610 );
8611 }
8612
8613 function createShapeTypeChecker(shapeTypes) {
8614 function validate(props, propName, componentName, location, propFullName) {
8615 var propValue = props[propName];
8616 var propType = getPropType(propValue);
8617 if (propType !== 'object') {
8618 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8619 }
8620 for (var key in shapeTypes) {
8621 var checker = shapeTypes[key];
8622 if (typeof checker !== 'function') {
8623 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8624 }
8625 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8626 if (error) {
8627 return error;
8628 }
8629 }
8630 return null;
8631 }
8632 return createChainableTypeChecker(validate);
8633 }
8634
8635 function createStrictShapeTypeChecker(shapeTypes) {
8636 function validate(props, propName, componentName, location, propFullName) {
8637 var propValue = props[propName];
8638 var propType = getPropType(propValue);
8639 if (propType !== 'object') {
8640 return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8641 }
8642 // We need to check all keys in case some are required but missing from props.
8643 var allKeys = assign({}, props[propName], shapeTypes);
8644 for (var key in allKeys) {
8645 var checker = shapeTypes[key];
8646 if (has(shapeTypes, key) && typeof checker !== 'function') {
8647 return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8648 }
8649 if (!checker) {
8650 return new PropTypeError(
8651 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
8652 '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
8653 '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
8654 );
8655 }
8656 var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8657 if (error) {
8658 return error;
8659 }
8660 }
8661 return null;
8662 }
8663
8664 return createChainableTypeChecker(validate);
8665 }
8666
8667 function isNode(propValue) {
8668 switch (typeof propValue) {
8669 case 'number':
8670 case 'string':
8671 case 'undefined':
8672 return true;
8673 case 'boolean':
8674 return !propValue;
8675 case 'object':
8676 if (Array.isArray(propValue)) {
8677 return propValue.every(isNode);
8678 }
8679 if (propValue === null || isValidElement(propValue)) {
8680 return true;
8681 }
8682
8683 var iteratorFn = getIteratorFn(propValue);
8684 if (iteratorFn) {
8685 var iterator = iteratorFn.call(propValue);
8686 var step;
8687 if (iteratorFn !== propValue.entries) {
8688 while (!(step = iterator.next()).done) {
8689 if (!isNode(step.value)) {
8690 return false;
8691 }
8692 }
8693 } else {
8694 // Iterator will provide entry [k,v] tuples rather than values.
8695 while (!(step = iterator.next()).done) {
8696 var entry = step.value;
8697 if (entry) {
8698 if (!isNode(entry[1])) {
8699 return false;
8700 }
8701 }
8702 }
8703 }
8704 } else {
8705 return false;
8706 }
8707
8708 return true;
8709 default:
8710 return false;
8711 }
8712 }
8713
8714 function isSymbol(propType, propValue) {
8715 // Native Symbol.
8716 if (propType === 'symbol') {
8717 return true;
8718 }
8719
8720 // falsy value can't be a Symbol
8721 if (!propValue) {
8722 return false;
8723 }
8724
8725 // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
8726 if (propValue['@@toStringTag'] === 'Symbol') {
8727 return true;
8728 }
8729
8730 // Fallback for non-spec compliant Symbols which are polyfilled.
8731 if (typeof Symbol === 'function' && propValue instanceof Symbol) {
8732 return true;
8733 }
8734
8735 return false;
8736 }
8737
8738 // Equivalent of `typeof` but with special handling for array and regexp.
8739 function getPropType(propValue) {
8740 var propType = typeof propValue;
8741 if (Array.isArray(propValue)) {
8742 return 'array';
8743 }
8744 if (propValue instanceof RegExp) {
8745 // Old webkits (at least until Android 4.0) return 'function' rather than
8746 // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
8747 // passes PropTypes.object.
8748 return 'object';
8749 }
8750 if (isSymbol(propType, propValue)) {
8751 return 'symbol';
8752 }
8753 return propType;
8754 }
8755
8756 // This handles more types than `getPropType`. Only used for error messages.
8757 // See `createPrimitiveTypeChecker`.
8758 function getPreciseType(propValue) {
8759 if (typeof propValue === 'undefined' || propValue === null) {
8760 return '' + propValue;
8761 }
8762 var propType = getPropType(propValue);
8763 if (propType === 'object') {
8764 if (propValue instanceof Date) {
8765 return 'date';
8766 } else if (propValue instanceof RegExp) {
8767 return 'regexp';
8768 }
8769 }
8770 return propType;
8771 }
8772
8773 // Returns a string that is postfixed to a warning about an invalid type.
8774 // For example, "undefined" or "of type array"
8775 function getPostfixForTypeWarning(value) {
8776 var type = getPreciseType(value);
8777 switch (type) {
8778 case 'array':
8779 case 'object':
8780 return 'an ' + type;
8781 case 'boolean':
8782 case 'date':
8783 case 'regexp':
8784 return 'a ' + type;
8785 default:
8786 return type;
8787 }
8788 }
8789
8790 // Returns class name of the object, if any.
8791 function getClassName(propValue) {
8792 if (!propValue.constructor || !propValue.constructor.name) {
8793 return ANONYMOUS;
8794 }
8795 return propValue.constructor.name;
8796 }
8797
8798 ReactPropTypes.checkPropTypes = checkPropTypes;
8799 ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
8800 ReactPropTypes.PropTypes = ReactPropTypes;
8801
8802 return ReactPropTypes;
8803 };
8804
8805
8806 /***/ }),
8807
8808 /***/ "../node_modules/prop-types/index.js":
8809 /*!*******************************************!*\
8810 !*** ../node_modules/prop-types/index.js ***!
8811 \*******************************************/
8812 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8813
8814 /**
8815 * Copyright (c) 2013-present, Facebook, Inc.
8816 *
8817 * This source code is licensed under the MIT license found in the
8818 * LICENSE file in the root directory of this source tree.
8819 */
8820
8821 if (true) {
8822 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8823
8824 // By explicitly using `prop-types` you are opting into new development behavior.
8825 // http://fb.me/prop-types-in-prod
8826 var throwOnDirectAccess = true;
8827 module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
8828 } else {}
8829
8830
8831 /***/ }),
8832
8833 /***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
8834 /*!**************************************************************!*\
8835 !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
8836 \**************************************************************/
8837 /***/ ((module) => {
8838
8839 "use strict";
8840 /**
8841 * Copyright (c) 2013-present, Facebook, Inc.
8842 *
8843 * This source code is licensed under the MIT license found in the
8844 * LICENSE file in the root directory of this source tree.
8845 */
8846
8847
8848
8849 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
8850
8851 module.exports = ReactPropTypesSecret;
8852
8853
8854 /***/ }),
8855
8856 /***/ "../node_modules/prop-types/lib/has.js":
8857 /*!*********************************************!*\
8858 !*** ../node_modules/prop-types/lib/has.js ***!
8859 \*********************************************/
8860 /***/ ((module) => {
8861
8862 module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
8863
8864
8865 /***/ }),
8866
8867 /***/ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js":
8868 /*!************************************************************************************!*\
8869 !*** ../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
8870 \************************************************************************************/
8871 /***/ ((__unused_webpack_module, exports) => {
8872
8873 "use strict";
8874 /** @license React v16.13.1
8875 * react-is.development.js
8876 *
8877 * Copyright (c) Facebook, Inc. and its affiliates.
8878 *
8879 * This source code is licensed under the MIT license found in the
8880 * LICENSE file in the root directory of this source tree.
8881 */
8882
8883
8884
8885
8886
8887 if (true) {
8888 (function() {
8889 'use strict';
8890
8891 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
8892 // nor polyfill, then a plain number is used for performance.
8893 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
8894 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
8895 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
8896 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
8897 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
8898 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
8899 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
8900 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
8901 // (unstable) APIs that have been removed. Can we remove the symbols?
8902
8903 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
8904 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
8905 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
8906 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
8907 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
8908 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
8909 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
8910 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
8911 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
8912 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
8913 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
8914
8915 function isValidElementType(type) {
8916 return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
8917 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);
8918 }
8919
8920 function typeOf(object) {
8921 if (typeof object === 'object' && object !== null) {
8922 var $$typeof = object.$$typeof;
8923
8924 switch ($$typeof) {
8925 case REACT_ELEMENT_TYPE:
8926 var type = object.type;
8927
8928 switch (type) {
8929 case REACT_ASYNC_MODE_TYPE:
8930 case REACT_CONCURRENT_MODE_TYPE:
8931 case REACT_FRAGMENT_TYPE:
8932 case REACT_PROFILER_TYPE:
8933 case REACT_STRICT_MODE_TYPE:
8934 case REACT_SUSPENSE_TYPE:
8935 return type;
8936
8937 default:
8938 var $$typeofType = type && type.$$typeof;
8939
8940 switch ($$typeofType) {
8941 case REACT_CONTEXT_TYPE:
8942 case REACT_FORWARD_REF_TYPE:
8943 case REACT_LAZY_TYPE:
8944 case REACT_MEMO_TYPE:
8945 case REACT_PROVIDER_TYPE:
8946 return $$typeofType;
8947
8948 default:
8949 return $$typeof;
8950 }
8951
8952 }
8953
8954 case REACT_PORTAL_TYPE:
8955 return $$typeof;
8956 }
8957 }
8958
8959 return undefined;
8960 } // AsyncMode is deprecated along with isAsyncMode
8961
8962 var AsyncMode = REACT_ASYNC_MODE_TYPE;
8963 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
8964 var ContextConsumer = REACT_CONTEXT_TYPE;
8965 var ContextProvider = REACT_PROVIDER_TYPE;
8966 var Element = REACT_ELEMENT_TYPE;
8967 var ForwardRef = REACT_FORWARD_REF_TYPE;
8968 var Fragment = REACT_FRAGMENT_TYPE;
8969 var Lazy = REACT_LAZY_TYPE;
8970 var Memo = REACT_MEMO_TYPE;
8971 var Portal = REACT_PORTAL_TYPE;
8972 var Profiler = REACT_PROFILER_TYPE;
8973 var StrictMode = REACT_STRICT_MODE_TYPE;
8974 var Suspense = REACT_SUSPENSE_TYPE;
8975 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
8976
8977 function isAsyncMode(object) {
8978 {
8979 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
8980 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
8981
8982 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.');
8983 }
8984 }
8985
8986 return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
8987 }
8988 function isConcurrentMode(object) {
8989 return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
8990 }
8991 function isContextConsumer(object) {
8992 return typeOf(object) === REACT_CONTEXT_TYPE;
8993 }
8994 function isContextProvider(object) {
8995 return typeOf(object) === REACT_PROVIDER_TYPE;
8996 }
8997 function isElement(object) {
8998 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
8999 }
9000 function isForwardRef(object) {
9001 return typeOf(object) === REACT_FORWARD_REF_TYPE;
9002 }
9003 function isFragment(object) {
9004 return typeOf(object) === REACT_FRAGMENT_TYPE;
9005 }
9006 function isLazy(object) {
9007 return typeOf(object) === REACT_LAZY_TYPE;
9008 }
9009 function isMemo(object) {
9010 return typeOf(object) === REACT_MEMO_TYPE;
9011 }
9012 function isPortal(object) {
9013 return typeOf(object) === REACT_PORTAL_TYPE;
9014 }
9015 function isProfiler(object) {
9016 return typeOf(object) === REACT_PROFILER_TYPE;
9017 }
9018 function isStrictMode(object) {
9019 return typeOf(object) === REACT_STRICT_MODE_TYPE;
9020 }
9021 function isSuspense(object) {
9022 return typeOf(object) === REACT_SUSPENSE_TYPE;
9023 }
9024
9025 exports.AsyncMode = AsyncMode;
9026 exports.ConcurrentMode = ConcurrentMode;
9027 exports.ContextConsumer = ContextConsumer;
9028 exports.ContextProvider = ContextProvider;
9029 exports.Element = Element;
9030 exports.ForwardRef = ForwardRef;
9031 exports.Fragment = Fragment;
9032 exports.Lazy = Lazy;
9033 exports.Memo = Memo;
9034 exports.Portal = Portal;
9035 exports.Profiler = Profiler;
9036 exports.StrictMode = StrictMode;
9037 exports.Suspense = Suspense;
9038 exports.isAsyncMode = isAsyncMode;
9039 exports.isConcurrentMode = isConcurrentMode;
9040 exports.isContextConsumer = isContextConsumer;
9041 exports.isContextProvider = isContextProvider;
9042 exports.isElement = isElement;
9043 exports.isForwardRef = isForwardRef;
9044 exports.isFragment = isFragment;
9045 exports.isLazy = isLazy;
9046 exports.isMemo = isMemo;
9047 exports.isPortal = isPortal;
9048 exports.isProfiler = isProfiler;
9049 exports.isStrictMode = isStrictMode;
9050 exports.isSuspense = isSuspense;
9051 exports.isValidElementType = isValidElementType;
9052 exports.typeOf = typeOf;
9053 })();
9054 }
9055
9056
9057 /***/ }),
9058
9059 /***/ "../node_modules/prop-types/node_modules/react-is/index.js":
9060 /*!*****************************************************************!*\
9061 !*** ../node_modules/prop-types/node_modules/react-is/index.js ***!
9062 \*****************************************************************/
9063 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9064
9065 "use strict";
9066
9067
9068 if (false) {} else {
9069 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js");
9070 }
9071
9072
9073 /***/ }),
9074
9075 /***/ "../node_modules/react-draggable/build/cjs/Draggable.js":
9076 /*!**************************************************************!*\
9077 !*** ../node_modules/react-draggable/build/cjs/Draggable.js ***!
9078 \**************************************************************/
9079 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9080
9081 "use strict";
9082
9083
9084 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); }
9085
9086 Object.defineProperty(exports, "__esModule", ({
9087 value: true
9088 }));
9089 Object.defineProperty(exports, "DraggableCore", ({
9090 enumerable: true,
9091 get: function get() {
9092 return _DraggableCore.default;
9093 }
9094 }));
9095 exports["default"] = void 0;
9096
9097 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9098
9099 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9100
9101 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9102
9103 var _clsx2 = _interopRequireDefault(__webpack_require__(/*! clsx */ "../node_modules/clsx/dist/clsx.m.js"));
9104
9105 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9106
9107 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9108
9109 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9110
9111 var _DraggableCore = _interopRequireDefault(__webpack_require__(/*! ./DraggableCore */ "../node_modules/react-draggable/build/cjs/DraggableCore.js"));
9112
9113 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9114
9115 var _excluded = ["axis", "bounds", "children", "defaultPosition", "defaultClassName", "defaultClassNameDragging", "defaultClassNameDragged", "position", "positionOffset", "scale"];
9116
9117 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9118
9119 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); }
9120
9121 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; }
9122
9123 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); }
9124
9125 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; }
9126
9127 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; }
9128
9129 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; }
9130
9131 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; }
9132
9133 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9134
9135 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."); }
9136
9137 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); }
9138
9139 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; }
9140
9141 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; }
9142
9143 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9144
9145 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9146
9147 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); } }
9148
9149 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9150
9151 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); }
9152
9153 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9154
9155 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); }; }
9156
9157 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); }
9158
9159 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9160
9161 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; } }
9162
9163 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9164
9165 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; }
9166
9167 //
9168 // Define <Draggable>
9169 //
9170 var Draggable = /*#__PURE__*/function (_React$Component) {
9171 _inherits(Draggable, _React$Component);
9172
9173 var _super = _createSuper(Draggable);
9174
9175 function Draggable(props
9176 /*: DraggableProps*/
9177 ) {
9178 var _this;
9179
9180 _classCallCheck(this, Draggable);
9181
9182 _this = _super.call(this, props);
9183
9184 _defineProperty(_assertThisInitialized(_this), "onDragStart", function (e, coreData) {
9185 (0, _log.default)('Draggable: onDragStart: %j', coreData); // Short-circuit if user's callback killed it.
9186
9187 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.
9188
9189
9190 if (shouldStart === false) return false;
9191
9192 _this.setState({
9193 dragging: true,
9194 dragged: true
9195 });
9196 });
9197
9198 _defineProperty(_assertThisInitialized(_this), "onDrag", function (e, coreData) {
9199 if (!_this.state.dragging) return false;
9200 (0, _log.default)('Draggable: onDrag: %j', coreData);
9201 var uiData = (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData);
9202 var newState
9203 /*: $Shape<DraggableState>*/
9204 = {
9205 x: uiData.x,
9206 y: uiData.y
9207 }; // Keep within bounds.
9208
9209 if (_this.props.bounds) {
9210 // Save original x and y.
9211 var x = newState.x,
9212 y = newState.y; // Add slack to the values used to calculate bound position. This will ensure that if
9213 // we start removing slack, the element won't react to it right away until it's been
9214 // completely removed.
9215
9216 newState.x += _this.state.slackX;
9217 newState.y += _this.state.slackY; // Get bound position. This will ceil/floor the x and y within the boundaries.
9218
9219 var _getBoundPosition = (0, _positionFns.getBoundPosition)(_assertThisInitialized(_this), newState.x, newState.y),
9220 _getBoundPosition2 = _slicedToArray(_getBoundPosition, 2),
9221 newStateX = _getBoundPosition2[0],
9222 newStateY = _getBoundPosition2[1];
9223
9224 newState.x = newStateX;
9225 newState.y = newStateY; // Recalculate slack by noting how much was shaved by the boundPosition handler.
9226
9227 newState.slackX = _this.state.slackX + (x - newState.x);
9228 newState.slackY = _this.state.slackY + (y - newState.y); // Update the event we fire to reflect what really happened after bounds took effect.
9229
9230 uiData.x = newState.x;
9231 uiData.y = newState.y;
9232 uiData.deltaX = newState.x - _this.state.x;
9233 uiData.deltaY = newState.y - _this.state.y;
9234 } // Short-circuit if user's callback killed it.
9235
9236
9237 var shouldUpdate = _this.props.onDrag(e, uiData);
9238
9239 if (shouldUpdate === false) return false;
9240
9241 _this.setState(newState);
9242 });
9243
9244 _defineProperty(_assertThisInitialized(_this), "onDragStop", function (e, coreData) {
9245 if (!_this.state.dragging) return false; // Short-circuit if user's callback killed it.
9246
9247 var shouldContinue = _this.props.onStop(e, (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData));
9248
9249 if (shouldContinue === false) return false;
9250 (0, _log.default)('Draggable: onDragStop: %j', coreData);
9251 var newState
9252 /*: $Shape<DraggableState>*/
9253 = {
9254 dragging: false,
9255 slackX: 0,
9256 slackY: 0
9257 }; // If this is a controlled component, the result of this operation will be to
9258 // revert back to the old position. We expect a handler on `onDragStop`, at the least.
9259
9260 var controlled = Boolean(_this.props.position);
9261
9262 if (controlled) {
9263 var _this$props$position = _this.props.position,
9264 x = _this$props$position.x,
9265 y = _this$props$position.y;
9266 newState.x = x;
9267 newState.y = y;
9268 }
9269
9270 _this.setState(newState);
9271 });
9272
9273 _this.state = {
9274 // Whether or not we are currently dragging.
9275 dragging: false,
9276 // Whether or not we have been dragged before.
9277 dragged: false,
9278 // Current transform x and y.
9279 x: props.position ? props.position.x : props.defaultPosition.x,
9280 y: props.position ? props.position.y : props.defaultPosition.y,
9281 prevPropsPosition: _objectSpread({}, props.position),
9282 // Used for compensating for out-of-bounds drags
9283 slackX: 0,
9284 slackY: 0,
9285 // Can only determine if SVG after mounting
9286 isElementSVG: false
9287 };
9288
9289 if (props.position && !(props.onDrag || props.onStop)) {
9290 // eslint-disable-next-line no-console
9291 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.');
9292 }
9293
9294 return _this;
9295 }
9296
9297 _createClass(Draggable, [{
9298 key: "componentDidMount",
9299 value: function componentDidMount() {
9300 // Check to see if the element passed is an instanceof SVGElement
9301 if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {
9302 this.setState({
9303 isElementSVG: true
9304 });
9305 }
9306 }
9307 }, {
9308 key: "componentWillUnmount",
9309 value: function componentWillUnmount() {
9310 this.setState({
9311 dragging: false
9312 }); // prevents invariant if unmounted while dragging
9313 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
9314 // the underlying DOM node ourselves. See the README for more information.
9315
9316 }, {
9317 key: "findDOMNode",
9318 value: function findDOMNode()
9319 /*: ?HTMLElement*/
9320 {
9321 var _this$props$nodeRef$c, _this$props, _this$props$nodeRef;
9322
9323 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);
9324 }
9325 }, {
9326 key: "render",
9327 value: function render()
9328 /*: ReactElement<any>*/
9329 {
9330 var _clsx;
9331
9332 var _this$props2 = this.props,
9333 axis = _this$props2.axis,
9334 bounds = _this$props2.bounds,
9335 children = _this$props2.children,
9336 defaultPosition = _this$props2.defaultPosition,
9337 defaultClassName = _this$props2.defaultClassName,
9338 defaultClassNameDragging = _this$props2.defaultClassNameDragging,
9339 defaultClassNameDragged = _this$props2.defaultClassNameDragged,
9340 position = _this$props2.position,
9341 positionOffset = _this$props2.positionOffset,
9342 scale = _this$props2.scale,
9343 draggableCoreProps = _objectWithoutProperties(_this$props2, _excluded);
9344
9345 var style = {};
9346 var svgTransform = null; // If this is controlled, we don't want to move it - unless it's dragging.
9347
9348 var controlled = Boolean(position);
9349 var draggable = !controlled || this.state.dragging;
9350 var validPosition = position || defaultPosition;
9351 var transformOpts = {
9352 // Set left if horizontal drag is enabled
9353 x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,
9354 // Set top if vertical drag is enabled
9355 y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y
9356 }; // If this element was SVG, we use the `transform` attribute.
9357
9358 if (this.state.isElementSVG) {
9359 svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);
9360 } else {
9361 // Add a CSS transform to move the element around. This allows us to move the element around
9362 // without worrying about whether or not it is relatively or absolutely positioned.
9363 // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>
9364 // has a clean slate.
9365 style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);
9366 } // Mark with class while dragging
9367
9368
9369 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
9370 // This makes it flexible to use whatever element is wanted (div, ul, etc)
9371
9372 return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {
9373 onStart: this.onDragStart,
9374 onDrag: this.onDrag,
9375 onStop: this.onDragStop
9376 }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {
9377 className: className,
9378 style: _objectSpread(_objectSpread({}, children.props.style), style),
9379 transform: svgTransform
9380 }));
9381 }
9382 }], [{
9383 key: "getDerivedStateFromProps",
9384 value: // React 16.3+
9385 // Arity (props, state)
9386 function getDerivedStateFromProps(_ref, _ref2)
9387 /*: ?$Shape<DraggableState>*/
9388 {
9389 var position = _ref.position;
9390 var prevPropsPosition = _ref2.prevPropsPosition;
9391
9392 // Set x/y if a new position is provided in props that is different than the previous.
9393 if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {
9394 (0, _log.default)('Draggable: getDerivedStateFromProps %j', {
9395 position: position,
9396 prevPropsPosition: prevPropsPosition
9397 });
9398 return {
9399 x: position.x,
9400 y: position.y,
9401 prevPropsPosition: _objectSpread({}, position)
9402 };
9403 }
9404
9405 return null;
9406 }
9407 }]);
9408
9409 return Draggable;
9410 }(React.Component);
9411
9412 exports["default"] = Draggable;
9413
9414 _defineProperty(Draggable, "displayName", 'Draggable');
9415
9416 _defineProperty(Draggable, "propTypes", _objectSpread(_objectSpread({}, _DraggableCore.default.propTypes), {}, {
9417 /**
9418 * `axis` determines which axis the draggable can move.
9419 *
9420 * Note that all callbacks will still return data as normal. This only
9421 * controls flushing to the DOM.
9422 *
9423 * 'both' allows movement horizontally and vertically.
9424 * 'x' limits movement to horizontal axis.
9425 * 'y' limits movement to vertical axis.
9426 * 'none' limits all movement.
9427 *
9428 * Defaults to 'both'.
9429 */
9430 axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),
9431
9432 /**
9433 * `bounds` determines the range of movement available to the element.
9434 * Available values are:
9435 *
9436 * 'parent' restricts movement within the Draggable's parent node.
9437 *
9438 * Alternatively, pass an object with the following properties, all of which are optional:
9439 *
9440 * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}
9441 *
9442 * All values are in px.
9443 *
9444 * Example:
9445 *
9446 * ```jsx
9447 * let App = React.createClass({
9448 * render: function () {
9449 * return (
9450 * <Draggable bounds={{right: 300, bottom: 300}}>
9451 * <div>Content</div>
9452 * </Draggable>
9453 * );
9454 * }
9455 * });
9456 * ```
9457 */
9458 bounds: _propTypes.default.oneOfType([_propTypes.default.shape({
9459 left: _propTypes.default.number,
9460 right: _propTypes.default.number,
9461 top: _propTypes.default.number,
9462 bottom: _propTypes.default.number
9463 }), _propTypes.default.string, _propTypes.default.oneOf([false])]),
9464 defaultClassName: _propTypes.default.string,
9465 defaultClassNameDragging: _propTypes.default.string,
9466 defaultClassNameDragged: _propTypes.default.string,
9467
9468 /**
9469 * `defaultPosition` specifies the x and y that the dragged item should start at
9470 *
9471 * Example:
9472 *
9473 * ```jsx
9474 * let App = React.createClass({
9475 * render: function () {
9476 * return (
9477 * <Draggable defaultPosition={{x: 25, y: 25}}>
9478 * <div>I start with transformX: 25px and transformY: 25px;</div>
9479 * </Draggable>
9480 * );
9481 * }
9482 * });
9483 * ```
9484 */
9485 defaultPosition: _propTypes.default.shape({
9486 x: _propTypes.default.number,
9487 y: _propTypes.default.number
9488 }),
9489 positionOffset: _propTypes.default.shape({
9490 x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
9491 y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
9492 }),
9493
9494 /**
9495 * `position`, if present, defines the current position of the element.
9496 *
9497 * This is similar to how form elements in React work - if no `position` is supplied, the component
9498 * is uncontrolled.
9499 *
9500 * Example:
9501 *
9502 * ```jsx
9503 * let App = React.createClass({
9504 * render: function () {
9505 * return (
9506 * <Draggable position={{x: 25, y: 25}}>
9507 * <div>I start with transformX: 25px and transformY: 25px;</div>
9508 * </Draggable>
9509 * );
9510 * }
9511 * });
9512 * ```
9513 */
9514 position: _propTypes.default.shape({
9515 x: _propTypes.default.number,
9516 y: _propTypes.default.number
9517 }),
9518
9519 /**
9520 * These properties should be defined on the child, not here.
9521 */
9522 className: _shims.dontSetMe,
9523 style: _shims.dontSetMe,
9524 transform: _shims.dontSetMe
9525 }));
9526
9527 _defineProperty(Draggable, "defaultProps", _objectSpread(_objectSpread({}, _DraggableCore.default.defaultProps), {}, {
9528 axis: 'both',
9529 bounds: false,
9530 defaultClassName: 'react-draggable',
9531 defaultClassNameDragging: 'react-draggable-dragging',
9532 defaultClassNameDragged: 'react-draggable-dragged',
9533 defaultPosition: {
9534 x: 0,
9535 y: 0
9536 },
9537 scale: 1
9538 }));
9539
9540 /***/ }),
9541
9542 /***/ "../node_modules/react-draggable/build/cjs/DraggableCore.js":
9543 /*!******************************************************************!*\
9544 !*** ../node_modules/react-draggable/build/cjs/DraggableCore.js ***!
9545 \******************************************************************/
9546 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9547
9548 "use strict";
9549
9550
9551 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); }
9552
9553 Object.defineProperty(exports, "__esModule", ({
9554 value: true
9555 }));
9556 exports["default"] = void 0;
9557
9558 var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9559
9560 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9561
9562 var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9563
9564 var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9565
9566 var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9567
9568 var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9569
9570 var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9571
9572 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9573
9574 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); }
9575
9576 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; }
9577
9578 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9579
9580 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."); }
9581
9582 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); }
9583
9584 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; }
9585
9586 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; }
9587
9588 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9589
9590 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9591
9592 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); } }
9593
9594 function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9595
9596 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); }
9597
9598 function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9599
9600 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); }; }
9601
9602 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); }
9603
9604 function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9605
9606 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; } }
9607
9608 function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9609
9610 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; }
9611
9612 // Simple abstraction for dragging events names.
9613 var eventsFor = {
9614 touch: {
9615 start: 'touchstart',
9616 move: 'touchmove',
9617 stop: 'touchend'
9618 },
9619 mouse: {
9620 start: 'mousedown',
9621 move: 'mousemove',
9622 stop: 'mouseup'
9623 }
9624 }; // Default to mouse events.
9625
9626 var dragEventFor = eventsFor.mouse;
9627 /*:: type DraggableCoreState = {
9628 dragging: boolean,
9629 lastX: number,
9630 lastY: number,
9631 touchIdentifier: ?number
9632 };*/
9633
9634 /*:: export type DraggableData = {
9635 node: HTMLElement,
9636 x: number, y: number,
9637 deltaX: number, deltaY: number,
9638 lastX: number, lastY: number,
9639 };*/
9640
9641 /*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/
9642
9643 /*:: export type ControlPosition = {x: number, y: number};*/
9644
9645 /*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/
9646
9647 /*:: export type DraggableCoreDefaultProps = {
9648 allowAnyClick: boolean,
9649 disabled: boolean,
9650 enableUserSelectHack: boolean,
9651 onStart: DraggableEventHandler,
9652 onDrag: DraggableEventHandler,
9653 onStop: DraggableEventHandler,
9654 onMouseDown: (e: MouseEvent) => void,
9655 scale: number,
9656 };*/
9657
9658 /*:: export type DraggableCoreProps = {
9659 ...DraggableCoreDefaultProps,
9660 cancel: string,
9661 children: ReactElement<any>,
9662 offsetParent: HTMLElement,
9663 grid: [number, number],
9664 handle: string,
9665 nodeRef?: ?React.ElementRef<any>,
9666 };*/
9667
9668 //
9669 // Define <DraggableCore>.
9670 //
9671 // <DraggableCore> is for advanced usage of <Draggable>. It maintains minimal internal state so it can
9672 // work well with libraries that require more control over the element.
9673 //
9674 var DraggableCore = /*#__PURE__*/function (_React$Component) {
9675 _inherits(DraggableCore, _React$Component);
9676
9677 var _super = _createSuper(DraggableCore);
9678
9679 function DraggableCore() {
9680 var _this;
9681
9682 _classCallCheck(this, DraggableCore);
9683
9684 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9685 args[_key] = arguments[_key];
9686 }
9687
9688 _this = _super.call.apply(_super, [this].concat(args));
9689
9690 _defineProperty(_assertThisInitialized(_this), "state", {
9691 dragging: false,
9692 // Used while dragging to determine deltas.
9693 lastX: NaN,
9694 lastY: NaN,
9695 touchIdentifier: null
9696 });
9697
9698 _defineProperty(_assertThisInitialized(_this), "mounted", false);
9699
9700 _defineProperty(_assertThisInitialized(_this), "handleDragStart", function (e) {
9701 // Make it possible to attach event handlers on top of this one.
9702 _this.props.onMouseDown(e); // Only accept left-clicks.
9703
9704
9705 if (!_this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false; // Get nodes. Be sure to grab relative document (could be iframed)
9706
9707 var thisNode = _this.findDOMNode();
9708
9709 if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {
9710 throw new Error('<DraggableCore> not mounted on DragStart!');
9711 }
9712
9713 var ownerDocument = thisNode.ownerDocument; // Short circuit if handle or cancel prop was provided and selector doesn't match.
9714
9715 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)) {
9716 return;
9717 } // Prevent scrolling on mobile devices, like ipad/iphone.
9718 // Important that this is after handle/cancel.
9719
9720
9721 if (e.type === 'touchstart') e.preventDefault(); // Set touch identifier in component state if this is a touch event. This allows us to
9722 // distinguish between individual touches on multitouch screens by identifying which
9723 // touchpoint was set to this element.
9724
9725 var touchIdentifier = (0, _domFns.getTouchIdentifier)(e);
9726
9727 _this.setState({
9728 touchIdentifier: touchIdentifier
9729 }); // Get the current drag point from the event. This is used as the offset.
9730
9731
9732 var position = (0, _positionFns.getControlPosition)(e, touchIdentifier, _assertThisInitialized(_this));
9733 if (position == null) return; // not possible but satisfies flow
9734
9735 var x = position.x,
9736 y = position.y; // Create an event object with all the data parents need to make a decision here.
9737
9738 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9739 (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent); // Call event handler. If it returns explicit false, cancel.
9740
9741 (0, _log.default)('calling', _this.props.onStart);
9742
9743 var shouldUpdate = _this.props.onStart(e, coreEvent);
9744
9745 if (shouldUpdate === false || _this.mounted === false) return; // Add a style to the body to disable user-select. This prevents text from
9746 // being selected all over the page.
9747
9748 if (_this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument); // Initiate dragging. Set the current x and y as offsets
9749 // so we know how much we've moved during the drag. This allows us
9750 // to drag elements around even if they have been moved, without issue.
9751
9752 _this.setState({
9753 dragging: true,
9754 lastX: x,
9755 lastY: y
9756 }); // Add events to the document directly so we catch when the user's mouse/touch moves outside of
9757 // this element. We use different events depending on whether or not we have detected that this
9758 // is a touch-capable device.
9759
9760
9761 (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, _this.handleDrag);
9762 (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, _this.handleDragStop);
9763 });
9764
9765 _defineProperty(_assertThisInitialized(_this), "handleDrag", function (e) {
9766 // Get the current drag point from the event. This is used as the offset.
9767 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9768 if (position == null) return;
9769 var x = position.x,
9770 y = position.y; // Snap to grid if prop has been provided
9771
9772 if (Array.isArray(_this.props.grid)) {
9773 var deltaX = x - _this.state.lastX,
9774 deltaY = y - _this.state.lastY;
9775
9776 var _snapToGrid = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9777
9778 var _snapToGrid2 = _slicedToArray(_snapToGrid, 2);
9779
9780 deltaX = _snapToGrid2[0];
9781 deltaY = _snapToGrid2[1];
9782 if (!deltaX && !deltaY) return; // skip useless drag
9783
9784 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9785 }
9786
9787 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9788 (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent); // Call event handler. If it returns explicit false, trigger end.
9789
9790 var shouldUpdate = _this.props.onDrag(e, coreEvent);
9791
9792 if (shouldUpdate === false || _this.mounted === false) {
9793 try {
9794 // $FlowIgnore
9795 _this.handleDragStop(new MouseEvent('mouseup'));
9796 } catch (err) {
9797 // Old browsers
9798 var event = ((document.createEvent('MouseEvents')
9799 /*: any*/
9800 )
9801 /*: MouseTouchEvent*/
9802 ); // I see why this insanity was deprecated
9803 // $FlowIgnore
9804
9805 event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
9806
9807 _this.handleDragStop(event);
9808 }
9809
9810 return;
9811 }
9812
9813 _this.setState({
9814 lastX: x,
9815 lastY: y
9816 });
9817 });
9818
9819 _defineProperty(_assertThisInitialized(_this), "handleDragStop", function (e) {
9820 if (!_this.state.dragging) return;
9821 var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9822 if (position == null) return;
9823 var x = position.x,
9824 y = position.y; // Snap to grid if prop has been provided
9825
9826 if (Array.isArray(_this.props.grid)) {
9827 var deltaX = x - _this.state.lastX || 0;
9828 var deltaY = y - _this.state.lastY || 0;
9829
9830 var _snapToGrid3 = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9831
9832 var _snapToGrid4 = _slicedToArray(_snapToGrid3, 2);
9833
9834 deltaX = _snapToGrid4[0];
9835 deltaY = _snapToGrid4[1];
9836 x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9837 }
9838
9839 var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y); // Call event handler
9840
9841 var shouldContinue = _this.props.onStop(e, coreEvent);
9842
9843 if (shouldContinue === false || _this.mounted === false) return false;
9844
9845 var thisNode = _this.findDOMNode();
9846
9847 if (thisNode) {
9848 // Remove user-select hack
9849 if (_this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);
9850 }
9851
9852 (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent); // Reset the el.
9853
9854 _this.setState({
9855 dragging: false,
9856 lastX: NaN,
9857 lastY: NaN
9858 });
9859
9860 if (thisNode) {
9861 // Remove event handlers
9862 (0, _log.default)('DraggableCore: Removing handlers');
9863 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, _this.handleDrag);
9864 (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, _this.handleDragStop);
9865 }
9866 });
9867
9868 _defineProperty(_assertThisInitialized(_this), "onMouseDown", function (e) {
9869 dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse
9870
9871 return _this.handleDragStart(e);
9872 });
9873
9874 _defineProperty(_assertThisInitialized(_this), "onMouseUp", function (e) {
9875 dragEventFor = eventsFor.mouse;
9876 return _this.handleDragStop(e);
9877 });
9878
9879 _defineProperty(_assertThisInitialized(_this), "onTouchStart", function (e) {
9880 // We're on a touch device now, so change the event handlers
9881 dragEventFor = eventsFor.touch;
9882 return _this.handleDragStart(e);
9883 });
9884
9885 _defineProperty(_assertThisInitialized(_this), "onTouchEnd", function (e) {
9886 // We're on a touch device now, so change the event handlers
9887 dragEventFor = eventsFor.touch;
9888 return _this.handleDragStop(e);
9889 });
9890
9891 return _this;
9892 }
9893
9894 _createClass(DraggableCore, [{
9895 key: "componentDidMount",
9896 value: function componentDidMount() {
9897 this.mounted = true; // Touch handlers must be added with {passive: false} to be cancelable.
9898 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
9899
9900 var thisNode = this.findDOMNode();
9901
9902 if (thisNode) {
9903 (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
9904 passive: false
9905 });
9906 }
9907 }
9908 }, {
9909 key: "componentWillUnmount",
9910 value: function componentWillUnmount() {
9911 this.mounted = false; // Remove any leftover event handlers. Remove both touch and mouse handlers in case
9912 // some browser quirk caused a touch event to fire during a mouse move, or vice versa.
9913
9914 var thisNode = this.findDOMNode();
9915
9916 if (thisNode) {
9917 var ownerDocument = thisNode.ownerDocument;
9918 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);
9919 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);
9920 (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);
9921 (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);
9922 (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
9923 passive: false
9924 });
9925 if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);
9926 }
9927 } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
9928 // the underlying DOM node ourselves. See the README for more information.
9929
9930 }, {
9931 key: "findDOMNode",
9932 value: function findDOMNode()
9933 /*: ?HTMLElement*/
9934 {
9935 var _this$props, _this$props2, _this$props2$nodeRef;
9936
9937 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);
9938 }
9939 }, {
9940 key: "render",
9941 value: function render()
9942 /*: React.Element<any>*/
9943 {
9944 // Reuse the child provided
9945 // This makes it flexible to use whatever element is wanted (div, ul, etc)
9946 return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {
9947 // Note: mouseMove handler is attached to document so it will still function
9948 // when the user drags quickly and leaves the bounds of the element.
9949 onMouseDown: this.onMouseDown,
9950 onMouseUp: this.onMouseUp,
9951 // onTouchStart is added on `componentDidMount` so they can be added with
9952 // {passive: false}, which allows it to cancel. See
9953 // https://developers.google.com/web/updates/2017/01/scrolling-intervention
9954 onTouchEnd: this.onTouchEnd
9955 });
9956 }
9957 }]);
9958
9959 return DraggableCore;
9960 }(React.Component);
9961
9962 exports["default"] = DraggableCore;
9963
9964 _defineProperty(DraggableCore, "displayName", 'DraggableCore');
9965
9966 _defineProperty(DraggableCore, "propTypes", {
9967 /**
9968 * `allowAnyClick` allows dragging using any mouse button.
9969 * By default, we only accept the left button.
9970 *
9971 * Defaults to `false`.
9972 */
9973 allowAnyClick: _propTypes.default.bool,
9974
9975 /**
9976 * `disabled`, if true, stops the <Draggable> from dragging. All handlers,
9977 * with the exception of `onMouseDown`, will not fire.
9978 */
9979 disabled: _propTypes.default.bool,
9980
9981 /**
9982 * By default, we add 'user-select:none' attributes to the document body
9983 * to prevent ugly text selection during drag. If this is causing problems
9984 * for your app, set this to `false`.
9985 */
9986 enableUserSelectHack: _propTypes.default.bool,
9987
9988 /**
9989 * `offsetParent`, if set, uses the passed DOM node to compute drag offsets
9990 * instead of using the parent node.
9991 */
9992 offsetParent: function offsetParent(props
9993 /*: DraggableCoreProps*/
9994 , propName
9995 /*: $Keys<DraggableCoreProps>*/
9996 ) {
9997 if (props[propName] && props[propName].nodeType !== 1) {
9998 throw new Error('Draggable\'s offsetParent must be a DOM Node.');
9999 }
10000 },
10001
10002 /**
10003 * `grid` specifies the x and y that dragging should snap to.
10004 */
10005 grid: _propTypes.default.arrayOf(_propTypes.default.number),
10006
10007 /**
10008 * `handle` specifies a selector to be used as the handle that initiates drag.
10009 *
10010 * Example:
10011 *
10012 * ```jsx
10013 * let App = React.createClass({
10014 * render: function () {
10015 * return (
10016 * <Draggable handle=".handle">
10017 * <div>
10018 * <div className="handle">Click me to drag</div>
10019 * <div>This is some other content</div>
10020 * </div>
10021 * </Draggable>
10022 * );
10023 * }
10024 * });
10025 * ```
10026 */
10027 handle: _propTypes.default.string,
10028
10029 /**
10030 * `cancel` specifies a selector to be used to prevent drag initialization.
10031 *
10032 * Example:
10033 *
10034 * ```jsx
10035 * let App = React.createClass({
10036 * render: function () {
10037 * return(
10038 * <Draggable cancel=".cancel">
10039 * <div>
10040 * <div className="cancel">You can't drag from here</div>
10041 * <div>Dragging here works fine</div>
10042 * </div>
10043 * </Draggable>
10044 * );
10045 * }
10046 * });
10047 * ```
10048 */
10049 cancel: _propTypes.default.string,
10050
10051 /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.
10052 * Unfortunately, in order for <Draggable> to work properly, we need raw access
10053 * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`
10054 * as in this example:
10055 *
10056 * function MyComponent() {
10057 * const nodeRef = React.useRef(null);
10058 * return (
10059 * <Draggable nodeRef={nodeRef}>
10060 * <div ref={nodeRef}>Example Target</div>
10061 * </Draggable>
10062 * );
10063 * }
10064 *
10065 * This can be used for arbitrarily nested components, so long as the ref ends up
10066 * pointing to the actual child DOM node and not a custom component.
10067 */
10068 nodeRef: _propTypes.default.object,
10069
10070 /**
10071 * Called when dragging starts.
10072 * If this function returns the boolean false, dragging will be canceled.
10073 */
10074 onStart: _propTypes.default.func,
10075
10076 /**
10077 * Called while dragging.
10078 * If this function returns the boolean false, dragging will be canceled.
10079 */
10080 onDrag: _propTypes.default.func,
10081
10082 /**
10083 * Called when dragging stops.
10084 * If this function returns the boolean false, the drag will remain active.
10085 */
10086 onStop: _propTypes.default.func,
10087
10088 /**
10089 * A workaround option which can be passed if onMouseDown needs to be accessed,
10090 * since it'll always be blocked (as there is internal use of onMouseDown)
10091 */
10092 onMouseDown: _propTypes.default.func,
10093
10094 /**
10095 * `scale`, if set, applies scaling while dragging an element
10096 */
10097 scale: _propTypes.default.number,
10098
10099 /**
10100 * These properties should be defined on the child, not here.
10101 */
10102 className: _shims.dontSetMe,
10103 style: _shims.dontSetMe,
10104 transform: _shims.dontSetMe
10105 });
10106
10107 _defineProperty(DraggableCore, "defaultProps", {
10108 allowAnyClick: false,
10109 // by default only accept left click
10110 disabled: false,
10111 enableUserSelectHack: true,
10112 onStart: function onStart() {},
10113 onDrag: function onDrag() {},
10114 onStop: function onStop() {},
10115 onMouseDown: function onMouseDown() {},
10116 scale: 1
10117 });
10118
10119 /***/ }),
10120
10121 /***/ "../node_modules/react-draggable/build/cjs/cjs.js":
10122 /*!********************************************************!*\
10123 !*** ../node_modules/react-draggable/build/cjs/cjs.js ***!
10124 \********************************************************/
10125 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10126
10127 "use strict";
10128
10129
10130 var _require = __webpack_require__(/*! ./Draggable */ "../node_modules/react-draggable/build/cjs/Draggable.js"),
10131 Draggable = _require.default,
10132 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'.
10133 // See https://github.com/mzabriskie/react-draggable/pull/254
10134 // and https://github.com/mzabriskie/react-draggable/issues/266
10135
10136
10137 module.exports = Draggable;
10138 module.exports["default"] = Draggable;
10139 module.exports.DraggableCore = DraggableCore;
10140
10141 /***/ }),
10142
10143 /***/ "../node_modules/react-draggable/build/cjs/utils/domFns.js":
10144 /*!*****************************************************************!*\
10145 !*** ../node_modules/react-draggable/build/cjs/utils/domFns.js ***!
10146 \*****************************************************************/
10147 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10148
10149 "use strict";
10150
10151
10152 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); }
10153
10154 Object.defineProperty(exports, "__esModule", ({
10155 value: true
10156 }));
10157 exports.addClassName = addClassName;
10158 exports.addEvent = addEvent;
10159 exports.addUserSelectStyles = addUserSelectStyles;
10160 exports.createCSSTransform = createCSSTransform;
10161 exports.createSVGTransform = createSVGTransform;
10162 exports.getTouch = getTouch;
10163 exports.getTouchIdentifier = getTouchIdentifier;
10164 exports.getTranslation = getTranslation;
10165 exports.innerHeight = innerHeight;
10166 exports.innerWidth = innerWidth;
10167 exports.matchesSelector = matchesSelector;
10168 exports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;
10169 exports.offsetXYFromParent = offsetXYFromParent;
10170 exports.outerHeight = outerHeight;
10171 exports.outerWidth = outerWidth;
10172 exports.removeClassName = removeClassName;
10173 exports.removeEvent = removeEvent;
10174 exports.removeUserSelectStyles = removeUserSelectStyles;
10175
10176 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10177
10178 var _getPrefix = _interopRequireWildcard(__webpack_require__(/*! ./getPrefix */ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js"));
10179
10180 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); }
10181
10182 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; }
10183
10184 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; }
10185
10186 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; }
10187
10188 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; }
10189
10190 var matchesSelectorFunc = '';
10191
10192 function matchesSelector(el
10193 /*: Node*/
10194 , selector
10195 /*: string*/
10196 )
10197 /*: boolean*/
10198 {
10199 if (!matchesSelectorFunc) {
10200 matchesSelectorFunc = (0, _shims.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {
10201 // $FlowIgnore: Doesn't think elements are indexable
10202 return (0, _shims.isFunction)(el[method]);
10203 });
10204 } // Might not be found entirely (not an Element?) - in that case, bail
10205 // $FlowIgnore: Doesn't think elements are indexable
10206
10207
10208 if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false; // $FlowIgnore: Doesn't think elements are indexable
10209
10210 return el[matchesSelectorFunc](selector);
10211 } // Works up the tree to the draggable itself attempting to match selector.
10212
10213
10214 function matchesSelectorAndParentsTo(el
10215 /*: Node*/
10216 , selector
10217 /*: string*/
10218 , baseNode
10219 /*: Node*/
10220 )
10221 /*: boolean*/
10222 {
10223 var node = el;
10224
10225 do {
10226 if (matchesSelector(node, selector)) return true;
10227 if (node === baseNode) return false;
10228 node = node.parentNode;
10229 } while (node);
10230
10231 return false;
10232 }
10233
10234 function addEvent(el
10235 /*: ?Node*/
10236 , event
10237 /*: string*/
10238 , handler
10239 /*: Function*/
10240 , inputOptions
10241 /*: Object*/
10242 )
10243 /*: void*/
10244 {
10245 if (!el) return;
10246
10247 var options = _objectSpread({
10248 capture: true
10249 }, inputOptions); // $FlowIgnore[method-unbinding]
10250
10251
10252 if (el.addEventListener) {
10253 el.addEventListener(event, handler, options);
10254 } else if (el.attachEvent) {
10255 el.attachEvent('on' + event, handler);
10256 } else {
10257 // $FlowIgnore: Doesn't think elements are indexable
10258 el['on' + event] = handler;
10259 }
10260 }
10261
10262 function removeEvent(el
10263 /*: ?Node*/
10264 , event
10265 /*: string*/
10266 , handler
10267 /*: Function*/
10268 , inputOptions
10269 /*: Object*/
10270 )
10271 /*: void*/
10272 {
10273 if (!el) return;
10274
10275 var options = _objectSpread({
10276 capture: true
10277 }, inputOptions); // $FlowIgnore[method-unbinding]
10278
10279
10280 if (el.removeEventListener) {
10281 el.removeEventListener(event, handler, options);
10282 } else if (el.detachEvent) {
10283 el.detachEvent('on' + event, handler);
10284 } else {
10285 // $FlowIgnore: Doesn't think elements are indexable
10286 el['on' + event] = null;
10287 }
10288 }
10289
10290 function outerHeight(node
10291 /*: HTMLElement*/
10292 )
10293 /*: number*/
10294 {
10295 // This is deliberately excluding margin for our calculations, since we are using
10296 // offsetTop which is including margin. See getBoundPosition
10297 var height = node.clientHeight;
10298 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10299 height += (0, _shims.int)(computedStyle.borderTopWidth);
10300 height += (0, _shims.int)(computedStyle.borderBottomWidth);
10301 return height;
10302 }
10303
10304 function outerWidth(node
10305 /*: HTMLElement*/
10306 )
10307 /*: number*/
10308 {
10309 // This is deliberately excluding margin for our calculations, since we are using
10310 // offsetLeft which is including margin. See getBoundPosition
10311 var width = node.clientWidth;
10312 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10313 width += (0, _shims.int)(computedStyle.borderLeftWidth);
10314 width += (0, _shims.int)(computedStyle.borderRightWidth);
10315 return width;
10316 }
10317
10318 function innerHeight(node
10319 /*: HTMLElement*/
10320 )
10321 /*: number*/
10322 {
10323 var height = node.clientHeight;
10324 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10325 height -= (0, _shims.int)(computedStyle.paddingTop);
10326 height -= (0, _shims.int)(computedStyle.paddingBottom);
10327 return height;
10328 }
10329
10330 function innerWidth(node
10331 /*: HTMLElement*/
10332 )
10333 /*: number*/
10334 {
10335 var width = node.clientWidth;
10336 var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10337 width -= (0, _shims.int)(computedStyle.paddingLeft);
10338 width -= (0, _shims.int)(computedStyle.paddingRight);
10339 return width;
10340 }
10341 /*:: interface EventWithOffset {
10342 clientX: number, clientY: number
10343 }*/
10344
10345
10346 // Get from offsetParent
10347 function offsetXYFromParent(evt
10348 /*: EventWithOffset*/
10349 , offsetParent
10350 /*: HTMLElement*/
10351 , scale
10352 /*: number*/
10353 )
10354 /*: ControlPosition*/
10355 {
10356 var isBody = offsetParent === offsetParent.ownerDocument.body;
10357 var offsetParentRect = isBody ? {
10358 left: 0,
10359 top: 0
10360 } : offsetParent.getBoundingClientRect();
10361 var x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;
10362 var y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;
10363 return {
10364 x: x,
10365 y: y
10366 };
10367 }
10368
10369 function createCSSTransform(controlPos
10370 /*: ControlPosition*/
10371 , positionOffset
10372 /*: PositionOffsetControlPosition*/
10373 )
10374 /*: Object*/
10375 {
10376 var translation = getTranslation(controlPos, positionOffset, 'px');
10377 return _defineProperty({}, (0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default), translation);
10378 }
10379
10380 function createSVGTransform(controlPos
10381 /*: ControlPosition*/
10382 , positionOffset
10383 /*: PositionOffsetControlPosition*/
10384 )
10385 /*: string*/
10386 {
10387 var translation = getTranslation(controlPos, positionOffset, '');
10388 return translation;
10389 }
10390
10391 function getTranslation(_ref2, positionOffset
10392 /*: PositionOffsetControlPosition*/
10393 , unitSuffix
10394 /*: string*/
10395 )
10396 /*: string*/
10397 {
10398 var x = _ref2.x,
10399 y = _ref2.y;
10400 var translation = "translate(".concat(x).concat(unitSuffix, ",").concat(y).concat(unitSuffix, ")");
10401
10402 if (positionOffset) {
10403 var defaultX = "".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);
10404 var defaultY = "".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);
10405 translation = "translate(".concat(defaultX, ", ").concat(defaultY, ")") + translation;
10406 }
10407
10408 return translation;
10409 }
10410
10411 function getTouch(e
10412 /*: MouseTouchEvent*/
10413 , identifier
10414 /*: number*/
10415 )
10416 /*: ?{clientX: number, clientY: number}*/
10417 {
10418 return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, function (t) {
10419 return identifier === t.identifier;
10420 }) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, function (t) {
10421 return identifier === t.identifier;
10422 });
10423 }
10424
10425 function getTouchIdentifier(e
10426 /*: MouseTouchEvent*/
10427 )
10428 /*: ?number*/
10429 {
10430 if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;
10431 if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;
10432 } // User-select Hacks:
10433 //
10434 // Useful for preventing blue highlights all over everything when dragging.
10435 // Note we're passing `document` b/c we could be iframed
10436
10437
10438 function addUserSelectStyles(doc
10439 /*: ?Document*/
10440 ) {
10441 if (!doc) return;
10442 var styleEl = doc.getElementById('react-draggable-style-el');
10443
10444 if (!styleEl) {
10445 styleEl = doc.createElement('style');
10446 styleEl.type = 'text/css';
10447 styleEl.id = 'react-draggable-style-el';
10448 styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n';
10449 styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\n';
10450 doc.getElementsByTagName('head')[0].appendChild(styleEl);
10451 }
10452
10453 if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');
10454 }
10455
10456 function removeUserSelectStyles(doc
10457 /*: ?Document*/
10458 ) {
10459 if (!doc) return;
10460
10461 try {
10462 if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection'); // $FlowIgnore: IE
10463
10464 if (doc.selection) {
10465 // $FlowIgnore: IE
10466 doc.selection.empty();
10467 } else {
10468 // Remove selection caused by scroll, unless it's a focused input
10469 // (we use doc.defaultView in case we're in an iframe)
10470 var selection = (doc.defaultView || window).getSelection();
10471
10472 if (selection && selection.type !== 'Caret') {
10473 selection.removeAllRanges();
10474 }
10475 }
10476 } catch (e) {// probably IE
10477 }
10478 }
10479
10480 function addClassName(el
10481 /*: HTMLElement*/
10482 , className
10483 /*: string*/
10484 ) {
10485 if (el.classList) {
10486 el.classList.add(className);
10487 } else {
10488 if (!el.className.match(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)")))) {
10489 el.className += " ".concat(className);
10490 }
10491 }
10492 }
10493
10494 function removeClassName(el
10495 /*: HTMLElement*/
10496 , className
10497 /*: string*/
10498 ) {
10499 if (el.classList) {
10500 el.classList.remove(className);
10501 } else {
10502 el.className = el.className.replace(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)"), 'g'), '');
10503 }
10504 }
10505
10506 /***/ }),
10507
10508 /***/ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js":
10509 /*!********************************************************************!*\
10510 !*** ../node_modules/react-draggable/build/cjs/utils/getPrefix.js ***!
10511 \********************************************************************/
10512 /***/ ((__unused_webpack_module, exports) => {
10513
10514 "use strict";
10515
10516
10517 Object.defineProperty(exports, "__esModule", ({
10518 value: true
10519 }));
10520 exports.browserPrefixToKey = browserPrefixToKey;
10521 exports.browserPrefixToStyle = browserPrefixToStyle;
10522 exports["default"] = void 0;
10523 exports.getPrefix = getPrefix;
10524 var prefixes = ['Moz', 'Webkit', 'O', 'ms'];
10525
10526 function getPrefix()
10527 /*: string*/
10528 {
10529 var _window$document, _window$document$docu;
10530
10531 var prop
10532 /*: string*/
10533 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';
10534 // Ensure we're running in an environment where there is actually a global
10535 // `window` obj
10536 if (typeof window === 'undefined') return ''; // If we're in a pseudo-browser server-side environment, this access
10537 // path may not exist, so bail out if it doesn't.
10538
10539 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;
10540 if (!style) return '';
10541 if (prop in style) return '';
10542
10543 for (var i = 0; i < prefixes.length; i++) {
10544 if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];
10545 }
10546
10547 return '';
10548 }
10549
10550 function browserPrefixToKey(prop
10551 /*: string*/
10552 , prefix
10553 /*: string*/
10554 )
10555 /*: string*/
10556 {
10557 return prefix ? "".concat(prefix).concat(kebabToTitleCase(prop)) : prop;
10558 }
10559
10560 function browserPrefixToStyle(prop
10561 /*: string*/
10562 , prefix
10563 /*: string*/
10564 )
10565 /*: string*/
10566 {
10567 return prefix ? "-".concat(prefix.toLowerCase(), "-").concat(prop) : prop;
10568 }
10569
10570 function kebabToTitleCase(str
10571 /*: string*/
10572 )
10573 /*: string*/
10574 {
10575 var out = '';
10576 var shouldCapitalize = true;
10577
10578 for (var i = 0; i < str.length; i++) {
10579 if (shouldCapitalize) {
10580 out += str[i].toUpperCase();
10581 shouldCapitalize = false;
10582 } else if (str[i] === '-') {
10583 shouldCapitalize = true;
10584 } else {
10585 out += str[i];
10586 }
10587 }
10588
10589 return out;
10590 } // Default export is the prefix itself, like 'Moz', 'Webkit', etc
10591 // Note that you may have to re-test for certain things; for instance, Chrome 50
10592 // can handle unprefixed `transform`, but not unprefixed `user-select`
10593
10594
10595 var _default = (getPrefix()
10596 /*: string*/
10597 );
10598
10599 exports["default"] = _default;
10600
10601 /***/ }),
10602
10603 /***/ "../node_modules/react-draggable/build/cjs/utils/log.js":
10604 /*!**************************************************************!*\
10605 !*** ../node_modules/react-draggable/build/cjs/utils/log.js ***!
10606 \**************************************************************/
10607 /***/ ((__unused_webpack_module, exports) => {
10608
10609 "use strict";
10610
10611
10612 Object.defineProperty(exports, "__esModule", ({
10613 value: true
10614 }));
10615 exports["default"] = log;
10616
10617 /*eslint no-console:0*/
10618 function log() {
10619 var _console;
10620
10621 if (false) {}
10622 }
10623
10624 /***/ }),
10625
10626 /***/ "../node_modules/react-draggable/build/cjs/utils/positionFns.js":
10627 /*!**********************************************************************!*\
10628 !*** ../node_modules/react-draggable/build/cjs/utils/positionFns.js ***!
10629 \**********************************************************************/
10630 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10631
10632 "use strict";
10633
10634
10635 Object.defineProperty(exports, "__esModule", ({
10636 value: true
10637 }));
10638 exports.canDragX = canDragX;
10639 exports.canDragY = canDragY;
10640 exports.createCoreData = createCoreData;
10641 exports.createDraggableData = createDraggableData;
10642 exports.getBoundPosition = getBoundPosition;
10643 exports.getControlPosition = getControlPosition;
10644 exports.snapToGrid = snapToGrid;
10645
10646 var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10647
10648 var _domFns = __webpack_require__(/*! ./domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
10649
10650 function getBoundPosition(draggable
10651 /*: Draggable*/
10652 , x
10653 /*: number*/
10654 , y
10655 /*: number*/
10656 )
10657 /*: [number, number]*/
10658 {
10659 // If no bounds, short-circuit and move on
10660 if (!draggable.props.bounds) return [x, y]; // Clone new bounds
10661
10662 var bounds = draggable.props.bounds;
10663 bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);
10664 var node = findDOMNode(draggable);
10665
10666 if (typeof bounds === 'string') {
10667 var ownerDocument = node.ownerDocument;
10668 var ownerWindow = ownerDocument.defaultView;
10669 var boundNode;
10670
10671 if (bounds === 'parent') {
10672 boundNode = node.parentNode;
10673 } else {
10674 boundNode = ownerDocument.querySelector(bounds);
10675 }
10676
10677 if (!(boundNode instanceof ownerWindow.HTMLElement)) {
10678 throw new Error('Bounds selector "' + bounds + '" could not find an element.');
10679 }
10680
10681 var boundNodeEl
10682 /*: HTMLElement*/
10683 = boundNode; // for Flow, can't seem to refine correctly
10684
10685 var nodeStyle = ownerWindow.getComputedStyle(node);
10686 var boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl); // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.
10687
10688 bounds = {
10689 left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),
10690 top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),
10691 right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),
10692 bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)
10693 };
10694 } // Keep x and y below right and bottom limits...
10695
10696
10697 if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);
10698 if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom); // But above left and top limits.
10699
10700 if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);
10701 if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);
10702 return [x, y];
10703 }
10704
10705 function snapToGrid(grid
10706 /*: [number, number]*/
10707 , pendingX
10708 /*: number*/
10709 , pendingY
10710 /*: number*/
10711 )
10712 /*: [number, number]*/
10713 {
10714 var x = Math.round(pendingX / grid[0]) * grid[0];
10715 var y = Math.round(pendingY / grid[1]) * grid[1];
10716 return [x, y];
10717 }
10718
10719 function canDragX(draggable
10720 /*: Draggable*/
10721 )
10722 /*: boolean*/
10723 {
10724 return draggable.props.axis === 'both' || draggable.props.axis === 'x';
10725 }
10726
10727 function canDragY(draggable
10728 /*: Draggable*/
10729 )
10730 /*: boolean*/
10731 {
10732 return draggable.props.axis === 'both' || draggable.props.axis === 'y';
10733 } // Get {x, y} positions from event.
10734
10735
10736 function getControlPosition(e
10737 /*: MouseTouchEvent*/
10738 , touchIdentifier
10739 /*: ?number*/
10740 , draggableCore
10741 /*: DraggableCore*/
10742 )
10743 /*: ?ControlPosition*/
10744 {
10745 var touchObj = typeof touchIdentifier === 'number' ? (0, _domFns.getTouch)(e, touchIdentifier) : null;
10746 if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch
10747
10748 var node = findDOMNode(draggableCore); // User can provide an offsetParent if desired.
10749
10750 var offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;
10751 return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);
10752 } // Create an data object exposed by <DraggableCore>'s events
10753
10754
10755 function createCoreData(draggable
10756 /*: DraggableCore*/
10757 , x
10758 /*: number*/
10759 , y
10760 /*: number*/
10761 )
10762 /*: DraggableData*/
10763 {
10764 var state = draggable.state;
10765 var isStart = !(0, _shims.isNum)(state.lastX);
10766 var node = findDOMNode(draggable);
10767
10768 if (isStart) {
10769 // If this is our first move, use the x and y as last coords.
10770 return {
10771 node: node,
10772 deltaX: 0,
10773 deltaY: 0,
10774 lastX: x,
10775 lastY: y,
10776 x: x,
10777 y: y
10778 };
10779 } else {
10780 // Otherwise calculate proper values.
10781 return {
10782 node: node,
10783 deltaX: x - state.lastX,
10784 deltaY: y - state.lastY,
10785 lastX: state.lastX,
10786 lastY: state.lastY,
10787 x: x,
10788 y: y
10789 };
10790 }
10791 } // Create an data exposed by <Draggable>'s events
10792
10793
10794 function createDraggableData(draggable
10795 /*: Draggable*/
10796 , coreData
10797 /*: DraggableData*/
10798 )
10799 /*: DraggableData*/
10800 {
10801 var scale = draggable.props.scale;
10802 return {
10803 node: coreData.node,
10804 x: draggable.state.x + coreData.deltaX / scale,
10805 y: draggable.state.y + coreData.deltaY / scale,
10806 deltaX: coreData.deltaX / scale,
10807 deltaY: coreData.deltaY / scale,
10808 lastX: draggable.state.x,
10809 lastY: draggable.state.y
10810 };
10811 } // A lot faster than stringify/parse
10812
10813
10814 function cloneBounds(bounds
10815 /*: Bounds*/
10816 )
10817 /*: Bounds*/
10818 {
10819 return {
10820 left: bounds.left,
10821 top: bounds.top,
10822 right: bounds.right,
10823 bottom: bounds.bottom
10824 };
10825 }
10826
10827 function findDOMNode(draggable
10828 /*: Draggable | DraggableCore*/
10829 )
10830 /*: HTMLElement*/
10831 {
10832 var node = draggable.findDOMNode();
10833
10834 if (!node) {
10835 throw new Error('<DraggableCore>: Unmounted during event!');
10836 } // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME
10837
10838
10839 return node;
10840 }
10841
10842 /***/ }),
10843
10844 /***/ "../node_modules/react-draggable/build/cjs/utils/shims.js":
10845 /*!****************************************************************!*\
10846 !*** ../node_modules/react-draggable/build/cjs/utils/shims.js ***!
10847 \****************************************************************/
10848 /***/ ((__unused_webpack_module, exports) => {
10849
10850 "use strict";
10851
10852
10853 Object.defineProperty(exports, "__esModule", ({
10854 value: true
10855 }));
10856 exports.dontSetMe = dontSetMe;
10857 exports.findInArray = findInArray;
10858 exports.int = int;
10859 exports.isFunction = isFunction;
10860 exports.isNum = isNum;
10861
10862 // @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc
10863 function findInArray(array
10864 /*: Array<any> | TouchList*/
10865 , callback
10866 /*: Function*/
10867 )
10868 /*: any*/
10869 {
10870 for (var i = 0, length = array.length; i < length; i++) {
10871 if (callback.apply(callback, [array[i], i, array])) return array[i];
10872 }
10873 }
10874
10875 function isFunction(func
10876 /*: any*/
10877 )
10878 /*: boolean %checks*/
10879 {
10880 // $FlowIgnore[method-unbinding]
10881 return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';
10882 }
10883
10884 function isNum(num
10885 /*: any*/
10886 )
10887 /*: boolean %checks*/
10888 {
10889 return typeof num === 'number' && !isNaN(num);
10890 }
10891
10892 function int(a
10893 /*: string*/
10894 )
10895 /*: number*/
10896 {
10897 return parseInt(a, 10);
10898 }
10899
10900 function dontSetMe(props
10901 /*: Object*/
10902 , propName
10903 /*: string*/
10904 , componentName
10905 /*: string*/
10906 )
10907 /*: ?Error*/
10908 {
10909 if (props[propName]) {
10910 return new Error("Invalid prop ".concat(propName, " passed to ").concat(componentName, " - do not set this, set it on the child."));
10911 }
10912 }
10913
10914 /***/ }),
10915
10916 /***/ "../node_modules/react-is/cjs/react-is.development.js":
10917 /*!************************************************************!*\
10918 !*** ../node_modules/react-is/cjs/react-is.development.js ***!
10919 \************************************************************/
10920 /***/ ((__unused_webpack_module, exports) => {
10921
10922 "use strict";
10923 /**
10924 * @license React
10925 * react-is.development.js
10926 *
10927 * Copyright (c) Facebook, Inc. and its affiliates.
10928 *
10929 * This source code is licensed under the MIT license found in the
10930 * LICENSE file in the root directory of this source tree.
10931 */
10932
10933
10934
10935 if (true) {
10936 (function() {
10937 'use strict';
10938
10939 // ATTENTION
10940 // When adding new symbols to this file,
10941 // Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'
10942 // The Symbol used to tag the ReactElement-like types.
10943 var REACT_ELEMENT_TYPE = Symbol.for('react.element');
10944 var REACT_PORTAL_TYPE = Symbol.for('react.portal');
10945 var REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');
10946 var REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');
10947 var REACT_PROFILER_TYPE = Symbol.for('react.profiler');
10948 var REACT_PROVIDER_TYPE = Symbol.for('react.provider');
10949 var REACT_CONTEXT_TYPE = Symbol.for('react.context');
10950 var REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_context');
10951 var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');
10952 var REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');
10953 var REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');
10954 var REACT_MEMO_TYPE = Symbol.for('react.memo');
10955 var REACT_LAZY_TYPE = Symbol.for('react.lazy');
10956 var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');
10957
10958 // -----------------------------------------------------------------------------
10959
10960 var enableScopeAPI = false; // Experimental Create Event Handle API.
10961 var enableCacheElement = false;
10962 var enableTransitionTracing = false; // No known bugs, but needs performance testing
10963
10964 var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber
10965 // stuff. Intended to enable React core members to more easily debug scheduling
10966 // issues in DEV builds.
10967
10968 var enableDebugTracing = false; // Track which Fiber(s) schedule render work.
10969
10970 var REACT_MODULE_REFERENCE;
10971
10972 {
10973 REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');
10974 }
10975
10976 function isValidElementType(type) {
10977 if (typeof type === 'string' || typeof type === 'function') {
10978 return true;
10979 } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).
10980
10981
10982 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 ) {
10983 return true;
10984 }
10985
10986 if (typeof type === 'object' && type !== null) {
10987 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
10988 // types supported by any Flight configuration anywhere since
10989 // we don't know which Flight build this will end up being used
10990 // with.
10991 type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {
10992 return true;
10993 }
10994 }
10995
10996 return false;
10997 }
10998
10999 function typeOf(object) {
11000 if (typeof object === 'object' && object !== null) {
11001 var $$typeof = object.$$typeof;
11002
11003 switch ($$typeof) {
11004 case REACT_ELEMENT_TYPE:
11005 var type = object.type;
11006
11007 switch (type) {
11008 case REACT_FRAGMENT_TYPE:
11009 case REACT_PROFILER_TYPE:
11010 case REACT_STRICT_MODE_TYPE:
11011 case REACT_SUSPENSE_TYPE:
11012 case REACT_SUSPENSE_LIST_TYPE:
11013 return type;
11014
11015 default:
11016 var $$typeofType = type && type.$$typeof;
11017
11018 switch ($$typeofType) {
11019 case REACT_SERVER_CONTEXT_TYPE:
11020 case REACT_CONTEXT_TYPE:
11021 case REACT_FORWARD_REF_TYPE:
11022 case REACT_LAZY_TYPE:
11023 case REACT_MEMO_TYPE:
11024 case REACT_PROVIDER_TYPE:
11025 return $$typeofType;
11026
11027 default:
11028 return $$typeof;
11029 }
11030
11031 }
11032
11033 case REACT_PORTAL_TYPE:
11034 return $$typeof;
11035 }
11036 }
11037
11038 return undefined;
11039 }
11040 var ContextConsumer = REACT_CONTEXT_TYPE;
11041 var ContextProvider = REACT_PROVIDER_TYPE;
11042 var Element = REACT_ELEMENT_TYPE;
11043 var ForwardRef = REACT_FORWARD_REF_TYPE;
11044 var Fragment = REACT_FRAGMENT_TYPE;
11045 var Lazy = REACT_LAZY_TYPE;
11046 var Memo = REACT_MEMO_TYPE;
11047 var Portal = REACT_PORTAL_TYPE;
11048 var Profiler = REACT_PROFILER_TYPE;
11049 var StrictMode = REACT_STRICT_MODE_TYPE;
11050 var Suspense = REACT_SUSPENSE_TYPE;
11051 var SuspenseList = REACT_SUSPENSE_LIST_TYPE;
11052 var hasWarnedAboutDeprecatedIsAsyncMode = false;
11053 var hasWarnedAboutDeprecatedIsConcurrentMode = false; // AsyncMode should be deprecated
11054
11055 function isAsyncMode(object) {
11056 {
11057 if (!hasWarnedAboutDeprecatedIsAsyncMode) {
11058 hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
11059
11060 console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11061 }
11062 }
11063
11064 return false;
11065 }
11066 function isConcurrentMode(object) {
11067 {
11068 if (!hasWarnedAboutDeprecatedIsConcurrentMode) {
11069 hasWarnedAboutDeprecatedIsConcurrentMode = true; // Using console['warn'] to evade Babel and ESLint
11070
11071 console['warn']('The ReactIs.isConcurrentMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11072 }
11073 }
11074
11075 return false;
11076 }
11077 function isContextConsumer(object) {
11078 return typeOf(object) === REACT_CONTEXT_TYPE;
11079 }
11080 function isContextProvider(object) {
11081 return typeOf(object) === REACT_PROVIDER_TYPE;
11082 }
11083 function isElement(object) {
11084 return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
11085 }
11086 function isForwardRef(object) {
11087 return typeOf(object) === REACT_FORWARD_REF_TYPE;
11088 }
11089 function isFragment(object) {
11090 return typeOf(object) === REACT_FRAGMENT_TYPE;
11091 }
11092 function isLazy(object) {
11093 return typeOf(object) === REACT_LAZY_TYPE;
11094 }
11095 function isMemo(object) {
11096 return typeOf(object) === REACT_MEMO_TYPE;
11097 }
11098 function isPortal(object) {
11099 return typeOf(object) === REACT_PORTAL_TYPE;
11100 }
11101 function isProfiler(object) {
11102 return typeOf(object) === REACT_PROFILER_TYPE;
11103 }
11104 function isStrictMode(object) {
11105 return typeOf(object) === REACT_STRICT_MODE_TYPE;
11106 }
11107 function isSuspense(object) {
11108 return typeOf(object) === REACT_SUSPENSE_TYPE;
11109 }
11110 function isSuspenseList(object) {
11111 return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;
11112 }
11113
11114 exports.ContextConsumer = ContextConsumer;
11115 exports.ContextProvider = ContextProvider;
11116 exports.Element = Element;
11117 exports.ForwardRef = ForwardRef;
11118 exports.Fragment = Fragment;
11119 exports.Lazy = Lazy;
11120 exports.Memo = Memo;
11121 exports.Portal = Portal;
11122 exports.Profiler = Profiler;
11123 exports.StrictMode = StrictMode;
11124 exports.Suspense = Suspense;
11125 exports.SuspenseList = SuspenseList;
11126 exports.isAsyncMode = isAsyncMode;
11127 exports.isConcurrentMode = isConcurrentMode;
11128 exports.isContextConsumer = isContextConsumer;
11129 exports.isContextProvider = isContextProvider;
11130 exports.isElement = isElement;
11131 exports.isForwardRef = isForwardRef;
11132 exports.isFragment = isFragment;
11133 exports.isLazy = isLazy;
11134 exports.isMemo = isMemo;
11135 exports.isPortal = isPortal;
11136 exports.isProfiler = isProfiler;
11137 exports.isStrictMode = isStrictMode;
11138 exports.isSuspense = isSuspense;
11139 exports.isSuspenseList = isSuspenseList;
11140 exports.isValidElementType = isValidElementType;
11141 exports.typeOf = typeOf;
11142 })();
11143 }
11144
11145
11146 /***/ }),
11147
11148 /***/ "../node_modules/react-is/index.js":
11149 /*!*****************************************!*\
11150 !*** ../node_modules/react-is/index.js ***!
11151 \*****************************************/
11152 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11153
11154 "use strict";
11155
11156
11157 if (false) {} else {
11158 module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
11159 }
11160
11161
11162 /***/ }),
11163
11164 /***/ "../node_modules/shallowequal/index.js":
11165 /*!*********************************************!*\
11166 !*** ../node_modules/shallowequal/index.js ***!
11167 \*********************************************/
11168 /***/ ((module) => {
11169
11170 //
11171
11172 module.exports = function shallowEqual(objA, objB, compare, compareContext) {
11173 var ret = compare ? compare.call(compareContext, objA, objB) : void 0;
11174
11175 if (ret !== void 0) {
11176 return !!ret;
11177 }
11178
11179 if (objA === objB) {
11180 return true;
11181 }
11182
11183 if (typeof objA !== "object" || !objA || typeof objB !== "object" || !objB) {
11184 return false;
11185 }
11186
11187 var keysA = Object.keys(objA);
11188 var keysB = Object.keys(objB);
11189
11190 if (keysA.length !== keysB.length) {
11191 return false;
11192 }
11193
11194 var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);
11195
11196 // Test for A's keys different from B.
11197 for (var idx = 0; idx < keysA.length; idx++) {
11198 var key = keysA[idx];
11199
11200 if (!bHasOwnProperty(key)) {
11201 return false;
11202 }
11203
11204 var valueA = objA[key];
11205 var valueB = objB[key];
11206
11207 ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;
11208
11209 if (ret === false || (ret === void 0 && valueA !== valueB)) {
11210 return false;
11211 }
11212 }
11213
11214 return true;
11215 };
11216
11217
11218 /***/ }),
11219
11220 /***/ "../node_modules/styled-components/dist/styled-components.browser.esm.js":
11221 /*!*******************************************************************************!*\
11222 !*** ../node_modules/styled-components/dist/styled-components.browser.esm.js ***!
11223 \*******************************************************************************/
11224 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11225
11226 "use strict";
11227 __webpack_require__.r(__webpack_exports__);
11228 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11229 /* harmony export */ ServerStyleSheet: () => (/* binding */ Ue),
11230 /* harmony export */ StyleSheetConsumer: () => (/* binding */ ue),
11231 /* harmony export */ StyleSheetContext: () => (/* binding */ ce),
11232 /* harmony export */ StyleSheetManager: () => (/* binding */ me),
11233 /* harmony export */ ThemeConsumer: () => (/* binding */ Ge),
11234 /* harmony export */ ThemeContext: () => (/* binding */ Me),
11235 /* harmony export */ ThemeProvider: () => (/* binding */ Le),
11236 /* harmony export */ __PRIVATE__: () => (/* binding */ Ze),
11237 /* harmony export */ createGlobalStyle: () => (/* binding */ $e),
11238 /* harmony export */ css: () => (/* binding */ Ae),
11239 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
11240 /* harmony export */ isStyledComponent: () => (/* binding */ _),
11241 /* harmony export */ keyframes: () => (/* binding */ We),
11242 /* harmony export */ useTheme: () => (/* binding */ Xe),
11243 /* harmony export */ version: () => (/* binding */ A),
11244 /* harmony export */ withTheme: () => (/* binding */ Je)
11245 /* harmony export */ });
11246 /* harmony import */ var react_is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
11247 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
11248 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
11249 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! shallowequal */ "../node_modules/shallowequal/index.js");
11250 /* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(shallowequal__WEBPACK_IMPORTED_MODULE_2__);
11251 /* harmony import */ var _emotion_stylis__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @emotion/stylis */ "../node_modules/@emotion/stylis/dist/stylis.browser.esm.js");
11252 /* 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");
11253 /* 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");
11254 /* 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");
11255 /* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6__);
11256 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);
11257 //# sourceMappingURL=styled-components.browser.esm.js.map
11258
11259
11260 /***/ }),
11261
11262 /***/ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js":
11263 /*!*****************************************************************************************************!*\
11264 !*** ../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js ***!
11265 \*****************************************************************************************************/
11266 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11267
11268 "use strict";
11269 __webpack_require__.r(__webpack_exports__);
11270 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11271 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
11272 /* harmony export */ });
11273 var unitlessKeys = {
11274 animationIterationCount: 1,
11275 borderImageOutset: 1,
11276 borderImageSlice: 1,
11277 borderImageWidth: 1,
11278 boxFlex: 1,
11279 boxFlexGroup: 1,
11280 boxOrdinalGroup: 1,
11281 columnCount: 1,
11282 columns: 1,
11283 flex: 1,
11284 flexGrow: 1,
11285 flexPositive: 1,
11286 flexShrink: 1,
11287 flexNegative: 1,
11288 flexOrder: 1,
11289 gridRow: 1,
11290 gridRowEnd: 1,
11291 gridRowSpan: 1,
11292 gridRowStart: 1,
11293 gridColumn: 1,
11294 gridColumnEnd: 1,
11295 gridColumnSpan: 1,
11296 gridColumnStart: 1,
11297 msGridRow: 1,
11298 msGridRowSpan: 1,
11299 msGridColumn: 1,
11300 msGridColumnSpan: 1,
11301 fontWeight: 1,
11302 lineHeight: 1,
11303 opacity: 1,
11304 order: 1,
11305 orphans: 1,
11306 tabSize: 1,
11307 widows: 1,
11308 zIndex: 1,
11309 zoom: 1,
11310 WebkitLineClamp: 1,
11311 // SVG-related properties
11312 fillOpacity: 1,
11313 floodOpacity: 1,
11314 stopOpacity: 1,
11315 strokeDasharray: 1,
11316 strokeDashoffset: 1,
11317 strokeMiterlimit: 1,
11318 strokeOpacity: 1,
11319 strokeWidth: 1
11320 };
11321
11322 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (unitlessKeys);
11323
11324
11325 /***/ }),
11326
11327 /***/ "../node_modules/validator/lib/isFQDN.js":
11328 /*!***********************************************!*\
11329 !*** ../node_modules/validator/lib/isFQDN.js ***!
11330 \***********************************************/
11331 /***/ ((module, exports, __webpack_require__) => {
11332
11333 "use strict";
11334
11335
11336 Object.defineProperty(exports, "__esModule", ({
11337 value: true
11338 }));
11339 exports["default"] = isFQDN;
11340
11341 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11342
11343 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11344
11345 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11346
11347 var default_fqdn_options = {
11348 require_tld: true,
11349 allow_underscores: false,
11350 allow_trailing_dot: false,
11351 allow_numeric_tld: false,
11352 allow_wildcard: false,
11353 ignore_max_length: false
11354 };
11355
11356 function isFQDN(str, options) {
11357 (0, _assertString.default)(str);
11358 options = (0, _merge.default)(options, default_fqdn_options);
11359 /* Remove the optional trailing dot before checking validity */
11360
11361 if (options.allow_trailing_dot && str[str.length - 1] === '.') {
11362 str = str.substring(0, str.length - 1);
11363 }
11364 /* Remove the optional wildcard before checking validity */
11365
11366
11367 if (options.allow_wildcard === true && str.indexOf('*.') === 0) {
11368 str = str.substring(2);
11369 }
11370
11371 var parts = str.split('.');
11372 var tld = parts[parts.length - 1];
11373
11374 if (options.require_tld) {
11375 // disallow fqdns without tld
11376 if (parts.length < 2) {
11377 return false;
11378 }
11379
11380 if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
11381 return false;
11382 } // disallow spaces
11383
11384
11385 if (/\s/.test(tld)) {
11386 return false;
11387 }
11388 } // reject numeric TLDs
11389
11390
11391 if (!options.allow_numeric_tld && /^\d+$/.test(tld)) {
11392 return false;
11393 }
11394
11395 return parts.every(function (part) {
11396 if (part.length > 63 && !options.ignore_max_length) {
11397 return false;
11398 }
11399
11400 if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) {
11401 return false;
11402 } // disallow full-width chars
11403
11404
11405 if (/[\uff01-\uff5e]/.test(part)) {
11406 return false;
11407 } // disallow parts starting or ending with hyphen
11408
11409
11410 if (/^-|-$/.test(part)) {
11411 return false;
11412 }
11413
11414 if (!options.allow_underscores && /_/.test(part)) {
11415 return false;
11416 }
11417
11418 return true;
11419 });
11420 }
11421
11422 module.exports = exports.default;
11423 module.exports["default"] = exports.default;
11424
11425 /***/ }),
11426
11427 /***/ "../node_modules/validator/lib/isIP.js":
11428 /*!*********************************************!*\
11429 !*** ../node_modules/validator/lib/isIP.js ***!
11430 \*********************************************/
11431 /***/ ((module, exports, __webpack_require__) => {
11432
11433 "use strict";
11434
11435
11436 Object.defineProperty(exports, "__esModule", ({
11437 value: true
11438 }));
11439 exports["default"] = isIP;
11440
11441 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11442
11443 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11444
11445 /**
11446 11.3. Examples
11447
11448 The following addresses
11449
11450 fe80::1234 (on the 1st link of the node)
11451 ff02::5678 (on the 5th link of the node)
11452 ff08::9abc (on the 10th organization of the node)
11453
11454 would be represented as follows:
11455
11456 fe80::1234%1
11457 ff02::5678%5
11458 ff08::9abc%10
11459
11460 (Here we assume a natural translation from a zone index to the
11461 <zone_id> part, where the Nth zone of any scope is translated into
11462 "N".)
11463
11464 If we use interface names as <zone_id>, those addresses could also be
11465 represented as follows:
11466
11467 fe80::1234%ne0
11468 ff02::5678%pvc1.3
11469 ff08::9abc%interface10
11470
11471 where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
11472 to the 5th link, and "interface10" belongs to the 10th organization.
11473 * * */
11474 var IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
11475 var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
11476 var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
11477 var IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';
11478 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,})?$');
11479
11480 function isIP(str) {
11481 var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
11482 (0, _assertString.default)(str);
11483 version = String(version);
11484
11485 if (!version) {
11486 return isIP(str, 4) || isIP(str, 6);
11487 }
11488
11489 if (version === '4') {
11490 return IPv4AddressRegExp.test(str);
11491 }
11492
11493 if (version === '6') {
11494 return IPv6AddressRegExp.test(str);
11495 }
11496
11497 return false;
11498 }
11499
11500 module.exports = exports.default;
11501 module.exports["default"] = exports.default;
11502
11503 /***/ }),
11504
11505 /***/ "../node_modules/validator/lib/isURL.js":
11506 /*!**********************************************!*\
11507 !*** ../node_modules/validator/lib/isURL.js ***!
11508 \**********************************************/
11509 /***/ ((module, exports, __webpack_require__) => {
11510
11511 "use strict";
11512
11513
11514 Object.defineProperty(exports, "__esModule", ({
11515 value: true
11516 }));
11517 exports["default"] = isURL;
11518
11519 var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11520
11521 var _isFQDN = _interopRequireDefault(__webpack_require__(/*! ./isFQDN */ "../node_modules/validator/lib/isFQDN.js"));
11522
11523 var _isIP = _interopRequireDefault(__webpack_require__(/*! ./isIP */ "../node_modules/validator/lib/isIP.js"));
11524
11525 var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11526
11527 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11528
11529 function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11530
11531 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."); }
11532
11533 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); }
11534
11535 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; }
11536
11537 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; }
11538
11539 function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11540
11541 /*
11542 options for isURL method
11543
11544 require_protocol - if set as true isURL will return false if protocol is not present in the URL
11545 require_valid_protocol - isURL will check if the URL's protocol is present in the protocols option
11546 protocols - valid protocols can be modified with this option
11547 require_host - if set as false isURL will not check if host is present in the URL
11548 require_port - if set as true isURL will check if port is present in the URL
11549 allow_protocol_relative_urls - if set as true protocol relative URLs will be allowed
11550 validate_length - if set as false isURL will skip string length validation (IE maximum is 2083)
11551
11552 */
11553 var default_url_options = {
11554 protocols: ['http', 'https', 'ftp'],
11555 require_tld: true,
11556 require_protocol: false,
11557 require_host: true,
11558 require_port: false,
11559 require_valid_protocol: true,
11560 allow_underscores: false,
11561 allow_trailing_dot: false,
11562 allow_protocol_relative_urls: false,
11563 allow_fragments: true,
11564 allow_query_components: true,
11565 validate_length: true
11566 };
11567 var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
11568
11569 function isRegExp(obj) {
11570 return Object.prototype.toString.call(obj) === '[object RegExp]';
11571 }
11572
11573 function checkHost(host, matches) {
11574 for (var i = 0; i < matches.length; i++) {
11575 var match = matches[i];
11576
11577 if (host === match || isRegExp(match) && match.test(host)) {
11578 return true;
11579 }
11580 }
11581
11582 return false;
11583 }
11584
11585 function isURL(url, options) {
11586 (0, _assertString.default)(url);
11587
11588 if (!url || /[\s<>]/.test(url)) {
11589 return false;
11590 }
11591
11592 if (url.indexOf('mailto:') === 0) {
11593 return false;
11594 }
11595
11596 options = (0, _merge.default)(options, default_url_options);
11597
11598 if (options.validate_length && url.length >= 2083) {
11599 return false;
11600 }
11601
11602 if (!options.allow_fragments && url.includes('#')) {
11603 return false;
11604 }
11605
11606 if (!options.allow_query_components && (url.includes('?') || url.includes('&'))) {
11607 return false;
11608 }
11609
11610 var protocol, auth, host, hostname, port, port_str, split, ipv6;
11611 split = url.split('#');
11612 url = split.shift();
11613 split = url.split('?');
11614 url = split.shift();
11615 split = url.split('://');
11616
11617 if (split.length > 1) {
11618 protocol = split.shift().toLowerCase();
11619
11620 if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
11621 return false;
11622 }
11623 } else if (options.require_protocol) {
11624 return false;
11625 } else if (url.slice(0, 2) === '//') {
11626 if (!options.allow_protocol_relative_urls) {
11627 return false;
11628 }
11629
11630 split[0] = url.slice(2);
11631 }
11632
11633 url = split.join('://');
11634
11635 if (url === '') {
11636 return false;
11637 }
11638
11639 split = url.split('/');
11640 url = split.shift();
11641
11642 if (url === '' && !options.require_host) {
11643 return true;
11644 }
11645
11646 split = url.split('@');
11647
11648 if (split.length > 1) {
11649 if (options.disallow_auth) {
11650 return false;
11651 }
11652
11653 if (split[0] === '') {
11654 return false;
11655 }
11656
11657 auth = split.shift();
11658
11659 if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
11660 return false;
11661 }
11662
11663 var _auth$split = auth.split(':'),
11664 _auth$split2 = _slicedToArray(_auth$split, 2),
11665 user = _auth$split2[0],
11666 password = _auth$split2[1];
11667
11668 if (user === '' && password === '') {
11669 return false;
11670 }
11671 }
11672
11673 hostname = split.join('@');
11674 port_str = null;
11675 ipv6 = null;
11676 var ipv6_match = hostname.match(wrapped_ipv6);
11677
11678 if (ipv6_match) {
11679 host = '';
11680 ipv6 = ipv6_match[1];
11681 port_str = ipv6_match[2] || null;
11682 } else {
11683 split = hostname.split(':');
11684 host = split.shift();
11685
11686 if (split.length) {
11687 port_str = split.join(':');
11688 }
11689 }
11690
11691 if (port_str !== null && port_str.length > 0) {
11692 port = parseInt(port_str, 10);
11693
11694 if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
11695 return false;
11696 }
11697 } else if (options.require_port) {
11698 return false;
11699 }
11700
11701 if (options.host_whitelist) {
11702 return checkHost(host, options.host_whitelist);
11703 }
11704
11705 if (host === '' && !options.require_host) {
11706 return true;
11707 }
11708
11709 if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
11710 return false;
11711 }
11712
11713 host = host || ipv6;
11714
11715 if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
11716 return false;
11717 }
11718
11719 return true;
11720 }
11721
11722 module.exports = exports.default;
11723 module.exports["default"] = exports.default;
11724
11725 /***/ }),
11726
11727 /***/ "../node_modules/validator/lib/util/assertString.js":
11728 /*!**********************************************************!*\
11729 !*** ../node_modules/validator/lib/util/assertString.js ***!
11730 \**********************************************************/
11731 /***/ ((module, exports) => {
11732
11733 "use strict";
11734
11735
11736 Object.defineProperty(exports, "__esModule", ({
11737 value: true
11738 }));
11739 exports["default"] = assertString;
11740
11741 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); }
11742
11743 function assertString(input) {
11744 var isString = typeof input === 'string' || input instanceof String;
11745
11746 if (!isString) {
11747 var invalidType = _typeof(input);
11748
11749 if (input === null) invalidType = 'null';else if (invalidType === 'object') invalidType = input.constructor.name;
11750 throw new TypeError("Expected a string but received a ".concat(invalidType));
11751 }
11752 }
11753
11754 module.exports = exports.default;
11755 module.exports["default"] = exports.default;
11756
11757 /***/ }),
11758
11759 /***/ "../node_modules/validator/lib/util/merge.js":
11760 /*!***************************************************!*\
11761 !*** ../node_modules/validator/lib/util/merge.js ***!
11762 \***************************************************/
11763 /***/ ((module, exports) => {
11764
11765 "use strict";
11766
11767
11768 Object.defineProperty(exports, "__esModule", ({
11769 value: true
11770 }));
11771 exports["default"] = merge;
11772
11773 function merge() {
11774 var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
11775 var defaults = arguments.length > 1 ? arguments[1] : undefined;
11776
11777 for (var key in defaults) {
11778 if (typeof obj[key] === 'undefined') {
11779 obj[key] = defaults[key];
11780 }
11781 }
11782
11783 return obj;
11784 }
11785
11786 module.exports = exports.default;
11787 module.exports["default"] = exports.default;
11788
11789 /***/ }),
11790
11791 /***/ "react":
11792 /*!************************!*\
11793 !*** external "React" ***!
11794 \************************/
11795 /***/ ((module) => {
11796
11797 "use strict";
11798 module.exports = React;
11799
11800 /***/ }),
11801
11802 /***/ "react-dom":
11803 /*!***************************!*\
11804 !*** external "ReactDOM" ***!
11805 \***************************/
11806 /***/ ((module) => {
11807
11808 "use strict";
11809 module.exports = ReactDOM;
11810
11811 /***/ }),
11812
11813 /***/ "@elementor/icons":
11814 /*!************************************!*\
11815 !*** external "elementorV2.icons" ***!
11816 \************************************/
11817 /***/ ((module) => {
11818
11819 "use strict";
11820 module.exports = elementorV2.icons;
11821
11822 /***/ }),
11823
11824 /***/ "@elementor/ui":
11825 /*!*********************************!*\
11826 !*** external "elementorV2.ui" ***!
11827 \*********************************/
11828 /***/ ((module) => {
11829
11830 "use strict";
11831 module.exports = elementorV2.ui;
11832
11833 /***/ }),
11834
11835 /***/ "@wordpress/i18n":
11836 /*!**************************!*\
11837 !*** external "wp.i18n" ***!
11838 \**************************/
11839 /***/ ((module) => {
11840
11841 "use strict";
11842 module.exports = wp.i18n;
11843
11844 /***/ }),
11845
11846 /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
11847 /*!******************************************************************!*\
11848 !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
11849 \******************************************************************/
11850 /***/ ((module) => {
11851
11852 function _arrayLikeToArray(arr, len) {
11853 if (len == null || len > arr.length) len = arr.length;
11854 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
11855 return arr2;
11856 }
11857 module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
11858
11859 /***/ }),
11860
11861 /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
11862 /*!****************************************************************!*\
11863 !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
11864 \****************************************************************/
11865 /***/ ((module) => {
11866
11867 function _arrayWithHoles(arr) {
11868 if (Array.isArray(arr)) return arr;
11869 }
11870 module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
11871
11872 /***/ }),
11873
11874 /***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
11875 /*!*******************************************************************!*\
11876 !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
11877 \*******************************************************************/
11878 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11879
11880 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
11881 function _arrayWithoutHoles(arr) {
11882 if (Array.isArray(arr)) return arrayLikeToArray(arr);
11883 }
11884 module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
11885
11886 /***/ }),
11887
11888 /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
11889 /*!***********************************************************************!*\
11890 !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
11891 \***********************************************************************/
11892 /***/ ((module) => {
11893
11894 function _assertThisInitialized(self) {
11895 if (self === void 0) {
11896 throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
11897 }
11898 return self;
11899 }
11900 module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
11901
11902 /***/ }),
11903
11904 /***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js":
11905 /*!******************************************************************!*\
11906 !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
11907 \******************************************************************/
11908 /***/ ((module) => {
11909
11910 function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
11911 try {
11912 var info = gen[key](arg);
11913 var value = info.value;
11914 } catch (error) {
11915 reject(error);
11916 return;
11917 }
11918 if (info.done) {
11919 resolve(value);
11920 } else {
11921 Promise.resolve(value).then(_next, _throw);
11922 }
11923 }
11924 function _asyncToGenerator(fn) {
11925 return function () {
11926 var self = this,
11927 args = arguments;
11928 return new Promise(function (resolve, reject) {
11929 var gen = fn.apply(self, args);
11930 function _next(value) {
11931 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
11932 }
11933 function _throw(err) {
11934 asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
11935 }
11936 _next(undefined);
11937 });
11938 };
11939 }
11940 module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
11941
11942 /***/ }),
11943
11944 /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
11945 /*!****************************************************************!*\
11946 !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
11947 \****************************************************************/
11948 /***/ ((module) => {
11949
11950 function _classCallCheck(instance, Constructor) {
11951 if (!(instance instanceof Constructor)) {
11952 throw new TypeError("Cannot call a class as a function");
11953 }
11954 }
11955 module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
11956
11957 /***/ }),
11958
11959 /***/ "../node_modules/@babel/runtime/helpers/createClass.js":
11960 /*!*************************************************************!*\
11961 !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
11962 \*************************************************************/
11963 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11964
11965 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
11966 function _defineProperties(target, props) {
11967 for (var i = 0; i < props.length; i++) {
11968 var descriptor = props[i];
11969 descriptor.enumerable = descriptor.enumerable || false;
11970 descriptor.configurable = true;
11971 if ("value" in descriptor) descriptor.writable = true;
11972 Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
11973 }
11974 }
11975 function _createClass(Constructor, protoProps, staticProps) {
11976 if (protoProps) _defineProperties(Constructor.prototype, protoProps);
11977 if (staticProps) _defineProperties(Constructor, staticProps);
11978 Object.defineProperty(Constructor, "prototype", {
11979 writable: false
11980 });
11981 return Constructor;
11982 }
11983 module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
11984
11985 /***/ }),
11986
11987 /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
11988 /*!****************************************************************!*\
11989 !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
11990 \****************************************************************/
11991 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11992
11993 var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
11994 function _defineProperty(obj, key, value) {
11995 key = toPropertyKey(key);
11996 if (key in obj) {
11997 Object.defineProperty(obj, key, {
11998 value: value,
11999 enumerable: true,
12000 configurable: true,
12001 writable: true
12002 });
12003 } else {
12004 obj[key] = value;
12005 }
12006 return obj;
12007 }
12008 module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
12009
12010 /***/ }),
12011
12012 /***/ "../node_modules/@babel/runtime/helpers/extends.js":
12013 /*!*********************************************************!*\
12014 !*** ../node_modules/@babel/runtime/helpers/extends.js ***!
12015 \*********************************************************/
12016 /***/ ((module) => {
12017
12018 function _extends() {
12019 module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {
12020 for (var i = 1; i < arguments.length; i++) {
12021 var source = arguments[i];
12022 for (var key in source) {
12023 if (Object.prototype.hasOwnProperty.call(source, key)) {
12024 target[key] = source[key];
12025 }
12026 }
12027 }
12028 return target;
12029 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12030 return _extends.apply(this, arguments);
12031 }
12032 module.exports = _extends, module.exports.__esModule = true, module.exports["default"] = module.exports;
12033
12034 /***/ }),
12035
12036 /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
12037 /*!****************************************************************!*\
12038 !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
12039 \****************************************************************/
12040 /***/ ((module) => {
12041
12042 function _getPrototypeOf(o) {
12043 module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
12044 return o.__proto__ || Object.getPrototypeOf(o);
12045 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12046 return _getPrototypeOf(o);
12047 }
12048 module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12049
12050 /***/ }),
12051
12052 /***/ "../node_modules/@babel/runtime/helpers/inherits.js":
12053 /*!**********************************************************!*\
12054 !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
12055 \**********************************************************/
12056 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12057
12058 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
12059 function _inherits(subClass, superClass) {
12060 if (typeof superClass !== "function" && superClass !== null) {
12061 throw new TypeError("Super expression must either be null or a function");
12062 }
12063 subClass.prototype = Object.create(superClass && superClass.prototype, {
12064 constructor: {
12065 value: subClass,
12066 writable: true,
12067 configurable: true
12068 }
12069 });
12070 Object.defineProperty(subClass, "prototype", {
12071 writable: false
12072 });
12073 if (superClass) setPrototypeOf(subClass, superClass);
12074 }
12075 module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
12076
12077 /***/ }),
12078
12079 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
12080 /*!***********************************************************************!*\
12081 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
12082 \***********************************************************************/
12083 /***/ ((module) => {
12084
12085 function _interopRequireDefault(obj) {
12086 return obj && obj.__esModule ? obj : {
12087 "default": obj
12088 };
12089 }
12090 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
12091
12092 /***/ }),
12093
12094 /***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
12095 /*!*****************************************************************!*\
12096 !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
12097 \*****************************************************************/
12098 /***/ ((module) => {
12099
12100 function _iterableToArray(iter) {
12101 if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
12102 }
12103 module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12104
12105 /***/ }),
12106
12107 /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
12108 /*!**********************************************************************!*\
12109 !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
12110 \**********************************************************************/
12111 /***/ ((module) => {
12112
12113 function _iterableToArrayLimit(r, l) {
12114 var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
12115 if (null != t) {
12116 var e,
12117 n,
12118 i,
12119 u,
12120 a = [],
12121 f = !0,
12122 o = !1;
12123 try {
12124 if (i = (t = t.call(r)).next, 0 === l) {
12125 if (Object(t) !== t) return;
12126 f = !1;
12127 } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
12128 } catch (r) {
12129 o = !0, n = r;
12130 } finally {
12131 try {
12132 if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
12133 } finally {
12134 if (o) throw n;
12135 }
12136 }
12137 return a;
12138 }
12139 }
12140 module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
12141
12142 /***/ }),
12143
12144 /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
12145 /*!*****************************************************************!*\
12146 !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
12147 \*****************************************************************/
12148 /***/ ((module) => {
12149
12150 function _nonIterableRest() {
12151 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12152 }
12153 module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
12154
12155 /***/ }),
12156
12157 /***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
12158 /*!*******************************************************************!*\
12159 !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
12160 \*******************************************************************/
12161 /***/ ((module) => {
12162
12163 function _nonIterableSpread() {
12164 throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12165 }
12166 module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
12167
12168 /***/ }),
12169
12170 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
12171 /*!*************************************************************************!*\
12172 !*** ../node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
12173 \*************************************************************************/
12174 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12175
12176 var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose.js */ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");
12177 function _objectWithoutProperties(source, excluded) {
12178 if (source == null) return {};
12179 var target = objectWithoutPropertiesLoose(source, excluded);
12180 var key, i;
12181 if (Object.getOwnPropertySymbols) {
12182 var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
12183 for (i = 0; i < sourceSymbolKeys.length; i++) {
12184 key = sourceSymbolKeys[i];
12185 if (excluded.indexOf(key) >= 0) continue;
12186 if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
12187 target[key] = source[key];
12188 }
12189 }
12190 return target;
12191 }
12192 module.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports["default"] = module.exports;
12193
12194 /***/ }),
12195
12196 /***/ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
12197 /*!******************************************************************************!*\
12198 !*** ../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
12199 \******************************************************************************/
12200 /***/ ((module) => {
12201
12202 function _objectWithoutPropertiesLoose(source, excluded) {
12203 if (source == null) return {};
12204 var target = {};
12205 var sourceKeys = Object.keys(source);
12206 var key, i;
12207 for (i = 0; i < sourceKeys.length; i++) {
12208 key = sourceKeys[i];
12209 if (excluded.indexOf(key) >= 0) continue;
12210 target[key] = source[key];
12211 }
12212 return target;
12213 }
12214 module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports["default"] = module.exports;
12215
12216 /***/ }),
12217
12218 /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
12219 /*!***************************************************************************!*\
12220 !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
12221 \***************************************************************************/
12222 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12223
12224 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12225 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
12226 function _possibleConstructorReturn(self, call) {
12227 if (call && (_typeof(call) === "object" || typeof call === "function")) {
12228 return call;
12229 } else if (call !== void 0) {
12230 throw new TypeError("Derived constructors may only return object or undefined");
12231 }
12232 return assertThisInitialized(self);
12233 }
12234 module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
12235
12236 /***/ }),
12237
12238 /***/ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js":
12239 /*!********************************************************************!*\
12240 !*** ../node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
12241 \********************************************************************/
12242 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12243
12244 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12245 function _regeneratorRuntime() {
12246 "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
12247 module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
12248 return e;
12249 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12250 var t,
12251 e = {},
12252 r = Object.prototype,
12253 n = r.hasOwnProperty,
12254 o = Object.defineProperty || function (t, e, r) {
12255 t[e] = r.value;
12256 },
12257 i = "function" == typeof Symbol ? Symbol : {},
12258 a = i.iterator || "@@iterator",
12259 c = i.asyncIterator || "@@asyncIterator",
12260 u = i.toStringTag || "@@toStringTag";
12261 function define(t, e, r) {
12262 return Object.defineProperty(t, e, {
12263 value: r,
12264 enumerable: !0,
12265 configurable: !0,
12266 writable: !0
12267 }), t[e];
12268 }
12269 try {
12270 define({}, "");
12271 } catch (t) {
12272 define = function define(t, e, r) {
12273 return t[e] = r;
12274 };
12275 }
12276 function wrap(t, e, r, n) {
12277 var i = e && e.prototype instanceof Generator ? e : Generator,
12278 a = Object.create(i.prototype),
12279 c = new Context(n || []);
12280 return o(a, "_invoke", {
12281 value: makeInvokeMethod(t, r, c)
12282 }), a;
12283 }
12284 function tryCatch(t, e, r) {
12285 try {
12286 return {
12287 type: "normal",
12288 arg: t.call(e, r)
12289 };
12290 } catch (t) {
12291 return {
12292 type: "throw",
12293 arg: t
12294 };
12295 }
12296 }
12297 e.wrap = wrap;
12298 var h = "suspendedStart",
12299 l = "suspendedYield",
12300 f = "executing",
12301 s = "completed",
12302 y = {};
12303 function Generator() {}
12304 function GeneratorFunction() {}
12305 function GeneratorFunctionPrototype() {}
12306 var p = {};
12307 define(p, a, function () {
12308 return this;
12309 });
12310 var d = Object.getPrototypeOf,
12311 v = d && d(d(values([])));
12312 v && v !== r && n.call(v, a) && (p = v);
12313 var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
12314 function defineIteratorMethods(t) {
12315 ["next", "throw", "return"].forEach(function (e) {
12316 define(t, e, function (t) {
12317 return this._invoke(e, t);
12318 });
12319 });
12320 }
12321 function AsyncIterator(t, e) {
12322 function invoke(r, o, i, a) {
12323 var c = tryCatch(t[r], t, o);
12324 if ("throw" !== c.type) {
12325 var u = c.arg,
12326 h = u.value;
12327 return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
12328 invoke("next", t, i, a);
12329 }, function (t) {
12330 invoke("throw", t, i, a);
12331 }) : e.resolve(h).then(function (t) {
12332 u.value = t, i(u);
12333 }, function (t) {
12334 return invoke("throw", t, i, a);
12335 });
12336 }
12337 a(c.arg);
12338 }
12339 var r;
12340 o(this, "_invoke", {
12341 value: function value(t, n) {
12342 function callInvokeWithMethodAndArg() {
12343 return new e(function (e, r) {
12344 invoke(t, n, e, r);
12345 });
12346 }
12347 return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
12348 }
12349 });
12350 }
12351 function makeInvokeMethod(e, r, n) {
12352 var o = h;
12353 return function (i, a) {
12354 if (o === f) throw new Error("Generator is already running");
12355 if (o === s) {
12356 if ("throw" === i) throw a;
12357 return {
12358 value: t,
12359 done: !0
12360 };
12361 }
12362 for (n.method = i, n.arg = a;;) {
12363 var c = n.delegate;
12364 if (c) {
12365 var u = maybeInvokeDelegate(c, n);
12366 if (u) {
12367 if (u === y) continue;
12368 return u;
12369 }
12370 }
12371 if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
12372 if (o === h) throw o = s, n.arg;
12373 n.dispatchException(n.arg);
12374 } else "return" === n.method && n.abrupt("return", n.arg);
12375 o = f;
12376 var p = tryCatch(e, r, n);
12377 if ("normal" === p.type) {
12378 if (o = n.done ? s : l, p.arg === y) continue;
12379 return {
12380 value: p.arg,
12381 done: n.done
12382 };
12383 }
12384 "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
12385 }
12386 };
12387 }
12388 function maybeInvokeDelegate(e, r) {
12389 var n = r.method,
12390 o = e.iterator[n];
12391 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;
12392 var i = tryCatch(o, e.iterator, r.arg);
12393 if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
12394 var a = i.arg;
12395 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);
12396 }
12397 function pushTryEntry(t) {
12398 var e = {
12399 tryLoc: t[0]
12400 };
12401 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
12402 }
12403 function resetTryEntry(t) {
12404 var e = t.completion || {};
12405 e.type = "normal", delete e.arg, t.completion = e;
12406 }
12407 function Context(t) {
12408 this.tryEntries = [{
12409 tryLoc: "root"
12410 }], t.forEach(pushTryEntry, this), this.reset(!0);
12411 }
12412 function values(e) {
12413 if (e || "" === e) {
12414 var r = e[a];
12415 if (r) return r.call(e);
12416 if ("function" == typeof e.next) return e;
12417 if (!isNaN(e.length)) {
12418 var o = -1,
12419 i = function next() {
12420 for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
12421 return next.value = t, next.done = !0, next;
12422 };
12423 return i.next = i;
12424 }
12425 }
12426 throw new TypeError(_typeof(e) + " is not iterable");
12427 }
12428 return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
12429 value: GeneratorFunctionPrototype,
12430 configurable: !0
12431 }), o(GeneratorFunctionPrototype, "constructor", {
12432 value: GeneratorFunction,
12433 configurable: !0
12434 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
12435 var e = "function" == typeof t && t.constructor;
12436 return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
12437 }, e.mark = function (t) {
12438 return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
12439 }, e.awrap = function (t) {
12440 return {
12441 __await: t
12442 };
12443 }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
12444 return this;
12445 }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
12446 void 0 === i && (i = Promise);
12447 var a = new AsyncIterator(wrap(t, r, n, o), i);
12448 return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
12449 return t.done ? t.value : a.next();
12450 });
12451 }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
12452 return this;
12453 }), define(g, "toString", function () {
12454 return "[object Generator]";
12455 }), e.keys = function (t) {
12456 var e = Object(t),
12457 r = [];
12458 for (var n in e) r.push(n);
12459 return r.reverse(), function next() {
12460 for (; r.length;) {
12461 var t = r.pop();
12462 if (t in e) return next.value = t, next.done = !1, next;
12463 }
12464 return next.done = !0, next;
12465 };
12466 }, e.values = values, Context.prototype = {
12467 constructor: Context,
12468 reset: function reset(e) {
12469 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);
12470 },
12471 stop: function stop() {
12472 this.done = !0;
12473 var t = this.tryEntries[0].completion;
12474 if ("throw" === t.type) throw t.arg;
12475 return this.rval;
12476 },
12477 dispatchException: function dispatchException(e) {
12478 if (this.done) throw e;
12479 var r = this;
12480 function handle(n, o) {
12481 return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
12482 }
12483 for (var o = this.tryEntries.length - 1; o >= 0; --o) {
12484 var i = this.tryEntries[o],
12485 a = i.completion;
12486 if ("root" === i.tryLoc) return handle("end");
12487 if (i.tryLoc <= this.prev) {
12488 var c = n.call(i, "catchLoc"),
12489 u = n.call(i, "finallyLoc");
12490 if (c && u) {
12491 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12492 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12493 } else if (c) {
12494 if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12495 } else {
12496 if (!u) throw new Error("try statement without catch or finally");
12497 if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12498 }
12499 }
12500 }
12501 },
12502 abrupt: function abrupt(t, e) {
12503 for (var r = this.tryEntries.length - 1; r >= 0; --r) {
12504 var o = this.tryEntries[r];
12505 if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
12506 var i = o;
12507 break;
12508 }
12509 }
12510 i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
12511 var a = i ? i.completion : {};
12512 return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
12513 },
12514 complete: function complete(t, e) {
12515 if ("throw" === t.type) throw t.arg;
12516 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;
12517 },
12518 finish: function finish(t) {
12519 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12520 var r = this.tryEntries[e];
12521 if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
12522 }
12523 },
12524 "catch": function _catch(t) {
12525 for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12526 var r = this.tryEntries[e];
12527 if (r.tryLoc === t) {
12528 var n = r.completion;
12529 if ("throw" === n.type) {
12530 var o = n.arg;
12531 resetTryEntry(r);
12532 }
12533 return o;
12534 }
12535 }
12536 throw new Error("illegal catch attempt");
12537 },
12538 delegateYield: function delegateYield(e, r, n) {
12539 return this.delegate = {
12540 iterator: values(e),
12541 resultName: r,
12542 nextLoc: n
12543 }, "next" === this.method && (this.arg = t), y;
12544 }
12545 }, e;
12546 }
12547 module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
12548
12549 /***/ }),
12550
12551 /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
12552 /*!****************************************************************!*\
12553 !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
12554 \****************************************************************/
12555 /***/ ((module) => {
12556
12557 function _setPrototypeOf(o, p) {
12558 module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
12559 o.__proto__ = p;
12560 return o;
12561 }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12562 return _setPrototypeOf(o, p);
12563 }
12564 module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12565
12566 /***/ }),
12567
12568 /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
12569 /*!***************************************************************!*\
12570 !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
12571 \***************************************************************/
12572 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12573
12574 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
12575 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
12576 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12577 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
12578 function _slicedToArray(arr, i) {
12579 return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
12580 }
12581 module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12582
12583 /***/ }),
12584
12585 /***/ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js":
12586 /*!***********************************************************************!*\
12587 !*** ../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js ***!
12588 \***********************************************************************/
12589 /***/ ((module) => {
12590
12591 function _taggedTemplateLiteral(strings, raw) {
12592 if (!raw) {
12593 raw = strings.slice(0);
12594 }
12595 return Object.freeze(Object.defineProperties(strings, {
12596 raw: {
12597 value: Object.freeze(raw)
12598 }
12599 }));
12600 }
12601 module.exports = _taggedTemplateLiteral, module.exports.__esModule = true, module.exports["default"] = module.exports;
12602
12603 /***/ }),
12604
12605 /***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
12606 /*!*******************************************************************!*\
12607 !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
12608 \*******************************************************************/
12609 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12610
12611 var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
12612 var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
12613 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12614 var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
12615 function _toConsumableArray(arr) {
12616 return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
12617 }
12618 module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12619
12620 /***/ }),
12621
12622 /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
12623 /*!*************************************************************!*\
12624 !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
12625 \*************************************************************/
12626 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12627
12628 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12629 function _toPrimitive(input, hint) {
12630 if (_typeof(input) !== "object" || input === null) return input;
12631 var prim = input[Symbol.toPrimitive];
12632 if (prim !== undefined) {
12633 var res = prim.call(input, hint || "default");
12634 if (_typeof(res) !== "object") return res;
12635 throw new TypeError("@@toPrimitive must return a primitive value.");
12636 }
12637 return (hint === "string" ? String : Number)(input);
12638 }
12639 module.exports = _toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
12640
12641 /***/ }),
12642
12643 /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
12644 /*!***************************************************************!*\
12645 !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
12646 \***************************************************************/
12647 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12648
12649 var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12650 var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
12651 function _toPropertyKey(arg) {
12652 var key = toPrimitive(arg, "string");
12653 return _typeof(key) === "symbol" ? key : String(key);
12654 }
12655 module.exports = _toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
12656
12657 /***/ }),
12658
12659 /***/ "../node_modules/@babel/runtime/helpers/typeof.js":
12660 /*!********************************************************!*\
12661 !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
12662 \********************************************************/
12663 /***/ ((module) => {
12664
12665 function _typeof(o) {
12666 "@babel/helpers - typeof";
12667
12668 return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
12669 return typeof o;
12670 } : function (o) {
12671 return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
12672 }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
12673 }
12674 module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
12675
12676 /***/ }),
12677
12678 /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
12679 /*!****************************************************************************!*\
12680 !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
12681 \****************************************************************************/
12682 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12683
12684 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12685 function _unsupportedIterableToArray(o, minLen) {
12686 if (!o) return;
12687 if (typeof o === "string") return arrayLikeToArray(o, minLen);
12688 var n = Object.prototype.toString.call(o).slice(8, -1);
12689 if (n === "Object" && o.constructor) n = o.constructor.name;
12690 if (n === "Map" || n === "Set") return Array.from(o);
12691 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
12692 }
12693 module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12694
12695 /***/ }),
12696
12697 /***/ "../node_modules/@babel/runtime/regenerator/index.js":
12698 /*!***********************************************************!*\
12699 !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
12700 \***********************************************************/
12701 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12702
12703 // TODO(Babel 8): Remove this file.
12704
12705 var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js")();
12706 module.exports = runtime;
12707
12708 // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
12709 try {
12710 regeneratorRuntime = runtime;
12711 } catch (accidentalStrictMode) {
12712 if (typeof globalThis === "object") {
12713 globalThis.regeneratorRuntime = runtime;
12714 } else {
12715 Function("r", "regeneratorRuntime = r")(runtime);
12716 }
12717 }
12718
12719
12720 /***/ })
12721
12722 /******/ });
12723 /************************************************************************/
12724 /******/ // The module cache
12725 /******/ var __webpack_module_cache__ = {};
12726 /******/
12727 /******/ // The require function
12728 /******/ function __webpack_require__(moduleId) {
12729 /******/ // Check if module is in cache
12730 /******/ var cachedModule = __webpack_module_cache__[moduleId];
12731 /******/ if (cachedModule !== undefined) {
12732 /******/ return cachedModule.exports;
12733 /******/ }
12734 /******/ // Create a new module (and put it into the cache)
12735 /******/ var module = __webpack_module_cache__[moduleId] = {
12736 /******/ // no module.id needed
12737 /******/ // no module.loaded needed
12738 /******/ exports: {}
12739 /******/ };
12740 /******/
12741 /******/ // Execute the module function
12742 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
12743 /******/
12744 /******/ // Return the exports of the module
12745 /******/ return module.exports;
12746 /******/ }
12747 /******/
12748 /************************************************************************/
12749 /******/ /* webpack/runtime/compat get default export */
12750 /******/ (() => {
12751 /******/ // getDefaultExport function for compatibility with non-harmony modules
12752 /******/ __webpack_require__.n = (module) => {
12753 /******/ var getter = module && module.__esModule ?
12754 /******/ () => (module['default']) :
12755 /******/ () => (module);
12756 /******/ __webpack_require__.d(getter, { a: getter });
12757 /******/ return getter;
12758 /******/ };
12759 /******/ })();
12760 /******/
12761 /******/ /* webpack/runtime/define property getters */
12762 /******/ (() => {
12763 /******/ // define getter functions for harmony exports
12764 /******/ __webpack_require__.d = (exports, definition) => {
12765 /******/ for(var key in definition) {
12766 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
12767 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
12768 /******/ }
12769 /******/ }
12770 /******/ };
12771 /******/ })();
12772 /******/
12773 /******/ /* webpack/runtime/hasOwnProperty shorthand */
12774 /******/ (() => {
12775 /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
12776 /******/ })();
12777 /******/
12778 /******/ /* webpack/runtime/make namespace object */
12779 /******/ (() => {
12780 /******/ // define __esModule on exports
12781 /******/ __webpack_require__.r = (exports) => {
12782 /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
12783 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
12784 /******/ }
12785 /******/ Object.defineProperty(exports, '__esModule', { value: true });
12786 /******/ };
12787 /******/ })();
12788 /******/
12789 /******/ /* webpack/runtime/nonce */
12790 /******/ (() => {
12791 /******/ __webpack_require__.nc = undefined;
12792 /******/ })();
12793 /******/
12794 /************************************************************************/
12795 var __webpack_exports__ = {};
12796 // This entry need to be wrapped in an IIFE because it need to be in strict mode.
12797 (() => {
12798 "use strict";
12799 var exports = __webpack_exports__;
12800 /*!*******************************************************!*\
12801 !*** ../modules/ai/assets/js/editor/layout-module.js ***!
12802 \*******************************************************/
12803
12804
12805 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
12806 Object.defineProperty(exports, "__esModule", ({
12807 value: true
12808 }));
12809 exports["default"] = exports.AI_ATTACHMENT = void 0;
12810 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
12811 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
12812 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
12813 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
12814 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
12815 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
12816 var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
12817 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
12818 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
12819 var _aiLayoutBehavior = _interopRequireDefault(__webpack_require__(/*! ./ai-layout-behavior */ "../modules/ai/assets/js/editor/ai-layout-behavior.js"));
12820 var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
12821 var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
12822 var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
12823 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"));
12824 var _attachments = __webpack_require__(/*! ./pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
12825 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); }; }
12826 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; } }
12827 var AI_ATTACHMENT = 'ai-attachment';
12828 exports.AI_ATTACHMENT = AI_ATTACHMENT;
12829 var Module = /*#__PURE__*/function (_elementorModules$edi) {
12830 (0, _inherits2.default)(Module, _elementorModules$edi);
12831 var _super = _createSuper(Module);
12832 function Module() {
12833 var _this;
12834 (0, _classCallCheck2.default)(this, Module);
12835 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12836 args[_key] = arguments[_key];
12837 }
12838 _this = _super.call.apply(_super, [this].concat(args));
12839 (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "registerVariationsContextMenu", function (groups, currentElement) {
12840 var _ElementorAiConfig, _ElementorAiConfig$us;
12841 var saveGroup = groups.find(function (group) {
12842 return 'save' === group.name;
12843 });
12844 if (!saveGroup) {
12845 return groups;
12846 }
12847 var contextMenu = {
12848 name: 'ai',
12849 icon: 'eicon-ai',
12850 isEnabled: function isEnabled() {
12851 return 0 !== currentElement.getContainer().children.length;
12852 },
12853 title: (0, _i18n.__)('Generate variations with AI', 'elementor'),
12854 callback: function () {
12855 var _callback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
12856 var container, json, attachments;
12857 return _regenerator.default.wrap(function _callee$(_context) {
12858 while (1) switch (_context.prev = _context.next) {
12859 case 0:
12860 container = currentElement.getContainer();
12861 json = container.model.toJSON({
12862 remove: ['default']
12863 });
12864 attachments = [{
12865 type: 'json',
12866 previewHTML: '',
12867 content: json,
12868 label: container.model.get('title'),
12869 source: _attachments.USER_VARIATION_SOURCE
12870 }];
12871 (0, _editorIntegration.renderLayoutApp)({
12872 parentContainer: container.parent,
12873 mode: _config.MODE_VARIATION,
12874 at: container.view._index,
12875 attachments: attachments,
12876 onSelect: function onSelect() {
12877 container.view.$el.hide();
12878 },
12879 onClose: function onClose() {
12880 container.view.$el.show();
12881 },
12882 onInsert: function onInsert(template) {
12883 (0, _editorIntegration.importToEditor)({
12884 parentContainer: container.parent,
12885 at: container.view._index,
12886 template: template,
12887 historyTitle: (0, _i18n.__)('AI Variation', 'elementor'),
12888 replace: true
12889 });
12890 }
12891 });
12892 case 4:
12893 case "end":
12894 return _context.stop();
12895 }
12896 }, _callee);
12897 }));
12898 function callback() {
12899 return _callback.apply(this, arguments);
12900 }
12901 return callback;
12902 }()
12903 };
12904 if (!((_ElementorAiConfig = ElementorAiConfig) !== null && _ElementorAiConfig !== void 0 && (_ElementorAiConfig$us = _ElementorAiConfig.usage) !== null && _ElementorAiConfig$us !== void 0 && _ElementorAiConfig$us.hasAiSubscription)) {
12905 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>";
12906 contextMenu.shortcut = "<div class=\"elementor-context-menu-list__item__ai-badge\">".concat(svg, "</div>");
12907 }
12908
12909 // Add on top of save group actions
12910 saveGroup.actions.unshift(contextMenu);
12911 return groups;
12912 });
12913 return _this;
12914 }
12915 (0, _createClass2.default)(Module, [{
12916 key: "onElementorInit",
12917 value: function onElementorInit() {
12918 var _this2 = this;
12919 elementor.hooks.addFilter('views/add-section/behaviors', this.registerAiLayoutBehavior);
12920 elementor.hooks.addFilter('elements/container/contextMenuGroups', this.registerVariationsContextMenu);
12921 elementor.hooks.addFilter('elementor/editor/template-library/template/behaviors', this.registerLibraryActionButtonBehavior);
12922 elementor.hooks.addFilter('elementor/editor/template-library/template/action-button', this.filterLibraryActionButtonTemplate, 11);
12923 $e.commands.register('library', 'generate-ai-variation', function (args) {
12924 return _this2.applyTemplate(args);
12925 });
12926 }
12927 }, {
12928 key: "applyTemplate",
12929 value: function applyTemplate(args) {
12930 window.postMessage({
12931 type: 'library/attach:start'
12932 });
12933 $e.components.get('library').downloadTemplate(args, function (data) {
12934 var model = args.model;
12935 window.postMessage({
12936 type: 'library/attach',
12937 json: data.content[0],
12938 html: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
12939 label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
12940 source: _attachments.ELEMENTOR_LIBRARY_SOURCE
12941 }, window.location.origin);
12942 });
12943 }
12944 }, {
12945 key: "registerLibraryActionButtonBehavior",
12946 value: function registerLibraryActionButtonBehavior(behaviors) {
12947 behaviors.applyAiTemplate = {
12948 behaviorClass: _applyTemplateForAiBehavior.default
12949 };
12950 return behaviors;
12951 }
12952 }, {
12953 key: "registerAiLayoutBehavior",
12954 value: function registerAiLayoutBehavior(behaviors) {
12955 behaviors.ai = {
12956 behaviorClass: _aiLayoutBehavior.default
12957 };
12958 return behaviors;
12959 }
12960 }, {
12961 key: "filterLibraryActionButtonTemplate",
12962 value: function filterLibraryActionButtonTemplate(viewId) {
12963 var modalConfig = $e.components.get('library').manager.modalConfig;
12964 var originalCoreViewId = '#tmpl-elementor-template-library-insert-button';
12965 if (originalCoreViewId !== viewId) {
12966 return viewId;
12967 }
12968 if ($e.routes.current.library !== 'library/templates/blocks') {
12969 return viewId;
12970 }
12971 if (AI_ATTACHMENT === modalConfig.mode) {
12972 viewId = '#tmpl-elementor-template-library-apply-ai-button';
12973 } else {
12974 viewId = '#tmpl-elementor-template-library-insert-and-ai-variations-buttons';
12975 }
12976 return viewId;
12977 }
12978 }]);
12979 return Module;
12980 }(elementorModules.editor.utils.Module);
12981 exports["default"] = Module;
12982 new Module();
12983 })();
12984
12985 /******/ })()
12986 ;
12987 //# sourceMappingURL=ai-layout.js.map